Merge branch 'master' into staging

This commit is contained in:
Ludovic Courtès 2022-06-08 14:53:16 +02:00
commit 091eb323ba
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
167 changed files with 173179 additions and 137080 deletions

View File

@ -6,9 +6,9 @@
(sentence-end-double-space . t)
;; For use with 'bug-reference-prog-mode'.
(bug-reference-url-format . "http://bugs.gnu.org/%s")
(bug-reference-bug-regexp
. "<https?://\\(debbugs\\|bugs\\)\\.gnu\\.org/\\([0-9]+\\)>")
. "\\(<https?://\\bugs\\.gnu\\.org/\\([0-9]+\\)>\\)")
(bug-reference-url-format . "https://bugs.gnu.org/%s")
;; Emacs-Guix
(eval . (setq-local guix-directory

1
.gitignore vendored
View File

@ -157,3 +157,4 @@ tmp
/gnu/packages/bootstrap
/gnu/packages/aux-files/guile-guile-launcher.o
/guile
.DS_Store

View File

@ -308,9 +308,11 @@ MODULES = \
guix/scripts/describe.scm \
guix/scripts/style.scm \
guix/scripts/system.scm \
guix/scripts/system/search.scm \
guix/scripts/system/edit.scm \
guix/scripts/system/reconfigure.scm \
guix/scripts/system/search.scm \
guix/scripts/home.scm \
guix/scripts/home/edit.scm \
guix/scripts/home/import.scm \
guix/scripts/lint.scm \
guix/scripts/challenge.scm \
@ -496,6 +498,7 @@ SCM_TESTS = \
tests/gremlin.scm \
tests/hackage.scm \
tests/home-import.scm \
tests/home-services.scm \
tests/http-client.scm \
tests/import-git.scm \
tests/import-github.scm \

View File

@ -2533,8 +2533,9 @@ Let's dive in the set up!
@node Basic setup with manifests
@subsection Basic setup with manifests
A Guix profile can be set up @emph{via} a so-called @emph{manifest specification} that looks like
this:
A Guix profile can be set up @i{via} a @dfn{manifest}. A manifest is a
snippet of Scheme code that specifies the set of packages you want to
have in your profile; it looks like this:
@lisp
(specifications->manifest
@ -2547,8 +2548,8 @@ this:
"package-N"))
@end lisp
@pxref{Invoking guix package,,, guix, GNU Guix Reference Manual}, for
the syntax details.
@xref{Writing Manifests,,, guix, GNU Guix Reference Manual}, for
more information about the syntax.
We can create a manifest specification per profile and install them this way:

View File

@ -103,6 +103,7 @@ Copyright @copyright{} 2021 Josselin Poiret@*
Copyright @copyright{} 2022 Remco van 't Veer@*
Copyright @copyright{} 2022 Aleksandr Vityazev@*
Copyright @copyright{} 2022 Philip M@sup{c}Grath@*
Copyright @copyright{} 2022 Karl Hallsby@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@ -324,8 +325,8 @@ Invoking @command{guix build}
* Debugging Build Failures:: Real life packaging experience.
Foreign Architectures
* Using cross-compilation:: Build for foreign architecture using cross-compilation.
* Using native builds:: Build for foreign architectures natively.
* Cross-Compilation:: Cross-compiling for another architecture.
* Native Builds:: Targeting another architecture through native builds.
System Configuration
@ -3457,7 +3458,7 @@ The typical use case is to define these environment variables in the
shell:
@example
$ eval `guix package --search-paths`
$ eval $(guix package --search-paths)
@end example
@var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix},
@ -12473,8 +12474,8 @@ If a log is unavailable locally, and unless @option{--no-substitutes} is
passed, the command looks for a corresponding log on one of the
substitute servers (as specified with @option{--substitute-urls}).
So for instance, imagine you want to see the build log of GDB on MIPS,
but you are actually on an @code{x86_64} machine:
So for instance, imagine you want to see the build log of GDB on
@code{aarch64}, but you are actually on an @code{x86_64} machine:
@example
$ guix build --log-file gdb -s aarch64-linux
@ -15238,12 +15239,12 @@ requires emulation, using the QEMU program for instance.
@end enumerate
@menu
* Using cross-compilation:: Build for foreign architecture using cross-compilation.
* Using native builds:: Build for foreign architectures natively.
* Cross-Compilation:: Cross-compiling for another architecture.
* Native Builds:: Targeting another architecture through native builds.
@end menu
@node Using cross-compilation
@section Using cross-compilation
@node Cross-Compilation
@section Cross-Compilation
@cindex foreign architectures
The commands supporting cross-compilation are proposing the
@ -15290,8 +15291,8 @@ penaly compared to emulation using QEMU. There are however higher risks
that some packages fail to cross-compile because few users are using
this mechanism extensively.
@node Using native builds
@section Using native builds
@node Native Builds
@section Native Builds
The commands that support impersonating a specific system have the
@option{--list-systems} and @option{--system} options.
@ -36270,8 +36271,8 @@ The type of a bootloader configuration declaration.
@cindex BIOS, bootloader
The bootloader to use, as a @code{bootloader} object. For now
@code{grub-bootloader}, @code{grub-efi-bootloader},
@code{grub-efi-netboot-bootloader}, @code{extlinux-bootloader} and
@code{u-boot-bootloader} are supported.
@code{grub-efi-netboot-bootloader}, @code{grub-efi-removable-bootloader},
@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported.
@cindex ARM, bootloaders
@cindex AArch64, bootloaders
@ -36340,6 +36341,20 @@ NFS servers, you also need a properly configured DHCP server to make the booting
over netboot possible. For all this we can currently only recommend you to look
for instructions about @acronym{PXE, Preboot eXecution Environment}.
@vindex grub-efi-removable-bootloader
@code{grub-efi-removable-bootloader} allows you to boot your system from
removable media by writing the GRUB file to the UEFI-specification location of
@file{/EFI/BOOT/BOOTX64.efi} of the boot directory, usually @file{/boot/efi}.
This is also useful for some UEFI firmwares that ``forget'' their configuration
from their non-volatile storage. Like @code{grub-efi-bootloader}, this can only
be used if the @file{/sys/firmware/efi} directory is available.
@quotation Note
This @emph{will} overwrite the GRUB file from any other operating systems that
also place their GRUB file in the UEFI-specification location; making them
unbootable.
@end quotation
@item @code{targets}
This is a list of strings denoting the targets onto which to install the
bootloader.
@ -36348,7 +36363,8 @@ The interpretation of targets depends on the bootloader in question.
For @code{grub-bootloader}, for example, they should be device names
understood by the bootloader @command{installer} command, such as
@code{/dev/sda} or @code{(hd0)} (@pxref{Invoking grub-install,,, grub,
GNU GRUB Manual}). For @code{grub-efi-bootloader}, they should be mount
GNU GRUB Manual}). For @code{grub-efi-bootloader} and
@code{grub-efi-removable-bootloader} they should be mount
points of the EFI file system, usually @file{/boot/efi}. For
@code{grub-efi-netboot-bootloader}, @code{targets} should be the mount
points corresponding to TFTP root directories served by your TFTP
@ -36603,6 +36619,19 @@ As for @command{guix package --search}, the result is written in
@code{recutils} format, which makes it easy to filter the output
(@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual}).
@cindex service type definition, editing
@cindex editing, service type definition
@item edit
Edit or view the definition of the given service types.
For example, the command below opens your editor, as specified by the
@env{EDITOR} environment variable, on the definition of the
@code{openssh} service type:
@example
guix system edit openssh
@end example
@item reconfigure
Build the operating system described in @var{file}, activate it, and
switch to it@footnote{This action (and the related actions
@ -39439,6 +39468,19 @@ guix home container config.scm -- herd status
The command to run in the container must come after @code{--} (double
hyphen).
@cindex service type definition, editing
@cindex editing, service type definition
@item edit
Edit or view the definition of the given Home service types.
For example, the command below opens your editor, as specified by the
@env{EDITOR} environment variable, on the definition of the
@code{home-mcron} service type:
@example
guix home edit home-mcron
@end example
@item reconfigure
Build the home environment described in @var{file}, and switch to it.
Switching means that the activation script will be evaluated and (in

View File

@ -13,7 +13,7 @@
;; Copyright © 2021 Leo Famulari <leo@famulari.name>
;; Copyright © 2021 Zhu Zihao <all_but_last@163.com>
;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;; Copyright © 2021, 2022 Maxime Devos <maximedevos@telenet.be>
;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;; Copyright © 2021 Andrew Tropin <andrew@trop.in>
;; Copyright © 2021 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@ -25,6 +25,59 @@
(channel-news
(version 0)
(entry (commit "35c1edb20ad07250728d3bdcd0296bd0cedaf6bb")
(title
(en "New @command{edit} sub-commands for services")
(de "Neue @command{edit}-Unterbefehle für Dienste")
(fr "Nouvelles commandes @command{edit} pour les services")
(nl "Nieuwe deelopdracht @command{edit} voor diensten"))
(body
(en "The new @command{guix system edit} and @command{guix home edit} commands
allow you to view or edit service types defined for Guix System or Guix Home.
For example, here is how you would open the definition of the OpenSSH system
service:
@example
guix system edit openssh
@end example
Run @command{info \"(guix) Invoking guix system\"} or @command{info \"(guix)
Invoking guix home\"} for more info.")
(de "Mit den neuen Befehlen @command{guix system edit} und
@command{guix home edit} können Sie Diensttypen für Guix System oder Guix Home
betrachten und bearbeiten. Zum Beispiel würden Sie die Definition des
OpenSSH-Systemdienstes wie folgt öffnen:
@example
guix system edit openssh
@end example
Führen Sie @command{info \"(guix.de) Aufruf von guix system\"} oder
@command{info \"(guix.de) Aufruf von guix home\"} aus, um mehr zu erfahren.")
(fr "Les nouvelles commandes @command{guix system edit} et
@command{guix home edit} permettent de visualiser ou d'éditer les types de
services définis pour Guix System ou Guix Home. Par exemple, voici comment
ouvrir la définition du service système OpenSSH :
@example
guix system edit openssh
@end example
Lancer @command{info \"(guix.fr) Invoquer guix system\"} ou @command{info
\"(guix.fr) Invoquer guix home\"} pour plus d'informations.")
;; TODO: pas verwijzingen naar de handleiding aan wanneer ze vertaald is
(nl "Met de nieuwe bewerkingen @command{guix system edit} en
@command{guix home edit} kan je dienstsoorten van Guix System en Guix
Home bekijken en bewerken. Je kan bijvoorbeeld de definitie van de
systeemdienst OpenSSH als volgt openen:
@example
guix system edit openssh
@end example
Voer @command{info \"(guix) Invoking guix system\"} of @command{info
\"(guix)Invoking guix home\"} uit voor meer informatie.")))
(entry (commit "903c82583e1cec4c9ff09d5895c5cc646c37b661")
(title
(en "New @command{guix import elm} command")

View File

@ -7,6 +7,7 @@
;;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de>
;;; Copyright © 2022 Karl Hallsby <karl@hallsby.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -50,10 +51,12 @@
grub-theme-color-highlight
grub-theme-gfxmode
install-grub-efi-removable
install-grub-efi-netboot
grub-bootloader
grub-efi-bootloader
grub-efi-removable-bootloader
grub-efi-netboot-bootloader
grub-mkrescue-bootloader
grub-minimal-bootloader
@ -608,6 +611,31 @@ fi~%"))))
"--bootloader-id=Guix"
"--efi-directory" target-esp)))))
(define install-grub-efi-removable
#~(lambda (bootloader efi-dir mount-point)
;; NOTE: mount-point is /mnt in guix system init /etc/config.scm /mnt/point
;; NOTE: efi-dir comes from target list of booloader configuration
;; There is nothing useful to do when called in the context of a disk
;; image generation.
(when efi-dir
;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the
;; system whose root is mounted at MOUNT-POINT.
(let ((grub-install (string-append bootloader "/sbin/grub-install"))
(install-dir (string-append mount-point "/boot"))
;; When installing Guix, it's common to mount EFI-DIR below
;; MOUNT-POINT rather than /boot/efi on the live image.
(target-esp (if (file-exists? (string-append mount-point efi-dir))
(string-append mount-point efi-dir)
efi-dir)))
;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or
;; root partition.
(setenv "GRUB_ENABLE_CRYPTODISK" "y")
(invoke/quiet grub-install "--boot-directory" install-dir
"--removable"
;; "--no-nvram"
"--bootloader-id=Guix"
"--efi-directory" target-esp)))))
(define (install-grub-efi-netboot subdir)
"Define a grub-efi-netboot bootloader installer for installation in SUBDIR,
which is usually efi/Guix or efi/boot."
@ -734,6 +762,12 @@ considered for security aspects."
(name 'grub-efi)
(package grub-efi)))
(define grub-efi-removable-bootloader
(bootloader
(inherit grub-efi-bootloader)
(name 'grub-efi-removable-bootloader)
(installer install-grub-efi-removable)))
(define grub-efi-netboot-bootloader
(bootloader
(inherit grub-efi-bootloader)

View File

@ -33,6 +33,7 @@
#:use-module (guix modules)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:use-module (ice-9 vlist)
#:export (home-service-type
home-profile-service-type
@ -50,6 +51,7 @@
xdg-data-files-directory
fold-home-service-types
lookup-home-service-types
home-provenance
%initialize-gettext)
@ -605,3 +607,13 @@ environment, and its configuration file, when available.")))
(define* (fold-home-service-types proc seed)
(fold-service-types proc seed (all-home-service-modules)))
(define lookup-home-service-types
(let ((table
(delay (fold-home-service-types (lambda (type result)
(vhash-consq (service-type-name type)
type result))
vlist-null))))
(lambda (name)
"Return the list of services with the given NAME (a symbol)."
(vhash-foldq* cons '() name (force table)))))

View File

@ -1299,6 +1299,7 @@ dist_patch_DATA = \
%D%/packages/patches/iputils-libcap-compat.patch \
%D%/packages/patches/ipxe-reproducible-geniso.patch \
%D%/packages/patches/irrlicht-use-system-libs.patch \
%D%/packages/patches/irrlicht-link-against-needed-libs.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/itk-snap-alt-glibc-compat.patch \
%D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \
@ -1403,7 +1404,6 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-length-check.patch \
%D%/packages/patches/libmad-md_size.patch \
%D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libmicrohttpd-0.9.73-test-ssl3.patch \
%D%/packages/patches/libmp4v2-c++11.patch \
%D%/packages/patches/libmpeg2-arm-private-symbols.patch \
%D%/packages/patches/libmpeg2-global-symbol-test.patch \
@ -1491,7 +1491,6 @@ dist_patch_DATA = \
%D%/packages/patches/meson-allow-dirs-outside-of-prefix.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/mia-fix-boost-headers.patch \
%D%/packages/patches/minetest-add-MINETEST_MOD_PATH.patch \
%D%/packages/patches/mingw-w64-6.0.0-gcc.patch \
%D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \
%D%/packages/patches/mingw-w64-reproducible-gendef.patch \
@ -1520,6 +1519,7 @@ dist_patch_DATA = \
%D%/packages/patches/m4-gnulib-libio.patch \
%D%/packages/patches/nautilus-add-libportal-gtk3.patch \
%D%/packages/patches/ncompress-fix-softlinks.patch \
%D%/packages/patches/ncftp-reproducible.patch \
%D%/packages/patches/netcdf-date-time.patch \
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
@ -1628,8 +1628,6 @@ dist_patch_DATA = \
%D%/packages/patches/picard-fix-id3-rename-test.patch \
%D%/packages/patches/picprog-non-intel-support.patch \
%D%/packages/patches/pidgin-add-search-path.patch \
%D%/packages/patches/pigx-bsseq-no-citeproc.patch \
%D%/packages/patches/pigx-chipseq-no-citeproc.patch \
%D%/packages/patches/pinball-system-ltdl.patch \
%D%/packages/patches/pingus-boost-headers.patch \
%D%/packages/patches/pingus-sdl-libs-config.patch \

View File

@ -4,6 +4,7 @@
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -39,11 +40,11 @@
#:use-module (ice-9 binary-ports)
#:autoload (system base compile) (compile)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-11)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (srfi srfi-39)
#:use-module (srfi srfi-71)
#:export (search-patch
search-patches
search-auxiliary-file
@ -65,6 +66,7 @@
specification->package+output
specification->location
specifications->manifest
specifications->packages
package-unique-version-prefix
@ -141,13 +143,10 @@ flags."
;; Search path for package modules. Each item must be either a directory
;; name or a pair whose car is a directory and whose cdr is a sub-directory
;; to narrow the search.
(let*-values (((not-colon)
(char-set-complement (char-set #\:)))
((environment)
(string-tokenize (or (getenv "GUIX_PACKAGE_PATH") "")
not-colon))
((channels-scm channels-go)
(package-path-entries)))
(let* ((not-colon (char-set-complement (char-set #\:)))
(environment (string-tokenize (or (getenv "GUIX_PACKAGE_PATH") "")
not-colon))
(channels-scm channels-go (package-path-entries)))
;; Automatically add channels and items from $GUIX_PACKAGE_PATH to Guile's
;; search path. For historical reasons, $GUIX_PACKAGE_PATH goes to the
;; front; channels go to the back so that they don't override Guix' own
@ -500,13 +499,13 @@ return its return value."
"Return a package matching SPEC. SPEC may be a package name, or a package
name followed by an at-sign and a version number. If the version number is not
present, return the preferred newest version."
(let-values (((name version) (package-name->name+version spec)))
(let ((name version (package-name->name+version spec)))
(%find-package spec name version)))
(define (specification->location spec)
"Return the location of the highest-numbered package matching SPEC, a
specification such as \"guile@2\" or \"emacs\"."
(let-values (((name version) (package-name->name+version spec)))
(let ((name version (package-name->name+version spec)))
(match (find-package-locations name version)
(()
(if version
@ -541,8 +540,8 @@ version; if SPEC does not specify an output, return OUTPUT.
When OUTPUT is false and SPEC does not specify any output, return #f as the
output."
(let-values (((name version sub-drv)
(package-specification->name+version+output spec output)))
(let ((name version sub-drv
(package-specification->name+version+output spec output)))
(match (%find-package spec name version)
(#f
(values #f #f))
@ -554,13 +553,20 @@ output."
(package-full-name package)
sub-drv))))))
(define (specifications->packages specs)
"Given SPECS, a list of specifications such as \"emacs@25.2\" or
\"guile:debug\", return a list of package/output tuples."
;; This procedure exists so users of 'guix home' don't have to write out the
;; (map (compose list specification->package+output)... boilerplate.
(map (compose list specification->package+output) specs))
(define (specifications->manifest specs)
"Given SPECS, a list of specifications such as \"emacs@25.2\" or
\"guile:debug\", return a profile manifest."
;; This procedure exists mostly so users of 'guix package -m' don't have to
;; fiddle with multiple-value returns.
(packages->manifest
(map (compose list specification->package+output) specs)))
(specifications->packages specs)))
(define (package-unique-version-prefix name version)
"Search among all the versions of package NAME that are available, and

View File

@ -48,6 +48,7 @@
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -407,7 +408,7 @@ inspired by @command{vi}.")
(define-public cloud-utils
(package
(name "cloud-utils")
(version "0.32")
(version "0.33")
(source
(origin
(method url-fetch)
@ -419,7 +420,11 @@ inspired by @command{vi}.")
"0xxdi55lzw7j91zfajw7jhd2ilsqj2dy04i9brlk8j3pvb5ma8hk"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
'(#:modules
((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:make-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "BINDIR=" out "/bin")
(string-append "MANDIR=" out "/share/man/man1")
@ -433,11 +438,15 @@ inspired by @command{vi}.")
(let ((growpart (string-append (assoc-ref outputs "out")
"/bin/growpart")))
(wrap-program growpart
`("PATH" ":" prefix (,(dirname (which "sfdisk"))
,(dirname (which "readlink"))))))
#t)))))
`("PATH" ":" prefix
,(map dirname
(map (cut search-input-file inputs <>)
(list "bin/readlink"
"sbin/sfdisk")))))))))))
(inputs
(list python util-linux)) ; contains sfdisk for growpart
(list coreutils ; for readlink
python
util-linux)) ; sfdisk for growpart
(home-page "https://launchpad.net/cloud-utils")
(synopsis "Set of utilities for cloud computing environments")
(description
@ -525,7 +534,7 @@ services.")
(base32 "0w4g0iyssyw7dd0061881z8s5czcl01mz6v00znax57zfxjqpvnm"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; No tests available.
(home-page "http://software.clapper.org/daemonize/")
(home-page "https://software.clapper.org/daemonize/")
(synopsis "Command line utility to run a program as a daemon")
(description
"daemonize runs a command as a Unix daemon. It will close all open file
@ -1760,7 +1769,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
(version "1.9.10")
(version "1.9.11")
(source (origin
(method url-fetch)
(uri
@ -1770,7 +1779,7 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
"1x34k8sd2msfjjsahff1q143gr5j9z19jx2rmkkbiiz7k084d8a4"))
"1gjingc1h7d6p17m0nn87yiwh8gbdchg4w4kv8s4g89wv0q6wixm"))
(modules '((guix build utils)))
(snippet
'(begin
@ -2028,10 +2037,16 @@ command.")
(add-after 'install-documentation 'install-dbus-conf
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dir (string-append out "/etc/dbus-1/system.d")))
(mkdir-p dir)
(interfaces (string-append out "/etc/dbus-1/system.d"))
(services (string-append out
"/share/dbus-1/system-services")))
(mkdir-p interfaces)
(copy-file "dbus/dbus-wpa_supplicant.conf"
(string-append dir "/wpa_supplicant.conf")))
(string-append interfaces "/wpa_supplicant.conf"))
(mkdir-p services)
(copy-file "dbus/fi.w1.wpa_supplicant1.service"
(string-append services
"/fi.w1.wpa_supplicant1.service")))
#t))))))))
(define-public wpa-supplicant-gui
@ -4152,7 +4167,7 @@ Python loading in HPC environments.")
(string-append dir "/lib/perl5/site_perl"))
(_ ""))
%build-inputs)))))
(invoke "gzip" "inxi.1")
(invoke "gzip" "-n" "inxi.1")
(install-file "inxi.1.gz"
(string-append %output "/share/man/man1"))))))
(home-page "https://smxi.org/docs/inxi.htm")

View File

@ -62,6 +62,10 @@
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-man-page-date
;; Avoid embedding the current date for reproducible builds
(lambda _
(setenv "MAN_PAGE_DATE" "2012-04-18")))
(add-before 'patch-source-shebangs 'patch-test-scripts
(lambda _
(let ((sh (which "sh")))

View File

@ -632,13 +632,13 @@ detection, and lossless compression.")
(define-public borg
(package
(name "borg")
(version "1.2.0")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32 "0rvzmy9qyicfs65qwy0n1nkvsidkcvx7kix43885dx1fj13mb6p3"))
(base32 "0cy6chpa053rlvy4448vf9klb5v0v1vq3l76gqa3mcrwjb8y574z"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -3145,6 +3145,11 @@ data and settings.")
`(#:tests? #f ; there are no tests
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-force-source-date
;; for reproducible dates, texlive needs this to respect respect
;; SOURCE_DATE_EPOCH
(lambda _
(setenv "FORCE_SOURCE_DATE" "1")))
(add-after 'unpack 'fix-latex-errors
(lambda _
(with-fluids ((%default-port-encoding #f))
@ -10526,7 +10531,7 @@ expression report comparing samples in an easily configurable manner.")
(define-public pigx-chipseq
(package
(name "pigx-chipseq")
(version "0.0.53")
(version "0.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/"
@ -10534,25 +10539,12 @@ expression report comparing samples in an easily configurable manner.")
"/pigx_chipseq-" version ".tar.gz"))
(sha256
(base32
"0c6npx35sszycf059w1x1k4k9hq1qqxny0i4p57q1188czr4561h"))
(patches (search-patches "pigx-chipseq-no-citeproc.patch"))))
"008n6drj9q5av86xihxlj4py2c9p3c5z5ld89c3bksrp77zxiy67"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; parts of the tests rely on access to the network
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'autoreconf
(lambda _
;; This was fixed in commit
;; 0b1c9f7f2e4d0ff601f1de95ab8b2953f4d5dbc7, but there is no
;; release with this fix.
(call-with-output-file "VERSION"
(lambda (port) (display ,version port)))
;; See https://github.com/BIMSBbioinfo/pigx_chipseq/issues/176
(substitute* "m4/ax_r_package.m4"
(("if\\(is.na\\(packageDescription\\(\"PKG\"\\)\\)\\)")
"if(system.file(package=\"PKG\") == \"\")"))
(invoke "autoreconf" "-vif")))
(add-before 'configure 'set-PYTHONPATH
(lambda _
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH")))))))
@ -10606,7 +10598,7 @@ expression report comparing samples in an easily configurable manner.")
bedtools
kentutils))
(native-inputs
(list autoconf automake python-pytest))
(list python-pytest))
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
(synopsis "Analysis pipeline for ChIP sequencing experiments")
(description "PiGX ChIPseq is an analysis pipeline for preprocessing, peak
@ -10621,7 +10613,7 @@ in an easily configurable manner.")
(define-public pigx-bsseq
(package
(name "pigx-bsseq")
(version "0.1.6")
(version "0.1.7")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/"
@ -10629,8 +10621,7 @@ in an easily configurable manner.")
"/pigx_bsseq-" version ".tar.gz"))
(sha256
(base32
"1dipikph0xdr8fp0h1flpafcrg60y4aabljg8fl1v92j3gxdggmw"))
(patches (search-patches "pigx-bsseq-no-citeproc.patch"))))
"1hfiignq3410dbl6f67vc6zr69abknpcgxixx475dspky2jb5lyn"))))
(build-system gnu-build-system)
(arguments
`(;; TODO: tests currently require 12+GB of RAM. See
@ -10638,18 +10629,6 @@ in an easily configurable manner.")
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'autoreconf
(lambda _
;; This was fixed in commit
;; d56ac732524da659afbbb0972f7a87fa178ae58e, but there is no
;; release with this fix.
(call-with-output-file "VERSION"
(lambda (port) (display ,version port)))
;; https://github.com/BIMSBbioinfo/pigx_bsseq/issues/181
(substitute* "m4/ax_r_package.m4"
(("if\\(is.na\\(packageDescription\\(\"PKG\"\\)\\)\\)")
"if(system.file(package=\"PKG\") == \"\")"))
(invoke "autoreconf" "-vif")))
(add-before 'configure 'set-PYTHONPATH
(lambda _
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))
@ -10661,7 +10640,7 @@ in an easily configurable manner.")
(search-input-directory inputs
"share/zoneinfo")))))))
(native-inputs
(list tzdata automake autoconf))
(list tzdata))
(inputs
(list coreutils
sed
@ -10705,7 +10684,7 @@ methylation and segmentation.")
(define-public pigx-scrnaseq
(package
(name "pigx-scrnaseq")
(version "1.1.8")
(version "1.1.9")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/"
@ -10713,23 +10692,11 @@ methylation and segmentation.")
"/pigx_scrnaseq-" version ".tar.gz"))
(sha256
(base32
"1lc42hl8mz95kilh0z39s3wnv092mhm6vl2i394n0yfvdzk4f885"))))
"0adx7877c3lhlrzfid76i8bc829wcmzvrm0jx47gyid8mxqb7vqs"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'autoreconf
(lambda _
;; This was fixed in commit
;; c4ac067438ae9312b5786a72e2bfb3d795e3ec8a, but there is no
;; release with this fix.
(call-with-output-file "VERSION"
(lambda (port) (display ,version port)))
;; https://github.com/BIMSBbioinfo/pigx_scrnaseq/issues/59
(substitute* "m4/ax_r_package.m4"
(("if\\(is.na\\(packageDescription\\(\"PKG\"\\)\\)\\)")
"if(system.file(package=\"PKG\") == \"\")"))
(invoke "autoreconf" "-vif")))
(add-before 'configure 'set-additional-environment-variables
(lambda _
;; Needed because of loompy
@ -10778,8 +10745,6 @@ methylation and segmentation.")
r-singlecellexperiment
r-stringr
r-yaml))
(native-inputs
(list autoconf automake))
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
(synopsis "Analysis pipeline for single-cell RNA sequencing experiments")
(description

View File

@ -105,6 +105,11 @@
#:glib-or-gtk-wrap-excluded-outputs '("out")
#:phases
(modify-phases %standard-phases
;; Avoid embedding kernel version for reproducible build
(add-after 'unpack 'remove-kernel-version
(lambda _
(substitute* "third-party/miniupnpc/updateminiupnpcstrings.sh"
(("OS_VERSION=`uname -r`") "OS_VERSION=Guix"))))
(add-after 'install 'move-gui
(lambda* (#:key outputs #:allow-other-keys)
;; Move the GUI to its own output, so that "out" doesn't

View File

@ -1131,14 +1131,14 @@ tools, and more.")
(define-public os-prober
(package
(name "os-prober")
(version "1.79")
(version "1.80")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://debian/pool/main/o/os-prober/os-prober_"
version ".tar.xz"))
(sha256
(base32 "1vhhk0bl2j4910513gn5h3z8nsaavyv3c8764bim2klc0xyk3rmb"))))
(base32 "13z3rshgz5xj0328a80wavdimjw925yha9s1ks398sq0kn5w6qw0"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@ -1155,8 +1155,7 @@ tools, and more.")
(substitute* (find-files ".")
(("/usr") (assoc-ref outputs "out")))
(substitute* (find-files "." "50mounted-tests$")
(("mkdir") "mkdir -p"))
#t))
(("mkdir") "mkdir -p"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(define (find-files-non-recursive directory)
@ -1187,8 +1186,7 @@ tools, and more.")
(append (find-files-non-recursive (string-append directory "/common"))
(find-files-non-recursive (string-append directory "/x86")))))
(list "os-probes" "os-probes/mounted" "os-probes/init"
"linux-boot-probes" "linux-boot-probes/mounted"))
#t))))))
"linux-boot-probes" "linux-boot-probes/mounted"))))))))
(home-page "https://joeyh.name/code/os-prober")
(synopsis "Detect other operating systems")
(description "os-prober probes disks on the system for other operating

View File

@ -11,11 +11,11 @@
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2019 Hartmut Goebel <h.goebel@goebel-consult.de>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 lu hui <luhuins@163.com>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2021, 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -48,12 +48,14 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages c)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
#:use-module (gnu packages elf)
#:use-module (gnu packages emacs)
#:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages llvm)
@ -65,7 +67,9 @@
#:use-module (gnu packages perl-compression)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages texinfo)
@ -117,6 +121,13 @@ a major mode for Emacs for examining the flowcharts that it produces.")
(base32
"0lr0l9kj2w3jilz9h9y4np9pf9i9ccpy6331lanki2fnz4z8ldvd"))))
(build-system gnu-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-man-page-date
;; Avoid embedding the current date for reproducible builds
(lambda _
(setenv "MAN_PAGE_DATE" "2012-04-18"))))))
(native-inputs
(list texinfo autogen))
(home-page "https://www.gnu.org/software/complexity/")
@ -925,6 +936,88 @@ extensions over the standard utility.")
source and header amalgamation in projects.")
(license license:bsd-3))))
(define-public cdecl
(package
(name "cdecl")
(version "2.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ibiblio.org/pub/linux/devel/lang/c/cdecl-"
version ".tar.gz"))
(sha256
(base32 "0dm98bp186r4cihli6fmcwzjaadgwl1z3b0zdxfik8h7hkqawk5p"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
,#~(list "LIBS=-lreadline"
(string-append "BINDIR=" #$output "/bin")
(string-append "MANDIR=" #$output "/share/man/man1"))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; No configure script.
(add-after 'unpack 'fix-build
(lambda _
(substitute* "Makefile"
(("lex cdlex.l")
"flex cdlex.l"))
(substitute* "cdecl.c"
;; Fix "error: conflicting types for getline".
(("char \\* getline\\(\\)")
"char * our_getline(void)")
(("char \\* getline \\(\\)")
"char * our_getline(void)")
(("line = getline\\(\\)")
"line = our_getline()")
;; Fix "error: conflicting types for getopt".
(("int getopt\\(int,char \\*\\*,char \\*\\);")
"")
;; Fix invalid use of "restrict" as a variable name.
(("i, j, restrict")
"i, j, restriction")
(("restrict =")
"restriction =")
;; Fix "warning: implicit declaration of function add_history".
(("# include <readline/readline.h>" all)
(string-append all "\n# include <readline/history.h>"))
;; Fix "warning: implicit declaration of function dotmpfile_from_string".
(("void setprogname\\(char \\*\\);" all)
(string-append all "\nint dotmpfile_from_string(char *);"))
;; Fix "warning: implicit declaration of function completion_matches".
(("matches = completion_matches\\(text, command_completion\\);")
"matches = rl_completion_matches(text, command_completion);")
(("char \\* command_completion\\(char \\*, int\\);")
"char * command_completion(const char *, int);")
(("char \\* command_completion\\(char \\*text, int flag\\)")
"char * command_completion(const char *text, int flag)")
;; Fix "warning: CPPFunction is deprecated".
(("rl_attempted_completion_function = \\(CPPFunction \\*\\)attempt_completion;")
"rl_attempted_completion_function = (rl_completion_func_t *)attempt_completion;")
;; Fix "warning: Function is deprecated".
(("rl_completion_entry_function = \\(Function \\*\\)keyword_completion;")
"rl_completion_entry_function = (rl_compentry_func_t *)keyword_completion;"))
;; Fix typo in man page.
(substitute* "cdecl.1"
(("<storage>\t::= auto \\| extern \\| register \\| auto")
"<storage>\t::= auto | extern | register | static"))))
(add-before 'install 'create-directories
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man/man1")))
(mkdir-p bin)
(mkdir-p man)))))
#:tests? #f)) ; No "check" target.
(native-inputs (list bison flex))
(inputs (list readline))
(home-page "https://www.ibiblio.org/pub/linux/devel/lang/c/")
(synopsis "Turn English phrases into C or C++ declarations and vice versa")
(description "@code{cdecl} is a program that turns English-like phrases into C
declarations. It can also translate C into pseudo-English. It also handles
type casts and C++. It has command-line editing and history with the GNU
Readline library.")
(license license:public-domain)))
(define-public cscope
(package
(name "cscope")
@ -953,3 +1046,30 @@ also be used for C++ code.
Using cscope, you can easily search for where symbols are used and defined.")
(license license:bsd-3)))
(define-public xenon
(package
(name "xenon")
(version "0.9.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xenon" version))
(sha256
(base32
"1f4gynjzfckm3rjfywwgz1c7icfx3zjqirf16aj73xv0c9ncpffj"))))
(build-system python-build-system)
(arguments (list #:tests? #f)) ;test suite not shipped with the PyPI archive
(inputs (list python-pyyaml python-radon python-requests))
(home-page "https://xenon.readthedocs.org/")
(synopsis "Monitor code metrics for Python on your CI server")
(description
"Xenon is a monitoring tool based on Radon. It monitors code complexity.
Ideally, @code{xenon} is run every time code is committed. Through command
line options, various thresholds can be set for the complexity of code. It
will fail (i.e. it will exit with a non-zero exit code) when any of these
requirements is not met.")
(license license:expat)))
(define-public python-xenon
(deprecated-package "python-xenon" xenon))

View File

@ -463,9 +463,11 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(version "0.9.26-1103-g6e62e0e")
(source (origin
(method url-fetch)
(uri (string-append
"http://lilypond.org/janneke/mes/20191117/"
"/tcc-" version ".tar.gz"))
(uri (list (string-append "mirror://gnu/guix/mirror/tcc-"
version ".tar.gz")
(string-append
"http://lilypond.org/janneke/mes/20191117/"
"/tcc-" version ".tar.gz")))
(sha256
(base32
"1qbybw7mxbgkv3sazvz1v7c8byq998vk8f1h25ik8w3d2l63lxng"))))
@ -3001,19 +3003,20 @@ memoized as a function of '%current-system'."
(define gnumach-headers-boot0
(with-boot0
(package-with-bootstrap-guile
(package
(inherit gnumach-headers)
(version "1.8-116-g28b53508")
(source (bootstrap-origin
(origin
(method url-fetch)
(uri (string-append "https://lilypond.org/janneke/hurd/"
"gnumach-" version ".tar.gz"))
(sha256
(base32
"006i0zgwy81vxarpfm12vip4q6i5mgmi5mmy5ldvxp5hx9h3l0zg")))))
(native-inputs '())))))
(package
(inherit gnumach-headers)
(version "1.8-116-g28b53508")
(source (bootstrap-origin
(origin
(method url-fetch)
(uri (list (string-append "mirror://gnu/guix/mirror/gnumach-"
version ".tar.gz")
(string-append "https://lilypond.org/janneke/hurd/"
"gnumach-" version ".tar.gz")))
(sha256
(base32
"006i0zgwy81vxarpfm12vip4q6i5mgmi5mmy5ldvxp5hx9h3l0zg")))))
(native-inputs '()))))
(define mig-boot0
(let* ((mig (package
@ -3030,14 +3033,15 @@ memoized as a function of '%current-system'."
(define hurd-version-boot0 "0.9-229-ga1efcee8")
(define hurd-source-boot0
(let ((version hurd-version-boot0))
(bootstrap-origin
(origin
(method url-fetch)
(uri (string-append "https://lilypond.org/janneke/hurd/"
"hurd-v" version ".tar.gz"))
(sha256
(base32
"0bq2q2jisxcy0kgcm6rz0z2fddwxxm7azsama7li28a2m08kdpzy"))))))
(origin
(method url-fetch)
(uri (list (string-append "mirror://gnu/guix/mirror/hurd-v"
version ".tar.gz")
(string-append "https://lilypond.org/janneke/hurd/"
"hurd-v" version ".tar.gz")))
(sha256
(base32
"0bq2q2jisxcy0kgcm6rz0z2fddwxxm7azsama7li28a2m08kdpzy")))))
(define hurd-headers-boot0
(let ((hurd-headers (package (inherit hurd-headers)

View File

@ -47,10 +47,10 @@
#:use-module (gnu packages web))
(define-public crun
(let ((commit "8e5757a4e68590326dafe8a8b1b4a584b10a1370"))
(let ((commit "c381048530aa750495cf502ddb7181f2ded5b400"))
(package
(name "crun")
(version "1.3")
(version "1.4.5")
(source
(origin
(method git-fetch)
@ -59,7 +59,7 @@
(commit commit)
(recursive? #t)))
(sha256
(base32 "01yiss2d57kwlxb7zlqzjwlg9fyaf19yjngd1mw9n4hxls3dfj3k"))
(base32 "0x2xmr5sv9ivvcv5fl5jjk4kq9b3n97s5hsqiqfwl4rz8qcz4xk1"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View File

@ -398,6 +398,11 @@ the wrong hands.")
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'unpack 'avoid-embedding-timestamp
;; Do not embed build timestamp
(lambda _
(substitute* "Makefile"
(("shell date") "shell true"))))
(add-after 'install 'install:static
(lambda _
(with-directory-excursion #$output

View File

@ -729,22 +729,16 @@ autocompletion and syntax highlighting.")
(define-public mycli
(package
(name "mycli")
(version "1.24.1")
(version "1.25.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "mycli" version))
(sha256
(base32 "0rij9nw20zhqr7cqnkm8daw8b1wdc9zb6ny1ji9qz5557nz9i3bl"))))
(base32 "0231v7f6q84mjmi1h0ni3s55m2g8p5d7x5q49bgkxlaz2bc2xwgy"))))
(build-system python-build-system)
(arguments
'(#:tests? #f ; tests expect a running MySQL
#:phases (modify-phases %standard-phases
(add-after 'unpack 'loosen-requirements
(lambda _
;; Permit newer versions of sqlparse.
(substitute* "setup.py"
(("<0\\.4\\.0") "<0.5.0")))))))
'(#:tests? #f)) ; tests expect a running MySQL
(propagated-inputs
(list python-cli-helpers
python-click
@ -1344,6 +1338,13 @@ pictures, sounds, or video.")
"src/loader/CMakeLists.txt")
(("\\$\\{PG_PKGLIBDIR\\}")
(string-append #$output "/lib")))))
(add-after 'unpack 'remove-kernel-version
;; Do not embed the running kernel version for reproducible
;; builds
(lambda _
(substitute* "src/config.h.in"
(("BUILD_OS_VERSION ..CMAKE_SYSTEM_VERSION.")
"BUILD_OS_VERSION \""))))
;; Run the tests after install to make it easier to create the
;; required PostgreSQL+TimescaleDB filesystem union.
(delete 'check)
@ -3212,6 +3213,37 @@ Memory-Mapped Database} (LMDB), a high-performance key-value store.")
(replace 'bootstrap
(lambda _
(invoke "sh" "autogen.sh")))
(add-after 'unpack 'avoid-embedding-kernel-and-timestamps
;; For a reproducible build, avoid embedding the kernel version and
;; timestamps.
(lambda _
(substitute*
(list "bin/makever"
"appsrc/ODS-Polls/make_vad.sh"
"appsrc/ODS-Blog/make_vad.sh"
"appsrc/ODS-Community/make_vad.sh"
"appsrc/ODS-Framework/make_vad.sh"
"appsrc/ODS-Framework/oauth/make_vad.sh"
"appsrc/ODS-WebMail/make_vad.sh"
"appsrc/ODS-Calendar/make_vad.sh"
"appsrc/ODS-Gallery/make_vad.sh"
"appsrc/ODS-Briefcase/make_vad.sh"
"appsrc/ODS-FeedManager/make_vad.sh"
"appsrc/ODS-Bookmark/make_vad.sh"
"appsrc/ODS-Addressbook/make_vad.sh"
"binsrc/dbpedia/make_vad.sh"
"binsrc/samples/demo/make_vad.sh"
"binsrc/samples/demo/mkdoc.sh"
"binsrc/samples/sparql_demo/make_vad.sh"
"binsrc/bpel/make_vad.sh"
"binsrc/fct/make_vad.sh"
"binsrc/rdf_mappers/make_vad.sh"
"binsrc/isparql/make_vad.sh"
"binsrc/conductor/mkvad.sh")
(("^UNAME_SYSTEM=.*") "UNAME_SYSTEM=unknown\n")
(("^UNAME_RELEASE=.*") "UNAME_RELEASE=unknown\n")
(("^PACKDATE=.*") "PACKDATE=2012-04-18\n")
(("^DATE=.*") "DATE=2012-04-18\n"))))
;; Even with "--enable-static=no", "libvirtuoso-t.a" is left in
;; the build output. The following phase removes it.
(add-after 'install 'remove-static-libs

View File

@ -31,14 +31,14 @@
(define-public dezyne
(package
(name "dezyne")
(version "2.15.0")
(version "2.15.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://dezyne.org/download/dezyne/"
name "-" version ".tar.gz"))
(sha256
(base32 "1sh9chg5q10c3bzsmgl1pb7pmdf04j2lqszhw8jk5qlxr9y8ybcq"))))
(base32 "0yid2a9xvp4hc7fry07zp0q2hva89czri6i1m2d1n22srh7r0my6"))))
(inputs (list bash-minimal
guile-3.0-latest
guile-json-4
@ -53,15 +53,6 @@
,@%gnu-build-system-modules)
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-tests
(lambda _
;; The mCRL2 output for these tests is unstable, i.e., varies
;; between different builds.
(substitute* "Makefile.in"
(("test/all/compliance_blocking_double_release ") " ")
(("test/all/illegal_external_nonsynchronous ") " ")
(("test/all/livelock_synchronous_illegal ") " ")
(("test/all/queuefull_external_sync ") " "))))
(add-before 'configure 'setenv
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")))

View File

@ -74,7 +74,7 @@
(define-public diffoscope
(package
(name "diffoscope")
(version "214")
(version "215")
(source
(origin
(method git-fetch)
@ -83,7 +83,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "05vzvs8yn963wzxmnqifj0zsa9scxcq3iqrq9msm0vqznb1xgp7q"))
(base32 "16pyqbyrfsxjnpmr9913x2brz3mxplhz62rxwix1c0p7afwjw835"))
(patches
(search-patches "diffoscope-fix-llvm-test.patch"))))
(build-system python-build-system)
@ -98,19 +98,19 @@
(add-after 'unpack 'embed-tool-references
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "diffoscope/comparators/utils/compare.py"
(("\\['xxd',")
(string-append "['" (which "xxd") "',")))
(substitute* "diffoscope/comparators/elf.py"
(("@tool_required\\('readelf'\\)") "")
(("get_tool_name\\('readelf'\\)")
(string-append "'" (which "readelf") "'")))
(("\\[\"xxd\",")
(string-append "[\"" (which "xxd") "\",")))
(substitute* "diffoscope/diff.py"
(("@tool_required\\(\"diff\"\\)") "")
(("get_tool_name\\(\"diff\"\\)")
(string-append "get_tool_name(\"" (which "diff") "\")")))
(substitute* "diffoscope/comparators/directory.py"
(("@tool_required\\('stat'\\)") "")
(("@tool_required\\('getfacl'\\)") "")
(("\\['stat',")
(string-append "['" (which "stat") "',"))
(("\\['getfacl',")
(string-append "['" (which "getfacl") "',")))))
(("@tool_required\\(\"stat\"\\)") "")
(("@tool_required\\(\"getfacl\"\\)") "")
(("\\[\"stat\",")
(string-append "[\"" (which "stat") "\","))
(("\\[\"getfacl\",")
(string-append "[\"" (which "getfacl") "\",")))))
(add-after 'build 'build-man-page
(lambda* (#:key (make-flags '()) #:allow-other-keys)
(apply invoke "make" "-C" "doc" make-flags)))
@ -147,7 +147,8 @@
python-magic
python-tlsh
acl ;for getfacl
colordiff
coreutils ;for stat
diffutils ;for diff
xxd))
(native-inputs
(append

View File

@ -988,7 +988,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
(define-public libblockdev
(package
(name "libblockdev")
(version "2.26")
(version "2.27")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/storaged-project/"
@ -996,7 +996,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
version "-1/libblockdev-" version ".tar.gz"))
(sha256
(base32
"0sg068jb87ljhn8yazrqxi6ri10ic2sh1lp6ikd2nqxc6l5y3h64"))))
"05rm9h8v30rahr245jcw6if6b5g16mb5hnz7wl1shzip0wky3k3d"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -1007,10 +1007,10 @@ to create devices with respective mappings for the ATARAID sets discovered.")
(substitute* "src/lib/blockdev.c"
(("/etc/libblockdev/conf.d/" path) (string-append out path)))))))))
(native-inputs
`(("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("util-linux" ,util-linux)))
(list gobject-introspection
pkg-config
python-wrapper
util-linux))
(inputs
(list btrfs-progs
cryptsetup

View File

@ -94,7 +94,7 @@
;;; Copyright © 2021 Yurii Kholodkov <urist.mckorobochka@gmail.com>
;;; Copyright © 2021 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2021, 2022 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Eugene Klimov <lipklim@mailbox.org>
;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
@ -109,6 +109,10 @@
;;; Copyright © 2022 Brandon Lucas <br@ndon.dk>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2022 Dominic Martinez <dom@dominicm.dev>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com>
;;; Copyright © 2022 Thomas Albers Raviola <thomas@thomaslabs.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1936,6 +1940,28 @@ can be referred to during the expression. This technique can improve clarity
in certain cases. It also enables recursion for anonymous functions.")
(license license:public-domain)))
(define-public emacs-xah-fly-keys
(package
(name "emacs-xah-fly-keys")
(version "17.13.20220526011611")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/xahlee/xah-fly-keys")
(commit "b1b1ea62c3f1a329376d9125592175cf2027ebc7")))
(file-name (git-file-name name version))
(sha256
(base32
"1gv8d9zgmhzjg6zk2a7y76dz30a3l91xb1p15vldka95faz197wn"))))
(build-system emacs-build-system)
(home-page "http://xahlee.info/emacs/misc/ergoemacs_vi_mode.html")
(synopsis "Modal keybinding system for Emacs, based on command frequency and
ergonomics")
(description "xah-fly-keys.el is a modal editing mode for Emacs, like Vi,
but the design of key/command choice is based on command frequency statistics
and ease-of-key score. Most frequently used commands have most easy keys.")
(license license:gpl3)))
(define-public emacs-xr
(package
(name "emacs-xr")
@ -3109,7 +3135,7 @@ of bibliographic references.")
(define-public emacs-corfu
(package
(name "emacs-corfu")
(version "0.22")
(version "0.25")
(source
(origin
(method git-fetch)
@ -3118,13 +3144,13 @@ of bibliographic references.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "062lxyqh7nfaixmgfgmqfbkainxc8ypdkj6qjq38xigk55s7c5wk"))))
(base32 "1brq8dfn4mx5mxyqqikmhwpwlqdrfq1z0wprm6awxr89xk506g77"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; Move the extensions source files to the top level, which is included in
;; the EMACSLOADPATH.
;; Move the extensions source files to the top level, which is included
;; in the EMACSLOADPATH.
(add-after 'unpack 'move-source-files
(lambda _
(let ((el-files (find-files "./extensions" ".*\\.el$")))
@ -3133,12 +3159,36 @@ of bibliographic references.")
el-files)))))))
(home-page "https://github.com/minad/corfu")
(synopsis "Completion overlay region function")
(description "Corfu enhances the default completion in region function
with a completion overlay. The current candidates are shown in a popup
overlay below or above the point. Corfu can be considered the minimalistic
(description
"Corfu enhances the default completion in region function with a completion
overlay. The current candidates are shown in a popup overlay below or above
the point. Corfu can be considered the minimalistic
@code{completion-in-region} counterpart of the Vertico minibuffer UI.")
(license license:gpl3+)))
(define-public emacs-corfu-doc
(package
(name "emacs-corfu-doc")
(version "0.6.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/galeo/corfu-doc")
(commit "f9566cf13f6730a45b2f3c12e491a3fa2097e5d5")))
(file-name (git-file-name name version))
(sha256
(base32 "098yf29yv1b11p7kvdc7n4ra7f5vcmf6nlvhl85jgwqrsdz1795b"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-corfu))
(home-page "https://github.com/galeo/corfu-doc")
(synopsis "Documentation popup for Corfu")
(description
"The @code{corfu-doc} package provides a way to display a documentation
popup for completion candidates when using @code{emacs-corfu}. It can
be regarded as @code{emacs-company-quickhelp} for @code{emacs-corfu}.")
(license license:gpl3+)))
(define-public emacs-cape
(package
(name "emacs-cape")
@ -8463,6 +8513,30 @@ transparent background. If you load it from a GUI, it will default to a
dark background.")
(license license:gpl3+)))
(define-public emacs-color-theme-modern
;; No release since October 2019
(let ((commit "74ad69bbca6fcfff3c0960d888c7c9c1f9f3e2e8")
(revision "1"))
(package
(name "emacs-color-theme-modern")
(version (git-version "0.0.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-jp/replace-colorthemes.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"13ff4s372wsl5x13vh4vywhi6qcc54gybhp6rxl0r1l4wxidanwn"))))
(build-system emacs-build-system)
(home-page "https://github.com/emacs-jp/replace-colorthemes")
(synopsis "Emacs color themes implemented via built-in customization")
(description "This package contains several themes that were originally
implemented with the venerable @code{color-themes} package, ported to Emacs'
built-in custom themes.")
(license license:gpl3+))))
(define-public emacs-gruvbox-theme
(package
(name "emacs-gruvbox-theme")
@ -12174,7 +12248,7 @@ extensions.")
(define-public emacs-evil-collection
(package
(name "emacs-evil-collection")
(version "0.0.7")
(version "0.0.8")
(source
(origin
(method git-fetch)
@ -12183,7 +12257,7 @@ extensions.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1f5mbg2k527brn6b7njdjizpbzj252c53crzl8sf2564czcprqj0"))))
(base32 "159i3qvjnp7jiffwpr517nnxcy3w3g40302vyzxvz6mb6qay6f2c"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-evil emacs-annalist))
@ -12964,6 +13038,30 @@ properties are set on a heading, and when it is changing from a TODO state to
a DONE state.")
(license license:gpl3+)))
(define-public emacs-toodoo
;; Package has no release. Version is extracted from "Version:" keyword in
;; main file, and commit below matches version bump.
(package
(name "emacs-toodoo")
(version "0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ChanderG/toodoo.el")
(commit "149a563863c2f728c5f903475dbce50547c51000")))
(file-name (git-file-name name version))
(sha256
(base32
"00q7aym0kl03j9m66pivgy0snxcjjg402049b2wdy18kgyypfvx8"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-transient emacs-evil))
(home-page "https://github.com/ChanderG/toodoo.el")
(synopsis "Magit-like interface for a Todo workflow built on top of Org")
(description "This package provides a minor mode for fast and easy management of Todos
using Org mode and transients.")
(license license:asl2.0)))
(define-public emacs-flx
(package
(name "emacs-flx")
@ -15731,6 +15829,30 @@ of commands is displayed in a handy popup.")
characters from end of lines.")
(license license:gpl3+)))
(define-public emacs-opencl-mode
;; Upstream never makes any formal releases, there is only v1.0.
;; Use the latest commit instead.
(let ((commit "15091eff92c33ee0d1ece40eb99299ef79fee92d")
(revision "1"))
(package
(name "emacs-opencl-mode")
(version (git-version "1.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/salmanebah/opencl-mode")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1zn6rr48w0ai0sn51zzyp546va6flfgf9lm12vfrdb6kkiiiq403"))))
(build-system emacs-build-system)
(synopsis "Emacs major mode for editing OpenCL kernels")
(description "This Emacs package provides the @code{opencl-mode} major
mode for editing OpenCL kernels. It supports syntax highlighting and online
access to the OpenCL documentation through the @code{opencl-lookup} function.")
(home-page "https://github.com/salmanebah/opencl-mode")
(license license:gpl3+))))
(define-public emacs-openwith
;; There is no release tag. Version is extracted from main file.
(let ((version "20120531")
@ -15809,29 +15931,26 @@ multiplexer.")
(license license:gpl3+)))
(define-public emacs-plz
(let ((commit "7e456638a651bab3a814e3ea81742dd917509cbb")
(revision "1"))
(package
(name "emacs-plz")
(version (git-version "0.1-pre" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alphapapa/plz.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "05kgxrps1s20im5hhq799nrs3615bvssm4r0ysgmwm203mmzsjgj"))))
(build-system emacs-build-system)
(inputs (list curl))
(home-page "https://github.com/alphapapa/plz.el")
(synopsis "HTTP library for Emacs")
(description
"This package provides HTTP library for Emacs. It uses curl as
a backend, which avoids some of the issues with using Emacss built-in url
library.")
(license license:gpl3+))))
(package
(name "emacs-plz")
(version "0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alphapapa/plz.el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0psdjmj1r4g57vhm6c4hajmma72jk893fk820fbjgjwqihr1bxx9"))))
(build-system emacs-build-system)
(inputs (list curl))
(home-page "https://github.com/alphapapa/plz.el")
(synopsis "HTTP library for Emacs")
(description
"This package provides HTTP library for Emacs. It uses Curl as a backend,
which avoids some of the issues with using Emacss built-in Url library.")
(license license:gpl3+)))
(define-public emacs-ement
(let ((commit "c951737dc855604aba389166bb0e7366afadc533")
@ -19699,7 +19818,7 @@ by the status of listed files.")
(define-public emacs-elm-mode
(package
(name "emacs-elm-mode")
(version "0.21.0")
(version "0.22.0")
(source
(origin
(method git-fetch)
@ -19709,7 +19828,7 @@ by the status of listed files.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0iwk4fmw8hq3ry4ky1zc7lgl4cpbnrjyk74c2xzddfspi3ks41fd"))))
(base32 "1gnr61ibzcznfqy5f8capmbz75rcfikwy106rjdmp45qz2jwp4di"))))
(propagated-inputs
(list emacs-dash emacs-f emacs-reformatter emacs-s))
(build-system emacs-build-system)
@ -20229,24 +20348,26 @@ functions.")
(license license:gpl3+)))
(define-public emacs-benchmark-init
(package
(name "emacs-benchmark-init")
(version "1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dholm/benchmark-init-el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1kyn1izm5sbqbp9whnhk9dn3yc7zy8bz5san5w3ivi3rpx15fh94"))))
(build-system emacs-build-system)
(home-page "https://github.com/dholm/benchmark-init-el")
(synopsis "Benchmark Emacs @code{require} and @code{load} calls")
(description "@code{benchmark-init} provides a way to keep track of where
(let ((commit "02435560415bbadbcf5051fb7042880549170e7e")
(revision "1"))
(package
(name "emacs-benchmark-init")
(version (git-version "1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dholm/benchmark-init-el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "19375vamhld4xm2qrdmhlp2nczfvalmz9x6ahl23zwkilr8n1nbw"))))
(build-system emacs-build-system)
(home-page "https://github.com/dholm/benchmark-init-el")
(synopsis "Benchmark Emacs @code{require} and @code{load} calls")
(description "@code{benchmark-init} provides a way to keep track of where
time is being spent during Emacs startup in order to optimize startup time.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-magit-gerrit
(package
@ -24824,6 +24945,34 @@ debug server. It is similar to the LSP but provides integration with
Debug server.")
(license license:gpl3+)))
(define-public emacs-bfuture
(package
(name "emacs-bfuture")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~plattfot/bfuture")
(commit (string-append "v" version))))
(sha256
(base32
"1m4v4xbsvg26z7nvg2c8q7x1nvv7v4ajm56l0nbkwcbdbrgahpva"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
(list #:tests? (not (%current-target-system))
#:test-command #~'("ert-runner")))
(native-inputs (list emacs-ert-runner))
(home-page "https://github.com/plattfot/bfuture.el")
(synopsis "Basic future concept for Emacs with Tramp support")
(description
"This package provides basic functions for spawning processes asynchronous in
Emacs and retrieving the output. It is similar to @code{emacs-pfuture} except
that this works over Tramp but the feature set is more limited. For example,
it cannot tell stdout and stderr apart.")
(license license:gpl3+)))
(define-public emacs-pfuture
(package
(name "emacs-pfuture")
@ -27131,8 +27280,8 @@ zip utility (default is @code{zip}).")
(define-public emacs-ox-gemini
;; No releases yet
(let ((commit "d88c10bcb10fc463fa5a2f6e29c8c94b75a314c0")
(revision "0"))
(let ((commit "168f820ea401fb813435a3a55af295873a4c110b")
(revision "1"))
(package
(name "emacs-ox-gemini")
(version (git-version "0" revision commit))
@ -27144,7 +27293,7 @@ zip utility (default is @code{zip}).")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1f8kbg5vjd1k7fak3v56b77yk612j6vmzx4xzx3m2vq3f0nyxq29"))))
(base32 "0jmiya3f9vv4v64p5kxla6wiiyv4wg4w7f4a6zmdrjcn11hflqmm"))))
(build-system emacs-build-system)
(home-page "https://sr.ht/~abrahms/ox-gemini")
(synopsis "Export Org files in Gemini format")
@ -27178,7 +27327,7 @@ producing output appropriate for Haunt's @code{html-reader}.")
(define-public emacs-ox-hugo
(package
(name "emacs-ox-hugo")
(version "0.8")
(version "0.12.1")
(source
(origin
(method git-fetch)
@ -27188,8 +27337,10 @@ producing output appropriate for Haunt's @code{html-reader}.")
(file-name (git-file-name name version))
(sha256
(base32
"11h464cyc28ld0b0zridgm4drydc1qjxbm1y24zrwlkyqqjk6yr7"))))
"0q4gyjzvxzw6a0phw2x2v9n43i28n3g9m7szwbhzch4j6ggxzcw4"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-tomelr))
(home-page "https://ox-hugo.scripter.co")
(synopsis "Hugo markdown back-end for Org export engine")
(description
@ -27662,7 +27813,9 @@ contrast and few colors.")
;; EMACSLOADPATH.
(for-each (lambda (f)
(rename-file f (basename f)))
(find-files "./themes" ".*\\.el$"))
(append
(find-files "./themes" ".*\\.el$")
(find-files "./extensions" ".*\\.el$")))
#t)))))
(synopsis "Wide collection of color themes for Emacs")
(description "Emacs-doom-themes contains numerous popular color themes for
@ -27673,7 +27826,7 @@ Emacs that integrate with major modes like Org-mode.")
(define-public emacs-modus-themes
(package
(name "emacs-modus-themes")
(version "2.3.3")
(version "2.4.0")
(source
(origin
(method git-fetch)
@ -27682,7 +27835,7 @@ Emacs that integrate with major modes like Org-mode.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "14nfb94y9vcnpmwj9acwl6h5v0h1c6swqf33ch4zimxxqgx9zrm4"))))
(base32 "0ia6r68fqbv64r9jm92vmqypq15nl8yy07n18hqrfbp1fy47zds1"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
@ -30353,6 +30506,62 @@ built-in generator package. It provides @code{iter2-defun} and
original package.")
(license license:gpl3+)))
(define-public emacs-bind-map
(let ((commit "510a24138d8de3b8df0783f1ac493a551fc9bd74")
(revision "0"))
(package
(name "emacs-bind-map")
(version (git-version "1.1.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/justbur/emacs-bind-map")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0crxjy1ykgb429z8ikjv5iy8vg5i0qn8n86p2lgri4glx45sxxx0"))))
(build-system emacs-build-system)
(home-page "https://github.com/justbur/emacs-bind-map")
(synopsis "Bind personal keymaps in multiple locations")
(description
"@code{emacs-bind-map} provides a macro bind-map which can be used to
make a keymap available across different leader keys including ones
tied to evil states. It is essentially a generalization of the idea
of a leader key as used in Vim or the @code{emacs-evil-leader} package,
and allows for an arbitrary number of leader keys.")
(license license:gpl3+))))
(define-public emacs-spaceleader
(let ((commit "35368b03c094399c487cce93ab5b7ac725bd04f5")
(revision "0"))
(package
(name "emacs-spaceleader")
(version (git-version "0.0.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mohkale/spaceleader")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1lg51y59z6igqjw3vgyjc5zw32j11xhzw8y0svlx3ry415b0lnls"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash
emacs-general
emacs-which-key
emacs-use-package
emacs-bind-map))
(home-page "https://github.com/mohkale/spaceleader")
(synopsis "Emacs leader key implementation from Spacemacs")
(description
"@code{emacs-spaceleader} replicates Spacemacs' leader key features,
without requiring all of Spacemacs. The @code{<Leader>} key, inspired by Vim,
provides an easy way to bind keys under a configurable prefix key.")
(license license:gpl3+))))
(define-public emacs-promise
(package
(name "emacs-promise")
@ -31084,6 +31293,25 @@ wraps GNU Global calls and integration to editor using this API with
project.el and xref.el.")
(license license:gpl3+))))
(define-public emacs-seq
(package
(name "emacs-seq")
(version "2.23")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/seq-" version ".tar"))
(sha256
(base32 "1lbxnrzq88z8k9dyylg2636pg9vc8bzfprs1hxwp9ah0zkvsn52p"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/seq.html")
(synopsis "Sequence manipulation functions")
(description
"This Emacs package provides sequence manipulation functions that
complement basic functions provided by @file{subr.el}. All its functions
are prefixed with @code{seq-} and work on lists, strings, and vectors.")
(license license:gpl3+)))
(define-public emacs-setup
(package
(name "emacs-setup")
@ -31107,6 +31335,28 @@ extended by the user via @code{setup-define}. A list of currently known
local macros are documented in the docstring for @code{setup}.")
(license license:gpl3+)))
(define-public emacs-tomelr
(package
(name "emacs-tomelr")
(version "0.4.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kaushalmodi/tomelr/")
(commit (string-append "v" version))))
(sha256
(base32 "03iih7arjlfg8gdp4v2xglas9z519q1s11l28igr8l0m5y0pdrnk"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-map emacs-seq))
(home-page "https://github.com/kaushalmodi/tomelr/")
(synopsis "Emacs-Lisp library for converting S-expressions to TOML")
(description
"This package provides the @code{tomelr-encode} function to convert a Lisp
data expression in Alist or Plist format to a TOML string.")
(license license:gpl3+)))
(define-public emacs-ed-mode
;; XXX: Upstream did not tag any commits yet.
(let ((commit "69f4fb34eca8df6a3bfe24bd8d8075551f0264ac")
@ -31195,6 +31445,43 @@ buffers using font locking and text properties. The package styles
headlines, keywords, tables and source blocks.")
(license license:gpl3+)))
(define-public emacs-pyimport
(let ((commit "a6f63cf7ed93f0c0f7c207e6595813966f8852b9")
(revision "0"))
(package
(name "emacs-pyimport")
(version (git-version "1.1" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Wilfred/pyimport")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1q5gqhvh4zq5dy8vns694warcz48j1hdnxg16sjck4gsi9xivbvs"))))
(build-system emacs-build-system)
(inputs
(list python-pyflakes))
(propagated-inputs
(list emacs-dash emacs-s emacs-shut-up))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-pyflakes-executable
(lambda* (#:key inputs #:allow-other-keys)
(let ((pyflakes (search-input-file inputs "/bin/pyflakes")))
(make-file-writable "pyimport.el")
(substitute* "pyimport.el"
(("\"pyflakes")
(string-append "\"" pyflakes)))))))))
(home-page "https://github.com/Wilfred/pyimport")
(synopsis "Manage Python imports from Emacs")
(description
"@code{emacs-pyimport} manages python imports from Emacs via @code{python-pyflakes}.")
(license license:gpl3+)))) ; License is in pyimport.el
(define-public emacs-osm
(package
(name "emacs-osm")
@ -31225,6 +31512,33 @@ zoomable and moveable map display, display of tracks and POIs from GPX files,
parallel fetching of tiles with cURL, and more.")
(license license:gpl3+)))
(define-public emacs-popon
;; Upstream does not tag releases. The commit below matches the version
;; bump.
(let ((commit "d16cb747d356eab3f1bc4061ecee473732f7b8bb"))
(package
(name "emacs-popon")
(version "0.4")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://codeberg.org/akib/emacs-popon")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1i5rp0gvcdqakzaznsh0lqzvlq5kif9q2grq4l80gl75dmqdpym7"))))
(build-system emacs-build-system)
(home-page "https://codeberg.org/akib/emacs-popon/")
(synopsis "Pop floating text on a window")
(description
"@code{emacs-popon} allows you to pop text on a window, what we call
a popon. Popons are window-local and sticky, they don't move while
scrolling, and they even don't go away when switching buffer, but you
can bind a popon to a specific buffer to only show on that buffer.")
(license license:gpl3+))))
(define-public emacs-bitbake-modes
(package
(name "emacs-bitbake-modes")

View File

@ -323,8 +323,8 @@ languages.")
(license license:gpl3+)))
(define-public emacs-next
(let ((commit "38d87c43c2ad727406dcfe316aac5e24e202c251")
(revision "0"))
(let ((commit "0a5477b448e6b62bcedc1803e531ec7686eea48d")
(revision "1"))
(package
(inherit emacs)
(name "emacs-next")
@ -339,7 +339,7 @@ languages.")
(file-name (git-file-name name version))
(sha256
(base32
"0h206asgaqfzhz36p78n23yj4p7kbr6a1f0j0njzxf0ypqrmw9yr"))))
"0dqmrawkvbypxp8gcnspnhhmfamzp3l62gfgp1pw2l6svz58v991"))))
(native-inputs
(modify-inputs (package-native-inputs emacs)
(prepend autoconf))))))

View File

@ -28,6 +28,7 @@
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -587,7 +588,7 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
(define-public electron-cash
(package
(name "electron-cash")
(version "4.2.7")
(version "4.2.10")
(source
(origin
(method git-fetch)
@ -596,68 +597,68 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1qiql2svjyxlgbg4c5b7grgsv8nx2cx33x3x13mvjjngjz3vgilv"))))
(base32 "0axpypq9byda61rp3sznrq24b24qxbfwk56j75qp06s1ackg0pcv"))))
(build-system python-build-system)
(inputs
`(("libevent" ,libevent)
("libsecp256k1" ,libsecp256k1-bitcoin-cash)
("openssl" ,openssl)
("python-cython" ,python-cython)
("python-dateutil" ,python-dateutil)
("python-dnspython" ,python-dnspython)
("python-ecdsa" ,python-ecdsa)
("python-hidapi" ,python-hidapi)
("python-jsonrpclib-pelix" ,python-jsonrpclib-pelix)
("python-keepkey" ,python-keepkey)
("python-pathvalidate" ,python-pathvalidate)
("python-protobuf" ,python-protobuf)
("python-pyaes" ,python-pyaes)
("python-pyqt" ,python-pyqt)
("python-pysocks" ,python-pysocks)
("python-qdarkstyle" ,python-qdarkstyle)
("python-qrcode" ,python-qrcode)
("python-requests" ,python-requests)
("python-stem" ,python-stem)
("python-trezor" ,python-trezor)
("qtsvg" ,qtsvg)
("zlib" ,zlib)))
(arguments
`(#:tests? #f ; no tests
#:modules ((guix build python-build-system)
(list
#:tests? #f ; no tests
#:modules '((guix build python-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%python-build-system-modules
#:imported-modules `(,@%python-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'create-output-directories
(lambda* (#:key outputs #:allow-other-keys)
;; setup.py installs to ~/.local/share if this doesn't exist.
(mkdir-p (string-append (assoc-ref outputs "out") "/share"))))
(add-after 'unpack 'use-libsecp256k1-input
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "electroncash/secp256k1.py"
(("library_paths = .* 'libsecp256k1.so.0'.")
(string-append "library_paths = ('"
(assoc-ref inputs "libsecp256k1")
"/lib/libsecp256k1.so.0'")))))
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "contrib/requirements/requirements.txt"
(("qdarkstyle==2\\.6\\.8")
"qdarkstyle"))))
(add-after 'install 'wrap-qt
(lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program "electron-cash" #:output out #:inputs inputs))
#t)))))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'create-output-directories
(lambda _
;; setup.py installs to ~/.local/share if this doesn't exist.
(mkdir-p (string-append #$output "/share"))))
(add-after 'unpack 'use-libsecp256k1-input
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "electroncash/secp256k1.py"
(("libsecp256k1.so.0")
(search-input-file inputs "lib/libsecp256k1.so.0")))))
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "contrib/requirements/requirements.txt"
(("qdarkstyle==2\\.6\\.8")
"qdarkstyle"))))
(add-after 'install 'wrap-qt
(lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program "electron-cash"
#:output out #:inputs inputs)))))))
(inputs
(list libevent
libsecp256k1-bitcoin-cash
openssl
python-cython
python-dateutil
python-dnspython
python-ecdsa
python-hidapi
python-jsonrpclib-pelix
python-keepkey
python-pathvalidate
python-protobuf
python-pyaes
python-pyqt
python-pysocks
python-qdarkstyle
python-qrcode
python-requests
python-stem
python-trezor
qtsvg
zlib))
(home-page "https://electroncash.org/")
(synopsis "Bitcoin Cash wallet")
(description
"Electroncash is a lightweight Bitcoin Cash client, based on a client-server
protocol. It supports Simple Payment Verification (SPV) and deterministic key
generation from a seed. Your secret keys are encrypted and are never sent to
other machines/servers. Electroncash does not download the Bitcoin Cash blockchain.")
other machines/servers. Electroncash does not download the Bitcoin Cash
blockchain.")
(license license:expat)))
(define-public monero
@ -875,14 +876,12 @@ the Monero GUI client.")
;; a built-in implementation supported in python-trezor-agent.
(lambda _
(substitute* "setup.py"
(("'backports.shutil_which>=3.5.1',") ""))
#t))
(("'backports.shutil_which>=3.5.1',") ""))))
(delete 'check)
(add-after 'install 'check
(lambda* (#:key outputs inputs #:allow-other-keys)
;; Make installed package available for running the tests.
(add-installed-pythonpath inputs outputs)
(invoke "py.test"))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-v")))))))
(propagated-inputs
(list python-configargparse
python-daemon
@ -1001,7 +1000,7 @@ Nano dongle.")
(define-public python-trezor
(package
(name "python-trezor")
(version "0.12.4")
(version "0.13.0")
(source
(origin
(method git-fetch)
@ -1010,7 +1009,7 @@ Nano dongle.")
(commit (string-append "python/v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k0zk94jnkhr4iyngjfhfvff5mibx265q81v8jhvhd3m4clzgc45"))
(base32 "1wy584bxx5p2av4lv1bx9hl1q0b5n7hqz0hnqb9shjriarvl5ckd"))
(modules
'((guix build utils)
(srfi srfi-26)
@ -1028,13 +1027,21 @@ Nano dongle.")
(string-append "./" file-name)))
(scandir "./python/"
(negate (cut member <> '("." "..") string=))))
(delete-file-recursively "./python")))))
(delete-file-recursively "./python")
;; Delete now broken symbolic links.
(for-each delete-file
(append (find-files "." "^CHANGELOG.unreleased$")
(find-files "." "^.towncrier.template.md$")))))))
(build-system python-build-system)
(propagated-inputs
(list python-attrs
python-click
;; TOOD: Use the latest click version after release 0.13.1 or later
;; is made (see:
;; https://github.com/trezor/trezor-firmware/issues/2199).
python-click-7
python-construct
python-ecdsa
python-hidapi
python-libusb1
python-mnemonic
python-requests
@ -1043,8 +1050,8 @@ Nano dongle.")
;; For tests.
(list protobuf
python-black
python-protobuf
python-isort
python-protobuf
python-pyqt
python-pytest))
(home-page "https://github.com/trezor/python-trezor")
@ -1104,7 +1111,7 @@ the KeepKey Hardware Wallet.")
(define-public trezor-agent
(package
(name "trezor-agent")
(version "0.11.0-1")
(version "0.14.4")
(source
(origin
(method git-fetch)
@ -1144,6 +1151,11 @@ the KeepKey Hardware Wallet.")
;; This package only has a Python script, not a Python module, so the
;; sanity-check phase can't work.
(delete 'sanity-check)
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.py"
(("'trezor\\[hidapi]>=0.12.0,<0.13'")
"'trezor[hidapi]>=0.13'"))))
(add-after 'wrap 'fixup-agent-py
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
@ -1806,7 +1818,7 @@ editing on the Web.")
(define-public quantlib
(package
(name "quantlib")
(version "1.24")
(version "1.26")
(source
(origin
(method url-fetch)
@ -1814,7 +1826,7 @@ editing on the Web.")
"https://github.com/lballabio/QuantLib/releases/download/QuantLib-v"
version "/QuantLib-" version ".tar.gz"))
(sha256
(base32 "1rxjhkc32a8z0g5gmh0iw5nx0fr31cjsrfgq7c8g6nib003kgnnx"))))
(base32 "1sbk6rg51x5xpa93xmqmrj32a1l9vba51xck0017cxzblg0nrzh4"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -103,6 +103,9 @@ reliability in mind.")
(sha256
(base32
"1389657cwgw5a3kljnqmhvfh4vr2gcr71dwz1mlhf22xq23hc82z"))
(patches
(search-patches
"ncftp-reproducible.patch"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -24,7 +24,7 @@
;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com>
;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info>
;;; Copyright © 2017, 2018, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
@ -71,6 +71,7 @@
;;; Copyright © 2022 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -3531,7 +3532,7 @@ are primarily in English, however some in other languages are provided.")
(define-public irrlicht
(package
(name "irrlicht")
(version "1.8.4")
(version "1.8.5")
(source (origin
(method url-fetch)
(uri (string-append
@ -3540,8 +3541,9 @@ are primarily in English, however some in other languages are provided.")
"/" version "/irrlicht-" version ".zip"))
(sha256
(base32
"0cz4z4dwrv5ypl19ll67wl6jjpy5k6ly4vr042w4br88qq5jhazl"))
(patches (search-patches "irrlicht-use-system-libs.patch"))
"0gagjh2l3a3m8hsixxhhhan3m5xl7735ka8m4g79jl4qsgp7pyzg"))
(patches (search-patches "irrlicht-use-system-libs.patch"
"irrlicht-link-against-needed-libs.patch"))
(modules '((guix build utils)))
(snippet
'(begin
@ -3555,8 +3557,7 @@ are primarily in English, however some in other languages are provided.")
"source/Irrlicht/zlib"))
(delete-file "source/Irrlicht/glext.h")
(delete-file "source/Irrlicht/glxext.h")
(delete-file "source/Irrlicht/wglext.h")
#t))))
(delete-file "source/Irrlicht/wglext.h")))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -3564,33 +3565,39 @@ are primarily in English, however some in other languages are provided.")
(add-after 'unpack 'chdir-to-source
(lambda _
;; The actual source is buried a few directories deep.
(chdir "source/Irrlicht/")
#t))
(chdir "source/Irrlicht/")))
(add-after 'chdir-to-source 'remove-<sys/sysctl.h>
(lambda _
(substitute* "COSOperator.cpp"
(("#include <sys/sysctl.h>") ""))))
(add-after 'chdir-to-source 'delete-broken-install-rule
(lambda _
(substitute* "Makefile"
;; We neither build nor want a static library. Skip it.
((".*\\bcp .*\\$\\(STATIC_LIB\\).*") ""))))
(add-after 'chdir-to-source 'fix-build-env
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("INSTALL_DIR = /usr/local/lib")
(string-append "INSTALL_DIR = " out "/lib"))
;; Add '-fpermissive' to the CXXFLAGS
;; Add '-fpermissive' to the CXXFLAGS.
(("-Wall") "-Wall -fpermissive")) ; CImageLoaderJPG.cpp
;; The Makefile assumes these directories exist.
(mkdir-p (string-append out "/lib"))
(mkdir-p (string-append out "/include")))))
(delete 'configure)) ; no configure script
#:tests? #f ; no check target
#:make-flags '("CC=gcc" "sharedlib")))
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
"sharedlib")))
(inputs
`(("bzip2" ,bzip2)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libx11" ,libx11)
("libxxf86vm" ,libxxf86vm)
("mesa" ,mesa)))
(list bzip2
libjpeg-turbo
libpng
libx11
libxxf86vm
mesa))
(synopsis "3D game engine written in C++")
(description
"The Irrlicht Engine is a high performance realtime 3D engine written in
@ -3600,6 +3607,25 @@ for common mesh file formats, and collision detection.")
(home-page "https://irrlicht.sourceforge.io/")
(license license:zlib)))
(define-public irrlicht-for-minetest
(package
(inherit irrlicht)
(name "irrlicht-for-minetest")
(version "1.9.0mt5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest/irrlicht")
(commit version)))
(sha256
(base32
"1jxk1x0f60n8lrz8a6x62aj2pqg0qnbajsld3lqncvwsfbi0xjx1"))))
(build-system cmake-build-system)
(arguments
;; No check target.
(list #:tests? #f))))
(define-public mars
;; The latest release on SourceForge relies on an unreleased version of SFML
;; with a different API, so we take the latest version from the official
@ -7658,7 +7684,13 @@ original.")
(base32 "1f2zif3s6vddbhph4jr1cymdsn7gagg59grrxs0yap6myqmy8shg"))))
(build-system cmake-build-system)
(arguments
(list #:test-target "check"
(list #:configure-flags
#~(let ((fortunes (string-append #$output "/share/fortunes")))
(list (string-append "-DLOCALDIR=" fortunes)
(string-append "-DLOCALODIR=" fortunes "/off")
(string-append "-DCOOKIEDIR=" fortunes)
(string-append "-DOCOOKIEDIR=" fortunes "/off")))
#:test-target "check"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'enter-build-directory
@ -7683,16 +7715,13 @@ original.")
(with-output-to-file "tests/scripts/split-valgrind.pl"
(const #t))))
(add-after 'install 'fix-install-directory
(lambda* (#:key outputs #:allow-other-keys)
;; Move binary from "games/" to "bin/" and remove the
;; latter. This is easier than patching CMakeLists.txt
;; since the tests hard-code the location as well.
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(games (string-append out "/games")))
(rename-file (string-append games "/fortune")
(string-append bin "/fortune"))
(rmdir games)))))))
;; Move fortune from "games/" to "bin/" and remove the
;; former. This is easier than patching CMakeLists.txt
;; since the tests hard-code the location as well.
(lambda _
(with-directory-excursion #$output
(rename-file "games/fortune" "bin/fortune")
(rmdir "games")))))))
(inputs (list recode))
(native-inputs
(list perl
@ -12059,7 +12088,7 @@ protect you.")
(define-public 7kaa
(package
(name "7kaa")
(version "2.15.4p1")
(version "2.15.5")
(source
(origin
(method url-fetch)
@ -12067,7 +12096,7 @@ protect you.")
"releases/download/v" version "/"
"7kaa-" version ".tar.xz"))
(sha256
(base32 "1y7v0jhp3apb619p7asikqr1dnwb2yxbh40wbx1ppmr5f03mq9ph"))))
(base32 "0axbv14fh87hwjabrb3zv7ivj88rs6kd2xq6s9qlpsszk20jc2im"))))
(build-system gnu-build-system)
(native-inputs
(list gettext-minimal pkg-config))
@ -12650,6 +12679,31 @@ Magic II (aka HOMM2) game engine. It requires assets and game resources to
play; it will look for them at @file{~/.local/share/fheroes2} folder.")
(license license:gpl2)))
(define-public apricots
(package
(name "apricots")
(version "0.2.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/moggers87/apricots")
(commit (string-append "v" version))))
(sha256
(base32 "0vis217hhnb9fbs9sf8mmcm71qp44kr3xqmffc1gdiixvi90c781"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs (list autoconf ; autom4te used in ./bootstrap
automake ; aclocal used in ./bootstrap
cppcheck))
(inputs (list freealut openal sdl2))
(home-page "https://github.com/moggers87/apricots")
(synopsis "Arcade airplane game")
(description "@code{apricots} is a game where you fly a little plane
around the screen and shoot things and drop bombs on enemy targets. It's
meant to be quick and fun.")
(license license:gpl2+)))
(define-public liquidwar6
(package
(name "liquidwar6")
@ -12690,3 +12744,35 @@ liquid and you have to try and eat your opponents. Rules are very simple yet
original, they have been invented by Thomas Colcombet.")
(home-page "https://www.gnu.org/software/liquidwar6/")
(license license:gpl3+)))
(define-public freerct
(package
(name "freerct")
(version "0.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FreeRCT/FreeRCT")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1szwy2cq4ffp4yxm9pp9vdyia0i5nz0wnppdd1xb9w7v3wa4mywi"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f))
(native-inputs (list flex bison))
(inputs (list libpng sdl2 sdl2-ttf))
(home-page "https://freerct.net/")
(synopsis "Theme park management simulation game")
(description
"FreeRCT is a game that captures the look and feel of the popular games
RollerCoaster Tycoon 1 and 2, graphics- and gameplay-wise.
In this game, you play as a manager of a theme park, allowing you to make a
park of your dreams. The list of responsiblities includes managing staff,
finances, landscaping, and most importantly: rides. Good managers follow the
principle of prioritizing the guests' happiness with a well-maintained park.
Should they go unwise, a theme park plunge into chaos with vandalizing guests
and unsafe rides. Which path will you take?")
(license license:gpl2)))

View File

@ -739,6 +739,71 @@ enables you to easily do operations in Python that would otherwise
require a spatial database such as PostGIS.")
(license license:bsd-3)))
(define-public python-osmnx
(package
(name "python-osmnx")
(version "1.1.2")
(source
(origin
; Fetch from github as the pypi package is missing the tests dir.
(method git-fetch)
(uri (git-reference
(url "https://github.com/gboeing/osmnx")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n8qjn184p5a2s3j6x6iyc1i7p3l3xnbqqxm6ajwgwv6j5fw1d5a"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
; TODO: Disable network tests
(invoke "pytest" "tests"
"-k"
(string-append
;; The following tests require network access.
"not test_geocode_to_gdf"
" and not test_stats"
" and not test_osm_xml"
" and not test_elevation"
" and not test_routing"
" and not test_plots"
" and not test_find_nearest"
" and not test_api_endpoints"
" and not test_graph_save_load"
" and not test_graph_from_functions"
" and not test_geometries"))))))))
(propagated-inputs
(list python-folium
python-geopandas
python-matplotlib
python-networkx
python-numpy
python-pandas
python-pyproj
python-requests
python-rtree
python-shapely))
(native-inputs
(list python-numpy python-pytest))
(home-page "https://github.com/gboeing/osmnx")
(synopsis
"Retrieve, model, analyze, and visualize OpenStreetMap street networks")
(description
"OSMnx is a Python library that lets you download geospatial data
from OpenStreetMap and model, project, visualize, and analyze real-world
street networks and any other geospatial geometries. You can download
and model walkable, drivable, or bikeable urban networks with a single
line of Python code then easily analyze and visualize them. You can
just as easily download and work with other infrastructure types,
amenities/points of interest, building footprints, elevation data,
street bearings/orientations, and speed/travel time.")
(license license:expat)))
(define-public mapnik
(package
(name "mapnik")
@ -1486,27 +1551,28 @@ persisted.
(define-public python-rtree
(package
(name "python-rtree")
(version "0.9.7")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Rtree" version))
(sha256
(base32 "0gna530vy6rh76035cqh7i2lx199cvxjrzjczg9rm6k96k5751xy"))))
(base32 "10lnhf67c9pb0yisxdqmb52dy6lj1za1h9d4p69v0ihk2a138j6h"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'find-libspatialindex
(lambda* (#:key inputs #:allow-other-keys)
(setenv "SPATIALINDEX_C_LIBRARY"
(string-append (assoc-ref inputs "libspatialindex")
"/lib/libspatialindex.so"))))
(let ((libspatialindex (assoc-ref inputs "libspatialindex")))
(substitute* "rtree/finder.py"
(("find_library\\(\"spatialindex_c\"\\)")
(string-append "\"" libspatialindex
"/lib/libspatialindex_c.so\""))))))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(lambda* (#:key outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "-m" "pytest")))))))
(invoke "pytest")))))))
(native-inputs
(list python-numpy python-pytest python-wheel))
(inputs

View File

@ -190,7 +190,7 @@ simple and consistent.")
(define-public papirus-icon-theme
(package
(name "papirus-icon-theme")
(version "20210101")
(version "20220508")
(source
(origin
(method git-fetch)
@ -198,12 +198,11 @@ simple and consistent.")
(url "https://github.com/PapirusDevelopmentTeam/papirus-icon-theme")
(commit version)))
(sha256
(base32
"0w6qg3zjhfvjg1gg5inranf8ianb4mrp0jm9qgi6hg87ig1rashs"))
(base32 "0rpcniaw8xbn23q67m26vgx3fynn4v056azrfp63lxdh46gfsvmc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
'(#:tests? #f ; no test suite
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
@ -211,7 +210,7 @@ simple and consistent.")
(delete 'configure)
(delete 'build))))
(native-inputs
`(("gtk+:bin" ,gtk+ "bin")))
(list `(,gtk+ "bin")))
(home-page "https://git.io/papirus-icon-theme")
(synopsis "Fork of Paper icon theme with a lot of new icons and a few extras")
(description "Papirus is a fork of the icon theme Paper with a lot of new icons

View File

@ -4065,14 +4065,15 @@ Hints specification (EWMH).")
(define-public goffice
(package
(name "goffice")
(version "0.10.50")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/goffice/"
(version-major+minor version) "/"
"goffice-" version ".tar.xz"))
(sha256
(base32 "1p5zbj7cbcfcxd6l8pnph54p6ah1bwf146y810j4bcq8ggf3sp1c"))))
(version "0.10.52")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/goffice/"
(version-major+minor version) "/"
"goffice-" version ".tar.xz"))
(sha256
(base32 "0344k0ffndd79as3c4nfq3mia7mrds6aq2jg76drdw3h8gcyzfb0"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 4.0 MiB of gtk-doc
@ -4083,8 +4084,7 @@ Hints specification (EWMH).")
(inputs
(list gtk+ libgsf librsvg libxslt libxml2))
(native-inputs
(list intltool
`(,glib "bin") pkg-config))
(list intltool `(,glib "bin") pkg-config))
(home-page "https://developer.gnome.org/goffice/")
(synopsis "Document-centric objects and utilities")
(description "A GLib/GTK+ set of document-centric objects and utilities.")
@ -4124,7 +4124,7 @@ Hints specification (EWMH).")
(define-public gnumeric
(package
(name "gnumeric")
(version "1.12.50")
(version "1.12.52")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnumeric/"
@ -4132,7 +4132,7 @@ Hints specification (EWMH).")
"gnumeric-" version ".tar.xz"))
(sha256
(base32
"1f0lrj5msg80pgjp38jj6rddf352gwddgip7z4lki66n3fx1k23m"))))
"0fw201j0sks95wgvns3vydgprhwf6z4v4xb2a0ldi892k8277kvk"))))
(build-system glib-or-gtk-build-system)
(arguments
`(;; The gnumeric developers don't worry much about failing tests.
@ -4164,12 +4164,12 @@ Hints specification (EWMH).")
python-pygobject
zlib))
(native-inputs
`(("bison" ,bison)
("docbook-xml" ,docbook-xml)
("intltool" ,intltool)
("itstool" ,itstool)
("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config)))
(list bison
docbook-xml
`(,glib "bin")
intltool
itstool
pkg-config))
(home-page "http://www.gnumeric.org")
(synopsis "Spreadsheet application")
(description
@ -4948,7 +4948,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(define-public five-or-more
(package
(name "five-or-more")
(version "3.32.2")
(version "3.32.3")
(source
(origin
(method url-fetch)
@ -4956,7 +4956,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(version-major+minor version) "/"
"five-or-more-" version ".tar.xz"))
(sha256
(base32 "19pf8wzbf3ciqf2k4bj9sddvyhckfd62x86pnqr6s8h4vn9jc6ii"))))
(base32 "1x4ys18rn37hsavivh532py2avj9686aycnn8ys29cyyxwpdf41d"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@ -4965,19 +4965,17 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") (which "true")))
#t)))))
(("gtk-update-icon-cache") (which "true"))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("appstream-glib" ,appstream-glib)
("desktop-file-utils" ,desktop-file-utils)
("glib:bin" ,glib "bin") ; for glib-compile-resources
("intltool" ,intltool)
("itstool" ,itstool)
("vala" ,vala)
("xmllint" ,libxml2)))
(list appstream-glib
desktop-file-utils
`(,glib "bin") ; for glib-compile-resources
intltool
itstool
pkg-config
vala))
(inputs
(list gtk+ libgnome-games-support librsvg))
(list gtk+ libgnome-games-support librsvg libxml2))
(home-page "https://wiki.gnome.org/Apps/Five%20or%20more")
(synopsis "Logic puzzle game")
(description "Five or More is a game where you try to align
@ -4989,7 +4987,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(define-public gnome-mines
(package
(name "gnome-mines")
(version "40.0")
(version "40.1")
(source
(origin
(method url-fetch)
@ -4997,7 +4995,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(version-major version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0sf6kdvhr4pr3hddnj6ql9larz2wy108sri31id6x9g459nbly8z"))))
(base32 "0whjwdxhyw5bvibd9qvpm2yc5g7yhy8h3rn027kv5cqwyyryj0im"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -5008,17 +5006,16 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(substitute* "build-aux/meson_post_install.py"
(("gtk-update-icon-cache") (which "true"))))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-resources
("pkg-config" ,pkg-config)
("desktop-file-utils" ,desktop-file-utils)
("intltool" ,intltool)
("itstool" ,itstool)
("python" ,python-wrapper) ; for meson_post_install.py
("vala" ,vala)
("yelp" ,yelp)
("appstream-glib" ,appstream-glib)))
(list appstream-glib
desktop-file-utils
`(,glib "bin") ; for glib-compile-resources
intltool
itstool
pkg-config
python-wrapper ; for meson_post_install.py
vala))
(inputs
(list gtk+ libgnome-games-support librsvg))
(list gtk+ libgnome-games-support librsvg yelp))
(home-page "https://wiki.gnome.org/Apps/Mines")
(synopsis "Minesweeper game")
(description
@ -8788,7 +8785,7 @@ core C library, and bindings for Python (PyGTK).")
(define-public gnome-autoar
(package
(name "gnome-autoar")
(version "0.4.1")
(version "0.4.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -8796,11 +8793,10 @@ core C library, and bindings for Python (PyGTK).")
name "-" version ".tar.xz"))
(sha256
(base32
"03hmm7cjgjvyxlflghfa89s1amj16qapl2c9pv0r2bfrp87dasv4"))))
"124y4j3wgb6axgfzw9f00865r033fg7b0qy9qgfsp5ilan4hgpvv"))))
(build-system meson-build-system)
(native-inputs
(list gobject-introspection
`(,glib "bin") pkg-config))
(list gobject-introspection `(,glib "bin") pkg-config))
(propagated-inputs
(list libarchive)) ; Required by gnome-autoar-0.pc
(inputs
@ -12523,7 +12519,7 @@ world.")
(define-public ocrfeeder
(package
(name "ocrfeeder")
(version "0.8.3")
(version "0.8.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/ocrfeeder/"
@ -12531,7 +12527,7 @@ world.")
"ocrfeeder-" version ".tar.xz"))
(sha256
(base32
"12f5gnq92ffnd5zaj04df7jrnsdz1zn4zcgpbf5p9qnd21i2y529"))))
"1vaaphzk6zn7pp2x9scphdzlbsma910wnbhd9xry50nx95cjlgdh"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -12548,8 +12544,7 @@ world.")
"/site-packages")))
(wrap-program prog
`("PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH") ,pylib))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
#t))))))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-resources
("gobject-introspection" ,gobject-introspection)

View File

@ -89,8 +89,8 @@ list.")
(string-append source "/maintain.texi"))
(invoke "makeinfo" "--output" info-dir
(string-append source "/standards.texi"))
(invoke "gzip" (string-append info-dir "/maintain.info"))
(invoke "gzip" (string-append info-dir "/standards.info"))))))
(invoke "gzip" "-n" (string-append info-dir "/maintain.info"))
(invoke "gzip" "-n" (string-append info-dir "/standards.info"))))))
(home-page "https://www.gnu.org/prep/standards/")
(synopsis "GNU coding standards and maintainer information")
(description "The GNU Coding Standards were written by Richard Stallman

View File

@ -303,7 +303,15 @@ applications and libraries. It is used by AqBanking.")
(arguments
`(;; Parallel building fails because aqhbci is required before it's
;; built.
#:parallel-build? #f))
#:parallel-build? #f
#:phases
(modify-phases %standard-phases
;; Embed the package version instead of the build date
(add-after 'unpack 'use-version-instead-of-date
(lambda _
(substitute*
"src/libs/plugins/backends/aqhbci/header.xml.in"
(("@DATETIME@") ,version)))))))
(propagated-inputs
(list gwenhywfar))
(inputs

View File

@ -6,7 +6,7 @@
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
@ -69,6 +69,7 @@
#:use-module (gnu packages web)
#:use-module (gnu packages xiph)
#:use-module (gnu packages backup)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@ -161,16 +162,18 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd
(package
(name "libmicrohttpd")
(version "0.9.73")
(version "0.9.75")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz"))
(sha256
(base32
"0bh39irwzkv48fkw43skfgkk8ka3793bx1lm21sgw6zxi0djyyx3"))
(patches (search-patches "libmicrohttpd-0.9.73-test-ssl3.patch"))))
"1fz3ljqfvfyfb5inzihy66bys22id9jgsi4nmcd3j6spdxx90y4j"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list "--disable-static")))
(inputs
(list curl gnutls/dane libgcrypt openssl zlib))
(synopsis "C library implementing an HTTP 1.1 server")

View File

@ -13,7 +13,7 @@
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
@ -992,14 +992,14 @@ them to transform your existing public key into a secret key.")
(define-public pgpdump
(package
(name "pgpdump")
(version "0.34")
(version "0.35")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.mew.org/~kazu/proj/pgpdump/pgpdump-"
version ".tar.gz"))
(sha256
(base32 "080ayqqxb13ngpg6zvaipszwnjadafw3ni7w7gg189cmh3lab7cq"))))
(base32 "0kslr62h3wazg4x0l38lsmswvh2dizpnwcrdsmqz62b3plnr40jf"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ; no make check

View File

@ -977,11 +977,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20220503000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20220531000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "91.9.0")
(version "91.10.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1260,7 +1260,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
,(let ((changeset "8b44d29de6525d6379f163f50c1a900d4540ef1b"))
,(let ((changeset "4a4b901410a9055d078d0cdd7c62b2b5d56ffbad"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1269,10 +1269,10 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"1k7zy53il3i4k2k7mc33j0wsgpjrsghmmj6afs14hk9j95byvayy")))))
"0i2wpi08jfksqqc0j6q362nyk3zmlqd5ds2w7mm74infvrw6fzzq")))))
("cargo" ,rust "cargo")
("clang" ,clang-11)
("llvm" ,llvm-11)
("clang" ,clang)
("llvm" ,llvm)
("m4" ,m4)
("nasm" ,nasm)
("node" ,node)

View File

@ -990,7 +990,7 @@ application suites.")
cups
graphene
harfbuzz
iso-codes
iso-codes/official ;XXX TODO core-updates: use iso-codes
json-glib-minimal
libxml2
rest))

View File

@ -607,73 +607,36 @@ Unix-style DSV format and RFC 4180 format.")
(propagated-inputs `(("guile-lib" ,guile2.2-lib)))))
(define-public guile-fibers-1.1
;; Pick one commit above 1.1.0, which fixes a bug that's critical for the
;; Shepherd: <https://github.com/wingo/fibers/pull/57>.
(let ((commit "c25dcb9cc4b5b977474ffe555b40ce2f1d0d1edc")
(revision "0"))
(package
(name "guile-fibers")
(version (git-version "1.1.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wingo/fibers")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1jwr0y5x8mv8fm4df2vc3ll38fwwbkrm2iwfsfxa8l783a1a6143"))
(patches
(search-patches "guile-fibers-wait-for-io-readiness.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'support-cross-compilation
(lambda* (#:key target #:allow-other-keys)
;; Support cross-compilation. These issues are fixed in
;; Fibers commit c4756b9c336374546a41ac90a4431fcc8f7e98ee
;; and this phase can be removed for 1.1.1.
(when target
(substitute* "build-aux/guile.am"
(("\\$\\(AM_V_GEN\\)" all)
(string-append all " FIBERS_CROSS_COMPILING=yes "))
(("compile")
(string-append "compile --target=" target
" -L $(abs_top_srcdir)")))
(substitute* "fibers/epoll.scm"
(("\\(dynamic-call")
"(unless (getenv \"FIBERS_CROSS_COMPILING\") (dynamic-call")
(("\\(dynamic-link.*" all)
(string-append all ")\n"))
(("#,(%sizeof|%offsetof)" _ prefix)
prefix)))))
(add-after 'install 'mode-guile-objects
(lambda* (#:key outputs #:allow-other-keys)
;; .go files are installed to "lib/guile/X.Y/cache".
;; This phase moves them to "…/site-ccache".
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib/guile"))
(old (car (find-files lib "^ccache$"
#:directories? #t)))
(new (string-append (dirname old)
"/site-ccache")))
(rename-file old new)
#t))))))
(native-inputs
(list texinfo pkg-config autoconf automake libtool
guile-3.0 ;for 'guild compile
;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'
gettext-minimal))
(inputs
(list guile-3.0)) ;for libguile-3.0.so
(supported-systems
;; This version requires 'epoll' and is thus limited to Linux-based
;; systems, but this may change soon:
;; <https://github.com/wingo/fibers/pull/53>.
(filter (cut string-suffix? "-linux" <>) %supported-systems))
(synopsis "Lightweight concurrency facility for Guile")
(description
"Fibers is a Guile library that implements a a lightweight concurrency
(package
(name "guile-fibers")
(version "1.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wingo/fibers")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ll63d7202clapg1k4bilbnlmfa4qvpjnsd7chbkka4kxf5klilc"))
(patches
(search-patches "guile-fibers-wait-for-io-readiness.patch"))))
(build-system gnu-build-system)
(native-inputs
(list texinfo pkg-config autoconf automake libtool
guile-3.0 ;for 'guild compile
;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'
gettext-minimal))
(inputs
(list guile-3.0)) ;for libguile-3.0.so
(supported-systems
;; This version requires 'epoll' and is thus limited to Linux-based
;; systems, but this may change soon:
;; <https://github.com/wingo/fibers/pull/53>.
(filter (cut string-suffix? "-linux" <>) %supported-systems))
(synopsis "Lightweight concurrency facility for Guile")
(description
"Fibers is a Guile library that implements a a lightweight concurrency
facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is
like a \"goroutine\" from the Go language: a lightweight thread-like
abstraction. Systems built with Fibers can scale up to millions of concurrent
@ -683,9 +646,9 @@ communication between fibers.
Note that Fibers makes use of some Guile 2.1/2.2-specific features and
is not available for Guile 2.0.")
(home-page "https://github.com/wingo/fibers")
(properties '((upstream-name . "fibers")))
(license license:lgpl3+))))
(home-page "https://github.com/wingo/fibers")
(properties '((upstream-name . "fibers")))
(license license:lgpl3+)))
(define-public guile-fibers
(package
@ -4009,7 +3972,7 @@ over, or update a value in arbitrary data structures.")
(define-public guile-xapian
(package
(name "guile-xapian")
(version "0.1.0")
(version "0.2.0")
(home-page "https://git.systemreboot.net/guile-xapian")
(source
(origin
@ -4019,14 +3982,7 @@ over, or update a value in arbitrary data structures.")
(file-name (git-file-name name version))
(sha256
(base32
"16k61f1jn3g48jaf3730b9l0izr5j933jzyri73nmcnjd09gm35i"))
(modules '((guix build utils)))
(snippet
;; Guile >= 3.0.7 no longer uses libltdl so we need to explicitly add
;; ".libs" so that 'load-extension' finds the '.so' file.
'(substitute* "pre-inst-env.in"
(("^LD_LIBRARY_PATH=.*$")
"LD_LIBRARY_PATH=\"$abs_top_builddir/.libs\"\n")))))
"140cwzpzk4y16ajxrg5zd2d7q60f5ivx5jk8w1h0qfjq2mp14sh7"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Evgeny Pisemsky <evgeny@pisemsky.com>
@ -13,6 +13,7 @@
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Marcel Kupiec <formbi@protonmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -113,7 +114,7 @@ sets, and tools to deal with register databases.")
(define-public hwinfo
(package
(name "hwinfo")
(version "21.80")
(version "21.81")
(home-page "https://github.com/openSUSE/hwinfo")
(source
(origin
@ -124,14 +125,14 @@ sets, and tools to deal with register databases.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "07058vjqdcd3la8y4b92f7fvcqxvmw1p0q4lg5kcn85pvbbg52ag"))
(base32 "0iyx1fb66s6b5ai4agw91nvl9wwk7z8g6y475vry3wv80dngzc43"))
(modules
'((guix build utils)))
(snippet
`(begin
;; Remove git2log program file.
(delete-file "git2log")
;; Remove variables that depends on git2log.
;; Remove variables that depend on git2log.
(substitute* "Makefile"
(("GIT2LOG.*\\:=.*$") "")
(("GITDEPS.*\\:=.*$") "")
@ -141,7 +142,7 @@ sets, and tools to deal with register databases.")
(lambda (port)
(format port ,version)))))))
(build-system gnu-build-system)
(outputs '("out" "dev" "doc"))
(outputs '("out" "lib" "doc"))
(arguments
`(#:tests? #f ; no test-suite available
#:phases
@ -149,10 +150,10 @@ sets, and tools to deal with register databases.")
(add-after 'unpack 'patch
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dev (assoc-ref outputs "dev"))
(lib (assoc-ref outputs "lib"))
(doc (assoc-ref outputs "doc"))
(incl-dir (string-append dev "/include"))
(lib-dir (string-append dev "/lib"))
(incl-dir (string-append lib "/include"))
(lib-dir (string-append lib "/lib"))
(sbin-dir (string-append out "/sbin"))
(share-dir (string-append out "/share"))
(doc-dir (string-append doc "/share/doc")))
@ -172,16 +173,16 @@ sets, and tools to deal with register databases.")
(("/usr/sbin") sbin-dir)
(("/usr/share") share-dir)
(("\\$\\(DESTDIR\\)/sbin ") ""))
;; Add output "dev" to the run-path.
;; Add the "lib" output to the run-path.
(substitute* "Makefile.common"
(("-Lsrc")
(string-append "-Lsrc " "-Wl,-rpath=" lib-dir)))
;; Correct program name of the lexical analyzer.
(substitute* "src/isdn/cdb/Makefile"
(("lex isdn_cdb.lex") "flex isdn_cdb.lex"))
;; Patch pkgconfig file to point to output "dev".
;; Patch pkg-config file to point to the "lib" output.
(substitute* "hwinfo.pc.in"
(("/usr") dev)))))
(("/usr") lib)))))
(delete 'configure)
(replace 'build
(lambda _
@ -270,14 +271,14 @@ RGB animations.")
(define-public ddcutil
(package
(name "ddcutil")
(version "1.2.1")
(version "1.2.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ddcutil.com/tarballs/"
"ddcutil-" version ".tar.gz"))
(sha256
(base32 "0fp7ffjn21p0bsc5b1ipf3dbpzwn9g6j5dpnwdnca052ifzk2w7i"))))
(base32 "18fbd45h2r3r702dvmlmyrwgs3ymr4mhm4f12lgv9jqb5csalbw2"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
@ -314,7 +315,7 @@ calibrated, and restored when the calibration is applied.")
(define-public ddcui
(package
(name "ddcui")
(version "0.1.2")
(version "0.2.1")
(source
(origin
(method git-fetch)
@ -323,7 +324,7 @@ calibrated, and restored when the calibration is applied.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0myma1zw6dlygv3xbin662d91zcnwss10syf12q2fppkrd8qdgqf"))))
(base32 "0a9xfv80dpimx9wi9igjbbfydyfsgnbk6dv1plhjzyp2a9shdibb"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; No test suite
@ -375,6 +376,43 @@ through the Display Data Channel Command Interface (@dfn{DDC/CI}) protocol.")
human-readable format and checks if it conforms to the standards.")
(license license:expat))))
(define-public h-client
(let ((commit "63ff4a3bf9c3c3b6297091e08192d34991465431")
(revision "0"))
(package
(name "h-client")
(version (git-version "0.0a0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
;; Use this Python 3 fork until the changes have been reviewed
;; and integrated into the official Savannah repository (in
;; progress).
(url "https://git.sr.ht/~apteryx/h-client")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0c6s96a1zmsnn7bnfhm790c1fr8sid0zdyh9mwig4y6ffn83czh5"))))
(build-system python-build-system)
(inputs
(list gdk-pixbuf
gtk+
pciutils
python-pycurl
python-pygobject
usbutils))
(synopsis "Graphical client for the h-node hardware database project")
(description
"The h-node project (https://www.h-node.org) aims to build a database of
hardware that works with fully free operating systems. h-client is a GTK+
graphical client that is able to retrieves information on the hardware inside
the computer it's running on, and on peripherals connected to it, and helps
you submit that information to the h-node project along with whether the
hardware works with a fully free operating system or not.")
(home-page "https://savannah.nongnu.org/projects/h-source/")
(license license:gpl3+))))
(define-public headsetcontrol
(package
(name "headsetcontrol")

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
@ -34,7 +34,7 @@
(define-public hexedit
(package
(name "hexedit")
(version "1.5")
(version "1.6")
(source (origin
(method git-fetch)
(uri (git-reference
@ -43,7 +43,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1sfa4i374n1xrz2ivvzcd8jzc296ly11x1713s4bplvszcqpw6dv"))))
"00l8vazbjzdg09azp6w3nzq4rl7qyh06i65dh621r6zaprp0z23w"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
@ -57,8 +57,7 @@
(string-append "\"" (assoc-ref inputs "man-db") "/bin/man\""))
(("\"hexedit\"")
(string-append "\"" (assoc-ref outputs "out")
"/share/man/man1/hexedit.1.gz\"")))
#t)))))
"/share/man/man1/hexedit.1.gz\""))))))))
(native-inputs
(list autoconf automake))
(inputs

View File

@ -9,7 +9,7 @@
;;; Copyright © 2014, 2017 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
@ -511,15 +511,18 @@ official designation is ISO/IEC 29199-2). This library is an implementation of t
(define-public jpegoptim
(package
(name "jpegoptim")
(version "1.4.6")
(source (origin
(method url-fetch)
(uri (string-append "http://www.kokkonen.net/tjko/src/jpegoptim-"
version ".tar.gz"))
(sha256 (base32
"1dss7907fclfl8zsw0bl4qcw0hhz6fqgi3867w0jyfm3q9jfpcc8"))))
(version "1.4.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tjko/jpegoptim")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06f6d08xvmsiki4mc1qs985gsjqmsxx793a93b72y25q84wbg9x9"))))
(build-system gnu-build-system)
(inputs `(("libjpeg" ,libjpeg-turbo)))
(inputs (list libjpeg-turbo))
(arguments
'(#:tests? #f)) ; no tests
(synopsis "Optimize JPEG images")

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -29,7 +29,9 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages python))
(define-public iso-codes
(define-public iso-codes/official
;; This package variant is intended for external use, such as users running
;; guix install, where any deviation from ISO gospel might be harmful.
(package
(name "iso-codes")
(version "4.5.0")
@ -77,6 +79,25 @@ changes in the ISO standard and will not work with outdated
information.")
(license license:gpl2+))) ; some bits use the lgpl2
(define-public iso-codes
;; This package should be used universally within Guix, e.g., as an input to
;; other Guix packages or in the Guix System installer's country selector.
(hidden-package
(package
(inherit iso-codes/official)
(source
(origin
(inherit (package-source iso-codes/official))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* (find-files "." "\\.po$")
(("#.*Name for TWN,.*") "")
(("^msgid \"Taiwan, .*") "# Guix doesn't use "))
(substitute* "data/iso_3166-1.json"
(("(Taiwan), [^\"]*" _ name) name))))))
(synopsis "Various ISO standards as used by GNU@tie{}Guix"))))
(define-public python-iso639
(package
(name "python-iso639")

View File

@ -837,6 +837,12 @@ and vice versa.")
`(#:phases
(modify-phases
%standard-phases
(add-after 'unpack 'remove-build-dates
;; Avoid embedding build date for reproducible builds
(lambda _
(substitute*
"build.properties"
(("..implementation.date.") ""))))
(replace 'check
(lambda* (#:key tests? inputs native-inputs
#:allow-other-keys)

View File

@ -62,6 +62,7 @@
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Rene Saavedra <nanuui@protonmail.com>
;;;
;;; This file is part of GNU Guix.
@ -111,6 +112,7 @@
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages gperf)
@ -9226,3 +9228,41 @@ older system-wide @file{/sys} interface.")
"This tool turns @command{ldd} into a tree and explains how shared
libraries are found or why they cannot be located.")
(license license:expat)))
(define-public touchegg
(package
(name "touchegg")
(version "2.0.14")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JoseExposito/touchegg")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0shvslz0c8nqx5f988z55qjc9xw0in9rb7b19r6vr1f7cdkqb6yr"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No tests exist
#:configure-flags
(list "-DUSE_SYSTEMD=OFF"))) ; No systemd
(native-inputs
(list
pkg-config))
(inputs
(list
cairo
gtk+
libgudev
libinput
libxrandr
libxtst
pugixml))
(home-page "https://github.com/JoseExposito/touchegg")
(synopsis "Multitouch gesture recognizer")
(description
"Touchégg is an application that runs in the background and transform the
gestures you make on your touchpad or touchscreen into visible actions in your
desktop.")
(license license:gpl3+)))

View File

@ -541,10 +541,10 @@ output), and Binutils.")
("libc-static" ,glibc "static")))))
(define %llvm-monorepo-hashes
'(("14.0.3" . "0makhpbrg46m2gi8wyp5h21ln4mgilahh3clk4d1b2ln2ck3v7m8")))
'(("14.0.4" . "1y4yvx749cn3gkpc9kf48xbd2wc2lry8x5zdpk3sbrkqs8vrji4q")))
(define %llvm-patches
'(("14.0.3" . ("clang-14.0-libc-search-path.patch"))))
'(("14.0.4" . ("clang-14.0-libc-search-path.patch"))))
(define (llvm-monorepo version)
(origin
@ -559,7 +559,7 @@ output), and Binutils.")
(define-public llvm-14
(package
(name "llvm")
(version "14.0.3")
(version "14.0.4")
(source (llvm-monorepo version))
(build-system cmake-build-system)
(outputs '("out" "opt-viewer"))
@ -647,7 +647,7 @@ of programming tools as well as libraries with equivalent functionality.")
(package-version llvm-14)))
(sha256
(base32
"188hh6l956gkl6hgjzzdraj5jp538zhhhllxvy23gml6slrmbj7j"))))))
"1vcgmvh0r28a1z87p3y4h2326zi8liq7l9mcfvmx22x9bmbcpfn8"))))))
(package
(inherit template)
(arguments
@ -1176,7 +1176,7 @@ of programming tools as well as libraries with equivalent functionality.")
(define-public lld-14
(package
(name "lld")
(version "14.0.3")
(version "14.0.4")
(source (llvm-monorepo version))
(build-system cmake-build-system)
(inputs

View File

@ -46,6 +46,7 @@
;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2022 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2022 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2022 Thiago Jung Bauermann <bauermann@kolabnow.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -555,7 +556,7 @@ aliasing facilities to work just as they would on normal mail.")
(define-public mutt
(package
(name "mutt")
(version "2.2.5")
(version "2.2.6")
(source (origin
(method url-fetch)
(uri (list
@ -565,7 +566,7 @@ aliasing facilities to work just as they would on normal mail.")
version ".tar.gz")))
(sha256
(base32
"0ivyfld4a4sfzsdiaajqiarvfx4i85g1smbb2b5dqjkrb48pi2zz"))
"1lw8111wbsw4hkvrlfsd2cf2l1j25vqwbzys07z0ding2wsxk8pz"))
(patches (search-patches "mutt-store-references.patch"))))
(build-system gnu-build-system)
(inputs
@ -1157,7 +1158,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
(define-public mu
(package
(name "mu")
(version "1.6.10")
(version "1.6.11")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/djcb/mu/releases/"
@ -1165,7 +1166,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
"mu-" version ".tar.xz"))
(sha256
(base32
"1dh0x4lqnjflb0k8fybr5clqjxv35scf055g1590pr5znam29hhb"))))
"13gchks9znyw0axw1wlks7f7h4442rfagmj7kx0jm3qhvi0b5sk0"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -2887,6 +2888,14 @@ powerful user customization features.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-build-timestamps
;; Avoid embedding timestamps for reproducible build
(lambda _
(substitute*
(list
"devtools/bin/configure.sh"
"cf/sh/makeinfo.sh")
(("on `date`") ""))))
(add-before 'build 'replace-/bin/sh
(lambda _
(substitute*
@ -3943,8 +3952,8 @@ It is a replacement for the @command{urlview} program.")
(license license:gpl2+)))
(define-public mumi
(let ((commit "f5232c49fe8a3b127c96f7b502775f16aebf3033")
(revision "7"))
(let ((commit "9b28ec7d152623692877bcb767e5c654e59e57ed")
(revision "8"))
(package
(name "mumi")
(version (git-version "0.0.1" revision commit))
@ -3956,7 +3965,7 @@ It is a replacement for the @command{urlview} program.")
(file-name (git-file-name name version))
(sha256
(base32
"1dc4m7l9mmi7lm0cfmyf5yg6bkpirsvmfq347sf1ch1svg5r7y9n"))))
"1njnzqv4h2msfa86qfbvm54vfdwlikwzs4134fcffcf4l86bs9fl"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@ -4069,7 +4078,7 @@ Git and exports them in maildir format or to an MDA through a pipe.")
(define-public public-inbox
(package
(name "public-inbox")
(version "1.6.1")
(version "1.8.0")
(source
(origin (method git-fetch)
(uri (git-reference
@ -4077,19 +4086,20 @@ Git and exports them in maildir format or to an MDA through a pipe.")
(commit (string-append "v" version))))
(sha256
(base32
"0mlwnp5knr7rk9kv8grlh342wsq2193m22zs83cjn9p7x9r2x5f9"))
"0xni1l54v1z3p0zb52807maay0yqabp8jgf5iras5zmhgjyk3swz"))
(file-name (git-file-name name version))))
(build-system perl-build-system)
(arguments
'(#:phases
'(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'configure 'qualify-paths
(lambda _
(lambda* (#:key inputs #:allow-other-keys)
;; Use absolute paths for 'xapian-compact'.
(let ((xapian-compact (which "xapian-compact")))
(substitute* "script/public-inbox-compact"
(("xapian-compact") xapian-compact)))
#t))
(substitute* "lib/PublicInbox/Xapcmd.pm"
(("'xapian-compact'")
(format #f "'~a'" (search-input-file inputs
"/bin/xapian-compact"))))))
(add-before 'check 'pre-check
(lambda _
(substitute* "t/spawn.t"
@ -4100,8 +4110,7 @@ Git and exports them in maildir format or to an MDA through a pipe.")
;; XXX: This test fails due to zombie process is not reaped by
;; the builder.
(substitute* "t/httpd-unix.t"
(("^SKIP: \\{") "SKIP: { skip('Guix');"))
#t))
(("^SKIP: \\{") "SKIP: { skip('Guix');"))))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -4115,15 +4124,16 @@ Git and exports them in maildir format or to an MDA through a pipe.")
;; 'git' is invoked in various files of the PublicInbox
;; perl module.
`("PATH" ":" prefix
(,(dirname (search-input-file inputs "/bin/git"))))))
(find-files (string-append out "/bin"))))
#t)))))
(,(dirname (search-input-file inputs "/bin/git"))
,(dirname (search-input-file inputs "/bin/curl"))))))
(find-files (string-append out "/bin")))))))))
(native-inputs
(list xapian
;; For testing.
(list ;; For testing.
lsof openssl))
(inputs
(list git
(list bash-minimal
curl
git
perl-dbd-sqlite
perl-dbi
perl-email-address-xs
@ -4135,6 +4145,7 @@ Git and exports them in maildir format or to an MDA through a pipe.")
perl-plack-middleware-reverseproxy
perl-plack
perl-search-xapian
perl-socket-msghdr
perl-timedate
perl-uri-escape
perl-inline-c
@ -4145,7 +4156,8 @@ Git and exports them in maildir format or to an MDA through a pipe.")
;; ("highlight" ,highlight)
;; For testing.
perl-ipc-run
perl-xml-feed))
perl-xml-feed
xapian))
(home-page "https://public-inbox.org/README.html")
(synopsis "Archive mailing lists in Git repositories")
(description

View File

@ -1724,7 +1724,18 @@ HDF5 file is encoded according to the HDF File Format Specification.")
(base32
"14ddy2xnb6sgp4hiax9v5sv4pr4l4dd4ps76nfha3nrpr1ikhcqm"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; Tests require googletest *sources*
(arguments `(#:tests? #f ; Tests require googletest *sources*
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-man-page-date
(lambda _
(substitute* "itpp-config.1.cmake.in"
((".PACKAGE_DATE.") "2012-04-18"))))
(add-before 'build 'set-force-source-date
;; for reproducible dates, texlive needs this to respect respect
;; SOURCE_DATE_EPOCH
(lambda _
(setenv "FORCE_SOURCE_DATE" "1"))))))
(inputs (list lapack fftw))
;; FIXME: Even though the fonts are available dvips complains:
;; "Font cmmi10 not found; characters will be left blank."
@ -3822,14 +3833,14 @@ sparse system of linear equations A x = b using Gaussian elimination.")
(define-public ruby-asciimath
(package
(name "ruby-asciimath")
(version "2.0.1")
(version "2.0.4")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "asciimath" version))
(sha256
(base32
"1aapydwwkydbwgz07n7ma3a5jy9n3v0shy6q6j8mi4wr3crhx45a"))))
"1fy2jrn3gr7cl33qydp3pwyfilcmb4m4z6hfhnvydzg8r3srp36j"))))
(build-system ruby-build-system)
(native-inputs
(list ruby-nokogiri ruby-rspec))

View File

@ -211,7 +211,7 @@ homeserver and generally help bootstrap the ecosystem.")
(list python-aiofiles
python-aiohttp
python-aiohttp-socks
python-atomicwrites-1.4
python-atomicwrites
python-cachetools
python-future
python-h11

View File

@ -98,14 +98,14 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(define-public nyacc
(package
(inherit nyacc-0.99)
(version "1.06.5")
(version "1.07.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/nyacc/nyacc-"
version ".tar.gz"))
(sha256
(base32
"1fbzz9bm4mkz4j40l2z02zjlbqj82dmv2ayz83zl3j8gj6z3lpdg"))
"01qb6h6bk684z8xda5d71q5f5l2z3q9jjz36if3jbpjc7b8dxjap"))
(modules '((guix build utils)))
(snippet
'(substitute* "configure"

View File

@ -34,6 +34,7 @@
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2063,45 +2064,10 @@ is also scriptable and extensible via Guile.")
(home-page "https://www.gnu.org/software/freetalk/")
(license license:gpl3+)))
(define-public libmesode
(package
(name "libmesode")
(version "0.10.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/profanity-im/libmesode")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1bxnkhrypgv41qyy1n545kcggmlw1hvxnhwihijhhcf2pxd2s654"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-make
(lambda _
(substitute* "Makefile.am"
(("'\\^xmpp_'") "'.'"))
#t)))))
(inputs
(list expat openssl))
(native-inputs
(list autoconf automake libtool pkg-config))
(synopsis "C library for writing XMPP clients")
(description "Libmesode is a fork of libstrophe for use with Profanity
XMPP Client. In particular, libmesode provides extra TLS functionality such as
manual SSL certificate verification.")
(home-page "https://github.com/profanity/libmesode")
;; Dual-licensed.
(license (list license:gpl3+ license:x11))))
(define-public libstrophe
(package
(name "libstrophe")
(version "0.10.1")
(version "0.12.0")
(source
(origin
(method git-fetch)
@ -2110,17 +2076,23 @@ manual SSL certificate verification.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11d341avsfr0z4lq15cy5dkmff6qpy91wkgzdpfdy31l27pa1g79"))))
(base32 "1apply301lxyjax2677bd5mc0a3233nm5qb7fiqpawq2n7vh17v0"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")
(list #:configure-flags '(list "--disable-static")
#:phases
(modify-phases %standard-phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-make
(lambda _
(substitute* "Makefile.am"
(("'\\^xmpp_'") "'.'"))
#t)))))
#t))
(add-after 'install-licence-files 'install-extra-licence-files
(lambda _
(let ((license-directory (string-append #$output
"/share/doc/"
#$name "-" #$version "/")))
(install-file "MIT-LICENSE.txt" license-directory)))))))
(inputs
(list expat openssl))
(native-inputs
@ -2129,23 +2101,23 @@ manual SSL certificate verification.")
(description "Libstrophe is a minimal XMPP library written in C. It has
almost no external dependencies, only an XML parsing library (expat or libxml
are both supported).")
(home-page "http://strophe.im/libstrophe")
(home-page "https://strophe.im/libstrophe/")
;; Dual-licensed.
(license (list license:gpl3+ license:x11))))
(define-public profanity
(package
(name "profanity")
(version "0.11.1")
(version "0.12.1")
(source
(origin
(method url-fetch)
(uri
(string-append "https://profanity-im.github.io/profanity-"
(string-append "https://profanity-im.github.io/tarballs/profanity-"
version ".tar.gz"))
(sha256
(base32
"0idx0a5g077a57q462w01m0h8i4vyvabzlj87p8527wpqbv4s6vg"))))
"0vihmlzxr6n3y6v0vdzzxh5p1i09p0hx6sd1b2pnpcgkgcg4hi73"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags
@ -2167,26 +2139,26 @@ are both supported).")
libtool
pkg-config))
(inputs
`(("curl" ,curl)
("expat" ,expat)
("glib" ,glib)
("gpgme" ,gpgme)
("gtk+" ,gtk+-2)
("libgcrypt" ,libgcrypt)
("libmesode" ,libmesode)
("libnotify" ,libnotify)
("libotr" ,libotr)
("libsignal-protocol-c" ,libsignal-protocol-c)
;; ("libxss" ,libxss)
("ncurses" ,ncurses)
("openssl" ,openssl)
("python" ,python-wrapper)
("readline" ,readline)
("sqlite" ,sqlite)))
(list curl
expat
glib
gpgme
gtk+-2
libgcrypt
libnotify
libotr
libsignal-protocol-c
libstrophe
ncurses
openssl
python-wrapper
readline
sqlite))
(synopsis "Console-based XMPP client")
(description "Profanity is a console based XMPP client written in C
using ncurses and libmesode, inspired by Irssi.")
(home-page "https://profanity-im.github.io")
(properties `((release-monitoring-url . ,home-page)))
(license license:gpl3+)))
(define-public libircclient

View File

@ -6,7 +6,7 @@
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 20192021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Trevor Hass <thass@okstate.edu>
;;; Copyright © 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020, 2021, 2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; This file is part of GNU Guix.
;;;
@ -26,6 +26,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages audio)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages games)
@ -41,6 +42,7 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xorg)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
@ -51,7 +53,7 @@
(define-public minetest
(package
(name "minetest")
(version "5.4.1")
(version "5.5.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -60,11 +62,8 @@
(file-name (git-file-name name version))
(sha256
(base32
"062ilb7s377q3hwfhl8q06vvcw2raydz5ljzlzwy2dmyzmdcndb8"))
"042v71gkk0xfixcsn82az2fri0n28fgf9d2zcz31bijqmg5q7imj"))
(modules '((guix build utils)))
(patches
(search-patches
"minetest-add-MINETEST_MOD_PATH.patch"))
(snippet
'(begin
;; Delete bundled libraries.
@ -72,42 +71,49 @@
#t))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list "-DRUN_IN_PLACE=0"
"-DENABLE_FREETYPE=1"
"-DENABLE_GETTEXT=1"
"-DENABLE_SYSTEM_JSONCPP=TRUE"
(string-append "-DIRRLICHT_INCLUDE_DIR="
(assoc-ref %build-inputs "irrlicht")
"/include/irrlicht")
(string-append "-DCURL_INCLUDE_DIR="
(assoc-ref %build-inputs "curl")
"/include/curl"))
(list
#:configure-flags
#~(list "-DRUN_IN_PLACE=0"
"-DENABLE_FREETYPE=1"
"-DENABLE_GETTEXT=1"
"-DENABLE_SYSTEM_JSONCPP=TRUE"
(string-append "-DIRRLICHTMT_INCLUDE_DIR="
(search-input-directory %build-inputs
"include/irrlichtmt"))
(string-append "-DCURL_INCLUDE_DIR="
(search-input-directory %build-inputs
"include/curl"))
(string-append "-DZSTD_INCLUDE_DIR="
(dirname
(search-input-file %build-inputs
"include/zstd.h")))
(string-append "-DZSTD_LIBRARY="
(search-input-file %build-inputs
"lib/libzstd.so")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/filesys.cpp"
;; Use store-path for "rm" instead of non-existing FHS path.
(("\"/bin/rm\"")
(string-append "\"" (assoc-ref inputs "coreutils") "/bin/rm\"")))
(substitute* "src/CMakeLists.txt"
;; Let minetest binary remain in build directory.
(("set\\(EXECUTABLE_OUTPUT_PATH .*\\)") ""))
(substitute* "src/unittest/test_servermodmanager.cpp"
;; do no override MINETEST_SUBGAME_PATH
(("(un)?setenv\\(\"MINETEST_SUBGAME_PATH\".*\\);")
"(void)0;"))
(setenv "MINETEST_SUBGAME_PATH"
(string-append (getcwd) "/games")) ; for check
#t))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
;; Thanks to our substitutions, the tests should also run
;; when invoked on the target outside of `guix build'.
(when tests?
(setenv "HOME" "/tmp")
(invoke "src/minetest" "--run-unittests")))))))
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/filesys.cpp"
;; Use store-path for "rm" instead of non-existing FHS path.
(("\"/bin/rm\"")
(format #f "~s" (search-input-file inputs "bin/rm"))))
(substitute* "src/CMakeLists.txt"
;; Let minetest binary remain in build directory.
(("set\\(EXECUTABLE_OUTPUT_PATH .*\\)") ""))
(substitute* "src/unittest/test_servermodmanager.cpp"
;; do no override MINETEST_SUBGAME_PATH
(("(un)?setenv\\(\"MINETEST_SUBGAME_PATH\".*\\);")
"(void)0;"))
(setenv "MINETEST_SUBGAME_PATH" ; for check
(string-append (getcwd) "/games"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
;; Thanks to our substitutions, the tests should also run
;; when invoked on the target outside of `guix build'.
(when tests?
(setenv "HOME" "/tmp")
(invoke "src/minetest" "--run-unittests")))))))
(native-search-paths
(list (search-path-specification
(variable "MINETEST_SUBGAME_PATH")
@ -118,23 +124,24 @@
(native-inputs
(list pkg-config))
(inputs
`(("coreutils" ,coreutils)
("curl" ,curl)
("freetype" ,freetype)
("gettext" ,gettext-minimal)
("gmp" ,gmp)
("irrlicht" ,irrlicht)
("jsoncpp" ,jsoncpp)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("libxxf86vm" ,libxxf86vm)
("luajit" ,luajit)
("mesa" ,mesa)
("ncurses" ,ncurses)
("openal" ,openal)
("sqlite" ,sqlite)))
(list coreutils
curl
freetype
gettext-minimal
gmp
irrlicht-for-minetest
jsoncpp
libjpeg-turbo
libpng
libogg
libvorbis
libxxf86vm
luajit
mesa
ncurses
openal
sqlite
`(,zstd "lib")))
(propagated-inputs
(list minetest-data))
(synopsis "Infinite-world block sandbox game")
@ -159,22 +166,11 @@ in different ways.")
(file-name (git-file-name name version))
(sha256
(base32
"0i45lbnikvgj9kxdp0yphpjjwjcgp4ibn49xkj78j5ic1s9n8jd4"))))
(build-system trivial-build-system)
(native-inputs
`(("source" ,source)))
"12cpaiww148szvnrc8r8cffwvl33smnrl7k29sh401yv0pbqi3j8"))))
(build-system copy-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils))
(let ((install-dir (string-append
%output
"/share/minetest/games/minetest_game")))
(mkdir-p install-dir)
(copy-recursively
(assoc-ref %build-inputs "source")
install-dir)
#t))))
(list #:install-plan
#~'(("." "/share/minetest/games/minetest_game"))))
(synopsis "Main game data for the Minetest game engine")
(description
"Game data for the Minetest infinite-world block sandbox game.")
@ -208,25 +204,65 @@ as swords and tools made of different materials. It also adds copper rails.")
(license license:zlib)
(properties `((upstream-name . "Calinou/moreores")))))
(define-public minetest-sound-api-core
(package
(name "minetest-sound-api-core")
;; No tags, no releases. The author intended to let users use it as a
;; submodules for other projects.
;; https://github.com/mt-mods/basic_materials/issues/4
(version "2022-02-27")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mt-mods/sound_api_core")
(commit "6956e49e775f325116f8e0c643899c089c691e1e")))
(sha256
(base32 "1ys6g2skhkksa4cx9agxhsibj5js8z4y2q1ngis9ddr38p756pcy"))
(file-name (git-file-name name version))
(snippet
'(begin
(call-with-output-file "mod.conf"
(lambda (port)
(format port "\
name = sound_api_core")))))))
(build-system minetest-mod-build-system)
(propagated-inputs '())
(home-page "https://github.com/mt-mods/sound_api_core")
(synopsis "Core for game agnostic sounds")
(description
"This library can be used to get some specific sounds, whatever the game.")
(license license:expat)))
(define-public minetest-basic-materials
(package
(name "minetest-basic-materials")
;; Upstream uses dates as version numbers.
(version "2021-12-26")
(version "2022-03-28")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mt-mods/basic_materials")
(commit "0893974b054a2191b5e2d5447ee4fc73f9c35f6a")))
(commit "9d55f9916d20779ecbf93c7e95dae8adebd2079b")))
(sha256
(base32 "0p4nnfsjv7284zmgr781zkyjbp049wp1jy1l7n585zzj181ns57p"))
(file-name (git-file-name name version))))
(base32 "0nzx5mdw26mk2by14hxyvbqckgz8k67vlh2ch30skssvh4984bjw"))
(file-name (git-file-name name version))
(snippet
'(begin
(use-modules (guix build utils))
(substitute* "mod.conf"
(("optional_depends =")
"depends = sound_api_core
optional_depends ="))
(substitute* "nodes.lua"
(("basic_materials.modpath \\.\\. \"/sound_api_core/init.lua\"")
"minetest.get_modpath(\"sound_api_core\") .. \"/init.lua\""))))))
(build-system minetest-mod-build-system)
(propagated-inputs
;; basic_materials:silver_wire cannot be crafted without
;; moreores:silver_ingot.
(list minetest-moreores))
(list minetest-moreores minetest-sound-api-core))
(home-page (minetest-topic 21000))
(synopsis "Some \"basic\" materials and items for other Minetest mods to use")
(description
@ -299,15 +335,15 @@ special items, intending to make an interesting adventure.")
(name "minetest-homedecor-modpack")
;; Upstream doesn't tag releases, so use the release title from
;; ContentDB as version.
(version "2021-12-26")
(version "2022-05-18")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mt-mods/homedecor_modpack")
(commit "a8fceb249d63f081855cfba1fbd6e2aa86365224")))
(commit "5ffdc26673169e05492141709fbb18e8fb6e5937")))
(sha256
(base32 "1lqcycgkykd86853jjr50m1qv2as2dlqf52gbds4mhiafslnp9mi"))
(base32 "03pf254r3hnznklw7lf3q4rzqg0a1y4c9rjjhzssf1q7ai5pdrkn"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(propagated-inputs
@ -326,8 +362,8 @@ and a variety of other stuff.")
(define-public minetest-mesecons
;; The release on ContentDB does not have its own version number.
(let ((commit "db5879706d04d3480bc4863ce0c03fa73e5f10c7")
(revision "0"))
(let ((commit "27c3c515b49af91c1dbc427f31a820722854eb24")
(revision "63"))
(package
(name "minetest-mesecons")
(version (git-version "1.2.1" revision commit))
@ -338,7 +374,7 @@ and a variety of other stuff.")
(url "https://github.com/minetest-mods/mesecons")
(commit commit)))
(sha256
(base32 "04m9s9l3frw1lgki41hgvjsw2zkrvfv0sy750b6j12arzb3lv645"))
(base32 "1l0kwjj8ns8hv6z520g6ph5swknar336dbi5qr3dfsy18ydk1j92"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(home-page "https://mesecons.net")
@ -353,26 +389,22 @@ pressure plates and note blocks.
Mesecons has a similar goal to Redstone in Minecraft, but works in its own way,
with different rules and mechanics.")
;; LGPL for code, CC-BY-SA for textures.
;; The README.md and COPYING.txt disagree about the "+" in license:lgpl3+.
;; For now, assume README.md is correct. Upstream has been asked to
;; correct the inconsistency:
;; <https://github.com/minetest-mods/mesecons/issues/575>.
(license (list license:lgpl3+ license:cc-by-sa3.0))
(license (list license:lgpl3 license:cc-by-sa3.0))
(properties `((upstream-name . "Jeija/mesecons"))))))
(define-public minetest-mineclone
(package
(name "minetest-mineclone")
(version "0.71.0")
(version "0.75.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.minetest.land/Wuzzy/MineClone2")
(url "https://git.minetest.land/MineClone2/MineClone2")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0qm809dqvxc7pa1cr9skmglq9vrbq5hhm4c4m5yi46ldh1v96dgf"))))
"10apja8bp8wmrbjlxg3gvrw5bdc8mizcngvnfi2ff790f6bsc5ip"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
@ -476,15 +508,15 @@ breakers simulate a player punching a node.")
(name "minetest-technic")
;; Upstream doesn't keep version numbers, so use the release
;; date on ContentDB instead.
(version "2021-09-11")
(version "2022-02-06")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest-mods/technic")
(commit "140701c99efb60d81bf63c9a9087720b21c414ca")))
(commit "d2b68a6bef53e34e166deadd64e02b58bcae59a1")))
(sha256
(base32 "1fkhcv8sg3kxfadc2jnfdw6bxxkkkcczsh4bf62rgwwmv2ky7zrx"))
(base32 "0vmi1y39q0x39s9w0hhgi979a4hf6n1ah5jaazjvmjf02pjcvvy1"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(propagated-inputs
@ -651,7 +683,7 @@ track of important locations.")
(define-public minetest-advtrains
(package
(name "minetest-advtrains")
(version "2.3.1")
(version "2.4.1")
(source
(origin
(method git-fetch)
@ -659,7 +691,7 @@ track of important locations.")
(url "https://git.bananach.space/advtrains.git")
(commit (string-append "release-" version))))
(sha256
(base32 "1ijqlchh269jpvmgmdmdvy3nsnk0bszkvvcqk6vaysvxam695ggw"))
(base32 "1q2jj8181pjgsakl28xadv0z4sszq1lb5rpgj070wr0px6mp447p"))
(file-name (git-file-name name version))))
(build-system minetest-mod-build-system)
(home-page "http://advtrains.de/")

View File

@ -5,7 +5,7 @@
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;;
@ -184,7 +184,7 @@ bind processes, and much more.")
(define-public openmpi
(package
(name "openmpi")
(version "4.1.3")
(version "4.1.4")
(source
(origin
(method url-fetch)
@ -192,7 +192,7 @@ bind processes, and much more.")
(version-major+minor version)
"/downloads/openmpi-" version ".tar.bz2"))
(sha256
(base32 "0fqagib5ic0fb3rbl77z90gjrmyqk2qgyrd4f4w5vdggai6d109x"))
(base32 "03ckngrff1cl0l81vfvrfhp99rbgk7s0633kr1l468yibwbjx4cj"))
(patches (search-patches "openmpi-mtl-priorities.patch"))))
(properties

View File

@ -47,6 +47,7 @@
;;; Copyright © 2022 Sughosha <sughosha@disroot.org>
;;; Copyright © 2022 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -179,6 +180,7 @@
#:use-module (gnu packages vim) ;for 'xxd'
#:use-module (gnu packages web)
#:use-module (gnu packages webkit)
#:use-module (gnu packages wm)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
@ -6738,7 +6740,9 @@ streaming audio server.")
gst-plugins-ugly
gstreamer
gtk+
gtksourceview ; undo, redo, multiline text fields
hicolor-icon-theme
keybinder-3.0 ; keybindings outside of GNOME
librsvg
libsoup-minimal-2
python
@ -6747,9 +6751,11 @@ streaming audio server.")
python-feedparser
python-gst
python-iniconfig
python-musicbrainzngs
python-mutagen
python-pycairo
python-pygobject
python-pyinotify
python-pytest
python-sgmllib3k
python-toml))

View File

@ -4161,7 +4161,7 @@ on hub/switched networks. It is based on @acronym{ARP} packets, it will send
(define-public putty
(package
(name "putty")
(version "0.76")
(version "0.77")
(source
(origin
(method url-fetch)
@ -4170,18 +4170,26 @@ on hub/switched networks. It is based on @acronym{ARP} packets, it will send
(string-append "http://www.putty.be/" version
"/putty-" version ".tar.gz")))
(sha256
(base32 "0gvi8phabszqksj2by5jrjmshm7bpirhgavz0dqyz1xaimxdjz2l"))))
(build-system gnu-build-system)
(base32 "1rgabc447a5aa9h16krpg3x78vh5jf4l6hkbqzr4bz9qabs7d6j1"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'chdir
(lambda _
(chdir "unix"))))))
(replace 'check
;; As documented in ./Buildscr and the 0.76 Makefile.in.
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "PUTTY_TESTCRYPT" "./testcrypt")
(invoke (string-append "../putty-" ,version
"/test/cryptsuite.py"))))))))
(inputs
(list gtk+))
(native-inputs
(list pkg-config python)) ; for tests
(list perl
pkg-config
;; For tests.
python))
(synopsis "Graphical @acronym{SSH, Secure SHell} and telnet client")
(description "PuTTY is a graphical text terminal client. It supports
@acronym{SSH, Secure SHell}, telnet, and raw socket connections with good

View File

@ -128,7 +128,7 @@
(cons sigxfsz common)
common))
(("'/bin/sh'")
(string-append "'" (assoc-ref inputs "bash") "/bin/sh'")))
(string-append "'" (search-input-file inputs "/bin/sh") "'")))
;; Fix hardcoded /usr/bin/env references.
(substitute* '("test/parallel/test-child-process-default-options.js"
@ -245,7 +245,8 @@
(search-input-file inpts "/bin/python3")
(raise-exception e)))
(lambda ()
(search-input-file inpts "/bin/python"))))
(search-input-file inpts "/bin/python"))
#:unwind? #t))
"configure"
flags))))
(add-after 'patch-shebangs 'patch-nested-shebangs
@ -735,14 +736,14 @@ source files.")
(define-public node-lts
(package
(inherit node)
(version "14.18.3")
(version "14.19.3")
(source (origin
(method url-fetch)
(uri (string-append "https://nodejs.org/dist/v" version
"/node-v" version ".tar.xz"))
(sha256
(base32
"026nd6vihjdqz4jn0slg89m8m5vvkvjzgg1aip3dcg9lrm1w8fkq"))
"15691j5zhiikyamiwwd7f282g6d9acfhq91nrwx54xya38gmpx2w"))
(modules '((guix build utils)))
(snippet
`(begin
@ -814,7 +815,9 @@ source files.")
"test/parallel/test-dns-lookupService-promises.js"))
;; These tests require networking.
(delete-file "test/parallel/test-https-agent-unref-socket.js")
(for-each delete-file
'("test/parallel/test-https-agent-unref-socket.js"
"test/parallel/test-corepack-yarn-install.js"))
;; This test is timing-sensitive, and fails sporadically on
;; slow, busy, or even very fast machines.
@ -861,7 +864,7 @@ source files.")
(list ;; Runtime dependencies for binaries used as a bootstrap.
c-ares-for-node
brotli
icu4c-67
icu4c-70
libuv-for-node
`(,nghttp2 "lib")
openssl
@ -876,7 +879,7 @@ source files.")
(list bash-minimal
coreutils
c-ares-for-node
icu4c-67
icu4c-70
libuv-for-node
llhttp-bootstrap
brotli

View File

@ -621,7 +621,7 @@ Software distribution.")
(define-public ocaml-mccs
(package
(name "ocaml-mccs")
(version "1.1+13")
(version "1.1+14")
(source (origin
(method git-fetch)
(uri (git-reference
@ -630,7 +630,7 @@ Software distribution.")
(file-name (git-file-name name version))
(sha256
(base32
"15slv97jlvbaxj221wp4sjxk4lbdfyj9vcig0jwd4n54v89ksvib"))))
"17bvm0jhhs8h3p5sbb65asj53a8sxl634cc0kvcivpams74837zq"))))
(build-system dune-build-system)
(propagated-inputs (list ocaml-cudf))
(home-page "https://www.i3s.unice.fr/~cpjm/misc/")
@ -1704,7 +1704,7 @@ full_split, cut, rcut, etc..")
(define dune-bootstrap
(package
(name "dune")
(version "3.1.1")
(version "3.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1713,7 +1713,7 @@ full_split, cut, rcut, etc..")
(file-name (git-file-name name version))
(sha256
(base32
"0ljv4gnalxq77byic23c8hrjmsqvn87gqj0ijm7rdx4xr1pff1jg"))))
"0fa8fkj2piis8b56phl6p77pl1na81krdnmmvyw16hq45zbmm9rk"))))
(build-system ocaml-build-system)
(arguments
`(#:tests? #f; require odoc
@ -3490,7 +3490,7 @@ build system and allows external tools to analyse your project easily.")
(define-public ocaml-cppo
(package
(name "ocaml-cppo")
(version "1.6.8")
(version "1.6.9")
(source
(origin
(method git-fetch)
@ -3499,7 +3499,7 @@ build system and allows external tools to analyse your project easily.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"0xjb1dnj8lvdcccskrhrakknd9q4vfy5330sjbqpf4h95dsz90k9"))))
"1c8jlr2s0allw1h6czz5q24vn5jsnrrh44j7hjyilzaifm17dlrm"))))
(build-system dune-build-system)
(arguments
`(#:tests? #f))
@ -4333,9 +4333,7 @@ long and size_t whose sizes depend on the host platform.")
"0ilzq9qzvwv9rc08cc9wchsx636zp870i7qvqmbigaa2qb812m0z"))))
(build-system ocaml-build-system)
(arguments
`(#:make-flags
(list (string-append "INSTALL_HEADERS = $(wildcard $($(PROJECT).dir)/*.h)"))
#:phases
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-writable
(lambda _
@ -7593,7 +7591,7 @@ convenience functions for vectors and matrices.")
(define-public ocaml-cairo2
(package
(name "ocaml-cairo2")
(version "0.6.2")
(version "0.6.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -7602,7 +7600,7 @@ convenience functions for vectors and matrices.")
(file-name (git-file-name name version))
(sha256
(base32
"04rp5y1rlq1pw592yywhvqd5x7csmyi9ad4f32g99nakb10s4nhx"))))
"1m0wh0s0sqjfa3mgq99lwk0dsg0bwxipaz93hq18m0lz5fqxib1m"))))
(build-system dune-build-system)
(arguments
`(#:test-target "tests"))

View File

@ -1820,7 +1820,7 @@ for packaging and deployment of cross-compiled Windows applications.")
(define-public libostree
(package
(name "libostree")
(version "2022.2")
(version "2022.3")
(source
(origin
(method url-fetch)
@ -1828,7 +1828,7 @@ for packaging and deployment of cross-compiled Windows applications.")
"https://github.com/ostreedev/ostree/releases/download/v"
(version-major+minor version) "/libostree-" version ".tar.xz"))
(sha256
(base32 "0sv70dqmf2w2lshp80sfh9m6qv5mrg72zqqbx63bd32dg2szbqkn"))))
(base32 "04pn4ibak8k7qlm0722im5ng8gyn1r5y5ggyz75ca0smrnfzs8xq"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View File

@ -7,6 +7,7 @@ the distro-specific stuff and removes the hard-coded FHS directory names
to make sure Clang also works on foreign distros.
diff --git a/clang/lib/Driver/Distro.cpp b/clang/lib/Driver/Distro.cpp
index 5ac38c34d112..2a704b418fdc 100644
--- a/clang/lib/Driver/Distro.cpp
+++ b/clang/lib/Driver/Distro.cpp
@@ -96,6 +96,10 @@ static Distro::DistroType DetectLsbRelease(llvm::vfs::FileSystem &VFS) {
@ -21,6 +22,7 @@ diff --git a/clang/lib/Driver/Distro.cpp b/clang/lib/Driver/Distro.cpp
// Newer freedesktop.org's compilant systemd-based systems
diff --git a/clang/lib/Driver/ToolChains/Cuda.cpp b/clang/lib/Driver/ToolChains/Cuda.cpp
index 4a9f6d4c4e3e..0ae13ebebd27 100644
--- a/clang/lib/Driver/ToolChains/Cuda.cpp
+++ b/clang/lib/Driver/ToolChains/Cuda.cpp
@@ -117,6 +117,9 @@ CudaInstallationDetector::CudaInstallationDetector(
@ -34,6 +36,7 @@ diff --git a/clang/lib/Driver/ToolChains/Cuda.cpp b/clang/lib/Driver/ToolChains/
std::string Path;
bool StrictChecking;
diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains/Linux.cpp
index 83cb41159de7..6b920e33d1ef 100644
--- a/clang/lib/Driver/ToolChains/Linux.cpp
+++ b/clang/lib/Driver/ToolChains/Linux.cpp
@@ -186,6 +186,10 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
@ -72,21 +75,19 @@ diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains
Generic_GCC::AddMultiarchPaths(D, SysRoot, OSLibDir, Paths);
+#if 0
// Similar to the logic for GCC above, if we are currently running Clang
// inside of the requested system root, add its parent library path to those
// searched.
@@ -313,9 +321,14 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
if (OSLibDir != "lib")
addPathIfExists(D, D.Dir + "/../" + OSLibDir, Paths);
}
// The deprecated -DLLVM_ENABLE_PROJECTS=libcxx configuration installs
// libc++.so in D.Dir+"/../lib/". Detect this path.
// TODO Remove once LLVM_ENABLE_PROJECTS=libcxx is unsupported.
@@ -310,6 +318,14 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
addPathIfExists(D, SysRoot + "/lib", Paths);
addPathIfExists(D, SysRoot + "/usr/lib", Paths);
+#endif
+
+ // Add libc's lib/ directory to the search path, so that crt1.o, crti.o,
+ // and friends can be found.
+ addPathIfExists(D, "@GLIBC_LIBDIR@", Paths);
- addPathIfExists(D, SysRoot + "/lib", Paths);
- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
+
+ // Add GCC's lib/ directory so libstdc++.so can be found.
+ addPathIfExists(D, GCCInstallation.getParentLibPath(), Paths);
}

View File

@ -0,0 +1,24 @@
From: Christoph Egger <Christoph.Egger@gmx.de>
Subject: [PATCH] debian/link-against-needed-libs
There are quite some libraries irrlicht needs but does not link
against. This patch makes irrlicht link correctly against all the
needed libraries.
Signed-off-by: Christoph Egger <Christoph.Egger@gmx.de>
---
source/Irrlicht/Makefile | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
--- irrlicht.orig/source/Irrlicht/Makefile
+++ irrlicht/source/Irrlicht/Makefile
@@ -90,7 +90,7 @@
LIB_PATH = ../../lib/$(SYSTEM)
INSTALL_DIR = /usr/local/lib
sharedlib install: SHARED_LIB = libIrrlicht.so
-sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm
+staticlib sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lX11 -lz -lpng -ljpeg -lbz2
staticlib sharedlib: CXXINCS += -I/usr/X11R6/include
#OSX specific options

View File

@ -1,40 +1,13 @@
This patch is a combination of the two following patches with minor
changes to the install code
https://sources.debian.org/src/irrlicht/1.8.4+dfsg1-1/debian/patches/debian/link-against-needed-libs.diff/
https://sources.debian.org/src/irrlicht/1.8.4+dfsg1-1/debian/patches/debian/use-system-libs.diff/
Subject: [PATCH] debian/use-system-libs
Path to build irrlicht using the system libraries for png,zlib and
jpeg as well as the glext family of header files.
---
include/IrrCompileConfig.h | 26 +++++++++------------
source/Irrlicht/CIrrDeviceLinux.h | 2 +-
source/Irrlicht/COpenGLExtensionHandler.h | 8 +++----
source/Irrlicht/COpenGLSLMaterialRenderer.h | 2 +-
source/Irrlicht/Makefile | 15 ++++++------
5 files changed, 25 insertions(+), 28 deletions(-)
Signed-off-by: Christoph Egger <debian@christoph-egger.org
diff --git a/include/IrrCompileConfig.h b/include/IrrCompileConfig.h
index 6bb0589..2216353 100644
--- a/include/IrrCompileConfig.h
+++ b/include/IrrCompileConfig.h
@@ -238,6 +238,17 @@ for Windows based systems. You also have to set #define UNICODE for this to comp
#undef _IRR_WCHAR_FILESYSTEM
#endif
+//! Define _IRR_COMPILE_WITH_ZLIB_ to enable compiling the engine using zlib.
+/** This enables the engine to read from compressed .zip archives. If you
+disable this feature, the engine can still read archives, but only uncompressed
+ones. */
+#define _IRR_COMPILE_WITH_ZLIB_
+
+//! Define _IRR_USE_NON_SYSTEM_ZLIB_ to let irrlicht use the zlib which comes with irrlicht.
+/** If this is commented out, Irrlicht will try to compile using the zlib installed in the system.
+ This is only used when _IRR_COMPILE_WITH_ZLIB_ is defined. */
+#undef _IRR_USE_NON_SYSTEM_ZLIB_
+
//! Define _IRR_COMPILE_WITH_JPEGLIB_ to enable compiling the engine using libjpeg.
/** This enables the engine to read jpeg images. If you comment this out,
the engine will no longer read .jpeg images. */
@@ -249,10 +260,7 @@ the engine will no longer read .jpeg images. */
--- irrlicht.orig/include/IrrCompileConfig.h
+++ irrlicht/include/IrrCompileConfig.h
@@ -253,10 +253,7 @@
//! Define _IRR_USE_NON_SYSTEM_JPEG_LIB_ to let irrlicht use the jpeglib which comes with irrlicht.
/** If this is commented out, Irrlicht will try to compile using the jpeg lib installed in the system.
This is only used when _IRR_COMPILE_WITH_LIBJPEG_ is defined. */
@ -45,7 +18,7 @@ index 6bb0589..2216353 100644
//! Define _IRR_COMPILE_WITH_LIBPNG_ to enable compiling the engine using libpng.
/** This enables the engine to read png images. If you comment this out,
@@ -265,10 +273,7 @@ the engine will no longer read .png images. */
@@ -269,10 +266,7 @@
//! Define _IRR_USE_NON_SYSTEM_LIBPNG_ to let irrlicht use the libpng which comes with irrlicht.
/** If this is commented out, Irrlicht will try to compile using the libpng installed in the system.
This is only used when _IRR_COMPILE_WITH_LIBPNG_ is defined. */
@ -56,7 +29,7 @@ index 6bb0589..2216353 100644
//! Define _IRR_D3D_NO_SHADER_DEBUGGING to disable shader debugging in D3D9
/** If _IRR_D3D_NO_SHADER_DEBUGGING is undefined in IrrCompileConfig.h,
@@ -602,10 +607,7 @@ ones. */
@@ -606,10 +600,7 @@
/** If this is commented out, Irrlicht will try to compile using the zlib
installed on the system. This is only used when _IRR_COMPILE_WITH_ZLIB_ is
defined. */
@ -67,7 +40,7 @@ index 6bb0589..2216353 100644
//! Define _IRR_COMPILE_WITH_ZIP_ENCRYPTION_ if you want to read AES-encrypted ZIP archives
#define _IRR_COMPILE_WITH_ZIP_ENCRYPTION_
#ifdef NO_IRR_COMPILE_WITH_ZIP_ENCRYPTION_
@@ -623,18 +625,12 @@ library. */
@@ -627,18 +618,12 @@
/** If this is commented out, Irrlicht will try to compile using the bzlib
installed on the system. This is only used when _IRR_COMPILE_WITH_BZLIB_ is
defined. */
@ -86,10 +59,8 @@ index 6bb0589..2216353 100644
//! Define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_ if you want to mount folders as archives
#define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
diff --git a/source/Irrlicht/CIrrDeviceLinux.h b/source/Irrlicht/CIrrDeviceLinux.h
index 4d2a2c6..8cf24ba 100644
--- a/source/Irrlicht/CIrrDeviceLinux.h
+++ b/source/Irrlicht/CIrrDeviceLinux.h
--- irrlicht.orig/source/Irrlicht/CIrrDeviceLinux.h
+++ irrlicht/source/Irrlicht/CIrrDeviceLinux.h
@@ -22,7 +22,7 @@
#define GLX_GLXEXT_LEGACY 1
#include <GL/glx.h>
@ -99,10 +70,8 @@ index 4d2a2c6..8cf24ba 100644
#endif
#endif
diff --git a/source/Irrlicht/COpenGLExtensionHandler.h b/source/Irrlicht/COpenGLExtensionHandler.h
index 1b77bad..3886a0e 100644
--- a/source/Irrlicht/COpenGLExtensionHandler.h
+++ b/source/Irrlicht/COpenGLExtensionHandler.h
--- irrlicht.orig/source/Irrlicht/COpenGLExtensionHandler.h
+++ irrlicht/source/Irrlicht/COpenGLExtensionHandler.h
@@ -35,7 +35,7 @@
#endif
#include <OpenGL/gl.h>
@ -133,10 +102,8 @@ index 1b77bad..3886a0e 100644
#endif
#endif
diff --git a/source/Irrlicht/COpenGLSLMaterialRenderer.h b/source/Irrlicht/COpenGLSLMaterialRenderer.h
index ff71150..f8a6007 100644
--- a/source/Irrlicht/COpenGLSLMaterialRenderer.h
+++ b/source/Irrlicht/COpenGLSLMaterialRenderer.h
--- irrlicht.orig/source/Irrlicht/COpenGLSLMaterialRenderer.h
+++ irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.h
@@ -25,7 +25,7 @@
#include <GL/gl.h>
#endif
@ -146,11 +113,9 @@ index ff71150..f8a6007 100644
#endif
#endif
diff --git a/source/Irrlicht/Makefile b/source/Irrlicht/Makefile
index 67a3899..d9ea7f3 100644
--- a/source/Irrlicht/Makefile
+++ b/source/Irrlicht/Makefile
@@ -43,7 +43,7 @@ IRRIMAGEOBJ = CColorConverter.o CImage.o CImageLoaderBMP.o CImageLoaderDDS.o CIm
--- irrlicht.orig/source/Irrlicht/Makefile
+++ irrlicht/source/Irrlicht/Makefile
@@ -45,7 +45,7 @@
CImageWriterBMP.o CImageWriterJPG.o CImageWriterPCX.o CImageWriterPNG.o CImageWriterPPM.o CImageWriterPSD.o CImageWriterTGA.o
IRRVIDEOOBJ = CVideoModeList.o CFPSCounter.o $(IRRDRVROBJ) $(IRRIMAGEOBJ)
IRRSWRENDEROBJ = CSoftwareDriver.o CSoftwareTexture.o CTRFlat.o CTRFlatWire.o CTRGouraud.o CTRGouraudWire.o CTRNormalMap.o CTRStencilShadow.o CTRTextureFlat.o CTRTextureFlatWire.o CTRTextureGouraud.o CTRTextureGouraudAdd.o CTRTextureGouraudNoZ.o CTRTextureGouraudWire.o CZBuffer.o CTRTextureGouraudVertexAlpha2.o CTRTextureGouraudNoZ2.o CTRTextureLightMap2_M2.o CTRTextureLightMap2_M4.o CTRTextureLightMap2_M1.o CSoftwareDriver2.o CSoftwareTexture2.o CTRTextureGouraud2.o CTRGouraud2.o CTRGouraudAlpha2.o CTRGouraudAlphaNoZ2.o CTRTextureDetailMap2.o CTRTextureGouraudAdd2.o CTRTextureGouraudAddNoZ2.o CTRTextureWire2.o CTRTextureLightMap2_Add.o CTRTextureLightMapGouraud2_M4.o IBurningShader.o CTRTextureBlend.o CTRTextureGouraudAlpha.o CTRTextureGouraudAlphaNoZ.o CDepthBuffer.o CBurningShader_Raster_Reference.o
@ -159,7 +124,7 @@ index 67a3899..d9ea7f3 100644
IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o
IRRGUIOBJ = CGUIButton.o CGUICheckBox.o CGUIComboBox.o CGUIContextMenu.o CGUIEditBox.o CGUIEnvironment.o CGUIFileOpenDialog.o CGUIFont.o CGUIImage.o CGUIInOutFader.o CGUIListBox.o CGUIMenu.o CGUIMeshViewer.o CGUIMessageBox.o CGUIModalScreen.o CGUIScrollBar.o CGUISpinBox.o CGUISkin.o CGUIStaticText.o CGUITabControl.o CGUITable.o CGUIToolBar.o CGUIWindow.o CGUIColorSelectDialog.o CDefaultGUIElementFactory.o CGUISpriteBank.o CGUIImageList.o CGUITreeView.o
ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o
@@ -56,14 +56,14 @@ BZIP2OBJ = bzip2/blocksort.o bzip2/huffman.o bzip2/crctable.o bzip2/randtable.o
@@ -58,14 +58,14 @@
EXTRAOBJ =
LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \
$(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \
@ -178,25 +143,11 @@ index 67a3899..d9ea7f3 100644
ifndef NDEBUG
CXXFLAGS += -g -D_DEBUG
else
@@ -88,7 +88,7 @@ STATIC_LIB = libIrrlicht.a
LIB_PATH = ../../lib/$(SYSTEM)
INSTALL_DIR = /usr/local/lib
sharedlib install: SHARED_LIB = libIrrlicht.so
-sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm
+staticlib sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lX11 -lz -lpng -ljpeg -lbz2
staticlib sharedlib: CXXINCS += -I/usr/X11R6/include
#OSX specific options
@@ -153,7 +153,8 @@ install install_osx:
$(RM) -r $(INSTALL_DIR)/../include/irrlicht
@@ -156,6 +156,7 @@
mkdir -p $(INSTALL_DIR)/../include/irrlicht
cp ../../include/*.h $(INSTALL_DIR)/../include/irrlicht/
- cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR)
+ cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR) || true
+ cp $(LIB_PATH)/$(STATIC_LIB) $(INSTALL_DIR) || true
cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR)
+ cp $(LIB_PATH)/$(STATIC_LIB) $(INSTALL_DIR)
cd $(INSTALL_DIR) && ln -s -f $(SHARED_FULLNAME) $(SONAME)
cd $(INSTALL_DIR) && ln -s -f $(SONAME) $(SHARED_LIB)
# ldconfig -n $(INSTALL_DIR)
--
2.18.0

View File

@ -1,35 +0,0 @@
Disable usage of SSLv3 in testing
Integrated uptream version 0.9.74
diff --git a/src/testcurl/https/test_tls_options.c b/src/testcurl/https/test_tls_options.c
--- a/src/testcurl/https/test_tls_options.c
+++ b/src/testcurl/https/test_tls_options.c
@@ -119,11 +119,6 @@ main (int argc, char *const *argv)
fprintf (stderr, "Curl does not support SSL. Cannot run the test.\n");
return 77;
}
- if (0 != strncmp (ssl_version, "GnuTLS", 6))
- {
- fprintf (stderr, "This test can be run only with libcurl-gnutls.\n");
- return 77;
- }
if (! testsuite_curl_global_init ())
return 99;
@@ -152,10 +147,10 @@ main (int argc, char *const *argv)
fprintf (stderr,
"The following handshake should fail (and print an error message)...\n");
if (0 !=
- test_wrap ("TLS1.0 vs SSL3",
+ test_wrap ("TLS1.1 vs TLS1.0",
&test_unmatching_ssl_version, NULL, port, daemon_flags,
aes256_sha,
- CURL_SSLVERSION_SSLv3,
+ CURL_SSLVERSION_TLSv1_1,
MHD_OPTION_HTTPS_MEM_KEY, srv_key_pem,
MHD_OPTION_HTTPS_MEM_CERT, srv_self_signed_cert_pem,
MHD_OPTION_HTTPS_PRIORITIES,

View File

@ -1,156 +0,0 @@
From d10ea2ad7efc2364a8a2007b4c6d3e85511e2f84 Mon Sep 17 00:00:00 2001
From: Maxime Devos <maximedevos@telenet.be>
Date: Tue, 3 Aug 2021 01:00:23 +0200
Subject: [PATCH] Add environment variable MINETEST_MOD_PATH
This adds an environment variable MINETEST_MOD_PATH.
When it exists, Minetest will look there for mods
in addition to ~/.minetest/mods/. Mods can still be
installed to ~/.minetest/mods/ with the built-in installer.
With thanks to Liliana Marie Prikler.
---
builtin/mainmenu/pkgmgr.lua | 7 +++----
doc/menu_lua_api.txt | 8 +++++++-
src/content/subgames.cpp | 11 +++++++++++
src/script/lua_api/l_mainmenu.cpp | 23 +++++++++++++++++++++++
src/script/lua_api/l_mainmenu.h | 2 ++
5 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/builtin/mainmenu/pkgmgr.lua b/builtin/mainmenu/pkgmgr.lua
index 787936e31..d8fba0ebe 100644
--- a/builtin/mainmenu/pkgmgr.lua
+++ b/builtin/mainmenu/pkgmgr.lua
@@ -682,10 +682,9 @@ function pkgmgr.preparemodlist(data)
local game_mods = {}
--read global mods
- local modpath = core.get_modpath()
-
- if modpath ~= nil and
- modpath ~= "" then
+ local modpaths = core.get_modpaths()
+ --XXX what was modpath ~= "" and modpath ~= nil for?
+ for _,modpath in ipairs(modpaths) do
get_mods(modpath,global_mods)
end
diff --git a/doc/menu_lua_api.txt b/doc/menu_lua_api.txt
index b3975bc1d..132444b14 100644
--- a/doc/menu_lua_api.txt
+++ b/doc/menu_lua_api.txt
@@ -218,7 +218,13 @@ Package - content which is downloadable from the content db, may or may not be i
* returns path to global user data,
the directory that contains user-provided mods, worlds, games, and texture packs.
* core.get_modpath() (possible in async calls)
- * returns path to global modpath
+ * returns path to global modpath, where mods can be installed
+* core.get_modpaths() (possible in async calls)
+ * returns list of paths to global modpaths, where mods have been installed
+
+ The difference with "core.get_modpath" is that no mods should be installed in these
+ directories by Minetest -- they might be read-only.
+
* core.get_clientmodpath() (possible in async calls)
* returns path to global client-side modpath
* core.get_gamepath() (possible in async calls)
diff --git a/src/content/subgames.cpp b/src/content/subgames.cpp
index e9dc609b0..d73f95a1f 100644
--- a/src/content/subgames.cpp
+++ b/src/content/subgames.cpp
@@ -61,6 +61,12 @@ std::string getSubgamePathEnv()
return subgame_path ? std::string(subgame_path) : "";
}
+std::string getModPathEnv()
+{
+ char *mod_path = getenv("MINETEST_MOD_PATH");
+ return mod_path ? std::string(mod_path) : "";
+}
+
SubgameSpec findSubgame(const std::string &id)
{
if (id.empty())
@@ -110,6 +116,11 @@ SubgameSpec findSubgame(const std::string &id)
std::set<std::string> mods_paths;
if (!user_game)
mods_paths.insert(share + DIR_DELIM + "mods");
+
+ Strfnd mod_search_paths(getModPathEnv());
+ while (!mod_search_paths.at_end())
+ mods_paths.insert(mod_search_paths.next(PATH_DELIM));
+
if (user != share || user_game)
mods_paths.insert(user + DIR_DELIM + "mods");
diff --git a/src/script/lua_api/l_mainmenu.cpp b/src/script/lua_api/l_mainmenu.cpp
index 3e9709bde..903ac3a22 100644
--- a/src/script/lua_api/l_mainmenu.cpp
+++ b/src/script/lua_api/l_mainmenu.cpp
@@ -21,6 +21,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "lua_api/l_internal.h"
#include "common/c_content.h"
#include "cpp_api/s_async.h"
+#include "util/strfnd.h"
#include "gui/guiEngine.h"
#include "gui/guiMainMenu.h"
#include "gui/guiKeyChangeMenu.h"
@@ -502,6 +503,26 @@ int ModApiMainMenu::l_get_modpath(lua_State *L)
return 1;
}
+/******************************************************************************/
+int ModApiMainMenu::l_get_modpaths(lua_State *L)
+{
+ const char *c_modpath = getenv("MINETEST_MOD_PATH");
+ if (c_modpath == NULL)
+ c_modpath = "";
+ int index = 1;
+ lua_newtable(L);
+ Strfnd mod_search_paths{std::string(c_modpath)};
+ while (!mod_search_paths.at_end()) {
+ std::string component = mod_search_paths.next(PATH_DELIM);
+ lua_pushstring(L, component.c_str());
+ lua_rawseti(L, -2, index);
+ index++;
+ }
+ ModApiMainMenu::l_get_modpath(L);
+ lua_rawseti(L, -2, index);
+ return 1;
+}
+
/******************************************************************************/
int ModApiMainMenu::l_get_clientmodpath(lua_State *L)
{
@@ -949,6 +970,7 @@ void ModApiMainMenu::Initialize(lua_State *L, int top)
API_FCT(get_mapgen_names);
API_FCT(get_user_path);
API_FCT(get_modpath);
+ API_FCT(get_modpaths);
API_FCT(get_clientmodpath);
API_FCT(get_gamepath);
API_FCT(get_texturepath);
@@ -983,6 +1005,7 @@ void ModApiMainMenu::InitializeAsync(lua_State *L, int top)
API_FCT(get_mapgen_names);
API_FCT(get_user_path);
API_FCT(get_modpath);
+ API_FCT(get_modpaths);
API_FCT(get_clientmodpath);
API_FCT(get_gamepath);
API_FCT(get_texturepath);
diff --git a/src/script/lua_api/l_mainmenu.h b/src/script/lua_api/l_mainmenu.h
index 33ac9e721..a6a54a2cb 100644
--- a/src/script/lua_api/l_mainmenu.h
+++ b/src/script/lua_api/l_mainmenu.h
@@ -112,6 +112,8 @@ class ModApiMainMenu: public ModApiBase
static int l_get_modpath(lua_State *L);
+ static int l_get_modpaths(lua_State *L);
+
static int l_get_clientmodpath(lua_State *L);
static int l_get_gamepath(lua_State *L);
--
2.32.0

View File

@ -0,0 +1,29 @@
Author: Reiner Herrmann <reiner@reiner-h.de>
Date: 2016-07-01 16:00:02 UTC
Bug-Debian: https://bugs.debian.org/829249
make ncftp build reproducible.
diff --git a/ncftp/main.c b/ncftp/main.c
index a7fccac..b27a94e 100644
--- a/ncftp/main.c
+++ b/ncftp/main.c
@@ -62,7 +62,7 @@ static void
Usage(void)
{
FILE *fp;
-#ifdef UNAME
+#if 0
char s[80];
#endif
@@ -76,7 +76,7 @@ Usage(void)
-F Dump a sample $HOME/.ncftp/firewall prefs file to stdout and exit.\n");
(void) fprintf(fp, "\nProgram version: %s\nLibrary version: %s\n", gVersion + 5, gLibNcFTPVersion + 5);
-#ifdef UNAME
+#if 0
AbbrevStr(s, UNAME, 60, 1);
(void) fprintf(fp, "Build system: %s\n", s);
#endif

View File

@ -1,33 +0,0 @@
diff -Naur pigx_bsseq-0.1.5/configure.ac pigx_bsseq-0.1.5.patched/configure.ac
--- pigx_bsseq-0.1.5/configure.ac 2021-06-08 15:28:08.000000000 +0200
+++ pigx_bsseq-0.1.5.patched/configure.ac 2021-10-05 14:43:56.806529137 +0200
@@ -38,7 +38,6 @@
find_or_override_prog([GNUBASH], [bash])
find_or_override_prog([SNAKEMAKE], [snakemake])
find_or_override_prog([PANDOC], [pandoc])
-find_or_override_prog([PANDOC_CITEPROC], [pandoc-citeproc])
find_or_override_prog([FASTQC], [fastqc])
find_or_override_prog([MULTIQC], [multiqc])
find_or_override_prog([TRIMGALORE], [trim_galore])
diff -Naur pigx_bsseq-0.1.5/Makefile.in pigx_bsseq-0.1.5.patched/Makefile.in
--- pigx_bsseq-0.1.5/Makefile.in 2021-06-08 16:17:03.000000000 +0200
+++ pigx_bsseq-0.1.5.patched/Makefile.in 2021-10-05 14:43:34.635876855 +0200
@@ -408,7 +408,6 @@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PANDOC = @PANDOC@
-PANDOC_CITEPROC = @PANDOC_CITEPROC@
PATH_SEPARATOR = @PATH_SEPARATOR@
PYTHON = @PYTHON@
PYTHONPATH = @PYTHONPATH@
diff -Naur pigx_bsseq-0.1.5/pigx-common/common/pigx-runner.in pigx_bsseq-0.1.5.patched/pigx-common/common/pigx-runner.in
--- pigx_bsseq-0.1.5/pigx-common/common/pigx-runner.in 2021-06-08 10:14:29.000000000 +0200
+++ pigx_bsseq-0.1.5.patched/pigx-common/common/pigx-runner.in 2021-10-05 14:43:44.296161069 +0200
@@ -375,7 +375,6 @@
if path.exists(bin): shutil.rmtree(bin)
os.makedirs(bin, exist_ok=True)
os.symlink('@PANDOC@', path.join(bin, "pandoc"))
- os.symlink('@PANDOC_CITEPROC@', path.join(bin, "pandoc-citeproc"))
os.symlink('@RSCRIPT@', path.join(bin, "Rscript"))
os.environ['PATH'] = path.abspath(bin) + ":" + os.environ['PATH']
os.environ['PIGX_PATH'] = path.abspath(bin) + ":" + os.environ['PATH']

View File

@ -1,33 +0,0 @@
diff -Naur pigx_chipseq-0.0.53/configure.ac pigx_chipseq-0.0.53.patched/configure.ac
--- pigx_chipseq-0.0.53/configure.ac 2021-09-28 11:14:12.000000000 +0200
+++ pigx_chipseq-0.0.53.patched/configure.ac 2021-10-07 14:48:53.034054327 +0200
@@ -52,7 +52,6 @@
find_or_override_prog([MACS2], [macs2])
find_or_override_prog([SNAKEMAKE], [snakemake])
find_or_override_prog([PANDOC], [pandoc])
-find_or_override_prog([PANDOC_CITEPROC], [pandoc-citeproc])
find_or_override_prog([FASTQC], [fastqc])
find_or_override_prog([BOWTIE2], [bowtie2])
find_or_override_prog([BOWTIE2_BUILD], [bowtie2-build])
diff -Naur pigx_chipseq-0.0.53/Makefile.in pigx_chipseq-0.0.53.patched/Makefile.in
--- pigx_chipseq-0.0.53/Makefile.in 2021-09-28 11:55:05.000000000 +0200
+++ pigx_chipseq-0.0.53.patched/Makefile.in 2021-10-07 14:48:37.195577143 +0200
@@ -407,7 +407,6 @@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PANDOC = @PANDOC@
-PANDOC_CITEPROC = @PANDOC_CITEPROC@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PYTHON = @PYTHON@
diff -Naur pigx_chipseq-0.0.53/pigx-common/common/pigx-runner.in pigx_chipseq-0.0.53.patched/pigx-common/common/pigx-runner.in
--- pigx_chipseq-0.0.53/pigx-common/common/pigx-runner.in 2021-09-27 18:16:42.000000000 +0200
+++ pigx_chipseq-0.0.53.patched/pigx-common/common/pigx-runner.in 2021-10-07 14:48:44.200788218 +0200
@@ -379,7 +379,6 @@
if path.exists(bin): shutil.rmtree(bin)
os.makedirs(bin, exist_ok=True)
os.symlink('@PANDOC@', path.join(bin, "pandoc"))
- os.symlink('@PANDOC_CITEPROC@', path.join(bin, "pandoc-citeproc"))
os.symlink('@RSCRIPT@', path.join(bin, "Rscript"))
os.environ['PATH'] = path.abspath(bin) + ":" + os.environ['PATH']
os.environ['PIGX_PATH'] = path.abspath(bin) + ":" + os.environ['PATH']

View File

@ -10020,6 +10020,13 @@ the job on behalf of @code{Term::Size::Any}.")
"Term-Size-Perl-" version ".tar.gz"))
(sha256
(base32 "17i05y186l977bhp32b24c8rqasmg1la934dizf5sc0vrd36g6mf"))))
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'remove-timestamps
;; Remove timestamp in comment for reproducible builds
(lambda _
(substitute* "inc/Probe.pm"
((". created ...scalar localtime..") "")))))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Term-Size-Perl")
(synopsis "Perl extension for retrieving terminal size (Perl version)")
@ -11849,3 +11856,27 @@ regexp patterns in modules.")
(description "Data::SExpression parses Lisp S-Expressions into Perl data
structures.")
(license license:perl-license)))
(define-public perl-socket-msghdr
(package
(name "perl-socket-msghdr")
(version "0.05")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/F/FE/FELIPE/Socket-MsgHdr-"
version
".tar.gz"))
(sha256
(base32 "0g3qa7xn0aqn417jfvnc0i3ksyqa7bnvws0wihldir6ywcaiql4n"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Socket-MsgHdr")
(synopsis "Perform advanced operations via sendmsg and recvmsg")
(description "Socket::MsgHdr provides advanced socket messaging operations
via sendmsg and recvmsg.
It also allows manipulating ancillary data or so-called control
information (cmsghdr). This ancillary data may be used for file descriptor
passing, IPv6 operations, and a host of implemenation-specific extensions.")
(license license:perl-license)))

View File

@ -50,14 +50,14 @@
(define-public papi
(package
(name "papi")
(version "6.0.0")
(version "6.0.0.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://icl.utk.edu/projects/papi/downloads/papi-"
(uri (string-append "https://icl.utk.edu/projects/papi/downloads/papi-"
version ".tar.gz"))
(sha256 (base32
"0pq5nhy105fpnk78k6l9ygsfr5akn6l0ck1hbf2c419lmsfp0hil"))
(sha256
(base32 "0zr83v51lp4ijgk997dz9fpph48prlsbml26dvb223avqr8fvmrw"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -2224,13 +2224,13 @@ eliminate flaky failures.")
(define-public python-xunitparser
(package
(name "python-xunitparser")
(version "1.3.3")
(version "1.3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xunitparser" version))
(sha256
(base32 "05amn9yik0mxg89iiprkb6lrmc7rlccgvwajrpyfi6zbp8mjdsgn"))))
(base32 "00lapxi770mg7jkw16zy3a91hbdfz4a9h43ryczdsgd3z4cl6vyf"))))
(build-system python-build-system)
(arguments
`(#:phases

View File

@ -5871,8 +5871,10 @@ based on filters.")
(lambda _
(invoke "pytest" "--benchmark-skip" "-k"
;; Those tests need internet access
"not test_check and not test_valid_value_check \
and not test_override_app_level"))))))
(string-join
'("not test_check and not test_valid_value_check \
and not test_override_app_level"
"not test_redirect") " and ")))))))
(home-page "https://github.com/python-restx/flask-restx")
(synopsis
"Framework for fast, easy and documented API development with Flask")
@ -7069,17 +7071,22 @@ provides well-defined APIs to talk to websites lacking one.")
(base32 "07fhcjiyif80z1vyh35za29sqx1mmqh568jrbrrs675j4a797sj1"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'loosen-requirements
(lambda _
;; Don't pin specific versions of dependencies.
(substitute* "requirements.txt"
(("^sqlalchemy[=<>].*") "sqlalchemy\n")
(("^marshmallow[=<>].*") "marshmallow\n")
(("^Flask[=<>].*") "Flask\n"))))
(replace 'check
(lambda _
(invoke "pytest" "-vv"))))))
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'loosen-requirements
(lambda _
;; Don't pin specific versions of dependencies.
(substitute* "requirements.txt"
(("^sqlalchemy[=<>].*") "sqlalchemy\n")
(("^marshmallow[=<>].*") "marshmallow\n")
(("^Flask[=<>].*") "Flask\n"))))
(replace 'check
(lambda _
(invoke "pytest" "-vv" "-k"
;; The following test fails for unknown reasons (see:
;; https://github.com/AdCombo/flask-combo-jsonapi/issues/66).
"not test_get_list_with_simple_filter_\
relationship_custom_qs_api"))))))
(propagated-inputs
(list python-flask
python-marshmallow
@ -7090,7 +7097,9 @@ provides well-defined APIs to talk to websites lacking one.")
python-simplejson
python-six))
(native-inputs
(list python-coverage python-coveralls python-pytest
(list python-coverage
python-coveralls
python-pytest
python-pytest-runner))
(home-page "https://github.com/AdCombo/flask-combo-jsonapi")
(synopsis "Flask extension to quickly create JSON:API 1.0 REST Web APIs")

View File

@ -187,6 +187,7 @@
#:use-module (gnu packages libevent)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libidn)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages man)
@ -1515,14 +1516,14 @@ approximate nearest neighbor search with Python bindings.")
(define-public python-sh
(package
(name "python-sh")
(version "1.12.14")
(version "1.14.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "sh" version))
(sha256
(base32
"1z2hx357xp3v4cv44xmqp7lli3frndqpyfmpbxf7n76h7s1zaaxm"))))
"03gyss1rhj4in7pgysg4q0hxp3230whinlpy1532ljs99lrx0ywx"))))
(build-system python-build-system)
(arguments
'(#:phases
@ -2071,6 +2072,30 @@ abstractions to different hardware devices, and a suite of utilities for
sending and receiving messages on a CAN bus.")
(license license:lgpl3+)))
(define-public python-canopen
(package
(name "python-canopen")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "canopen" version))
(sha256
(base32 "1nb543wb37kj95v6bhh272lm5gkpi41q3pnsl1fxlyizm2gamj5w"))))
(build-system python-build-system)
(native-inputs (list python-packaging))
(propagated-inputs (list python-can))
(home-page "https://github.com/christiansandberg/canopen")
(synopsis "CANopen stack implementation")
(description
"This package provides a Python implementation of the
@uref{https://www.can-cia.org/canopen/,CANopen standard} for
@acronym{CANs, controller-area networks}. The aim of the project is to
support the most common parts of the CiA 301 standard in a simple
Pythonic interface. It is mainly targeted for testing and automation
tasks rather than a standard compliant master implementation.")
(license license:expat)))
(define-public python-caniusepython3
(package
(name "python-caniusepython3")
@ -3424,6 +3449,42 @@ compare, diff, and patch JSON and JSON-like structures in Python.")
"Jsonschema is an implementation of JSON Schema for Python.")
(license license:expat)))
;;; TODO: Make the default python-jsonschema on core-updates
(define-public python-jsonschema-next
(package
(inherit python-jsonschema)
(version "4.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "jsonschema" version))
(sha256
(base32 "1z0x22691jva7lwfcfh377jdmlz68zhiawxzl53k631l34k8hvbw"))))
(arguments
(substitute-keyword-arguments (package-arguments python-jsonschema)
((#:phases phases)
#~(modify-phases #$phases
;; XXX: PEP 517 manual build/install procedures copied from
;; python-isort.
(replace 'build
(lambda _
;; ZIP does not support timestamps before 1980.
(setenv "SOURCE_DATE_EPOCH" "315532800")
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))))))
(native-inputs (list python-pypa-build
python-setuptools-scm
python-twisted))
(propagated-inputs
(list python-attrs
python-importlib-metadata
python-pyrsistent
python-typing-extensions))))
(define-public python-schema
(package
(name "python-schema")
@ -5601,24 +5662,27 @@ readable format.")
(define-public python-pygit2
(package
(name "python-pygit2")
(version "1.9.1")
(version "1.9.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pygit2" version))
(sha256
(base32 "1jdr6z1il03nifwgpcdf95w6xzzbfzdkcqq5dcqjaa0rnv1pjr7g"))))
(base32 "068bwhirigbh2435abyv4shdxgxvyfqf4dxfmhd4hihivwrl9290"))))
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; tests don't run correctly in our environment
`(#:phases (modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-v")))))))
(propagated-inputs
(list python-cached-property python-cffi libgit2))
(native-inputs
(list python-pytest))
(home-page "https://github.com/libgit2/pygit2")
(synopsis "Python bindings for libgit2")
(description "Pygit2 is a set of Python bindings to the libgit2 shared
library, libgit2 implements Git plumbing.")
(description "Pygit2 is a set of Python bindings to the libgit2 shared library.")
;; GPL2.0 only, with linking exception.
(license license:gpl2)))
@ -6407,21 +6471,22 @@ a simple netcat replacement with chaining support.")
(define-public python-pycodestyle
(package
(name "python-pycodestyle")
(version "2.7.0")
(version "2.8.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pycodestyle" version))
(sha256
(base32
"1vqwmzmjdv331kmfq3q9j3as2x7r2r49lf83r9w4147pdg8c32f3"))))
"0zxyrg8029lzjhima6l5nk6y0z6lm5wfp9qchz3s33j3xx3mipgd"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "pytest" "-vv"))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs
(list python-pytest))
(home-page "https://pycodestyle.readthedocs.io/")
@ -10015,17 +10080,16 @@ PEP 8.")
(define-public python-pep8-naming
(package
(name "python-pep8-naming")
(version "0.12.0")
(version "0.13.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pep8-naming" version))
(sha256
(base32
"04kyh9hkpyc8jzj16d1kkk29b5n8miqdvbs0zm035n1z5z5kx6hz"))))
"1dc0b6xw1cxp01v9zsv4ryk49rfs1lngfpvzsixgp8b7z3ffcf4z"))))
(build-system python-build-system)
(propagated-inputs
(list python-flake8 python-flake8-polyfill))
(propagated-inputs (list python-flake8))
(home-page "https://github.com/PyCQA/pep8-naming")
(synopsis "Check PEP-8 naming conventions")
(description
@ -10101,14 +10165,14 @@ file (e.g. @file{PKG-INFO}).")
(define-public python-pyflakes
(package
(name "python-pyflakes")
(version "2.3.1")
(version "2.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyflakes" version))
(sha256
(base32
"1ny10364ciqh4ripasj4zzv4145l21l3s85m3qlrvfq5pk58xg7m"))))
"0k5jn8jpxni264wxf6cc3xcd1qckc0pww30bsd77mwzdf8l5ra05"))))
(build-system python-build-system)
(home-page "https://github.com/PyCQA/pyflakes")
(synopsis "Passive checker of Python programs")
@ -10152,23 +10216,26 @@ cyclomatic complexity of Python source code.")
(define-public python-flake8
(package
(name "python-flake8")
(version "3.9.1")
(version "4.0.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "flake8" version))
(sha256
(base32
"0y732h02n2aih8gzyfj4bbhg4jgahyv84mjwfindk2g6w45rka0s"))))
"03c7mnk34wfz7a0m5zq0273y94awz69fy5iww8alh4a4v96h6vl0"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "-v"))))))
(propagated-inputs (list python-pycodestyle python-entrypoints
python-pyflakes python-mccabe))
(native-inputs (list python-mock python-pytest))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-v")))))))
(propagated-inputs
(list python-entrypoints
python-mccabe
python-pycodestyle
python-pyflakes))
(native-inputs (list python-pytest))
(home-page "https://gitlab.com/pycqa/flake8")
(synopsis "The modular source code checker: pep8, pyflakes and co")
(description
@ -10281,40 +10348,6 @@ the same line (which can be introduced by the code formatting tool Black), or
unnecessary plus operators for explicit string literal concatenation.")
(license license:expat)))
(define-public python-flake8-polyfill
(package
(name "python-flake8-polyfill")
(version "1.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "flake8-polyfill" version))
(sha256
(base32
"1nlf1mkqw856vi6782qcglqhaacb23khk9wkcgn55npnjxshhjz4"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
;; Be compatible with Pytest 4:
;; https://gitlab.com/pycqa/flake8-polyfill/merge_requests/7
(substitute* "setup.cfg"
(("\\[pytest\\]")
"[tool:pytest]"))
(invoke "py.test" "-v"))))))
(propagated-inputs
(list python-flake8))
(native-inputs
(list python-mock python-pep8 python-pycodestyle python-pytest))
(home-page "https://gitlab.com/pycqa/flake8-polyfill")
(synopsis "Polyfill package for Flake8 plugins")
(description
"This package that provides some compatibility helpers for Flake8
plugins that intend to support Flake8 2.x and 3.x simultaneously.")
(license license:expat)))
(define-public python-flake8-print
(package
(name "python-flake8-print")
@ -10996,13 +11029,13 @@ third-party code.")
(define-public python-msgpack
(package
(name "python-msgpack")
(version "1.0.3")
(version "1.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "msgpack" version))
(sha256
(base32
"07m84yisf8m6gr68ip9v6vzxax7kqbn8qxg7ir18clk1jgxwgzai"))))
"0pqzy1zclyhd42gfibhkcqymbspy5a6v421g87mh40h3iz0nkn7m"))))
(build-system python-build-system)
(arguments
`(#:modules ((guix build utils)
@ -12427,6 +12460,13 @@ Python.")
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'set-version
;; for reproducible builds, otherwise python-debian
;; generates a _version.py including the date
(lambda _
(copy-file "lib/debian/_version.py.in" "lib/debian/_version.py")
(substitute* "lib/debian/_version.py"
(("__CHANGELOG_VERSION__") ,version))))
(add-after 'unpack 'remove-debian-specific-tests
;; python-apt, apt and dpkg are not yet available in guix,
;; and these tests heavily depend on them.
@ -13498,17 +13538,6 @@ for atomic file system operations.")
(home-page "https://github.com/untitaker/python-atomicwrites")
(license license:expat)))
(define-public python-atomicwrites-1.4
(package
(inherit python-atomicwrites)
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "atomicwrites" version))
(sha256
(base32
"0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f"))))))
(define-public python-qstylizer
(package
(name "python-qstylizer")
@ -13862,6 +13891,25 @@ to the Python ecosystem.")
"Promises/A+ implementation for Python")
(license license:expat)))
(define-public python-progress
(package
(name "python-progress")
(version "1.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "progress" version))
(sha256
(base32 "1k9lpb7lqr6mywpnqcz71y6qny54xlgprdp327za2gy0nnc6xj69"))))
(build-system python-build-system)
(home-page "http://github.com/verigak/progress/")
(synopsis "Progress reporting bars for Python")
(description "This Python package provides progress reporting for visual
of progress of long running operations. There are multiple choices of
progress bars and spinners, with customizable options, such as width, fill
character, and suffix.")
(license license:isc)))
(define-public python-progressbar2
(package
(name "python-progressbar2")
@ -15495,20 +15543,33 @@ respectively.")
(define-public python-rope
(package
(name "python-rope")
(version "0.19.0")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "rope" version))
(sha256
(base32
"1nlhkmsfvn2p1msrmwqnypnvr993alzawnpc1605q7rfad3xgrk4"))))
"0bkzwkllxxdxd3w70xiy137lqvnlmmaplsc2ya3s23ss4kq8y10k"))))
(build-system python-build-system)
(arguments
(list #:phases
`(modify-phases %standard-phases
(add-after 'unpack 'disable-broken-test
(lambda _
(substitute* "ropetest/contrib/autoimporttest.py"
(("def test_search_module")
"def __notest_search_module")
(("def test_search_submodule")
"def __notest_search_submodule")))))))
(native-inputs
(list python-pytest-timeout
python-pytest))
(home-page "https://github.com/python-rope/rope")
(synopsis "Refactoring library for Python")
(description "Rope is a refactoring library for Python. It facilitates
the renaming, moving and extracting of attributes, functions, modules, fields
and parameters in Python 2 source code. These refactorings can also be applied
and parameters in Python source code. These refactorings can also be applied
to occurrences in strings and comments.")
(license license:lgpl3+)))
@ -16078,25 +16139,14 @@ implementation has been adapted, improved, and fixed from Molten.")
(define-public python-shellingham
(package
(name "python-shellingham")
(version "1.3.2")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "shellingham" version))
(sha256
(base32 "07kmia2hvd2q7wik89m82hig9mqr2faynvy38vxq5fm0ps11jv2p"))))
(base32 "07hpndvcv9mf9hp54b4apzpwzmzfzl8ryaacsfdq4139im2w4ma8"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'restore-setup.py
;; setup.py will return in the next release.
;; <https://github.com/sarugaku/shellingham/issues/33>
(lambda _
(with-output-to-file "setup.py"
(lambda _
(display "from setuptools import setup\nsetup()\n")))
#t)))))
(home-page "https://github.com/sarugaku/shellingham")
(synopsis "Tool to detect surrounding shell")
(description
@ -16975,6 +17025,91 @@ as well.")
@end itemize")
(license license:bsd-3)))
(define-public python-exodriver
(package
(name "python-exodriver")
(version "2.6.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/labjack/exodriver")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1ikjz8147p14s814yabdq821y691klnr2yg54zgsymcc97kvwp2q"))))
(outputs (list "out"
"doc")) ;544 KiB of examples
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output)
"RUN_LDCONFIG=0"
"LINK_SO=1")
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key make-flags #:allow-other-keys #:rest args)
(with-directory-excursion "liblabjackusb"
(apply (assoc-ref %standard-phases 'build)
`(,@args #:make-flags ,make-flags)))))
(replace 'install
(lambda* (#:key make-flags #:allow-other-keys #:rest args)
(with-directory-excursion "liblabjackusb"
(apply (assoc-ref %standard-phases 'install)
`(,@args #:make-flags ,make-flags)))
;; Install udev rules.
(install-file "90-labjack.rules"
(string-append #$output "/lib/udev/rules.d"))
;; Install examples.
(let ((doc (string-append #$output:doc "/share/doc/" #$name)))
(mkdir-p doc)
(copy-recursively "examples"
(string-append doc "/examples"))))))))
(inputs (list libusb))
(home-page "https://github.com/labjack/exodriver")
(synopsis "USB driver for LabJack data acquisition instruments")
(description "This package provides @code{liblabjackusb}, a USB library for low-level
communication with the U3, U6, UE9, Digit, T4 and T7 LabJack data acquisition
instruments. A udev rule is also included to allow unprivileged users to
communicate with the instruments via USB.")
(license license:expat))) ;see README
(define-public python-labjack
(package
(name "python-labjack")
(version "2.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "LabJackPython" version))
(sha256
(base32
"013bjqdi05vlbdqprr6kqi8gs4qhqc7rnyp1klw8k6fng77rpdzz"))))
(build-system python-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-liblabjackusb.so
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "." "\\.py$")
(("ctypes.CDLL\\(\"liblabjackusb.so\"")
(format #f "ctypes.CDLL(~s"
(search-input-file inputs
"lib/liblabjackusb.so")))))))))
;; exodriver is provided as a regular input, as only its shared object is
;; used, not its Python API.
(inputs (list python-exodriver))
(home-page "https://labjack.com/support/software/examples/ud/labjackpython")
(synopsis "Python library for LabJack U3, U6, UE9 and U12")
(description "This Python library allows communicating with the U3, U6,
UE9 and U12 LabJack data acquisition (DAQ) modules.")
(license license:expat))) ;see setup.py
(define-public python-kivy-garden
(package
(name "python-kivy-garden")
@ -18909,14 +19044,14 @@ while only declaring the test-specific fields.")
(define-public python-radon
(package
(name "python-radon")
(version "4.1.0")
(version "5.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "radon" version))
(sha256
(base32
"0vfxxzbnz5lxfvp0yxp35g6c8qqnnbhi4dm7shkm1d3d4192q22n"))))
"1vmf56zsf3paa1jadjcjghiv2kxwiismyayq42ggnqpqwm98f7fb"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -18930,10 +19065,8 @@ while only declaring the test-specific fields.")
(replace 'check
(lambda _
(invoke "python" "radon/tests/run.py"))))))
(propagated-inputs
(list python-colorama python-flake8-polyfill python-mando))
(native-inputs
(list python-pytest python-pytest-mock))
(propagated-inputs (list python-colorama python-mando))
(native-inputs (list python-pytest python-pytest-mock))
(home-page "https://radon.readthedocs.org/")
(synopsis "Code Metrics in Python")
(description "Radon is a Python tool which computes various code metrics.
@ -19659,41 +19792,6 @@ complete rewrite in Cython to attempt to increase the performance over the
pure Python module.")
(license license:bsd-3)))
(define-public python-xenon
(package
(name "python-xenon")
(version "0.7.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xenon" version))
(sha256
(base32
"0nv207ql2wmh9q62503np056c4vf1c1hlsi5cvv5p5kx574k6r2y"))))
(build-system python-build-system)
(native-inputs
(list python-pyyaml python-radon python-requests python-flake8
python-tox))
(arguments
`(#:tests? #f ;test suite not shipped with the PyPI archive
#:phases
(modify-phases %standard-phases
(add-before 'build 'patch-test-requirements
(lambda _
;; Remove httpretty dependency for tests.
(substitute* "setup.py"
(("httpretty") ""))
#t)))))
(home-page "https://xenon.readthedocs.org/")
(synopsis "Monitor code metrics for Python on your CI server")
(description
"Xenon is a monitoring tool based on Radon. It monitors code complexity.
Ideally, @code{xenon} is run every time code is committed. Through command
line options, various thresholds can be set for the complexity of code. It
will fail (i.e. it will exit with a non-zero exit code) when any of these
requirements is not met.")
(license license:expat)))
(define-public python-pysocks
(package
(name "python-pysocks")
@ -24279,7 +24377,13 @@ with features similar to the @command{wget} utility.")
(build-system python-build-system)
(arguments
;; No tests
`(#:tests? #f))
`(#:tests? #f
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-for-pygit2
(lambda _
(substitute* "offlate/systems/git.py"
(("pygit2.remote.RemoteCallbacks")
"pygit2.RemoteCallbacks")))))))
(propagated-inputs
(list python-android-stringslib
python-dateutil
@ -28211,13 +28315,13 @@ to:
(define-public nikola
(package
(name "nikola")
(version "8.1.3")
(version "8.2.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Nikola" version))
(sha256
(base32 "1vspzvi4039zgjc93bspqjb384r6c9ksvmidbp8csws2pdbc7sh5"))))
(base32 "1h96y4sfypp2fbqxa8xrqch5f7r3srm2ly222k9w2n143h2spx4m"))))
(build-system python-build-system)
(propagated-inputs
(list python-babel
@ -28253,7 +28357,6 @@ to:
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;;(add-installed-pythonpath inputs outputs)
(invoke "pytest" "tests" "--no-cov"
"-k" "not test_compiling_markdown[hilite]")))))))
(home-page "https://getnikola.com/")
@ -29315,3 +29418,24 @@ profile. It supports:
Currently, Linux is the only platform supported by this library.")
(license license:expat)))
(define-public python-musical-scales
(package
(name "python-musical-scales")
(version "1.0.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "musical-scales" version))
(sha256
(base32
"1ckn8n37i7b65h0i385ycn0w8sg9na0iabz0kmhxxc1wj0hddkw9"))))
(build-system python-build-system)
(native-inputs (list python-wheel))
(home-page "https://github.com/hmillerbakewell/musical-scale")
(synopsis "Retrieve a scale based on a given mode and starting note")
(description
"Retrieve a scale based on a given mode and starting note.
Information about these scales can be
@url{https://en.wikipedia.org/wiki/List_of_musical_scales_and_modes, found on
Wikipedia}.")
(license license:expat)))

View File

@ -30,7 +30,7 @@
;;; Copyright © 2016, 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20162018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162018, 2021, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017, 2018, 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
@ -673,7 +673,7 @@ To function properly, this package should not be installed together with the
(define-public micropython
(package
(name "micropython")
(version "1.15")
(version "1.18")
(source
(origin
(method url-fetch)
@ -681,7 +681,7 @@ To function properly, this package should not be installed together with the
"releases/download/v" version
"/micropython-" version ".tar.xz"))
(sha256
(base32 "04sfrfcljhfps340l4wh5ffwkhw1ydraday8nv92nv7gmnrj1l2j"))
(base32 "1d1yza02pwq3kh8531ryq9sjk7zjqh786nnw397cccfk5ss73z4n"))
(modules '((guix build utils)))
(snippet
'(begin
@ -689,37 +689,31 @@ To function properly, this package should not be installed together with the
(with-directory-excursion "lib"
;; TODO: Unbundle axtls and berkley-db-1.xx
(for-each delete-file-recursively
'("libffi" "lwip" "stm32lib" "nrfx")))
#t))))
'("libffi" "lwip" "stm32lib" "nrfx")))))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'build-mpy-cross
(lambda* (#:key make-flags #:allow-other-keys)
(with-directory-excursion "mpy-cross"
(apply invoke "make" make-flags))))
(add-after 'build-mpy-cross 'prepare-build
(lambda _
(chdir "ports/unix")
;; see: https://github.com/micropython/micropython/pull/4246
(substitute* "Makefile"
(("-Os") "-Os -ffp-contract=off"))
#t))
(replace 'install-license-files
;; We don't build in the root directory so the file isn't found.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dest (string-append out "/share/doc/" ,name "-" ,version "/")))
(install-file "../../LICENSE" dest))
#t))
(delete 'configure)) ; no configure
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"V=1")
#:test-target "test"))
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(list #:phases
#~(modify-phases %standard-phases
(add-before 'build 'build-mpy-cross
(lambda* (#:key make-flags #:allow-other-keys)
(with-directory-excursion "mpy-cross"
(apply invoke "make" make-flags))))
(add-after 'build-mpy-cross 'prepare-build
(lambda _
(chdir "ports/unix")
;; see: https://github.com/micropython/micropython/pull/4246
(substitute* "Makefile"
(("-Os") "-Os -ffp-contract=off"))))
(add-before 'install-license-files 'chdir-back
;; We don't build in the root directory so the file isn't found.
(lambda _
(chdir "../..")))
(delete 'configure)) ; no configure
#:make-flags
#~(list (string-append "PREFIX=" #$output)
"V=1")
#:test-target "test"))
(native-inputs (list pkg-config python-wrapper))
(inputs
(list libffi))
(home-page "https://micropython.org/")

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -28,13 +28,13 @@
(define-public rcm
(package
(name "rcm")
(version "1.3.4")
(version "1.3.5")
(source (origin
(method url-fetch)
(uri (string-append "https://thoughtbot.github.io/rcm/dist/rcm-"
version ".tar.gz"))
(sha256
(base32 "0jn2crdqcna0fyg7w7x1mcyjblzykd3lh4vdxhsd5x4w8hvsw4cv"))))
(base32 "0bdyksrd9i3lkmr9kq6dwa0l4g2403vnma5s4j9h8spi4rziwx14"))))
(build-system gnu-build-system)
(arguments '(#:phases
(modify-phases %standard-phases
@ -45,8 +45,7 @@
"test/rcup-hooks-run-in-order.t")
(("/bin/sh") (which "sh")))
(substitute* "test/rcup-hooks.t"
(("/usr/bin/env") (which "env")))
#t)))
(("/usr/bin/env") (which "env"))))))
#:parallel-tests? #f))
(native-inputs (list perl python-cram))
(synopsis "Management suite for dotfiles")

View File

@ -138,14 +138,14 @@ rich set of boolean query operators.")
(define-public perl-search-xapian
(package
(name "perl-search-xapian")
(version "1.2.25.4")
(version "1.2.25.5")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/O/OL/OLLY/"
"Search-Xapian-" version ".tar.gz"))
(sha256
(base32 "1pbl8pbgmbs3i8yik4p63g4pd9bhn0dp3d7l667dkvw0kccl66c7"))))
(base32 "12xs22li1z10rccpxbb4zflkkdh7q37z9hb8nvx1ywfn2b3vskr0"))))
(build-system perl-build-system)
(native-inputs
(list perl-devel-leak))

View File

@ -8,7 +8,7 @@
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
@ -354,7 +354,7 @@ that implements both the msgpack and msgpack-rpc specifications.")
(define-public libcyaml
(package
(name "libcyaml")
(version "1.1.0")
(version "1.3.1")
(source
(origin
(method git-fetch)
@ -364,19 +364,16 @@ that implements both the msgpack and msgpack-rpc specifications.")
(file-name (git-file-name name version))
(patches (search-patches "libcyaml-libyaml-compat.patch"))
(sha256
(base32 "0428p0rwq71nhh5nzcbapsbrjxa0x5l6h6ns32nxv7j624f0zd93"))))
(base32 "0gvf3h8r8300wdwfjgxw3nzlj7w14q63m67p8wdm5fvpha017n4y"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
`(#:test-target "test"
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "CC=gcc"))
(string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(replace 'check
(lambda _
(setenv "CC" "gcc")
(invoke "make" "test"))))))
(delete 'configure)))) ; no configure script
(inputs
(list libyaml))
(native-inputs

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019, 2020, 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Eric Bavier <bavier@posteo.net>
;;;
;;; This file is part of GNU Guix.
@ -52,6 +52,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix svn-download)
#:use-module (guix build-system cmake)
@ -818,48 +819,43 @@ tools and a collection of Python modules for programmatic use.")
(define-public python-pygmsh
(package
(name "python-pygmsh")
(version "7.1.11")
(version "7.1.17")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nschloe/pygmsh")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0g4yllmxks7yb50vild5xi1cma0yl16vsq6rfvdwmqaj4hwxcabk"))
(modules '((guix build utils)))
(snippet
'(begin
(let ((file (open-file "setup.py" "a")))
(display "from setuptools import setup\nsetup()" file)
(close-port file))
;; A reference to setuptools in the configuration file
;; triggers an attempt to download the package from pypi.
;; The reference is not needed since the package is
;; provided by the build system.
(substitute* "setup.cfg"
(("^[[:blank:]]+setuptools>=42\n") ""))
#t))))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nschloe/pygmsh")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"11flp2c4ynk1fhanf4mqyzrpd0gjbnv6afrwwc7xi3mb6ms69lr0"))))
(build-system python-build-system)
(native-inputs
`(("pytest" ,python-pytest)
("wheel" ,python-wheel)))
(propagated-inputs
`(("importlib-metadata" ,python-importlib-metadata)
("gmsh" ,gmsh)
("meshio" ,python-meshio)
("numpy" ,python-numpy)))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "-m" "pytest" "-v" "tests"))
#t)))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'workaround-gmsh-detection-failure
(lambda _
;; Due to lack of metadata, the gmsh Python package is not
;; detected although importable.
(substitute* "pyproject.toml"
(("\"gmsh\",") ""))))
;; XXX: PEP 517 manual build copied from python-isort.
(replace 'build
(lambda _
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-v" "tests"))))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl)))))))
(native-inputs (list python-pypa-build python-flit-core python-pytest))
(propagated-inputs (list gmsh python-meshio python-numpy))
(home-page "https://github.com/nschloe/pygmsh")
(synopsis "Python frontend for Gmsh")
(description "The goal of @code{pygmsh} is to combine the power of
@ -868,7 +864,7 @@ the methods and functions that comprise the Gmsh Python API. In this
way the meshing of complex geometries using high-level abstractions is
made possible. The package provides a Python library together with a
command-line utility for mesh optimisation.")
(license license:lgpl3)))
(license license:gpl3+)))
(define-public python-dolfin-adjoint
(package

View File

@ -175,10 +175,22 @@ function interface, and a symbolic debugger.")
"sml.boot.amd64-unix/SMLNJ-BASIS/.cm/amd64-unix/basis-common.cm"))
;; Build.
(invoke "./config/install.sh" "-default"
(if (string=? "i686-linux" ,(%current-system))
"32"
"64"))
;; The `sml` executable built by this package somehow inherits the
;; signal dispositions of the shell where it was built. If SIGINT
;; is ignored in the shell, the resulting `sml` will also ignore
;; SIGINT. This will break the use of Ctrl-c for interrupting
;; execution in the SML/NJ REPL.
;; Here, we use Guile's `system` procedure instead of Guix's
;; `invoke` because `invoke` uses Guile's `system*`, which causes
;; SIGINT and SIGQUIT to be ignored.
(let ((exit-code
(system (string-append "./config/install.sh -default "
(if (string=? "i686-linux"
,(%current-system))
"32"
"64")))))
(unless (zero? exit-code)
(error (format #f "Exit code: ~a" exit-code))))
;; Undo the binary patch.
(for-each
@ -317,7 +329,7 @@ function interface, and a symbolic debugger.")
,(smlnj-file version
"asdl.tgz"
"0mad2df5pmkdsb69gflxma6m6i3gla6hdmjjnkzk76pagpr8zb0m"))))
(home-page "http://www.smlnj.org")
(home-page "https://www.smlnj.org")
(synopsis "Standard ML of New Jersey interactive compiler")
(description
"SML/NJ is an implementation of the Standard ML programming language.

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2021, 2022 Remco van 't Veer <remco@remworks.net>
@ -122,15 +122,21 @@ manage user, group and computer accounts for a domain.")
(define-public ding-libs
(package
(name "ding-libs")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri (string-append "https://releases.pagure.org/SSSD/ding-libs/"
"ding-libs-" version ".tar.gz"))
(sha256
(base32
"1h97mx2jdv4caiz4r7y8rxfsq78fx0k4jjnfp7x2s7xqvqks66d3"))))
(version "0.6.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/SSSD/ding-libs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "17x3gj2yrjb6h7ml97xlim310x8s54n238p3ns2bj3mxifqkx0mf"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
'(list "--disable-static")))
(native-inputs (list autoconf automake gettext-minimal libtool pkg-config))
(home-page "https://pagure.io/SSSD/ding-libs/")
(synopsis "Libraries for SSSD")
(description

View File

@ -8,7 +8,7 @@
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016, 2017 Raoul Bonnal <ilpuccio.febo@gmail.com>
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2018 Alex Branham <alex.branham@gmail.com>
;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com>
@ -151,7 +151,7 @@ be output in text, PostScript, PDF or HTML.")
(define-public jags
(package
(name "jags")
(version "4.3.0")
(version "4.3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/mcmc-jags/JAGS/"
@ -159,7 +159,7 @@ be output in text, PostScript, PDF or HTML.")
"JAGS-" version ".tar.gz"))
(sha256
(base32
"1z3icccg2ic56vmhyrpinlsvpq7kcaflk1731rgpvz9bk1bxvica"))))
"0aa2w4g5057vn1qjp954s2kwxfmy1h7p5yn56fyi7sz9nmaq69gr"))))
(build-system gnu-build-system)
(home-page "http://mcmc-jags.sourceforge.net/")
(native-inputs

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;;
;;; This file is part of GNU Guix.
@ -59,14 +59,14 @@
(define-public ceph
(package
(name "ceph")
(version "16.2.7")
(version "16.2.9")
(source (origin
(method url-fetch)
(uri (string-append "https://download.ceph.com/tarballs/ceph-"
version ".tar.gz"))
(sha256
(base32
"0n7vpdcxji49bqaa5b7zxif1r80rrkbh0dfacbibvf20kzzbn2fz"))
"1yf62k9wlx9pmggwa5c05wfqzy28sdm4b465y4iqrgc9dkrgin08"))
(patches
(search-patches
"ceph-disable-cpu-optimizations.patch"

View File

@ -175,8 +175,8 @@ and querying data, exposing task data in multiple formats to other tools.")
(synopsis "Program keeping track of time spent on different projects")
(description
"@code{worklog} is a program that helps you keep track of your time.
@code{worklog} is a simple ncurses based based program that runs a clock and
logs time to a logfile.")
@code{worklog} is a simple ncurses based program that runs a clock and logs
time to a logfile.")
(license license:public-domain))))
(define-public dstask

View File

@ -20,6 +20,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@ -10395,6 +10396,59 @@ provided box macros are @code{\\lapbox}, @code{\\marginbox},
@code{\\minsizebox}, @code{\\maxsizebox} and @code{\\phantombox}.")
(license license:lppl1.3))))
(define-public texlive-qrcode
(package
(inherit (simple-texlive-package
"texlive-qrcode"
(list "doc/latex/qrcode/README"
"source/latex/qrcode/qrcode.dtx"
"source/latex/qrcode/qrcode.ins")
(base32
"1xfv0imrrbxjqwjapcf2silg19rwz2jinawy1x65c1krg919vn02")))
(outputs '("out" "doc"))
(arguments
(list
#:tex-directory "latex/qrcode"
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'chdir
(lambda _
(setenv "ROOT_DIR" (getcwd))
(chdir "source/latex/qrcode")))
(add-after 'build 'build-doc
(lambda _
(copy-file "qrcode.dtx" "build/qrcode.dtx")
(chdir "build")
(invoke "xelatex" "qrcode.dtx")
(invoke "xelatex" "qrcode.dtx"))) ;generate qrcode.pdf
(replace 'install
(lambda* (#:key tex-directory #:allow-other-keys)
(let ((doc (string-append #$output:doc "/share/doc/"
tex-directory))
(out (string-append #$output "/share/texmf-dist/tex/"
tex-directory)))
(install-file "qrcode.pdf" doc)
(install-file (car (find-files (getenv "ROOT_DIR") "README"))
doc)
(install-file "qrcode.sty" out)))))))
(propagated-inputs
(list texlive-lm
texlive-latex-xkeyval
texlive-xcolor))
(native-inputs
(list (texlive-updmap.cfg (list texlive-lm texlive-zapfding))
texlive-hyperref
texlive-latex-xkeyval
texlive-stringenc
texlive-xcolor))
(home-page "https://www.ctan.org/pkg/qrcode")
(synopsis "QR codes without external tools")
(description "This package creates @acronym{QR,Quick Response} codes for
LaTeX documents without depending on external graphics packages. It supports
generating codes of different sizes and with different error correction
levels. All functionality is provided by the single @code{\\qrcode} command.")
(license license:lppl1.3c+)))
(define-public texlive-tcolorbox
(let ((template (simple-texlive-package
"texlive-tcolorbox"

View File

@ -18,6 +18,7 @@
;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2021 Calum Irwin <calumirwin1@gmail.com>
;;; Copyright © 2022 Luis Henrique Gomes Higino <luishenriquegh2701@gmail.com>
;;; Copyright © 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1132,6 +1133,38 @@ systems that displays its buffer(s) as a hex dump. The user interface is kept
similar to vi/ex.")
(license license:bsd-3)))
(define-public edlin
(package
(name "edlin")
(version "2.20")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/freedos-edlin/freedos-edlin/"
version "/edlin-" version ".tar.bz2"))
(sha256
(base32 "0cdv42ffminncwj5ph9lw0j7zpbv8l35acppy90wj7x1qm4qk6x8"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-read-only
(lambda _
;; Remove executable bits.
(chmod "COPYING" #o444)
(chmod "edlin.htm" #o444)))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let ((doc-dir (string-append (assoc-ref outputs "out")
"/share/doc/edlin-" ,version)))
(mkdir-p doc-dir)
(install-file "edlin.htm" doc-dir)))))))
(home-page "https://sourceforge.net/projects/freedos-edlin/")
(synopsis "The line editor of the FreeDOS operating system")
(description "The @code{edlin} program is a small line editor, written for
FreeDOS as a functional clone of the old MS-DOS program edlin.")
(license license:gpl2+)))
(define-public tree-sitter
(package
(name "tree-sitter")

View File

@ -455,14 +455,14 @@ Potential client and exit connections are scrubbed of sensitive information.")
(define-public tractor
(package
(name "tractor")
(version "3.12")
(version "3.13")
(source
(origin
(method url-fetch)
(uri (pypi-uri "traxtor" version))
(sha256
(base32
"0bwj4l6szvx7hpjr8va3hlv0g79sxz02hsb60l61hb314c6d4r3q"))))
"0r8zzaia1s678d39cpqjfpb72fwc46lfwnz1rb043hi6grd39jl7"))))
(build-system python-build-system)
(native-inputs
`(("glib:bin" ,glib "bin"))) ; for glib-compile-schemas.

View File

@ -3370,3 +3370,40 @@ with more capabilities. @command{git filter-repo} is now recommended by the
Git project instead of @command{git filter-branch}.")
(license (list license:expat ;; Main license.
license:gpl2)))) ;; For test harness.
(define-public gitlint
(package
(name "gitlint")
(version "0.17.0")
(source (origin
(method url-fetch)
;; the gitlint-core pypi package contains the actual gitlint
;; code; the gitlint package only pulls in gitlint-core with
;; stricter dependency versioning
(uri (pypi-uri "gitlint-core" version))
(sha256
(base32
"14cn89biys8r7mwcdgllv371k34km9k1941ylxf53a7sxwrzsbbp"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'loosen-requirements
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "gitlint/shell.py"
(("'git'") (string-append
"'"
(search-input-file inputs "bin/git")
"'"))
;; force using subprocess instead of sh so git does not need
;; to be a propagated input
(("if USE_SH_LIB") "if False")))))))
(inputs
(list git python-arrow python-click python-sh))
(home-page "https://jorisroovers.com/gitlint/")
(synopsis "Linting Git commit messages")
(description
"Gitlint is a Git commit message linter written in Python: it checks your
commit messages for style.")
(license license:expat)))

View File

@ -121,6 +121,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages curl)
#:use-module (gnu packages dbm)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages dns)
#:use-module (gnu packages docbook)
@ -5337,14 +5338,14 @@ wlroots-based compositors. More specifically, those that support
(define-public guvcview
(package
(name "guvcview")
(version "2.0.6")
(version "2.0.8")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/guvcview/source/guvcview-"
"src-" version ".tar.gz"))
"src-" version ".tar.bz2"))
(sha256
(base32
"11byyfpkcik7wvf2qic77zjamfr2rhji97dpj1gy2fg1bvpiqf4m"))))
"108c4g0ns9i1wnxyalmpjqbhlflmrj855vxgggr6qrl6h924w7x2"))))
(build-system gnu-build-system)
(arguments
;; There are no tests and "make check" would fail on an intltool error.
@ -5352,11 +5353,13 @@ wlroots-based compositors. More specifically, those that support
(native-inputs
(list pkg-config intltool))
(inputs
(list gtk+
(list bdb
gtk+
eudev
libjpeg-turbo
libusb
v4l-utils ;libv4l2
ffmpeg ;libavcodec, libavutil
v4l-utils ;libv4l2
ffmpeg ;libavcodec, libavutil
sdl2
gsl
portaudio

View File

@ -2267,17 +2267,17 @@ instance of a component on each request.")
(define-public perl-catalyst-devel
(package
(name "perl-catalyst-devel")
(version "1.41")
(version "1.42")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
"Catalyst-Devel-" version ".tar.gz"))
(sha256
(base32 "1r8arq7sw37d0mjyfzkc3pg1a9plgydqbscryc8qpvba4swpljls"))))
(base32 "1gcaqivyxwsdq87v9za1ijjibh6llirzqsbpwjbw1f5mravg1iky"))))
(build-system perl-build-system)
(native-inputs
(list perl-test-fatal))
(list perl-file-sharedir-install perl-test-fatal))
(propagated-inputs
(list perl-catalyst-action-renderview
perl-catalyst-plugin-configloader
@ -5526,6 +5526,12 @@ w3c webidl files and a binding configuration file.")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'remove-timestamps
;; Avoid embedding timestamp for reproducible builds
(lambda _
(substitute* "utils/git-testament.pl"
(("WT_COMPILEDATE ..$compiledate")
"WT_COMPILEDATE \\\""))))
(add-after 'build 'adjust-welcome
(lambda _
(substitute* "frontends/gtk/res/welcome.html"

View File

@ -54,6 +54,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Derek Chuank <derekchuank@outlook.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1499,6 +1500,35 @@ This is a fork with added support for Wayland using the wlr-gamma-control
protocol.")
(license license:gpl3+))))
(define-public xwhite
(package
(name "xwhite")
(version "0.0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/derekchuank/xwhite/"
"releases/download/v" version
"/xwhite-" version ".tar.gz"))
(sha256
(base32
"0jbnlj5a91ib4anprmylqqnbv9wa73cr7fsc1s54df0a0w5yq8sz"))))
(build-system meson-build-system)
(arguments
`(#:tests? #f)) ;No test suite.
(native-inputs (list pkg-config))
(inputs (list libxrandr))
(home-page "https://github.com/derekchuank/xwhite")
(synopsis "Adjust the color balance")
(description
"@command{xwhite} is a command line tool for adjusting the colour
balance of screen. It is based on xrandr's gamma correction and brightness adjustment.
As such, it can only be used for X displays and not Wayland displays. It is typically
used for tuning the color balance and color temperature. It has a similar function as
@command{redshift -P -g R:G:B -O temperature}, but @command{xwhite} is more flexible
in that it does not keep the white color fixed, suitable for setting the white color
to an arbitrary balanced color.")
(license license:gpl2)))
(define-public gammastep
(package
(name "gammastep")
@ -2320,16 +2350,16 @@ temperature of the screen.")
(native-inputs
(list pandoc pkg-config))
(inputs
`(("fontconfig" ,fontconfig)
("libX11" ,libx11)
("libxcomposite" ,libxcomposite)
("libxext" ,libxext)
("libxfixes" ,libxfixes)
("libxft" ,libxft)
("libxmu" ,libxmu)
("libxrandr" ,libxrandr)
("libxscrnsaver" ,libxscrnsaver)
("linux-pam" ,linux-pam)))
(list fontconfig
libx11
libxcomposite
libxext
libxfixes
libxft
libxmu
libxrandr
libxscrnsaver
linux-pam))
(home-page "https://github.com/google/xsecurelock")
(synopsis "X11 screen lock utility with the primary goal of security")
(description "@code{xsecurelock} is an X11 screen locker which uses
@ -2339,9 +2369,11 @@ As a consequence of the modular design, the usual screen locker service
shouldn't be used with @code{xsecurelock}. Instead, you need to add a helper
binary to setuid-binaries:
@example
(setuid-programs (cons*
(file-append xsecurelock \"/libexec/xsecurelock/authproto_pam\")
%setuid-programs))
(setuid-programs
(cons*
(setuid-program
(program (file-append xsecurelock \"/libexec/xsecurelock/authproto_pam\")))
%setuid-programs))
@end example")
(license license:asl2.0)))

View File

@ -12,7 +12,7 @@
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
@ -955,17 +955,17 @@ a schema.")
(define-public perl-xml-compile-soap
(package
(name "perl-xml-compile-soap")
(version "3.24")
(version "3.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/"
"XML-Compile-SOAP-" version ".tar.gz"))
(sha256
(base32
"0pkcph562l2ij7rlwlvm58v6y062qsbydfpaz2qnph2ixqy0xfd1"))))
"1a3650al287x781i3flylwbik1ss3xfw7sgdcaz5qrjqvhpn6mnn"))))
(build-system perl-build-system)
(propagated-inputs
(list perl-file-slurp-tiny
(list perl-file-slurper
perl-libwww
perl-log-report
perl-xml-compile

View File

@ -6486,6 +6486,8 @@ X11 servers, Windows, or macOS.")
(guix build emacs-utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build emacs-utils))
#:parallel-build? #f ; for reproducible generation of
; share/uim/installed-modules.scm
#:configure-flags
(list "--with-anthy-utf8"
(string-append "--with-lispdir=" %output "/share/emacs")

View File

@ -1397,23 +1397,24 @@ responsible for logging system messages.")))
# level notice or higher and anything of level err or
# higher to the console.
# Don't log private authentication messages!
*.alert;auth.notice;authpriv.none /dev/console
*.alert;auth.notice;authpriv.none -/dev/console
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none /var/log/messages
*.info;mail.none;authpriv.none -/var/log/messages
# Like /var/log/messages, but also including \"debug\"-level logs.
*.debug;mail.none;authpriv.none /var/log/debug
# Log \"debug\"-level entries and nothing else.
*.=debug -/var/log/debug
# Same, in a different place.
*.info;mail.none;authpriv.none /dev/tty12
*.info;mail.none;authpriv.none -/dev/tty12
# The authpriv file has restricted access.
# 'fsync' the file after each line (hence the lack of a leading dash).
authpriv.* /var/log/secure
# Log all the mail messages in one place.
mail.* /var/log/maillog
mail.* -/var/log/maillog
"))
(define* (syslog-service #:optional (config (syslog-configuration)))
@ -1438,7 +1439,8 @@ information on the configuration file syntax."
(module "pam_limits.so")
(arguments '("conf=/etc/security/limits.conf")))))
(if (member (pam-service-name pam)
'("login" "su" "slim" "gdm-password" "sddm"))
'("login" "su" "slim" "gdm-password" "sddm"
"sudo" "sshd"))
(pam-service
(inherit pam)
(session (cons pam-limits

View File

@ -978,8 +978,7 @@ manually.")
(define (ddclient-activation config)
"Return the activation GEXP for CONFIG."
(with-imported-modules '((guix build utils)
(ice-9 rdelim))
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils)
(ice-9 rdelim))

View File

@ -643,7 +643,7 @@ ca-certificates.crt file in the system profile."
#:group #$group
#:pid-file "/var/run/guix-data-service/pid"
;; Allow time for migrations to run
#:pid-file-timeout 60
#:pid-file-timeout 120
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")

View File

@ -20,9 +20,10 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu services messaging)
#:use-module (gnu packages messaging)
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module (gnu packages irc)
#:use-module (gnu packages messaging)
#:use-module (gnu packages tls)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
@ -829,11 +830,14 @@ string, you could instantiate a prosody service like this:
(file-append bitlbee "/sbin/bitlbee")
#:name "bitlbee"
#:preserved-environment-variables
'("PURPLE_PLUGIN_PATH")
'("PURPLE_PLUGIN_PATH" "GUIX_LOCPATH" "LC_ALL")
#:mappings (list (file-system-mapping
(source "/var/lib/bitlbee")
(target source)
(writable? #t))
(file-system-mapping
(source "/run/current-system/locale")
(target source))
(file-system-mapping
(source conf)
(target conf)))
@ -867,7 +871,8 @@ string, you could instantiate a prosody service like this:
;; Allow 'bitlbee-purple' to use libpurple plugins.
#:environment-variables
(list (string-append "PURPLE_PLUGIN_PATH="
#$plugins "/lib/purple-2")))
#$plugins "/lib/purple-2")
"GUIX_LOCPATH=/run/current-system/locale"))
(make-forkexec-constructor/container
(list #$(file-append bitlbee "/sbin/bitlbee")

View File

@ -300,7 +300,7 @@ VERSION is the target version of the boot-parameters record."
(define* (operating-system-kernel-arguments
os root-device #:key (version %boot-parameters-version))
"Return all the kernel arguments, including the ones not specified directly
by the user. VERSION should match that of the target <boot-parameter> record
by the user. VERSION should match that of the target <boot-parameters> record
object that will contain the kernel parameters."
(append (bootable-kernel-arguments os root-device version)
(operating-system-user-kernel-arguments os)))
@ -515,6 +515,7 @@ The object has its kernel-arguments extended in order to make it bootable."
(boot-parameters-kernel-arguments params))))))
(define (boot-parameters->menu-entry conf)
"Return a <menu-entry> instance given CONF, a <boot-parameters> instance."
(let* ((kernel (boot-parameters-kernel conf))
(multiboot-modules (boot-parameters-multiboot-modules conf))
(multiboot? (pair? multiboot-modules)))

View File

@ -6,6 +6,7 @@
;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,8 +32,10 @@
#:use-module (guix store)
#:use-module (guix monads)
#:use-module (guix modules)
#:use-module ((guix packages) #:select (package-version))
#:use-module ((guix packages) #:select (package-version supported-package?))
#:use-module (guix platform)
#:use-module ((guix store) #:select (%store-prefix))
#:use-module (guix utils)
#:use-module (gnu installer)
#:use-module (gnu system locale)
#:use-module (gnu services avahi)
@ -283,11 +286,7 @@ templates under @file{/etc/configuration}.")))
(provision '(maybe-uvesafb))
(requirement '(file-systems))
(start #~(lambda ()
;; uvesafb is only supported on x86 and x86_64.
(or (not (and (string-suffix? "linux-gnu" %host-type)
(or (string-prefix? "x86_64" %host-type)
(string-prefix? "i686" %host-type))))
(file-exists? "/dev/fb0")
(or (file-exists? "/dev/fb0")
(invoke #+(file-append kmod "/bin/modprobe")
"uvesafb"
(string-append "v86d=" #$v86d "/sbin/v86d")
@ -305,7 +304,10 @@ templates under @file{/etc/configuration}.")))
"Load the @code{uvesafb} kernel module with the right options.")
(default-value #t)))
(define %installation-services
(define* (%installation-services #:key (system (or (and=>
(%current-target-system)
platform-target->system)
(%current-system))))
;; List of services of the installation system.
(let ((motd (plain-file "motd" "
\x1b[1;37mWelcome to the installation of GNU Guix!\x1b[0m
@ -322,119 +324,125 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
(define bare-bones-os
(load "examples/bare-bones.tmpl"))
(list (service virtual-terminal-service-type)
(append
;; Generic services
(list (service virtual-terminal-service-type)
(service kmscon-service-type
(kmscon-configuration
(virtual-terminal "tty1")
(login-program (installer-program))))
(service kmscon-service-type
(kmscon-configuration
(virtual-terminal "tty1")
(login-program (installer-program))))
(login-service (login-configuration
(motd motd)))
(login-service (login-configuration
(motd motd)))
;; Documentation. The manual is in UTF-8, but
;; 'console-font-service' sets up Unicode support and loads a font
;; with all the useful glyphs like em dash and quotation marks.
(service documentation-service-type "tty2")
;; Documentation. The manual is in UTF-8, but
;; 'console-font-service' sets up Unicode support and loads a font
;; with all the useful glyphs like em dash and quotation marks.
(service documentation-service-type "tty2")
;; Documentation add-on.
%configuration-template-service
;; Documentation add-on.
%configuration-template-service
;; A bunch of 'root' ttys.
(normal-tty "tty3")
(normal-tty "tty4")
(normal-tty "tty5")
(normal-tty "tty6")
;; A bunch of 'root' ttys.
(normal-tty "tty3")
(normal-tty "tty4")
(normal-tty "tty5")
(normal-tty "tty6")
;; The usual services.
(syslog-service)
;; The usual services.
(syslog-service)
;; Use the Avahi daemon to discover substitute servers on the local
;; network. It can be faster than fetching from remote servers.
(service avahi-service-type)
;; Use the Avahi daemon to discover substitute servers on the local
;; network. It can be faster than fetching from remote servers.
(service avahi-service-type)
;; The build daemon. Register the default substitute server key(s)
;; as trusted to allow the installation process to use substitutes by
;; default.
(service guix-service-type
(guix-configuration (authorize-key? #t)))
;; The build daemon. Register the default substitute server key(s)
;; as trusted to allow the installation process to use substitutes by
;; default.
(service guix-service-type
(guix-configuration (authorize-key? #t)))
;; Start udev so that useful device nodes are available.
;; Use device-mapper rules for cryptsetup & co; enable the CRDA for
;; regulations-compliant WiFi access.
(udev-service #:rules (list lvm2 crda))
;; Start udev so that useful device nodes are available.
;; Use device-mapper rules for cryptsetup & co; enable the CRDA for
;; regulations-compliant WiFi access.
(udev-service #:rules (list lvm2 crda))
;; Add the 'cow-store' service, which users have to start manually
;; since it takes the installation directory as an argument.
(cow-store-service)
;; Add the 'cow-store' service, which users have to start manually
;; since it takes the installation directory as an argument.
(cow-store-service)
;; Install Unicode support and a suitable font.
(service console-font-service-type
(map (match-lambda
("tty2"
;; Use a font that contains characters such as
;; curly quotes as found in the manual.
'("tty2" . "LatGrkCyr-8x16"))
(tty
;; Use a font that doesn't have more than 256
;; glyphs so that we can use colors with varying
;; brightness levels (see note in setfont(8)).
`(,tty . "lat9u-16")))
'("tty1" "tty2" "tty3" "tty4" "tty5" "tty6")))
;; Install Unicode support and a suitable font.
(service console-font-service-type
(map (match-lambda
("tty2"
;; Use a font that contains characters such as
;; curly quotes as found in the manual.
'("tty2" . "LatGrkCyr-8x16"))
(tty
;; Use a font that doesn't have more than 256
;; glyphs so that we can use colors with varying
;; brightness levels (see note in setfont(8)).
`(,tty . "lat9u-16")))
'("tty1" "tty2" "tty3" "tty4" "tty5" "tty6")))
;; To facilitate copy/paste.
(service gpm-service-type)
;; To facilitate copy/paste.
(service gpm-service-type)
;; Add an SSH server to facilitate remote installs.
(service openssh-service-type
(openssh-configuration
(port-number 22)
(permit-root-login #t)
;; The root account is passwordless, so make sure
;; a password is set before allowing logins.
(allow-empty-passwords? #f)
(password-authentication? #t)
;; Add an SSH server to facilitate remote installs.
(service openssh-service-type
(openssh-configuration
(port-number 22)
(permit-root-login #t)
;; The root account is passwordless, so make sure
;; a password is set before allowing logins.
(allow-empty-passwords? #f)
(password-authentication? #t)
;; Don't start it upfront.
(%auto-start? #f)))
;; Don't start it upfront.
(%auto-start? #f)))
;; Since this is running on a USB stick with a overlayfs as the root
;; file system, use an appropriate cache configuration.
(nscd-service (nscd-configuration
(caches %nscd-minimal-caches)))
;; Since this is running on a USB stick with a overlayfs as the root
;; file system, use an appropriate cache configuration.
(nscd-service (nscd-configuration
(caches %nscd-minimal-caches)))
;; Having /bin/sh is a good idea. In particular it allows Tramp
;; connections to this system to work.
(service special-files-service-type
`(("/bin/sh" ,(file-append bash "/bin/sh"))))
;; Having /bin/sh is a good idea. In particular it allows Tramp
;; connections to this system to work.
(service special-files-service-type
`(("/bin/sh" ,(file-append bash "/bin/sh"))))
;; Loopback device, needed by OpenSSH notably.
(service static-networking-service-type
(list %loopback-static-networking))
;; Loopback device, needed by OpenSSH notably.
(service static-networking-service-type
(list %loopback-static-networking))
(service wpa-supplicant-service-type)
(dbus-service)
(service connman-service-type
(connman-configuration
(disable-vpn? #t)))
(service wpa-supplicant-service-type)
(dbus-service)
(service connman-service-type
(connman-configuration
(disable-vpn? #t)))
;; Keep a reference to BARE-BONES-OS to make sure it can be
;; installed without downloading/building anything. Also keep the
;; things needed by 'profile-derivation' to minimize the amount of
;; download.
(service gc-root-service-type
(append
(list bare-bones-os
glibc-utf8-locales
texinfo
guile-3.0)
%default-locale-libcs))
;; Keep a reference to BARE-BONES-OS to make sure it can be
;; installed without downloading/building anything. Also keep the
;; things needed by 'profile-derivation' to minimize the amount of
;; download.
(service gc-root-service-type
(append
(list bare-bones-os
glibc-utf8-locales
texinfo
guile-3.0)
%default-locale-libcs)))
;; Machines without Kernel Mode Setting (those with many old and
;; current AMD GPUs, SiS GPUs, ...) need uvesafb to show the GUI
;; installer. Some may also need a kernel parameter like nomodeset
;; or vga=793, but we leave that for the user to specify in GRUB.
(service uvesafb-service-type))))
;; Specific system services
;; Machines without Kernel Mode Setting (those with many old and
;; current AMD GPUs, SiS GPUs, ...) need uvesafb to show the GUI
;; installer. Some may also need a kernel parameter like nomodeset
;; or vga=793, but we leave that for the user to specify in GRUB.
`(,@(if (supported-package? v86d system)
(list (service uvesafb-service-type))
'())))))
(define %issue
;; Greeting.
@ -498,7 +506,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
(comment "Guest of GNU"))))
(issue %issue)
(services %installation-services)
(services (%installation-services))
;; We don't need setuid programs, except for 'passwd', which can be handy
;; if one is to allow remote SSH login to the machine being installed.

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;;
@ -31,8 +31,8 @@
#:use-module (gnu services dbus)
#:use-module (gnu services networking)
#:use-module (gnu services virtualization)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages ssh)
#:use-module (gnu packages virtualization)
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module (guix store)
@ -151,8 +151,8 @@
(operating-system os)
(memory-size (* 1024 3))))
(define run-uname-over-ssh
;; Program that runs 'uname' over SSH and prints the result on standard
(define (run-command-over-ssh . command)
;; Program that runs COMMAND over SSH and prints the result on standard
;; output.
(let ()
(define run
@ -173,12 +173,12 @@
(userauth-password! session "")
(display
(get-string-all
(open-remote-input-pipe* session "uname" "-on"))))
(open-remote-input-pipe* session #$@command))))
(status
(error "could not connect to childhurd over SSH"
session status)))))))
(program-file "run-uname-over-ssh" run)))
(program-file "run-command-over-ssh" run)))
(define test
(with-imported-modules '((gnu build marionette))
@ -242,9 +242,27 @@
(use-modules (ice-9 popen))
(get-string-all
(open-input-pipe #$run-uname-over-ssh)))
(open-input-pipe #$(run-command-over-ssh "uname" "-on"))))
marionette))
(test-assert "guix-daemon up and running"
(let ((drv (marionette-eval
'(begin
(use-modules (ice-9 popen))
(get-string-all
(open-input-pipe
#$(run-command-over-ssh "guix" "build" "coreutils"
"--no-grafts" "-d"))))
marionette)))
;; We cannot compare the .drv with (raw-derivation-file
;; coreutils) on the host: they may differ due to fixed-output
;; derivations and changes introduced compared to the 'guix'
;; package snapshot.
(and (string-suffix? ".drv"
(pk 'drv (string-trim-right drv)))
drv)))
(test-end))))
(gexp->derivation "childhurd-test" test))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -17,9 +18,11 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix cache)
#:use-module ((guix utils) #:select (with-atomic-file-output))
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
#:use-module ((ice-9 textual-ports) #:select (get-string-all))
#:export (obsolete?
delete-file*
file-expiration-time
@ -93,7 +96,9 @@ CLEANUP-PERIOD denotes the minimum time between two cache cleanups."
(define last-expiry-date
(catch 'system-error
(lambda ()
(call-with-input-file expiry-file read))
(or (string->number
(call-with-input-file expiry-file get-string-all))
0))
(const 0)))
(when (obsolete? last-expiry-date now cleanup-period)
@ -103,7 +108,7 @@ CLEANUP-PERIOD denotes the minimum time between two cache cleanups."
#:delete-entry delete-entry)
(catch 'system-error
(lambda ()
(call-with-output-file expiry-file
(with-atomic-file-output expiry-file
(cute write (time-second now) <>)))
(lambda args
;; ENOENT means CACHE does not exist.

View File

@ -74,6 +74,7 @@
cabal-executable-dependencies
cabal-library?
cabal-library-name
cabal-library-dependencies
cabal-test-suite?
@ -149,7 +150,7 @@ to the stack."
(right: IF FLAG EXEC TEST-SUITE CUSTOM-SETUP SOURCE-REPO BENCHMARK LIB COMMON OCURLY)
(left: OR)
(left: PROPERTY AND)
(right: ELSE NOT))
(right: ELIF ELSE NOT))
;; --- rules
(body (properties sections) : (append $1 $2))
(sections (sections flags) : (append $1 $2)
@ -189,36 +190,36 @@ to the stack."
(bm-sec) : (list $1))
(bm-sec (BENCHMARK OCURLY exprs CCURLY) : `(section benchmark ,$1 ,$3)
(BENCHMARK open exprs close) : `(section benchmark ,$1 ,$3))
(lib-sec (LIB OCURLY exprs CCURLY) : `(section library ,$3)
(LIB open exprs close) : `(section library ,$3))
(lib-sec (LIB OCURLY exprs CCURLY) : `(section library ,$1 ,$3)
(LIB open exprs close) : `(section library ,$1 ,$3))
(exprs (exprs PROPERTY) : (append $1 (list $2))
(PROPERTY) : (list $1)
(exprs if-then-else) : (append $1 (list $2))
(if-then-else) : (list $1)
(exprs if-then) : (append $1 (list $2))
(if-then) : (list $1))
(if-then-else (IF tests OCURLY exprs CCURLY ELSE OCURLY exprs CCURLY)
: `(if ,$2 ,$4 ,$8)
(IF tests open exprs close ELSE OCURLY exprs CCURLY)
: `(if ,$2 ,$4 ,$8)
;; The 'open' token after 'tests' is shifted after an 'exprs'
;; is found. This is because, instead of 'exprs' a 'OCURLY'
;; token is a valid alternative. For this reason, 'open'
;; pushes a <parse-context> with a line indentation equal to
;; the indentation of 'exprs'.
;;
;; Differently from this, without the rule above this
;; comment, when an 'ELSE' token is found, the 'open' token
;; following the 'ELSE' would be shifted immediately, before
;; the 'exprs' is found (because there are no other valid
;; tokens). The 'open' would therefore create a
;; <parse-context> with the indentation of 'ELSE' and not
;; 'exprs', creating an inconsistency. We therefore allow
;; mixed style conditionals.
(IF tests open exprs close ELSE open exprs close)
: `(if ,$2 ,$4 ,$8))
(if-then (IF tests OCURLY exprs CCURLY) : `(if ,$2 ,$4 ())
(IF tests open exprs close) : `(if ,$2 ,$4 ()))
(exprs elif-else) : (append $1 (list ($2 '(()))))
(elif-else) : (list ($1 '(()))))
;; LALR(1) parsers prefer to be left-recursive, which make if-statements slightly involved.
;; XXX: This technically allows multiple else statements.
(elif-else (elif-else ELIF tests OCURLY exprs CCURLY) : (lambda (y) ($1 (list (append (list 'if $3 $5) y))))
(elif-else ELIF tests open exprs close) : (lambda (y) ($1 (list (append (list 'if $3 $5) y))))
(elif-else ELSE OCURLY exprs CCURLY) : (lambda (y) ($1 (list $4)))
;; The 'open' token after 'tests' is shifted after an 'exprs'
;; is found. This is because, instead of 'exprs' a 'OCURLY'
;; token is a valid alternative. For this reason, 'open'
;; pushes a <parse-context> with a line indentation equal to
;; the indentation of 'exprs'.
;;
;; Differently from this, without the rule above this
;; comment, when an 'ELSE' token is found, the 'open' token
;; following the 'ELSE' would be shifted immediately, before
;; the 'exprs' is found (because there are no other valid
;; tokens). The 'open' would therefore create a
;; <parse-context> with the indentation of 'ELSE' and not
;; 'exprs', creating an inconsistency. We therefore allow
;; mixed style conditionals.
(elif-else ELSE open exprs close) : (lambda (y) ($1 (list $4)))
;; Terminating rule.
(if-then) : (lambda (y) (append $1 y)))
(if-then (IF tests OCURLY exprs CCURLY) : (list 'if $2 $4)
(IF tests open exprs close) : (list 'if $2 $4))
(tests (TEST OPAREN ID CPAREN) : `(,$1 ,$3)
(TRUE) : 'true
(FALSE) : 'false
@ -354,7 +355,7 @@ matching a string against the created regexp."
(make-regexp pat))))
(cut regexp-exec rx <>)))
(define is-layout-property (make-rx-matcher "([a-z0-9-]+)[ \t]*:[ \t]*(\\w?[^{}]*)$"
(define is-layout-property (make-rx-matcher "([a-z0-9-]+)[ \t]*:[ \t]*(\\w?[^{}]*)"
regexp/icase))
(define is-braced-property (make-rx-matcher "([a-z0-9-]+)[ \t]*:[ \t]*\\{[ \t]*$"
@ -382,9 +383,12 @@ matching a string against the created regexp."
(define is-benchmark (make-rx-matcher "^benchmark +([a-z0-9_-]+)"
regexp/icase))
(define is-lib (make-rx-matcher "^library *" regexp/icase))
;; Libraries can have optional names since Cabal 2.0.
(define is-lib (make-rx-matcher "^library(\\s+([a-z0-9_-]+))?\\s*" regexp/icase))
(define is-else (make-rx-matcher "^else" regexp/icase))
(define (is-else s) (string-ci=? s "else"))
(define (is-elif s) (string-ci=? s "elif"))
(define (is-if s) (string-ci=? s "if"))
@ -402,8 +406,8 @@ matching a string against the created regexp."
(define (is-id s port loc)
(let ((cabal-reserved-words
'("if" "else" "library" "flag" "executable" "test-suite" "custom-setup"
"source-repository" "benchmark" "common"))
'("if" "else" "elif" "library" "flag" "executable" "test-suite"
"custom-setup" "source-repository" "benchmark" "common"))
(spaces (read-while (cut char-set-contains? char-set:blank <>) port))
(c (peek-char port)))
(unread-string spaces port)
@ -463,7 +467,10 @@ string with the read characters."
(value (match:substring k-v-rx-res 2)))
(make-lexical-token
'PROPERTY loc
(list key `(,(read-value port value (current-indentation)))))))
(list key `(,(if (eqv? (peek-char port) #\newline) ; The next character
; is not necessarily a newline if a bracket follows the property.
(read-value port value (current-indentation))
value))))))
(define (lex-braced-property k-rx-res loc port)
(let ((key (string-downcase (match:substring k-rx-res 1))))
@ -471,8 +478,9 @@ string with the read characters."
'PROPERTY loc
(list key `(,(read-braced-value port))))))
(define (lex-rx-res rx-res token loc)
(let ((name (string-downcase (match:substring rx-res 1))))
(define* (lex-rx-res rx-res token loc #:optional (substring-id 1))
(let* ((match (match:substring rx-res substring-id))
(name (if match (string-downcase match) match)))
(make-lexical-token token loc name)))
(define (lex-flag flag-rx-res loc) (lex-rx-res flag-rx-res 'FLAG loc))
@ -490,10 +498,12 @@ string with the read characters."
(define (lex-benchmark bm-rx-res loc) (lex-rx-res bm-rx-res 'BENCHMARK loc))
(define (lex-lib loc) (make-lexical-token 'LIB loc #f))
(define (lex-lib lib-rx-res loc) (lex-rx-res lib-rx-res 'LIB loc 2))
(define (lex-else loc) (make-lexical-token 'ELSE loc #f))
(define (lex-elif loc) (make-lexical-token 'ELIF loc #f))
(define (lex-if loc) (make-lexical-token 'IF loc #f))
(define (lex-true loc) (make-lexical-token 'TRUE loc #t))
@ -566,8 +576,10 @@ location."
(define (lex-word port loc)
"Process tokens which can be recognized by reading the next word form PORT.
LOC is the current port location."
(let* ((w (read-delimited " <>=()\t\n" port 'peek)))
(let* ((w (read-delimited " <>=():\t\n" port 'peek)))
(cond ((is-if w) (lex-if loc))
((is-elif w) (lex-elif loc))
((is-else w) (lex-else loc))
((is-test w port) (lex-test w loc))
((is-true w) (lex-true loc))
((is-false w) (lex-false loc))
@ -590,12 +602,13 @@ the current port location."
((is-common s) => (cut lex-common <> loc))
((is-custom-setup s) => (cut lex-custom-setup <> loc))
((is-benchmark s) => (cut lex-benchmark <> loc))
((is-lib s) (lex-lib loc))
((is-else s) (lex-else loc))
((is-lib s) => (cut lex-lib <> loc))
(else (unread-string s port) #f))))
(define (lex-property port loc)
(let* ((s (read-delimited "\n" port 'peek)))
;; Stop reading on a }, so closing brackets (for example during
;; if-clauses) work properly.
(let* ((s (read-delimited "\n}" port 'peek)))
(cond
((is-braced-property s) => (cut lex-braced-property <> loc port))
((is-layout-property s) => (cut lex-layout-property <> loc port))
@ -719,8 +732,9 @@ If #f use the function 'port-filename' to obtain it."
(dependencies cabal-executable-dependencies)) ; list of <cabal-dependency>
(define-record-type <cabal-library>
(make-cabal-library dependencies)
(make-cabal-library name dependencies)
cabal-library?
(name cabal-library-name)
(dependencies cabal-library-dependencies)) ; list of <cabal-dependency>
(define-record-type <cabal-test-suite>
@ -851,9 +865,6 @@ the ordering operation and the version."
(list 'section 'flag name parameters))
(('section 'custom-setup parameters)
(list 'section 'custom-setup parameters))
;; library does not have a name parameter
(('section 'library parameters)
(list 'section 'library (eval parameters)))
(('section type name parameters)
(list 'section type name (eval parameters)))
(((? string? name) values)
@ -913,6 +924,8 @@ pertaining to SECTION-TYPE sections. SECTION-TYPE must be one of:
name
(lookup-join parameters "type")
(lookup-join parameters "location")))
((library) (make-cabal-library name
(dependencies parameters)))
((flag)
(let* ((default (lookup-join parameters "default"))
(default-true-or-false
@ -929,8 +942,6 @@ pertaining to SECTION-TYPE sections. SECTION-TYPE must be one of:
default-true-or-false
manual-true-or-false)))
(else #f)))
(('section (? (cut equal? <> section-type) lib) parameters)
(make-cabal-library (dependencies parameters)))
(_ #f))
sexp))

View File

@ -222,13 +222,15 @@ object."
'())))
(map cabal-dependency-name custom-setup-dependencies)))
(define (filter-dependencies dependencies own-name)
(define (filter-dependencies dependencies own-names)
"Filter the dependencies included with the GHC compiler from DEPENDENCIES, a
list with the names of dependencies. OWN-NAME is the name of the Cabal
package being processed and is used to filter references to itself."
(filter (lambda (d) (not (member (string-downcase d)
(cons own-name ghc-standard-libraries))))
dependencies))
list with the names of dependencies. OWN-NAMES is the name of the Cabal
package being processed and its internal libaries and is used to filter
references to itself."
(let ((ignored-dependencies (map string-downcase
(append own-names ghc-standard-libraries))))
(filter (lambda (d) (not (member (string-downcase d) ignored-dependencies)))
dependencies)))
(define* (hackage-module->sexp cabal cabal-hash
#:key (include-test-dependencies? #t))
@ -248,9 +250,12 @@ the hash of the Cabal file."
(define source-url
(hackage-source-url name version))
(define own-names (cons (cabal-package-name cabal)
(filter (lambda (x) (not (eqv? x #f)))
(map cabal-library-name (cabal-package-library cabal)))))
(define hackage-dependencies
(filter-dependencies (cabal-dependencies->names cabal)
(cabal-package-name cabal)))
(filter-dependencies (cabal-dependencies->names cabal) own-names))
(define hackage-native-dependencies
(lset-difference
@ -260,7 +265,7 @@ the hash of the Cabal file."
(cabal-test-dependencies->names cabal)
'())
(cabal-custom-setup-dependencies->names cabal))
(cabal-package-name cabal))
own-names)
hackage-dependencies))
(define dependencies

Some files were not shown because too many files have changed in this diff Show More