mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-08-01 02:21:31 +02:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c5b76579e8 | |||
| 99b0b7aa1f |
@@ -68,7 +68,6 @@
|
||||
/doc/stamp-vti
|
||||
/doc/version.texi
|
||||
/doc/version-*.texi
|
||||
/etc/apparmor.d/tunables/guix
|
||||
/etc/committer.scm
|
||||
/etc/gnu-store.mount
|
||||
/etc/guix-daemon.cil
|
||||
|
||||
@@ -36,8 +36,6 @@
|
||||
(name "efraim"))
|
||||
("5DBE 23D3 9053 6526 7F8C C76A FDB9 52BD 3F73 56D6"
|
||||
(name "ekaitz"))
|
||||
("50E1 7BE0 D210 C883 D675 3150 4A3D 07EF D05C 4045"
|
||||
(name "fishinthecalculator"))
|
||||
(;; primary: "D1BD 1EB7 B655 AECE 0BA7 8F94 4940 7E7E 89CA 9B07"
|
||||
"0807 AC76 DFE8 4303 6D5F 5879 F51D 4A16 DCEE 6FA7"
|
||||
(name "futurile"))
|
||||
@@ -49,7 +47,7 @@
|
||||
(;; primary: "220F 98D9 5E86 204C 0036 DA7B 6DEC 4360 408B 4185"
|
||||
"F4C2 D1DF 3FDE EA63 D1D3 0776 ACC6 6D09 CA52 8292"
|
||||
(name "hako"))
|
||||
("3D58 BE78 5C1B E400 E214 0755 43F4 B499 3A1F 9D20"
|
||||
("B943 509D 633E 80DD 27FC 4EED 634A 8DFF D3F6 31DF"
|
||||
(name "htgoebel"))
|
||||
( ;; primary: "FECD 9EBA FAAD 1831 7E05 DAC0 E55F 4198 D2A7 0CD7"
|
||||
"6980 A9B9 5202 AA11 EB1D 8922 8499 AC88 F1A7 1CF2"
|
||||
|
||||
@@ -59,7 +59,6 @@ Mathieu Othacehe <mathieu.othacehe@parrot.com>
|
||||
Mathieu Othacehe <othacehe@gnu.org>
|
||||
Matthew James Kraai <kraai@ftbfs.org>
|
||||
Maxim Cournoyer <maxim@guixotic.coop> <maxim.cournoyer@gmail.com>
|
||||
Nguyễn Gia Phong <cnx@loang.net> <mcsinyx@disroot.org>
|
||||
Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
|
||||
nikita <nikita@n0.is>
|
||||
nikita <nikita@n0.is> ng0 <ng0@n0.is>
|
||||
|
||||
+2
-10
@@ -129,7 +129,7 @@ guix/build/gnu-build-system\.scm @guix/core-packages
|
||||
guix/build/utils\.scm @guix/core-packages
|
||||
guix/build-system/gnu\.scm @guix/core-packages
|
||||
|
||||
gnu/packages/(.*-|)crypto\.scm$ @guix/crypto
|
||||
gnu/packages/crypto\.scm @guix/crypto
|
||||
gnu/packages/gnupg\.scm @guix/crypto
|
||||
gnu/packages/nettle\.scm @guix/crypto
|
||||
gnu/packages/password-utils\.scm @guix/crypto
|
||||
@@ -146,7 +146,6 @@ gnu/system/examples/lightweight-desktop\.tmpl @guix/documentation
|
||||
gnu/system/examples/desktop\.tmpl @guix/documentation
|
||||
|
||||
gnu/packages/electronics\.scm @guix/electronics
|
||||
gnu/packages/hdl\.scm @guix/electronics
|
||||
gnu/packages/libftdi\.scm @guix/electronics
|
||||
gnu/packages/engineering\.scm @guix/electronics
|
||||
gnu/packages/flashing-tools\.scm @guix/electronics
|
||||
@@ -171,8 +170,6 @@ gnu/packages/game-development\.scm @guix/games
|
||||
gnu/packages/luanti\.scm @guix/games
|
||||
gnu/packages/esolangs\.scm @guix/games
|
||||
gnu/packages/motti\.scm @guix/games
|
||||
gnu/services/games\.scm @guix/games
|
||||
gnu/tests/games\.scm @guix/games
|
||||
guix/build/luanti-build-system\.scm @guix/games
|
||||
|
||||
etc/teams/gnome @guix/gnome
|
||||
@@ -197,7 +194,6 @@ guix/scripts/import/go\.scm @guix/go
|
||||
tests/import/go\.scm @guix/go
|
||||
|
||||
gnu/packages/hare\.scm @guix/hare
|
||||
gnu/packages/hare-apps\.scm @guix/hare
|
||||
gnu/packages/hare-xyz\.scm @guix/hare
|
||||
guix/build-system/hare\.scm @guix/hare
|
||||
guix/build/hare-build-system\.scm @guix/hare
|
||||
@@ -219,8 +215,6 @@ tests/home-services\.scm @guix/home
|
||||
|
||||
gnu/packages/mpi\.scm @guix/hpc
|
||||
gnu/packages/oneapi\.scm @guix/hpc
|
||||
gnu/packages/opencl\.scm @guix/hpc
|
||||
gnu/packages/parallel\.scm @guix/hpc
|
||||
gnu/packages/rocm\.scm @guix/hpc
|
||||
gnu/packages/sycl\.scm @guix/hpc
|
||||
gnu/packages/tbb\.scm @guix/hpc
|
||||
@@ -275,8 +269,6 @@ gnu/packages/ibus\.scm @guix/localization
|
||||
|
||||
gnu/packages/lxqt\.scm @guix/lxqt
|
||||
|
||||
gnu/packages/mate\.scm @guix/mate
|
||||
|
||||
|
||||
gnu/build/icecat-extension\.scm @guix/mozilla
|
||||
gnu/packages/browser-extensions\.scm @guix/mozilla
|
||||
@@ -329,7 +321,7 @@ etc/manifests/release-desktop\.scm @guix/release
|
||||
|
||||
gnu/packages/diffoscope\.scm @guix/reproduciblebuilds
|
||||
|
||||
gnu/packages/(ruby)(-.+|)\.scm$ @guix/ruby
|
||||
gnu/packages/ruby\.scm @guix/ruby
|
||||
guix/build/ruby-build-system\.scm @guix/ruby
|
||||
guix/build-system/ruby\.scm @guix/ruby
|
||||
guix/import/gem\.scm @guix/ruby
|
||||
|
||||
+46
-46
@@ -296,7 +296,6 @@ MODULES = \
|
||||
guix/build/toml.scm \
|
||||
guix/search-paths.scm \
|
||||
guix/packages.scm \
|
||||
guix/import/apache.scm \
|
||||
guix/import/cabal.scm \
|
||||
guix/import/composer.scm \
|
||||
guix/import/cpan.scm \
|
||||
@@ -377,7 +376,6 @@ MODULES = \
|
||||
guix/scripts/import/luanti.scm \
|
||||
guix/scripts/import/minetest.scm \
|
||||
guix/scripts/import/npm-binary.scm \
|
||||
guix/scripts/import/nuget.scm \
|
||||
guix/scripts/import/opam.scm \
|
||||
guix/scripts/import/pypi.scm \
|
||||
guix/scripts/import/stackage.scm \
|
||||
@@ -507,8 +505,7 @@ EXAMPLES = \
|
||||
gnu/system/examples/plasma.tmpl \
|
||||
gnu/system/examples/raspberry-pi-64.tmpl \
|
||||
gnu/system/examples/raspberry-pi-64-nfs-root.tmpl \
|
||||
gnu/system/examples/vm-image.tmpl \
|
||||
gnu/system/examples/vm-image-efi.tmpl
|
||||
gnu/system/examples/vm-image.tmpl
|
||||
|
||||
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go)
|
||||
|
||||
@@ -580,7 +577,6 @@ SCM_TESTS = \
|
||||
tests/import/hexpm.scm \
|
||||
tests/import/luanti.scm \
|
||||
tests/import/npm-binary.scm \
|
||||
tests/import/nuget.scm \
|
||||
tests/import/opam.scm \
|
||||
tests/import/print.scm \
|
||||
tests/import/pypi.scm \
|
||||
@@ -750,14 +746,6 @@ dist_fishcompletion_DATA = etc/completion/fish/guix.fish
|
||||
# SELinux policy
|
||||
nodist_selinux_policy_DATA = etc/guix-daemon.cil
|
||||
|
||||
# AppArmor profiles.
|
||||
dist_apparmor_profile_DATA = \
|
||||
etc/apparmor.d/guix \
|
||||
etc/apparmor.d/guix-daemon
|
||||
|
||||
nodist_apparmor_profile_tunables_DATA = \
|
||||
etc/apparmor.d/tunables/guix
|
||||
|
||||
EXTRA_DIST += \
|
||||
.dir-locals.el \
|
||||
.guix-authorizations \
|
||||
@@ -775,12 +763,9 @@ EXTRA_DIST += \
|
||||
build-aux/compile-as-derivation.scm \
|
||||
build-aux/config.rpath \
|
||||
build-aux/convert-xref.scm \
|
||||
build-aux/cuirass/evaluate.scm \
|
||||
build-aux/extract-syscall-ranges.sh \
|
||||
build-aux/generate-authors.scm \
|
||||
build-aux/gitlog-to-changelog \
|
||||
build-aux/git-version-gen \
|
||||
build-aux/keep-only-translated.scm \
|
||||
build-aux/mdate-from-git.scm \
|
||||
build-aux/test-driver.scm \
|
||||
build-aux/update-NEWS.scm \
|
||||
@@ -796,7 +781,6 @@ EXTRA_DIST += \
|
||||
etc/manifests/kernels.scm \
|
||||
etc/manifests/release-minimal.scm \
|
||||
etc/manifests/release-desktop.scm \
|
||||
etc/manifests/release-user-packages.scm \
|
||||
etc/manifests/source.scm \
|
||||
etc/manifests/system-tests.scm \
|
||||
etc/manifests/time-travel.scm \
|
||||
@@ -1149,18 +1133,12 @@ system_flags = $(foreach system,$(1),-s $(system))
|
||||
# 5. Build the installation and VM images. The images will run 'guix'
|
||||
# corresponding to 'vX.Y.Z' + 1 commit, and they will install 'vX.Y.Z'.
|
||||
#
|
||||
# This is split into two targets, because a commit is made that has to be
|
||||
# pushed to Guix.
|
||||
# First, 'prepare-release' should be run, doing steps 1 and 2.
|
||||
# Then, the resulting commit should be pushed so that it's available
|
||||
# to be downloaded for the system images.
|
||||
# Afterwards, the 'release' target takes care of the rest. This 'release'
|
||||
# target takes care of everything and copies the resulting files to
|
||||
# $(releasedir).
|
||||
# This 'release' target takes care of everything and copies the resulting
|
||||
# files to $(releasedir).
|
||||
#
|
||||
# XXX: Depend on 'dist' rather than 'distcheck' to work around the Gettext
|
||||
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>.
|
||||
prepare-release: dist-with-updated-version all
|
||||
release: dist-with-updated-version all
|
||||
@if ! git diff-index --quiet HEAD; then \
|
||||
echo "There are uncommitted changes; stopping." >&2 ; \
|
||||
exit 1 ; \
|
||||
@@ -1178,26 +1156,48 @@ prepare-release: dist-with-updated-version all
|
||||
$(top_builddir)/pre-inst-env guix build guix \
|
||||
$(call system_flags,$(SUPPORTED_SYSTEMS)) \
|
||||
-v1 --no-grafts --fallback
|
||||
|
||||
@echo
|
||||
@echo "First step done! Source tarball is ready in $(releasedir)"
|
||||
@echo "Now push the resulting commit and run `make release`."
|
||||
@echo
|
||||
|
||||
# Make sure you've ran prepare-release prior to running release and pushed
|
||||
# the commit to Guix. It might be pushed to any branch, such as version-X.Y.Z.
|
||||
release: all
|
||||
# Build the artifacts for current commit.
|
||||
# Use time-machine for provenance.
|
||||
$(MKDIR_P) "$(releasedir)"
|
||||
@echo "Building guix inferior for current commit."
|
||||
COMMIT="$$(git rev-parse HEAD)" && \
|
||||
GUIX="$$(guix time-machine -q --commit=$$COMMIT)/bin/guix" && \
|
||||
echo "Building artifacts for current commit: $$COMMIT." && \
|
||||
ARTIFACTS="$$($$GUIX build --no-grafts \
|
||||
-f ./etc/teams/release/artifacts.scm)" && \
|
||||
echo "Artifacts built! Copying to $(releasedir)" && \
|
||||
cp -f "$$ARTIFACTS"/* "$(releasedir)"
|
||||
# Generate the binary release tarballs.
|
||||
rm -f $(BINARY_TARBALLS)
|
||||
$(MAKE) $(BINARY_TARBALLS)
|
||||
for system in $(SUPPORTED_SYSTEMS) ; do \
|
||||
mv "guix-binary.$$system.tar.xz" \
|
||||
"$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \
|
||||
done
|
||||
# Build 'current-guix' to speed things up for the next step.
|
||||
$(top_builddir)/pre-inst-env guix build \
|
||||
-e '((@ (gnu packages package-management) current-guix))' \
|
||||
$(call system_flags,$(GUIX_SYSTEM_INSTALLER_SYSTEMS)) \
|
||||
-v1 --no-grafts --fallback
|
||||
# Generate the ISO installation images.
|
||||
for system in $(GUIX_SYSTEM_INSTALLER_SYSTEMS) ; do \
|
||||
GUIX_DISPLAYED_VERSION="`git describe --match=v* | sed -'es/^v//'`" ; \
|
||||
image=`$(top_builddir)/pre-inst-env \
|
||||
guix system image -t iso9660 \
|
||||
--label="GUIX_$${system}_$(VERSION)" \
|
||||
--system=$$system --fallback \
|
||||
gnu/system/install.scm` ; \
|
||||
if [ ! -f "$$image" ] ; then \
|
||||
echo "failed to produce Guix installation image for $$system" >&2 ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
cp "$$image" "$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso.tmp" ; \
|
||||
mv "$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso.tmp" \
|
||||
"$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso" ; \
|
||||
done
|
||||
# Generate the VM images.
|
||||
for system in $(GUIX_SYSTEM_VM_SYSTEMS) ; do \
|
||||
GUIX_DISPLAYED_VERSION="`git describe --match=v* | sed -'es/^v//'`" ; \
|
||||
image=`$(top_builddir)/pre-inst-env \
|
||||
guix system image -t qcow2 $(GUIX_SYSTEM_VM_IMAGE_FLAGS) \
|
||||
--save-provenance \
|
||||
--system=$$system --fallback \
|
||||
gnu/system/examples/vm-image.tmpl` ; \
|
||||
if [ ! -f "$$image" ] ; then \
|
||||
echo "failed to produce Guix VM image for $$system" >&2 ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
cp "$$image" "$(releasedir)/$(GUIX_SYSTEM_VM_IMAGE_BASE).$$system.qcow2"; \
|
||||
done
|
||||
@echo
|
||||
@echo "Congratulations! All the release files are now in $(releasedir)."
|
||||
@echo
|
||||
|
||||
@@ -6,7 +6,6 @@ Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
Copyright © 2021, 2022, 2024 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
|
||||
Copyright © 2026 Noé Lopez <noelopez@free.fr>
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
@@ -17,77 +16,8 @@ Please send Guix bug reports to bug-guix@gnu.org.
|
||||
* Changes in 1.5.0 (since 1.4.0)
|
||||
** Package management
|
||||
*** New ‘rpm’ format for the ‘guix pack’ command
|
||||
*** New ‘appimage’ format for the ‘guix pack’ command
|
||||
*** New ‘--max-layers’ and ‘--file’ options for the ‘guix pack’ command
|
||||
*** New ‘--roll-back’ and ‘--expression’ options for the ‘guix deploy’ command
|
||||
*** New ‘--with-version’ package transformation option
|
||||
*** New ‘--with-configure-flag’ package transformation option
|
||||
*** New ‘--nesting’ option to use Guix within ‘guix shell’ containers
|
||||
*** New ‘--emulate-fhs’ option for ‘guix shell’ containers
|
||||
*** New ‘--dependents’ and ‘--development’ options for ‘guix build’
|
||||
*** New ‘--interactive’ and ‘--list-types’ flags for ‘guix repl’
|
||||
*** The root file-system of ‘guix shell’ containers is now read-only
|
||||
*** New ‘--writable-root’ option for the ‘guix shell’ command
|
||||
*** Improved style rules for ‘guix style’
|
||||
*** New ‘guix locate’ command
|
||||
*** ‘guix refresh’ now honours the ‘--key-server’ option
|
||||
*** ‘guix git authenticate‘ now remembers introduction commit and signer
|
||||
*** ‘guix git authenticate’ now installs pre-push and post-merge git hooks
|
||||
*** System reconfiguration now supports kexec for fast reboot
|
||||
*** Hetzner Cloud is now supported by the ‘guix deploy’ command
|
||||
*** The Guix Daemon can now be run without root privileges
|
||||
*** ‘guix refresh’ can now target partial version
|
||||
*** New ‘guix import composer’ command
|
||||
*** New ‘guix import binary-npm’ command
|
||||
*** New ‘guix import nuget’ command
|
||||
*** New ‘graphml’ backend for guix graph
|
||||
*** New ‘cyclonedx-json’ backend for guix graph
|
||||
*** AppArmor profiles are now available for guix and guix-daemon
|
||||
** Distribution
|
||||
*** ‘nss-certs’ is now included in ‘%base-packages’
|
||||
*** ‘udev-service-type’ now supports hardware configuration files
|
||||
*** ‘gdm-service-type’ now uses Wayland by default
|
||||
*** KDE Plasma 6.5 is now available with the new ‘plasma-desktop-service-type’
|
||||
*** GNOME was updated to version 44 with a more modular desktop service
|
||||
*** Declarative offloading with new ‘build-machines’ field of operating-system
|
||||
*** ‘containerd-service-type’ is no longer included with the Docker service
|
||||
*** ‘privileged-programs’ replaces ‘setuid-programs’ in ‘operating-system’
|
||||
*** The ‘postgresql’ field of ‘postgresql-configuration‘ is now mandatory
|
||||
*** The Rottlog service was replaced by new ‘log-rotation-service-type’
|
||||
*** The default system log has been changed to Shepherd’s ‘system-log’ service
|
||||
*** New recommended ‘%base-home-services’ variable for Guix Home
|
||||
*** UDisks now mounts removable devices in /run/media/$USER instead of /media
|
||||
*** Syncthing service received incompatible changes
|
||||
*** ‘node-build-system’ received incompatible changes
|
||||
*** New services for /etc/profile.d and /etc/bashrc.d
|
||||
*** New build system for clasp-cl
|
||||
*** New Rust packaging model
|
||||
*** C.utf8 locale is now supported by glibc
|
||||
*** Fully bootstrapped mono and zig are now available
|
||||
*** 64bit Hurd (x86_64-gnu) now has experimental support
|
||||
*** 12525 new packages
|
||||
*** 8911 package updates
|
||||
|
||||
Noteworthy updates:
|
||||
bash 5.2.37, binutils 2.44, clojure 1.12.0, cups 2.4.14, emacs 30.2,
|
||||
gcc-toolchain 15.2.0, gdb 16.3, ghc 9.2.8, gimp 3.0.4, glibc 2.41,
|
||||
gnome 46.10, gnupg 2.4.7, go 1.25.3, guile 3.0.9, icecat 140.6.0-gnu1,
|
||||
icedtea 3.19.0, inkscape 1.3.2, julia 1.8.5, libreoffice 25.2.5.2,
|
||||
linux-libre 6.17.12, lxde 0.99.3, mate 1.28.2, ocaml 5.3.0, octave 10.3.0,
|
||||
openjdk 25, perl 5.36.0, python 3.11.14, racket 8.18, rust 1.85.1, r 4.5.2,
|
||||
sbcl 2.5.8, shepherd 1.0.9, xfce 4.20.0, xorg-server 21.1.21
|
||||
|
||||
** Programming interfaces
|
||||
*** ‘(gnu system setuid)’ has been renamed to ‘(gnu system privilege)’
|
||||
*** Moved to a new Rust packaging model and repackaged all Rust applications
|
||||
*** Rust library packages have been moved to the guix-rust-past-crates channel
|
||||
*** Most Python packages now use the ‘pyproject-build-system’
|
||||
** Noteworthy bug fixes
|
||||
*** Daemon vulnerability allowing store corruption has been fixed
|
||||
*** Daemon vulnerability allowing takeover of build users has been fixed
|
||||
*** Daemon privilege escalation vulnerabilities fixed
|
||||
*** Daemon CVEs have been fixed
|
||||
CVE-2024-27297, CVE-2024-52867, CVE-2025-46415, CVE-2025-46416, CVE-2025-59378
|
||||
* Changes in 1.4.0 (since 1.3.0)
|
||||
** Package management
|
||||
*** New ‘guix home’ command, for home environment management
|
||||
@@ -1996,7 +1926,7 @@ zynaddsubfx@3.0.3, zziplib@0.13.69
|
||||
*** ‘guix pack’ now honors package transformation options
|
||||
*** ‘guix package --search’ no longer shows superseded packages
|
||||
(<https://bugs.gnu.org/30566>)
|
||||
*** ‘guix offload test’ reports errors more nicely
|
||||
*** ‘guix offload test’ reports errors more nicely
|
||||
(<https://bugs.gnu.org/28057>)
|
||||
*** postgresql service is started through ‘pg_ctl’
|
||||
(<https://bugs.gnu.org/29992>)
|
||||
@@ -5734,7 +5664,7 @@ Monad” in the manual.
|
||||
|
||||
*** X session is executed from a login shell (<http://bugs.gnu.org/19119>)
|
||||
*** grub.cfg is now a garbage-collector root (<http://bugs.gnu.org/19160>)
|
||||
*** Substituter progress report properly formatted
|
||||
*** Substituter progress report properly formatted
|
||||
(<http://bugs.gnu.org/19313>)
|
||||
*** Document permissions for /gnu/store (<http://bugs.gnu.org/19316>)
|
||||
*** Make sure config.go is newer than config.scm
|
||||
@@ -5990,18 +5920,18 @@ This could cause problems with ancient Linux kernel.
|
||||
*** download: Use the 'SERVER NAME' TLS extension when possible
|
||||
(<http://bugs.gnu.org/18526>)
|
||||
*** libdaemon: Add alternate source URLs (<http://bugs.gnu.org/18639>)
|
||||
*** icu4c: Reinstate RUNPATH on shared libraries
|
||||
*** icu4c: Reinstate RUNPATH on shared libraries
|
||||
(<http://bugs.gnu.org/18695>)
|
||||
*** nss-mdns: Add alternate source URLs (<http://bugs.gnu.org/18704>)
|
||||
*** download: Add "Accept: */*" to the HTTP headers
|
||||
(<http://bugs.gnu.org/18768>)
|
||||
*** guix-register: Do not attempt to create NIX_STORE_DIR
|
||||
*** guix-register: Do not attempt to create NIX_STORE_DIR
|
||||
(<http://bugs.gnu.org/18689>)
|
||||
*** Allow Linux-libre to find our 'modprobe' command
|
||||
(<http://bugs.gnu.org/18525>)
|
||||
*** man-pages: Build sequentially (<http://bugs.gnu.org/18701>)
|
||||
*** Fix intermittent test failures involving GC (<http://bugs.gnu.org/18935>)
|
||||
*** guix import: pypi: Gracefully handle non-existent packages
|
||||
*** guix import: pypi: Gracefully handle non-existent packages
|
||||
(<http://bugs.gnu.org/18831>)
|
||||
*** Make sure the shared library has the '.so' extension
|
||||
(<http://bugs.gnu.org/18521>)
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
directory))
|
||||
((_ . directory) directory))
|
||||
(derivation->output-paths drv)))))
|
||||
(%final-inputs system)))
|
||||
%final-inputs))
|
||||
|
||||
(define (assert-valid-substitute substitute)
|
||||
"Make sure SUBSTITUTE does not refer to any bootstrap inputs, and bail out
|
||||
|
||||
@@ -3,7 +3,7 @@ exec guile --no-auto-compile -e main -s "$0" "$@"
|
||||
!#
|
||||
;;;; test-driver.scm - Guile test driver for Automake testsuite harness
|
||||
|
||||
(define script-version "2026-01-23.07") ;UTC
|
||||
(define script-version "2023-12-08.14") ;UTC
|
||||
|
||||
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2021 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
@@ -151,7 +151,7 @@ cases based on their names."
|
||||
(and show-duration? time-elapsed-seconds)))
|
||||
|
||||
(unless (and errors-only? (not (test-failed? runner)))
|
||||
(format #t "test-name: ~A~%" (test-runner-test-name runner))
|
||||
(format #t "test-name: ~A~%" (result 'test-name))
|
||||
(format #t "location: ~A~%"
|
||||
(string-append (result 'source-file) ":"
|
||||
(number->string (result 'source-line))))
|
||||
|
||||
@@ -81,15 +81,6 @@ AC_ARG_WITH([selinux-policy-dir],
|
||||
[selinux_policydir='${datadir}/selinux/'])
|
||||
AC_SUBST([selinux_policydir])
|
||||
|
||||
AC_ARG_WITH([apparmor-profile-dir],
|
||||
AS_HELP_STRING([--with-apparmor-profile-dir=DIR],
|
||||
[name of the AppArmor profile directory]),
|
||||
[apparmor_profiledir="$withval"],
|
||||
[apparmor_profiledir='${sysconfdir}/apparmor.d'])
|
||||
AC_SUBST([apparmor_profiledir])
|
||||
apparmor_profile_tunablesdir='${apparmor_profiledir}/tunables'
|
||||
AC_SUBST([apparmor_profile_tunablesdir])
|
||||
|
||||
dnl Better be verbose.
|
||||
AC_MSG_CHECKING([for the store directory])
|
||||
AC_MSG_RESULT([$storedir])
|
||||
@@ -198,12 +189,6 @@ if test "x$have_guile_lzlib" != "xyes"; then
|
||||
AC_MSG_ERROR([Guile-lzlib is missing; please install it.])
|
||||
fi
|
||||
|
||||
dnl Check for Guile-semver.
|
||||
GUILE_MODULE_AVAILABLE([have_guile_semver], [(semver)])
|
||||
if test "x$have_guile_semver" != "xyes"; then
|
||||
AC_MSG_ERROR([Guile-semver is missing; please install it.])
|
||||
fi
|
||||
|
||||
dnl Check for Guile-Avahi.
|
||||
GUILE_MODULE_AVAILABLE([have_guile_avahi], [(avahi)])
|
||||
AM_CONDITIONAL([HAVE_GUILE_AVAHI],
|
||||
@@ -323,7 +308,6 @@ AC_CONFIG_FILES([Makefile
|
||||
po/guix/Makefile.in
|
||||
po/packages/Makefile.in
|
||||
etc/guix-daemon.cil
|
||||
etc/apparmor.d/tunables/guix
|
||||
guix/config.scm])
|
||||
|
||||
AC_CONFIG_FILES([etc/committer.scm], [chmod +x etc/committer.scm])
|
||||
|
||||
+3
-5
@@ -82,7 +82,7 @@
|
||||
|
||||
(define %latest-guix-version
|
||||
;; Latest released version.
|
||||
"1.5.0")
|
||||
"1.4.0")
|
||||
|
||||
(define (texinfo-manual-images source)
|
||||
"Return a directory containing all the images used by the user manual, taken
|
||||
@@ -777,8 +777,7 @@ in SOURCE."
|
||||
(define version-links
|
||||
(list (menu-item #$latest-version
|
||||
(string-append
|
||||
"/manual/" #$latest-version
|
||||
"/" language
|
||||
"/manual/" language
|
||||
(if split-node? "/html_node" "")))
|
||||
(menu-item "development"
|
||||
(string-append
|
||||
@@ -943,8 +942,7 @@ makeinfo OPTIONS."
|
||||
(let* ((texi (language->texi-file-name language))
|
||||
(opts `("--html"
|
||||
"-c" ,(string-append "TOP_NODE_UP_URL=/manual/"
|
||||
#$%latest-guix-version
|
||||
"/" language)
|
||||
language)
|
||||
#$@options
|
||||
,texi)))
|
||||
(format #t "building HTML manual for language '~a'...~%"
|
||||
|
||||
+4
-14
@@ -134,15 +134,10 @@ C++11 standard.
|
||||
@section Building from Git
|
||||
|
||||
If you want to hack Guix itself, it is recommended to use the latest
|
||||
version from the Git repository@footnote{
|
||||
Guix uses @code{master} as the default branch name. A proposal in 2025 to
|
||||
change the default branch name to @code{main} did not reach consensus.
|
||||
See @uref{https://codeberg.org/guix/guix-consensus-documents/src/branch/main/003-rename-default-branch.md,
|
||||
Guix Consensus Document 003}.}:
|
||||
version from the Git repository:
|
||||
|
||||
@example
|
||||
git clone https://git.guix.gnu.org/guix.git
|
||||
cd guix
|
||||
@end example
|
||||
|
||||
@cindex authentication, of a Guix checkout
|
||||
@@ -182,7 +177,6 @@ guix shell -D guix -CPW
|
||||
or even, from within a Git worktree for Guix:
|
||||
|
||||
@example
|
||||
echo $(pwd) >> ~/.config/guix/shell-authorized-directories
|
||||
guix shell -CPW
|
||||
@end example
|
||||
|
||||
@@ -190,10 +184,6 @@ If @option{-C} (short for @option{--container}) is not supported on your
|
||||
system, try @command{--pure} instead of @option{-CPW}.
|
||||
@xref{Invoking guix shell}, for more information on that command.
|
||||
|
||||
Most of the test suite runs without an internet connection. The @option{-N}
|
||||
(short for @option{--network}) can be added to the @code{guix shell} command
|
||||
to run the tests that require internet access.
|
||||
|
||||
If you are unable to use Guix when building Guix from a checkout, the
|
||||
following are the required packages in addition to those mentioned in the
|
||||
installation instructions (@pxref{Requirements}).
|
||||
@@ -207,11 +197,11 @@ installation instructions (@pxref{Requirements}).
|
||||
@item @url{https://www.gnu.org/software/help2man/, GNU Help2man (optional)}.
|
||||
@end itemize
|
||||
|
||||
On Guix, other development tools, like @code{strace}, can be included by
|
||||
giving them as extra arguments to @command{guix shell}:
|
||||
On Guix, extra dependencies can be added by instead running @command{guix
|
||||
shell}:
|
||||
|
||||
@example
|
||||
guix shell -D guix -CPW strace
|
||||
guix shell -D guix help2man git strace --pure
|
||||
@end example
|
||||
|
||||
From there you can generate the build system infrastructure
|
||||
|
||||
@@ -1734,8 +1734,8 @@ At this stage, the package @code{cargo-audit} is buildable.
|
||||
|
||||
@item
|
||||
Finally we'll unbundle the vendored dependencies. The lockfile importer
|
||||
inserts @code{TODO REVIEW:} comments for libraries with high probability
|
||||
of bundled dependencies. @code{cargo-build-system} also performs
|
||||
inserts @code{TODO:} comments for libraries with high probability of
|
||||
bundled dependencies. @code{cargo-build-system} also performs
|
||||
additional check for binary files in its
|
||||
@code{check-for-pregenerated-files} phase, which usually indicates
|
||||
bundling:
|
||||
@@ -1909,11 +1909,11 @@ Don't forget to modify all workspace members in @code{(gnu packages
|
||||
rust-crates)}:
|
||||
|
||||
@lisp
|
||||
(define rust-pipewire-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-pipewire-sys-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-pipewire-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-pipewire-sys-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
|
||||
@dots{}
|
||||
(define rust-libspa-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-libspa-sys-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-libspa-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
|
||||
(define rust-libspa-sys-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
|
||||
@end lisp
|
||||
|
||||
@node Using Rust Libraries in Other Build Systems
|
||||
|
||||
+118
-448
@@ -22,7 +22,7 @@
|
||||
@set SUBSTITUTE-URLS https://@value{SUBSTITUTE-SERVER-1} https://@value{SUBSTITUTE-SERVER-2}
|
||||
|
||||
@copying
|
||||
Copyright @copyright{} 2012--2026 Ludovic Courtès@*
|
||||
Copyright @copyright{} 2012--2025 Ludovic Courtès@*
|
||||
Copyright @copyright{} 2013, 2014, 2016, 2024 Andreas Enge@*
|
||||
Copyright @copyright{} 2013 Nikita Karetnikov@*
|
||||
Copyright @copyright{} 2014, 2015, 2016 Alex Kost@*
|
||||
@@ -146,7 +146,6 @@ Copyright @copyright{} 2025 Artur Wroblewski@*
|
||||
Copyright @copyright{} 2025 Edouard Klein@*
|
||||
Copyright @copyright{} 2025 Rodion Goritskov@*
|
||||
Copyright @copyright{} 2025 dan@*
|
||||
Copyright @copyright{} 2025 Noé Lopez@*
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
@@ -770,43 +769,66 @@ This section only applies to systems without Guix. Following it for
|
||||
existing Guix installations will overwrite important system files.
|
||||
@end quotation
|
||||
|
||||
The
|
||||
@uref{https://guix.gnu.org/guix-install.sh, @file{guix-install.sh}}
|
||||
shell script automates the binary installation process.
|
||||
Use of @file{guix-install.sh} requires Bash, GnuPG, GNU@tie{}tar, wget,
|
||||
and Xz. On systems where systemd is detected, the tool
|
||||
@command{newgidmap} from the @code{uidmap} package is also required.
|
||||
Some GNU/Linux distributions, such as Debian, Ubuntu, and openSUSE
|
||||
provide Guix through their own package managers. The version of Guix
|
||||
may be older than @value{VERSION} but you can update it afterwards by
|
||||
running @samp{guix pull}.
|
||||
|
||||
To install Guix on top of your GNU/Linux system, run the following
|
||||
commands as root:
|
||||
We advise system administrators who install Guix, both from the
|
||||
installation script or @i{via} the native package manager of their
|
||||
foreign distribution, to also regularly read and follow security
|
||||
notices, as shown by @command{guix pull}.
|
||||
|
||||
For Debian or derivatives such as Ubuntu or Trisquel, call:
|
||||
|
||||
@example
|
||||
cd /tmp
|
||||
wget https://guix.gnu.org/guix-install.sh
|
||||
chmod +x guix-install.sh
|
||||
./guix-install.sh
|
||||
sudo apt install guix
|
||||
@end example
|
||||
|
||||
When you're done installing Guix, @pxref{Application Setup} for extra
|
||||
configuration you might need, and @ref{Getting Started} for your first
|
||||
steps!
|
||||
Likewise, on openSUSE:
|
||||
|
||||
The script goes through the following steps:
|
||||
@example
|
||||
sudo zypper install guix
|
||||
@end example
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
Downloading the binary tarball from
|
||||
@indicateurl{@value{BASE-URL}/guix-binary-@value{VERSION}.x86_64-linux.tar.xz}
|
||||
(where @code{x86_64-linux} can be replaced with @code{i686-linux} for an
|
||||
@code{i686} (32-bits) machine already running the kernel Linux, and so
|
||||
on---@pxref{GNU Distribution}) and extracting it.
|
||||
@item
|
||||
Setting up the build daemon (@pxref{Setting Up the Daemon}).
|
||||
@item
|
||||
Making the @command{guix} command available to non-root users.
|
||||
@item
|
||||
Configuring substitute servers (@pxref{Official Substitute Servers}).
|
||||
@end enumerate
|
||||
If you are running Parabola, after enabling the pcr (Parabola
|
||||
Community Repo) repository, you can install Guix with:
|
||||
@example
|
||||
sudo pacman -S guix
|
||||
@end example
|
||||
|
||||
The Guix project also provides a shell script, @file{guix-install.sh},
|
||||
which automates the binary installation process without use of a foreign
|
||||
distro package
|
||||
manager@footnote{@uref{https://guix.gnu.org/guix-install.sh}}.
|
||||
Use of @file{guix-install.sh} requires Bash, GnuPG, GNU@tie{}tar, wget,
|
||||
and Xz. On systems where @code{systemd} is detected, the tool
|
||||
@code{newgidmap} from the @code{uidmap} package is also required.
|
||||
|
||||
The script guides you through the following:
|
||||
|
||||
@itemize
|
||||
@item Downloading and extracting the binary tarball
|
||||
@item Setting up the build daemon
|
||||
@item Making the ‘guix’ command available to non-root users
|
||||
@item Configuring substitute servers
|
||||
@end itemize
|
||||
|
||||
As root, run:
|
||||
|
||||
@example
|
||||
# cd /tmp
|
||||
# wget https://guix.gnu.org/guix-install.sh
|
||||
# chmod +x guix-install.sh
|
||||
# ./guix-install.sh
|
||||
@end example
|
||||
|
||||
The script to install Guix is also packaged in Parabola (in the pcr
|
||||
repository). You can install and run it with:
|
||||
@example
|
||||
sudo pacman -S guix-installer
|
||||
sudo guix-install.sh
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
By default, @file{guix-install.sh} will configure Guix to download
|
||||
@@ -823,13 +845,17 @@ To use substitutes from @code{@value{SUBSTITUTE-SERVER-1}},
|
||||
For example,
|
||||
|
||||
@example
|
||||
guix archive --authorize < \
|
||||
~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-1}.pub
|
||||
guix archive --authorize < \
|
||||
~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub
|
||||
# guix archive --authorize < \
|
||||
~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-1}.pub
|
||||
# guix archive --authorize < \
|
||||
~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub
|
||||
@end example
|
||||
@end quotation
|
||||
|
||||
When you're done installing Guix, @pxref{Application Setup} for extra
|
||||
configuration you might need, and @ref{Getting Started} for your first
|
||||
steps!
|
||||
|
||||
@quotation Note
|
||||
The binary installation tarball can be (re)produced and verified simply
|
||||
by running the following command in the Guix source tree:
|
||||
@@ -861,16 +887,6 @@ the @option{--uninstall} flag:
|
||||
With @option{--uninstall}, the script irreversibly deletes all the Guix
|
||||
files, configuration, and services.
|
||||
|
||||
Some GNU/Linux distributions, such as openSUSE, Alpine and NixOS provide
|
||||
Guix through their own package managers. The version of Guix may be
|
||||
older than @value{VERSION} but you can update it afterwards by running
|
||||
@command{guix pull}.
|
||||
|
||||
We advise system administrators who install Guix, both from the
|
||||
installation script or @i{via} the native package manager of their
|
||||
foreign distribution, to also regularly read and follow security
|
||||
notices, as shown by @command{guix pull}.
|
||||
|
||||
@node Setting Up the Daemon
|
||||
@section Setting Up the Daemon
|
||||
|
||||
@@ -912,7 +928,6 @@ pre-built binaries.
|
||||
* Build Environment Setup:: Preparing the isolated build environment.
|
||||
* Daemon Offload Setup:: Offloading builds to remote machines.
|
||||
* SELinux Support:: Using an SELinux policy for the daemon.
|
||||
* AppArmor Support:: Using an AppArmor profile for the daemon.
|
||||
@end menu
|
||||
|
||||
@node Build Environment Setup
|
||||
@@ -1022,12 +1037,6 @@ When using this option, you only need to create one user account, and
|
||||
--system guix-daemon
|
||||
@end example
|
||||
|
||||
@quotation Warning
|
||||
If the @command{nologin} binary is not found by @command{which nologin},
|
||||
you may need to specify its path manually. This will usually be
|
||||
@file{/sbin/nologin} or @file{/usr/sbin/nologin}.
|
||||
@end quotation
|
||||
|
||||
In this configuration, @file{/gnu/store} is owned by the
|
||||
@code{guix-daemon} user.
|
||||
|
||||
@@ -1091,8 +1100,6 @@ systemctl daemon-reload
|
||||
systemctl start guix-daemon
|
||||
@end example
|
||||
|
||||
If your system has AppArmor enabled, @pxref{AppArmor Support}.
|
||||
|
||||
@quotation Warning
|
||||
The commands above assume that @command{guix pull} was run for the root
|
||||
user. You can check whether this is the case by running this command:
|
||||
@@ -1522,43 +1529,6 @@ installation time whenever the Guix package that provides the
|
||||
effectively running @code{guix-daemon} executable is upgraded.
|
||||
@end enumerate
|
||||
|
||||
@node AppArmor Support
|
||||
@subsection AppArmor Support
|
||||
|
||||
@cindex AppArmor
|
||||
|
||||
Guix includes an AppArmor profile for the build daemon in
|
||||
@file{etc/apparmor.d/guix-daemon} that can be installed on systems with
|
||||
strict AppArmor policies to allow it to run unprivileged
|
||||
(@pxref{Build Environment Setup}). Indeed, the unprivileged daemon makes
|
||||
use of Linux user namespaces but these are disallowed
|
||||
without an AppArmor policy on some systems like Ubuntu.
|
||||
|
||||
To know if this applies to you, check if the
|
||||
@code{kernel.apparmor_restrict_unprivileged_userns} kernel parameter is
|
||||
enabled.
|
||||
|
||||
@subsubsection Installing the AppArmor profile
|
||||
@cindex AppArmor, profile installation
|
||||
|
||||
@quotation Note
|
||||
The @code{guix-install.sh} binary installation script offers to perform
|
||||
the steps below for you (@pxref{Binary Installation}).
|
||||
@end quotation
|
||||
|
||||
Run these commands as root to install the profile:
|
||||
|
||||
@example
|
||||
export apparmor_sources=/var/guix/profiles/per-user/root/current-guix/etc/apparmor.d
|
||||
cp -f -t /etc/apparmor.d/tunables "$apparmor_sources/tunables/guix"
|
||||
cp -f -t /etc/apparmor.d "$apparmor_sources/guix-daemon"
|
||||
cp -f -t /etc/apparmor.d "$apparmor_sources/guix"
|
||||
apparmor_parser -r /etc/apparmor.d/guix-daemon
|
||||
apparmor_parser -r /etc/apparmor.d/guix
|
||||
@end example
|
||||
|
||||
After this, the build daemon will be able to function correctly.
|
||||
|
||||
@node Invoking guix-daemon
|
||||
@section Invoking @command{guix-daemon}
|
||||
@cindex @command{guix-daemon}
|
||||
@@ -2149,9 +2119,8 @@ systemctl restart guix-daemon.service
|
||||
|
||||
While this works for @file{guix-install.sh}, it will most likely not
|
||||
work if you installed Guix through the package manager of another
|
||||
distribution (for instance with @command{sudo apt install guix},
|
||||
@command{pacman -S guix}, or similar commands)
|
||||
because on many distributions @file{guix-daemon.service} will only
|
||||
distribution (for instance with sudo apt install guix, pacman -S guix,
|
||||
etc) because on many distributions @file{guix-daemon.service} will only
|
||||
run the Guix daemon provided by the distribution.
|
||||
|
||||
Waiting for your distribution to provide security fixes sometimes work,
|
||||
@@ -8730,7 +8699,6 @@ The example below denotes a version of gnu-standards to fetch:
|
||||
@section Defining Package Variants
|
||||
|
||||
@cindex customizing packages
|
||||
@cindex package variants
|
||||
@cindex variants, of packages
|
||||
One of the nice things with Guix is that, given a package definition,
|
||||
you can easily @emph{derive} variants of that package---for a different
|
||||
@@ -13297,11 +13265,6 @@ be a list of keywords with values accepted by procedure
|
||||
@end example
|
||||
@end deffn
|
||||
|
||||
@deffn {REPL command} graft? @var{graft?}
|
||||
Set whether grafts should be performed as part of the build. Equivalent
|
||||
to @code{--no-grafts} argument to @code{guix build}.
|
||||
@end deffn
|
||||
|
||||
@deffn {REPL command} lower @var{object}
|
||||
Lower @var{object} into a derivation or store file name and return it.
|
||||
@end deffn
|
||||
@@ -13575,8 +13538,7 @@ the parsed command-line options.
|
||||
@node Package Transformation Options
|
||||
@subsection Package Transformation Options
|
||||
|
||||
@cindex package tranformation
|
||||
@cindex package variants, transformation
|
||||
@cindex package variants
|
||||
Another set of command-line options supported by @command{guix build}
|
||||
and also @command{guix package} are @dfn{package transformation
|
||||
options}. These are options that make it possible to define @dfn{package
|
||||
@@ -13657,37 +13619,6 @@ coarse-grain counterpart of @dfn{function multi-versioning} as
|
||||
implemented by the GNU tool chain (@pxref{Function Multiversioning,,,
|
||||
gcc, Using the GNU Compiler Collection (GCC)}).
|
||||
|
||||
@cindex GPUs, AMD compilation targets
|
||||
@cindex AMD GPUs
|
||||
@cindex ROCm/HIP GPU targets
|
||||
@vindex amd-gpu-targets
|
||||
@anchor{amd-gpu-transformation-option}
|
||||
@item --amd-gpu=@var{targets}
|
||||
Build relevant packages for the AMD GPUs specified by @var{targets}.
|
||||
Only packages with an @code{amd-gpu-targets} property are affected.
|
||||
@var{targets} must be a comma-separated list of
|
||||
@uref{https://llvm.org/docs/AMDGPUUsage.html#amdgpu-processor-table, AMD
|
||||
GPU target identifiers}. For example, the command below builds the GPU
|
||||
code of @code{rocm-bandwidth-test} for AMD Instinct MI250
|
||||
(@code{gfx90a}) and for AMD Instinct MI300 (@code{gfx942}):
|
||||
|
||||
@example
|
||||
guix build --amd-gpu=gfx90a,gfx942 rocm-bandwidth-test
|
||||
@end example
|
||||
|
||||
To know the identifier(s) of the GPU(s) available on your machine, run:
|
||||
|
||||
@example
|
||||
guix shell rocminfo -- rocm_agent_enumerator
|
||||
@end example
|
||||
|
||||
Under the hood, these GPU identifiers are
|
||||
passed to Clang's @option{--offload-arch} option.
|
||||
|
||||
When @option{--amd-gpu} is omitted, packages are built for a default set
|
||||
of GPUs, that we hope covers common needs. Building for more GPUs
|
||||
increases build time significantly and leads to bigger package binaries.
|
||||
|
||||
@item --with-source=@var{source}
|
||||
@itemx --with-source=@var{package}=@var{source}
|
||||
@itemx --with-source=@var{package}@@@var{version}=@var{source}
|
||||
@@ -14733,50 +14664,6 @@ and generate package expressions for all those packages that are not yet
|
||||
in Guix.
|
||||
@end table
|
||||
|
||||
@item nuget
|
||||
@cindex nuget
|
||||
@cindex .NET
|
||||
Import metadata from @uref{https://www.nuget.org/, NuGet}, the package
|
||||
manager for .NET. Information is taken from the JSON-formatted metadata
|
||||
provided through NuGet's v3 API at @code{api.nuget.org} and includes
|
||||
most relevant information, including package dependencies.
|
||||
There are some caveats, however. The metadata does not always include
|
||||
repository information, in which case the importer attempts to extract
|
||||
it from the symbol package (@file{.snupkg}) if available.
|
||||
Additionally, dependencies are grouped by target framework in NuGet,
|
||||
but the importer flattens all dependency groups into a single list.
|
||||
|
||||
The command below imports metadata for the @code{Avalonia} .NET package:
|
||||
|
||||
@example
|
||||
guix import nuget Avalonia
|
||||
@end example
|
||||
|
||||
You can also recursively import all dependencies:
|
||||
|
||||
@example
|
||||
guix import nuget -r Avalonia
|
||||
@end example
|
||||
|
||||
@table @code
|
||||
@item --archive=@var{repo}
|
||||
@itemx -a @var{repo}
|
||||
Specify the archive repository. Currently only @code{nuget} is supported,
|
||||
which uses the official NuGet package repository at @code{nuget.org}.
|
||||
|
||||
@item --recursive
|
||||
@itemx -r
|
||||
Traverse the dependency graph of the given upstream package recursively
|
||||
and generate package expressions for all those packages that are not yet
|
||||
in Guix.
|
||||
|
||||
@item --license-prefix=@var{prefix}
|
||||
@itemx -p @var{prefix}
|
||||
Add a custom prefix to license identifiers in the generated package
|
||||
definitions. This can be useful when license identifiers need to be
|
||||
qualified with a module name.
|
||||
@end table
|
||||
|
||||
@item minetest
|
||||
@cindex minetest
|
||||
@cindex ContentDB
|
||||
@@ -19011,8 +18898,8 @@ given location at the time of the unlock attempt.
|
||||
;; Following definition would be equivalent to running:
|
||||
;; cryptsetup open --key-file /crypto.key /dev/sdb1 data
|
||||
(mapped-device
|
||||
(source "/dev/sdb1")
|
||||
(target "data")
|
||||
(source "/dev/sdb1)
|
||||
(target "data)
|
||||
(type luks-device-mapping)
|
||||
(arguments '(#:key-file "/crypto.key")))
|
||||
@end lisp
|
||||
@@ -19042,7 +18929,7 @@ options, along with @option{--allow-discards}:
|
||||
(arguments '(#:allow-discards? #t
|
||||
#:extra-options
|
||||
("--perf-no_read_workqueue"
|
||||
"--perf-no_write_workqueue"))))
|
||||
"--perf-no_write_workqueue")))))
|
||||
@end lisp
|
||||
|
||||
@end table
|
||||
@@ -19965,11 +19852,6 @@ symlink:
|
||||
This procedure is meant for @code{/bin/sh}, @code{/usr/bin/env} and
|
||||
similar targets. In particular, use for targets under @code{/etc} might
|
||||
not work as expected if the target is managed by Guix in other ways.
|
||||
|
||||
The special files persist on your system even after the
|
||||
@code{extra-special-file} call has been removed from your system config
|
||||
and the system has been reconfigured. The special files need to be
|
||||
removed manually.
|
||||
@end deffn
|
||||
|
||||
@defvar host-name-service-type
|
||||
@@ -24945,6 +24827,7 @@ example the @code{windowmaker} or @code{openbox} packages---preferably
|
||||
by adding it to the @code{packages} field of your operating system
|
||||
definition (@pxref{operating-system Reference, system-wide packages}).
|
||||
|
||||
@anchor{wayland-gdm}
|
||||
GDM also supports Wayland: it can itself use Wayland instead of X11 for
|
||||
its user interface, and it can also start Wayland sessions. Wayland
|
||||
support is enabled by default. To disable it, set @code{wayland?} to
|
||||
@@ -26457,6 +26340,16 @@ special-purpose system interfaces and programs. This allows backlight
|
||||
adjustment helpers, power management utilities, screen lockers, and
|
||||
other integrated functionality to work as expected.
|
||||
|
||||
The desktop environments in Guix use the Xorg display server by
|
||||
default. If you'd like to use the newer display server protocol
|
||||
called Wayland, you need to enable Wayland support in GDM
|
||||
(@pxref{wayland-gdm}). Another solution is to use the
|
||||
@code{sddm-service} instead of GDM as the graphical login manager.
|
||||
You should then select the ``GNOME (Wayland)'' session in SDDM@.
|
||||
Alternatively you can also try starting GNOME on Wayland manually from a
|
||||
TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-run-session
|
||||
gnome-session``. Currently only GNOME has support for Wayland.
|
||||
|
||||
@defvar gnome-desktop-service-type
|
||||
This is the type of the service that adds the @uref{https://www.gnome.org,
|
||||
GNOME} desktop environment. Its value is a @code{gnome-desktop-configuration}
|
||||
@@ -26531,7 +26424,7 @@ The Plasma package to use.
|
||||
@end deftp
|
||||
|
||||
@defvar xfce-desktop-service-type
|
||||
This is the type of a service to run the @uref{https://xfce.org/, Xfce}
|
||||
This is the type of a service to run the @uref{Xfce, https://xfce.org/}
|
||||
desktop environment. Its value is an @code{xfce-desktop-configuration} object
|
||||
(see below).
|
||||
|
||||
@@ -28443,47 +28336,30 @@ Additional command line options to pass to @code{memcached}.
|
||||
|
||||
@subsubheading Redis
|
||||
|
||||
@uref{https://redis.io/, Redis} is an in-memory data store used
|
||||
by millions of developers as a cache, vector database, document
|
||||
database, streaming engine, and message broker. Redis has built-in
|
||||
replication and different levels of on-disk persistence. It supports
|
||||
complex data types (for example, strings, hashes, lists, sets, sorted
|
||||
sets, and JSON), with atomic operations defined on those data types.
|
||||
|
||||
@defvar redis-service-type
|
||||
Type of the service that runs @command{redis}, an in-memory data store.
|
||||
The value for this service is a @code{<redis-configuration>} object.
|
||||
This is the service type for the @uref{https://redis.io/, Redis}
|
||||
key/value store, whose value is a @code{redis-configuration} object.
|
||||
@end defvar
|
||||
|
||||
@c %start of fragment
|
||||
|
||||
@deftp {Data Type} redis-configuration
|
||||
Available @code{redis-configuration} fields are:
|
||||
Data type representing the configuration of redis.
|
||||
|
||||
@table @asis
|
||||
@item @code{redis} (default: @code{redis}) (type: package)
|
||||
@item @code{redis} (default: @code{redis})
|
||||
The Redis package to use.
|
||||
|
||||
@item @code{bind} (default: @code{"127.0.0.1"}) (type: string)
|
||||
@item @code{bind} (default: @code{"127.0.0.1"})
|
||||
Network interface on which to listen.
|
||||
|
||||
@item @code{port} (default: @code{6379}) (type: number)
|
||||
@item @code{port} (default: @code{6379})
|
||||
Port on which to accept connections on, a value of 0 will disable
|
||||
listening on a TCP socket.
|
||||
|
||||
@item @code{working-directory} (default: @code{"/var/lib/redis"}) (type: string)
|
||||
@item @code{working-directory} (default: @code{"/var/lib/redis"})
|
||||
Directory in which to store the database and related files.
|
||||
|
||||
@item @code{config-file} (type: maybe-string)
|
||||
Default location for config file.
|
||||
|
||||
@end table
|
||||
|
||||
@end deftp
|
||||
|
||||
|
||||
@c %end of fragment
|
||||
|
||||
@node Mail Services
|
||||
@subsection Mail Services
|
||||
|
||||
@@ -31909,12 +31785,12 @@ services:
|
||||
@subsubheading Jami
|
||||
|
||||
@defvar jami-service-type
|
||||
The service type for running @uref{https://jami.net/, Jami} as a
|
||||
service. It takes a @code{jami-configuration} object as a value,
|
||||
documented below. This section describes how to configure a Jami server
|
||||
that can be used to host video (or audio) conferences, among other uses.
|
||||
The following example demonstrates how to specify Jami account archives
|
||||
(backups) to be provisioned automatically:
|
||||
The service type for running Jami as a service. It takes a
|
||||
@code{jami-configuration} object as a value, documented below. This
|
||||
section describes how to configure a Jami server that can be used to
|
||||
host video (or audio) conferences, among other uses. The following
|
||||
example demonstrates how to specify Jami account archives (backups) to
|
||||
be provisioned automatically:
|
||||
|
||||
@lisp
|
||||
(service jami-service-type
|
||||
@@ -38399,8 +38275,8 @@ evaluated, they are sent to the local Guix daemon. Cuirass then
|
||||
listens to the Guix daemon output to detect the various build events.
|
||||
|
||||
@item Using the remote build mechanism.
|
||||
The build jobs are not submitted to the local Guix daemon. Instead, one
|
||||
``remote server'' dispatches build requests to the connected ``remote workers'',
|
||||
The build jobs are not submitted to the local Guix daemon. Instead, a
|
||||
remote server dispatches build requests to the connect remote workers,
|
||||
according to the build priorities.
|
||||
|
||||
@end itemize
|
||||
@@ -43268,91 +43144,6 @@ the @code{joycond-configuration} configuration), so that joycond
|
||||
controllers can be detected and used by an unprivileged user.
|
||||
@end defvar
|
||||
|
||||
@subsubheading Luanti service
|
||||
@cindex luanti
|
||||
@cindex voxel-based games
|
||||
@uref{https://www.luanti.org/en/, Luanti} is a voxel game engine that
|
||||
powers many games. This service is for hosting a Luanti server. The
|
||||
various options can be configured via the @code{luanti-configuration}
|
||||
record, documented below:
|
||||
|
||||
@c %start of fragment
|
||||
|
||||
@deftp {Data Type} luanti-configuration
|
||||
Available @code{luanti-configuration} fields are:
|
||||
|
||||
@table @asis
|
||||
@item @code{luanti} (default: @code{luanti-server}) (type: file-like)
|
||||
The Luanti package to use.
|
||||
|
||||
@item @code{game} (default: @code{luanti-mineclonia}) (type: file-like)
|
||||
The Luanti game package to serve.
|
||||
|
||||
@item @code{game-configuration} (type: maybe-file-like)
|
||||
A configuration file to use for the selected Luanti game, which
|
||||
corresponds to the @file{minetest.conf} file.
|
||||
|
||||
@item @code{mods} (type: maybe-list-of-file-likes)
|
||||
A list of Luanti mod packages to use. Note that using mods is
|
||||
complicated by the requirements of Luanti to 1) manually enable the mod
|
||||
and any of its dependent mods in the @file{world.rt} file of the world
|
||||
used and 2) to register the mod names and those of its dependents via a
|
||||
@samp{secure.trusted_mods} @code{game-configuration} directive. Consult
|
||||
the example below for more precise directions.
|
||||
|
||||
@item @code{log-file} (default: @code{"/var/log/luanti.log"}) (type: maybe-string)
|
||||
The log file to log to. To disable logging, set this to
|
||||
@code{%unset-value}.
|
||||
|
||||
@item @code{verbose?} (default: @code{#f}) (type: boolean)
|
||||
Print more detailed information.
|
||||
|
||||
@item @code{port} (default: @code{30000}) (type: port)
|
||||
The UDP port the server should listen to.
|
||||
|
||||
@item @code{world} (type: maybe-string)
|
||||
An existing Luanti world directory to serve. If omitted, a new world is
|
||||
created under the @file{/var/lib/luanti/.minetest/worlds/world}
|
||||
directory. If an absolute file name is provided, it is used directly.
|
||||
Otherwise, it is expected to be a directory under
|
||||
@file{/var/lib/luanti/.minetest/worlds/}.
|
||||
|
||||
@end table
|
||||
|
||||
@end deftp
|
||||
|
||||
|
||||
@c %end of fragment
|
||||
|
||||
Here's the simplest example of a Luanti server, which in its default
|
||||
configuration serves the @code{luanti-mineclonia} game.
|
||||
|
||||
@lisp
|
||||
(service luanti-service-type)
|
||||
@end lisp
|
||||
|
||||
Here's a slightly more elaborate one, which adds the
|
||||
@code{luanti-whitelist} mod. Embedded are comments explaining extra
|
||||
needed steps when using mods. Failing to do these steps will cause the
|
||||
service to fail to start.
|
||||
|
||||
@lisp
|
||||
(service luanti-service-type
|
||||
(luanti-configuration
|
||||
(game luanti-mineclonia)
|
||||
(game-configuration
|
||||
(plain-file
|
||||
"minetest.conf"
|
||||
;; lib_chatcmdbuilder is a dependency of the whitelist mod
|
||||
"secure.trusted_mods = whitelist,lib_chatcmdbuilder\n"))
|
||||
;; The
|
||||
;; '/var/lib/luanti/.minetest/worlds/world/world.mt'
|
||||
;; file needs to be hand-edited to add:
|
||||
;; load_mod_whitelist = true
|
||||
;; load_mod_lib_chatcmdbuilder = true
|
||||
(mods (list luanti-whitelist))))
|
||||
@end lisp
|
||||
|
||||
@subsubheading The Battle for Wesnoth Service
|
||||
@cindex wesnothd
|
||||
@uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn
|
||||
@@ -45690,7 +45481,7 @@ A string representing the OCI image tag. Defaults to @code{latest}.
|
||||
@item @code{value} (type: oci-lowerable-image)
|
||||
A @code{manifest} or @code{operating-system} record that will be lowered
|
||||
into an OCI compatible tarball. Otherwise this field's value can be a
|
||||
file-like object that evaluates to an OCI compatible tarball.
|
||||
gexp or a file-like object that evaluates to an OCI compatible tarball.
|
||||
|
||||
@item @code{pack-options} (default: @code{'()}) (type: list)
|
||||
An optional set of keyword arguments that will be passed to the
|
||||
@@ -46351,127 +46142,6 @@ Mode for filter.
|
||||
|
||||
@c End of auto-generated fail2ban documentation.
|
||||
|
||||
@cindex OpenSnitch
|
||||
@subsubheading OpenSnitch Service
|
||||
|
||||
@uref{https://github.com/evilsocket/opensnitch, OpenSnitch} is an
|
||||
application-level firewall that monitors outbound connections and prompts
|
||||
users to allow or deny them on a per-application basis.
|
||||
|
||||
@code{opensnitch-service-type} is provided by the @code{(gnu services
|
||||
opensnitch)} module.
|
||||
|
||||
@defvar opensnitch-service-type
|
||||
This is the service type for the OpenSnitch application firewall daemon.
|
||||
Its value must be an @code{opensnitch-configuration} record.
|
||||
|
||||
Below is an example configuration:
|
||||
|
||||
@lisp
|
||||
(service opensnitch-service-type)
|
||||
@end lisp
|
||||
|
||||
This service depends on the @code{networking} service.
|
||||
@end defvar
|
||||
|
||||
@deftp {Data Type} opensnitch-configuration
|
||||
Available @code{opensnitch-configuration} fields are:
|
||||
|
||||
@table @asis
|
||||
@item @code{opensnitch} (default: @code{opensnitch-daemon}) (type: package)
|
||||
The @code{opensnitch-daemon} package to use.
|
||||
|
||||
@item @code{server-address} (default: @code{"unix:///tmp/osui.sock"}) (type: string)
|
||||
Address for the UI to connect to the daemon.
|
||||
|
||||
@item @code{server-log-file} (default: @code{"/var/log/opensnitchd.log"}) (type: string)
|
||||
Path to the daemon log file.
|
||||
|
||||
@item @code{authentication-type} (default: @code{"simple"}) (type: string)
|
||||
Authentication type for UI-daemon communication.
|
||||
|
||||
@item @code{tls-ca-cert} (default: @code{""}) (type: string)
|
||||
Path to TLS CA certificate.
|
||||
|
||||
@item @code{tls-server-cert} (default: @code{""}) (type: string)
|
||||
Path to TLS server certificate.
|
||||
|
||||
@item @code{tls-client-cert} (default: @code{""}) (type: string)
|
||||
Path to TLS client certificate.
|
||||
|
||||
@item @code{tls-client-key} (default: @code{""}) (type: string)
|
||||
Path to TLS client key.
|
||||
|
||||
@item @code{tls-skip-verify?} (default: @code{#f}) (type: boolean)
|
||||
Whether to skip TLS verification.
|
||||
|
||||
@item @code{tls-client-auth-type} (default: @code{"no-client-cert"}) (type: string)
|
||||
TLS client authentication type.
|
||||
|
||||
@item @code{default-action} (default: @code{"allow"}) (type: string)
|
||||
Default action for connections: @code{"allow"} or @code{"deny"}.
|
||||
|
||||
@item @code{default-duration} (default: @code{"once"}) (type: string)
|
||||
Default duration for rules: @code{"once"}, @code{"until-restart"},
|
||||
@code{"always"}, etc.
|
||||
|
||||
@item @code{intercept-unknown?} (default: @code{#f}) (type: boolean)
|
||||
Whether to intercept connections from unknown processes.
|
||||
|
||||
@item @code{proc-monitor-method} (default: @code{"ebpf"}) (type: string)
|
||||
Method for monitoring processes: @code{"ebpf"}, @code{"proc"}, or
|
||||
@code{"audit"}.
|
||||
|
||||
@item @code{log-level} (default: @code{2}) (type: integer)
|
||||
Log level: 0=silent, 1=error, 2=warning, 3=important, 4=debug.
|
||||
|
||||
@item @code{log-utc?} (default: @code{#t}) (type: boolean)
|
||||
Whether to log timestamps in UTC.
|
||||
|
||||
@item @code{log-micro?} (default: @code{#f}) (type: boolean)
|
||||
Whether to include microseconds in log timestamps.
|
||||
|
||||
@item @code{firewall} (default: @code{"nftables"}) (type: string)
|
||||
Firewall backend: @code{"nftables"} or @code{"iptables"}.
|
||||
|
||||
@item @code{fw-config-path} (default: @code{"/etc/opensnitchd/system-fw.json"}) (type: string)
|
||||
Path to the system firewall configuration file.
|
||||
|
||||
@item @code{fw-monitor-interval} (default: @code{"15s"}) (type: string)
|
||||
Interval for monitoring firewall rules.
|
||||
|
||||
@item @code{fw-queue-bypass?} (default: @code{#t}) (type: boolean)
|
||||
Whether to bypass the queue when the daemon is not running.
|
||||
|
||||
@item @code{rules-path} (default: @code{"/etc/opensnitchd/rules/"}) (type: string)
|
||||
Directory where firewall rules are stored.
|
||||
|
||||
@item @code{rules-enable-checksums?} (default: @code{#f}) (type: boolean)
|
||||
Whether to enable checksums for rules.
|
||||
|
||||
@item @code{ebpf-events-workers} (default: @code{8}) (type: integer)
|
||||
Number of eBPF event worker threads.
|
||||
|
||||
@item @code{ebpf-queue-events-size} (default: @code{0}) (type: integer)
|
||||
Size of the eBPF events queue (0 = default).
|
||||
|
||||
@item @code{stats-max-events} (default: @code{250}) (type: integer)
|
||||
Maximum number of events to keep in statistics.
|
||||
|
||||
@item @code{stats-max-stats} (default: @code{25}) (type: integer)
|
||||
Maximum number of statistics entries.
|
||||
|
||||
@item @code{stats-workers} (default: @code{6}) (type: integer)
|
||||
Number of statistics worker threads.
|
||||
|
||||
@item @code{internal-gc-percent} (default: @code{100}) (type: integer)
|
||||
Go garbage collector percentage.
|
||||
|
||||
@item @code{internal-flush-conns-on-start?} (default: @code{#t}) (type: boolean)
|
||||
Whether to flush existing connections on daemon start.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@cindex resize-file-system
|
||||
@subsubheading Resize File System Service
|
||||
|
||||
@@ -48106,9 +47776,7 @@ machine. The @code{grub-bootloader} bootloader is always used
|
||||
independently of what is declared in the @code{operating-system} file
|
||||
passed as argument. This is to make it easier to work with QEMU, which
|
||||
uses the SeaBIOS BIOS by default, expecting a bootloader to be installed
|
||||
in the Master Boot Record (MBR). In case the virtual machine is
|
||||
going to be AArch64, you might want to take a look at @code{qcow2-gpt}
|
||||
image type that installs bootloader only in EFI.
|
||||
in the Master Boot Record (MBR).
|
||||
|
||||
@cindex docker-image, creating docker images
|
||||
When using the @code{docker} image type, a Docker image is produced.
|
||||
@@ -49549,11 +49217,6 @@ daemons are started after all the file systems have been mounted and
|
||||
that, during shutdown, they are stopped before attempting to terminate
|
||||
remaining user processes.
|
||||
|
||||
Similarly, services that do make mounts during their startup or operation,
|
||||
should have @code{user-file-systems} as a requirement. @code{user-processes}
|
||||
does depend on @code{user-file-systems} as well.
|
||||
So direct requirement only on @code{user-processes} is sufficient.
|
||||
|
||||
@cindex one-shot services, for the Shepherd
|
||||
@item @code{one-shot?} (default: @code{#f})
|
||||
Whether this service is @dfn{one-shot}. One-shot services stop immediately
|
||||
@@ -55032,18 +54695,7 @@ Build an image based on the @code{efi32-disk-image} image.
|
||||
|
||||
@defvar qcow2-image-type
|
||||
Build an image based on the @code{mbr-disk-image} image but with the
|
||||
@code{compressed-qcow2} image format. The resulting image will have
|
||||
an MBR embedded bootloader as well as an EFI bootloader. This image
|
||||
is not suitable for architectures that do not support `grub-pc`,
|
||||
such as AArch64. See @code{qcow2-gpt-image-type} for an alternative.
|
||||
@end defvar
|
||||
|
||||
@defvar qcow2-gpt-image-type
|
||||
Build an image based on the @code{efi-disk-image} image but with the
|
||||
@code{compressed-qcow2} image format. The resulting image will have
|
||||
only EFI bootloader, unlike @code{qcow2-image-type}. This image
|
||||
is suitable for architectures that do not support `grub-pc`, such
|
||||
as AArch64.
|
||||
@code{compressed-qcow2} image format.
|
||||
@end defvar
|
||||
|
||||
@defvar iso-image-type
|
||||
@@ -55341,9 +54993,27 @@ related typesetting systems, taken from the
|
||||
Because @TeX{} Live is so huge and because finding one's way in this
|
||||
maze is tricky, this section provides some guidance on how to deploy
|
||||
the relevant packages to compile @TeX{} and @LaTeX{} documents.
|
||||
Guix contains the full @TeX{} Live distribution in a modular setup,
|
||||
in which you only install the
|
||||
|
||||
@TeX{} Live currently comes in two mutually exclusive flavors in Guix:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
The ``monolithic'' @code{texlive} package: it comes with @emph{every
|
||||
single @TeX{} Live package} (roughly 4,200), but it is huge---more than
|
||||
4@tie{}GiB for a single package!
|
||||
|
||||
@item
|
||||
A ``modular'' @TeX{} Live distribution, in which you only install the
|
||||
packages you need, whose name is always prefixed with @samp{texlive-}.
|
||||
@end itemize
|
||||
|
||||
To insist, these two flavors cannot be combined@footnote{No rule
|
||||
without exception! As the monolithic @TeX{} Live does not contain the
|
||||
@command{biber} executable, it is okay to combine it with
|
||||
@code{texlive-biber}, which does.}. If in the modular setting your
|
||||
document does not compile, the solution is not to add the monolithic
|
||||
@code{texlive} package, but to add the set of missing packages from the
|
||||
modular distribution.
|
||||
|
||||
Building a coherent system that provides all the essential tools and, at
|
||||
the same time, satisfies all of its internal dependencies can be
|
||||
|
||||
+2
-2
@@ -2,7 +2,7 @@
|
||||
# Modified by Ludovic Courtès <ludo@gnu.org> for the GNU Guix manual.
|
||||
# Further modified by Tomas Volf <~@wolfsden.cz>.
|
||||
|
||||
htmlxrefversion=2026-01-22.12; # UTC
|
||||
htmlxrefversion=2025-11-29.21; # UTC
|
||||
|
||||
# Copyright 2010-2020, 2022 Free Software Foundation, Inc.
|
||||
#
|
||||
@@ -416,7 +416,7 @@ guile-rpc mono ${GS}/guile-rpc/manual/guile-rpc.html
|
||||
guile-rpc node ${GS}/guile-rpc/manual/html_node/
|
||||
|
||||
GUIX_ROOT = https://guix.gnu.org
|
||||
GUIX = ${GUIX_ROOT}/manual/devel
|
||||
GUIX = ${GUIX_ROOT}/manual
|
||||
guix.de mono ${GUIX}/de/guix.de.html
|
||||
guix.de node ${GUIX}/de/html_node/
|
||||
guix.es mono ${GUIX}/es/guix.es.html
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
abi <abi/4.0>,
|
||||
|
||||
include <tunables/global>
|
||||
include <tunables/guix>
|
||||
|
||||
# There’s no point in confining the guix executable, since it can run
|
||||
# any user code and so everything is expected. We just need to
|
||||
# explicitly enable userns for systems with the
|
||||
# kernel.apparmor_restrict_unprivileged_userns sysctl.
|
||||
profile guix @{guix_storedir}/{*-guix-command,*-guix-*/bin/guix} flags=(unconfined) {
|
||||
userns,
|
||||
}
|
||||
@@ -1,88 +0,0 @@
|
||||
abi <abi/4.0>,
|
||||
|
||||
include <tunables/global>
|
||||
include <tunables/guix>
|
||||
|
||||
profile guix-daemon @{guix_storedir}/*-{guix-daemon,guix}-*/bin/guix-daemon flags=(enforce,attach_disconnected.path=/disconnected) {
|
||||
include <abstractions/base>
|
||||
|
||||
userns,
|
||||
signal,
|
||||
capability sys_admin,
|
||||
capability net_admin,
|
||||
capability sys_chroot,
|
||||
capability setgid,
|
||||
capability chown,
|
||||
network dgram,
|
||||
umount,
|
||||
mount,
|
||||
pivot_root,
|
||||
# Paths inside build chroot
|
||||
/real-root/ w,
|
||||
/ w,
|
||||
|
||||
@{guix_localstatedir}/guix/** rwk,
|
||||
/var/log/guix/** w,
|
||||
owner @{PROC}/@{pid}/{fd/,environ} r,
|
||||
owner @{PROC}/@{pid}/oom_score_adj w,
|
||||
owner @{PROC}/@{pid}/uid_map rw,
|
||||
owner @{PROC}/@{pid}/gid_map rw,
|
||||
owner @{PROC}/@{pid}/setgroups w,
|
||||
@{guix_storedir}/ r,
|
||||
@{guix_storedir}/** rwlmk,
|
||||
@{guix_storedir}/*/bin/guile cx -> guix-builder,
|
||||
@{guix_storedir}/*-guix-command cx -> guix-helper,
|
||||
@{guix_storedir}/*-guix-*/bin/guix cx -> guix-helper,
|
||||
@{etc_rw}/nsswitch.conf r,
|
||||
@{etc_rw}/passwd r,
|
||||
@{etc_rw}/group r,
|
||||
owner /tmp/** rwl,
|
||||
owner /var/tmp/** rwl,
|
||||
|
||||
/usr/bin/newgidmap Ux,
|
||||
|
||||
# Site-specific additions and overrides. See local/README for details.
|
||||
include if exists <local/guix-daemon>
|
||||
|
||||
profile guix-builder flags=(enforce,attach_disconnected.path=/disconnected) {
|
||||
include <abstractions/base>
|
||||
|
||||
signal (receive),
|
||||
|
||||
@{guix_storedir}/** rwlmkux,
|
||||
|
||||
owner /tmp/** rw,
|
||||
|
||||
@{PROC}/@{pid}/fd/ r,
|
||||
|
||||
/disconnected/** rw,
|
||||
}
|
||||
|
||||
# This is for any time guix is called by the daemon as a helper:
|
||||
# - guix download
|
||||
# - guix discover
|
||||
# - guix gc --list-busy
|
||||
# - probably more?
|
||||
profile guix-helper flags=(enforce,attach_disconnected.path=/disconnected) {
|
||||
include <abstractions/base>
|
||||
include <abstractions/nameservice>
|
||||
|
||||
signal (receive),
|
||||
ptrace (read) peer=guix-daemon,
|
||||
|
||||
/disconnected/run/dbus/system_bus_socket rw,
|
||||
dbus (send, receive),
|
||||
@{guix_localstatedir}/guix/discover/ rw,
|
||||
@{guix_localstatedir}/guix/discover/* rw,
|
||||
|
||||
@{guix_localstatedir}/guix/substitute/ rw,
|
||||
@{guix_localstatedir}/guix/substitute/** rwk,
|
||||
|
||||
@{guix_sysconfdir}/guix/** r,
|
||||
|
||||
@{guix_storedir}/** rwlmix,
|
||||
|
||||
@{PROC}/ r,
|
||||
owner @{PROC}/@{pid}/{fd/,environ} r,
|
||||
}
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
@{guix_storedir} = @storedir@
|
||||
@{guix_sysconfdir} = @guix_sysconfdir@
|
||||
@{guix_localstatedir} = @guix_localstatedir@
|
||||
|
||||
include if exists <tunables/guix.d>
|
||||
+2
-27
@@ -175,10 +175,6 @@
|
||||
(file (execute
|
||||
execute_no_trans read write open entrypoint map
|
||||
getattr link unlink)))
|
||||
;; Needed to execute the 'newgidmap' helper.
|
||||
(allow guix_daemon_t
|
||||
bin_t
|
||||
(file (execute execute_no_trans map)))
|
||||
|
||||
;; Remounting /gnu/store read-write.
|
||||
(allow guix_daemon_t
|
||||
@@ -326,7 +322,7 @@
|
||||
map
|
||||
getattr setattr
|
||||
unlink
|
||||
open read write append)))
|
||||
open read write)))
|
||||
(allow guix_daemon_t
|
||||
guix_daemon_conf_t
|
||||
(lnk_file (create getattr rename unlink read)))
|
||||
@@ -371,7 +367,7 @@
|
||||
;; Allow use of user namespaces
|
||||
(allow guix_daemon_t
|
||||
self
|
||||
(cap_userns (setgid sys_admin net_admin sys_chroot)))
|
||||
(cap_userns (sys_admin net_admin sys_chroot)))
|
||||
(allow guix_daemon_t
|
||||
self
|
||||
(user_namespace (create)))
|
||||
@@ -455,27 +451,6 @@
|
||||
vnc_port_t
|
||||
(tcp_socket (name_bind)))
|
||||
|
||||
;; 'guix gc' needs to go through /proc entries for all processes that are
|
||||
;; running. Strictly speaking, it means guix-daemon needs access to all
|
||||
;; process types in the SELinux policy. In practice, only processes from
|
||||
;; programs in the /gnu/store are relevant for finding roots for garbage
|
||||
;; collection. Since Guix currently doesn't install any SELinux policy for
|
||||
;; its packages, we can assume that all the processes it needs to access run
|
||||
;; as unconfined_t.
|
||||
;;
|
||||
;; FIXME: This doesn't stop 'guix gc' from generating a lot of unnecessary
|
||||
;; AVC denied audit messages. Perhaps guix-daemon could test whether it has
|
||||
;; access to the proc entry before trying to access it?
|
||||
(allow guix_daemon_t
|
||||
unconfined_t
|
||||
(dir (search)))
|
||||
(allow guix_daemon_t
|
||||
unconfined_t
|
||||
(file (read)))
|
||||
(allow guix_daemon_t
|
||||
unconfined_t
|
||||
(lnk_file (read)))
|
||||
|
||||
;; I guess sometimes it needs random numbers
|
||||
(allow guix_daemon_t
|
||||
random_device_t
|
||||
|
||||
@@ -14,12 +14,6 @@ ExecStart=@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daem
|
||||
--substitute-urls='@GUIX_SUBSTITUTE_URLS@'
|
||||
Environment='GUIX_STATE_DIRECTORY=@localstatedir@/guix' 'GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8
|
||||
|
||||
# Stop the gnu-store.mount so that the daemon can capture the store as
|
||||
# read-write in its private mount namespace.
|
||||
# See <https://codeberg.org/guix/guix/issues/4744>.
|
||||
ExecStartPre=-+systemctl stop gnu-store.mount
|
||||
ExecStartPost=-+systemctl start gnu-store.mount --no-block
|
||||
|
||||
# Run under a dedicated unprivileged user account.
|
||||
User=guix-daemon
|
||||
|
||||
|
||||
+18
-102
@@ -17,7 +17,6 @@
|
||||
# Copyright © 2024 Tomas Volf <~@wolfsden.cz>
|
||||
# Copyright © 2024 Richard Sent <richard@freakingpenguin.com>
|
||||
# Copyright © 2025 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
# Copyright © 2025 Noé Lopez <noelopez@free.fr>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@@ -106,12 +105,10 @@ DEBUG=0
|
||||
GNU_URL="https://ftpmirror.gnu.org/gnu/guix/"
|
||||
|
||||
# The following associative array holds set of GPG keys used to sign the
|
||||
# releases, keyed by their corresponding Codeberg user name.
|
||||
# releases, keyed by their corresponding Savannah user ID.
|
||||
declare -A GPG_SIGNING_KEYS
|
||||
GPG_SIGNING_KEYS["civodul"]=3CE464558A84FDC69DB40CFB090B11993D9AEBB5 # ludo
|
||||
GPG_SIGNING_KEYS["apteryx"]=27D586A4F8900854329FF09F1260E46482E63562 # maxim
|
||||
GPG_SIGNING_KEYS["efraim"]=A28BF40C3E551372662D14F741AAE7DCCA3D8351 # efraim
|
||||
PUBLIC_KEYSERVERS="keys.openpgp.org pgpkeys.eu keyserver.ubuntu.com"
|
||||
GPG_SIGNING_KEYS[15145]=3CE464558A84FDC69DB40CFB090B11993D9AEBB5 # ludo
|
||||
GPG_SIGNING_KEYS[127547]=27D586A4F8900854329FF09F1260E46482E63562 # maxim
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
#+UTILITIES
|
||||
@@ -206,7 +203,6 @@ chk_gpg_keyring()
|
||||
|
||||
for user_id in "${!GPG_SIGNING_KEYS[@]}"; do
|
||||
gpg_key_id=${GPG_SIGNING_KEYS[$user_id]}
|
||||
codeberg_username=$user_id
|
||||
# Without --dry-run this command will create a ~/.gnupg owned by root on
|
||||
# systems where gpg has never been used, causing errors and confusion.
|
||||
if gpg --dry-run --list-keys "$gpg_key_id" >/dev/null 2>&1; then
|
||||
@@ -215,39 +211,20 @@ chk_gpg_keyring()
|
||||
if prompt_yes_no "${INF}The following OpenPGP public key is \
|
||||
required to verify the Guix binary signature: $gpg_key_id.
|
||||
Would you like me to fetch it for you?"; then
|
||||
if wget "https://codeberg.org/$codeberg_username.gpg" \
|
||||
--tries=1 --timeout=30 --no-verbose -O- | gpg --import -; then
|
||||
continue
|
||||
fi
|
||||
|
||||
key_obtained=false
|
||||
# Try to fetch keys from an available keyserver
|
||||
for key_server in $PUBLIC_KEYSERVERS; do
|
||||
if gpg --keyserver $key_server --recv-key $gpg_key_id; then
|
||||
key_obtained=true
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if $key_obtained; then
|
||||
# Use a reasonable time-out here so users don't report silent
|
||||
# ‘freezes’ when Savannah goes out to lunch, as has happened.
|
||||
if wget "https://sv.gnu.org/people/viewgpg.php?user_id=$user_id" \
|
||||
--timeout=30 --no-verbose -O- | gpg --import -; then
|
||||
continue
|
||||
fi
|
||||
fi
|
||||
# If we reach this point, the key is (still) missing. Report further
|
||||
# missing keys, if any, but then abort the installation.
|
||||
_err "Missing OpenPGP public key ($gpg_key_id).
|
||||
Fetch it with codeberg username:
|
||||
Fetch it with this command:
|
||||
|
||||
wget \"https://codeberg.org/$codeberg_username.gpg\" -O - | \
|
||||
sudo -i gpg --import -
|
||||
|
||||
If this fails, try to fetch it via a keyserver:
|
||||
|
||||
for key_server in $PUBLIC_KEYSERVERS; do
|
||||
if sudo -i gpg --keyserver $key_server --recv-key $gpg_key_id; then
|
||||
break
|
||||
fi
|
||||
done"
|
||||
wget \"https://sv.gnu.org/people/viewgpg.php?user_id=$user_id\" -O - | \
|
||||
sudo -i gpg --import -"
|
||||
exit_flag=yes
|
||||
done
|
||||
if [ "$exit_flag" = yes ]; then
|
||||
@@ -778,7 +755,7 @@ sys_create_init_profile()
|
||||
cat <<"EOF" > /etc/profile.d/zzz-guix.sh
|
||||
# Explicitly initialize XDG base directory variables to ease compatibility
|
||||
# with Guix System: see <https://issues.guix.gnu.org/56050#3>.
|
||||
export XCURSOR_PATH="${XCURSOR_PATH:-$HOME/.local/share/icons:$HOME/.icons:/usr/local/share/icons:/usr/share/icons}"
|
||||
export XCURSOR_PATH="${XCURSOR_PATH:-/usr/local/share/icons:/usr/share/icons}"
|
||||
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
|
||||
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
|
||||
export XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
|
||||
@@ -794,8 +771,12 @@ export PATH="$GUIX_PROFILE/bin${PATH:+:}$PATH"
|
||||
# info and man readers. When INFOPATH is unset, add a trailing colon so Emacs
|
||||
# searches 'Info-default-directory-list'. When MANPATH is unset, add a
|
||||
# trailing colon so the system default search path is used.
|
||||
export INFOPATH="$GUIX_PROFILE/share/info:${INFOPATH:-}"
|
||||
export MANPATH="$GUIX_PROFILE/share/man:${MANPATH:-}"
|
||||
export INFOPATH="$GUIX_PROFILE/share/info:$INFOPATH"
|
||||
export MANPATH="$GUIX_PROFILE/share/man:$MANPATH"
|
||||
# Expose the latest Guix modules to Guile so guix shell and repls spawned by
|
||||
# e.g. Geiser work out of the box.
|
||||
export GUILE_LOAD_PATH="$GUIX_PROFILE/share/guile/site/3.0${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
|
||||
export GUILE_LOAD_COMPILED_PATH="$GUIX_PROFILE/lib/guile/3.0/site-ccache${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
|
||||
|
||||
# User's default profile, if it exists
|
||||
GUIX_PROFILE="$HOME/.guix-profile"
|
||||
@@ -817,11 +798,6 @@ if [ -L "$GUIX_PROFILE" ]; then
|
||||
*$GUIX_PROFILE/share/man*) ;;
|
||||
*) export MANPATH="$GUIX_PROFILE/share/man:$MANPATH"
|
||||
esac
|
||||
|
||||
case $XDG_DATA_DIRS in
|
||||
*$GUIX_PROFILE/share*) ;;
|
||||
*) export XDG_DATA_DIRS="$GUIX_PROFILE/share:$XDG_DATA_DIRS"
|
||||
esac
|
||||
fi
|
||||
|
||||
# NOTE: Guix Home handles its own profile initialization in ~/.profile. See
|
||||
@@ -916,64 +892,6 @@ sys_maybe_setup_selinux()
|
||||
restorecon -R /gnu /var/guix
|
||||
}
|
||||
|
||||
sys_maybe_setup_apparmor()
|
||||
{
|
||||
if ! [ -f /sys/module/apparmor/parameters/enabled ]
|
||||
then
|
||||
return
|
||||
fi
|
||||
|
||||
if ! command -v apparmor_parser &> /dev/null
|
||||
then
|
||||
return
|
||||
fi
|
||||
|
||||
prompt_yes_no "Install AppArmor profile that might be required to run guix-daemon?" \
|
||||
|| return 0
|
||||
|
||||
local var_guix=/var/guix/profiles/per-user/root/current-guix
|
||||
local apparmor_sources="${var_guix}/etc/apparmor.d/"
|
||||
|
||||
if ! [ -d "$apparmor_sources" ]
|
||||
then
|
||||
_err "This version of Guix doesn’t contain AppArmor profiles."
|
||||
return
|
||||
fi
|
||||
|
||||
cp -f -t /etc/apparmor.d/tunables "$apparmor_sources/tunables/guix"
|
||||
cp -f -t /etc/apparmor.d "$apparmor_sources/guix-daemon"
|
||||
cp -f -t /etc/apparmor.d "$apparmor_sources/guix"
|
||||
apparmor_parser --warn=all -r /etc/apparmor.d/guix-daemon
|
||||
apparmor_parser --warn=all -r /etc/apparmor.d/guix
|
||||
|
||||
_msg_pass "apparmor profiles installed and loaded"
|
||||
}
|
||||
|
||||
sys_delete_apparmor_profiles()
|
||||
{
|
||||
# Not a big deal if the apparmor_parser commands fail as they only apply
|
||||
# for the current boot, we still want to go on and remove the files.
|
||||
if [ -f "/etc/apparmor.d/guix" ]
|
||||
then
|
||||
_msg_info "removing /etc/apparmor.d/guix"
|
||||
apparmor_parser -R /etc/apparmor.d/guix || true
|
||||
rm -f "/etc/apparmor.d/guix"
|
||||
fi
|
||||
|
||||
if [ -f "/etc/apparmor.d/guix-daemon" ]
|
||||
then
|
||||
_msg_info "removing /etc/apparmor.d/guix-daemon"
|
||||
apparmor_parser -R /etc/apparmor.d/guix-daemon || true
|
||||
rm -f "/etc/apparmor.d/guix-daemon"
|
||||
fi
|
||||
|
||||
if [ -f "/etc/apparmor.d/tunables/guix" ]
|
||||
then
|
||||
_msg_info "removing /etc/apparmor.d/tunables/guix"
|
||||
rm -f "/etc/apparmor.d/tunables/guix"
|
||||
fi
|
||||
}
|
||||
|
||||
sys_delete_init_profile()
|
||||
{
|
||||
_msg_info "removing /etc/profile.d/zzz-guix.sh"
|
||||
@@ -1051,6 +969,7 @@ main_install()
|
||||
chk_init_sys
|
||||
add_init_sys_require
|
||||
chk_require "${REQUIRE[@]}"
|
||||
chk_gpg_keyring
|
||||
chk_sys_arch
|
||||
chk_sys_nscd
|
||||
chk_existing
|
||||
@@ -1061,7 +980,6 @@ main_install()
|
||||
tmp_path="$(mktemp -t -d guix.XXXXXX)"
|
||||
|
||||
if [ -z "${GUIX_BINARY_FILE_NAME}" ]; then
|
||||
chk_gpg_keyring
|
||||
guix_get_bin_list "${GNU_URL}"
|
||||
guix_get_bin "${GNU_URL}" "${BIN_VER}" "$tmp_path"
|
||||
GUIX_BINARY_FILE_NAME=${BIN_VER}.tar.xz
|
||||
@@ -1076,7 +994,6 @@ main_install()
|
||||
sys_create_store "${GUIX_BINARY_FILE_NAME}" "${tmp_path}"
|
||||
sys_create_build_user
|
||||
sys_maybe_setup_selinux
|
||||
sys_maybe_setup_apparmor
|
||||
sys_enable_guix_daemon
|
||||
sys_authorize_build_farms
|
||||
sys_create_init_profile
|
||||
@@ -1110,7 +1027,6 @@ main_uninstall()
|
||||
sys_delete_guix_daemon
|
||||
# stop people from accessing their profiles.
|
||||
sys_delete_user_profiles
|
||||
sys_delete_apparmor_profiles
|
||||
# kill guix off all the guts of guix
|
||||
sys_delete_store
|
||||
# clean up the system
|
||||
|
||||
@@ -71,21 +71,18 @@ TARGET."
|
||||
"connman" "network-manager" "wpa-supplicant" "isc-dhcp" "cups"
|
||||
"linux-libre" "grub-hybrid")))
|
||||
|
||||
(define (%system-gui-packages target)
|
||||
(define %system-gui-packages
|
||||
;; Key packages proposed by the Guix System installer.
|
||||
(append (map specification->package
|
||||
'(;; build system `python' does not support cross builds
|
||||
;"gnome" "xfce" "mate" "openbox"
|
||||
;"gnome" "xfce" "mate" "openbox"
|
||||
"awesome"
|
||||
"i3-wm" "i3status" "dmenu" "st"
|
||||
"ratpoison" "xterm"
|
||||
;; build system `emacs' does not support cross builds
|
||||
;"emacs-exwm" "emacs-desktop-environment"
|
||||
;"emacs-exwm" "emacs-desktop-environment"
|
||||
"emacs"))
|
||||
;; NOTE: %default-xorg-modules depends on system.
|
||||
(parameterize
|
||||
((%current-target-system target))
|
||||
%default-xorg-modules)))
|
||||
%default-xorg-modules))
|
||||
|
||||
(define %packages-to-cross-build
|
||||
;; Packages that must be cross-buildable from x86_64-linux.
|
||||
@@ -154,8 +151,7 @@ TARGET."
|
||||
;; With a graphical environment:
|
||||
(if (or (target-x86-32? target)
|
||||
(target-aarch64? target))
|
||||
;; %system-gui-packages depends on the system.
|
||||
(%system-gui-packages target)
|
||||
%system-gui-packages
|
||||
'()))))
|
||||
(fold delete (map platform-system->target (systems))
|
||||
'(;; Disable cross-compilation to self:
|
||||
|
||||
@@ -1,164 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 Noé Lopez <noelopez@free.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; This manifest is a list of packages that user care about (collected via an
|
||||
;;; online form). It corresponds to the “Important packages” of GCD 005.
|
||||
|
||||
(specifications->manifest
|
||||
(list
|
||||
"0ad"
|
||||
"agda"
|
||||
"alacritty"
|
||||
"ardour"
|
||||
"autoconf"
|
||||
"automake"
|
||||
"blender"
|
||||
"borg"
|
||||
"btrfs-progs"
|
||||
"certbot"
|
||||
"chez-scheme"
|
||||
"clang-toolchain"
|
||||
"cryptsetup"
|
||||
"dillo"
|
||||
"direnv"
|
||||
"docker-cli"
|
||||
"dovecot"
|
||||
"emacs"
|
||||
"emacs-exwm"
|
||||
"emacs-pgtk"
|
||||
"evince"
|
||||
"fcitx5"
|
||||
"file"
|
||||
"fish"
|
||||
"foot"
|
||||
"fzf"
|
||||
"gajim"
|
||||
"gallery-dl"
|
||||
"gcc-toolchain"
|
||||
"getmail6"
|
||||
"gettext"
|
||||
"ghc-xmonad-contrib"
|
||||
"gimp"
|
||||
"git"
|
||||
"gmp"
|
||||
"gnome"
|
||||
"gnupg"
|
||||
"godot"
|
||||
"gpaste"
|
||||
"guile"
|
||||
"guile-json"
|
||||
"hatch"
|
||||
"help2man"
|
||||
"helvum"
|
||||
"hexchat"
|
||||
"hyprland"
|
||||
"icecat"
|
||||
"imagemagick"
|
||||
"imapfilter"
|
||||
"jami"
|
||||
"k3b"
|
||||
"kakoune"
|
||||
"keepassxc"
|
||||
"krita"
|
||||
"ksoloti-patcher"
|
||||
"libreoffice"
|
||||
"librewolf"
|
||||
"libsecret"
|
||||
"libtool"
|
||||
"libvirt"
|
||||
"llama-cpp"
|
||||
"mariadb"
|
||||
"luanti"
|
||||
"mpc"
|
||||
"mpfr"
|
||||
"mplayer"
|
||||
"mpv"
|
||||
"mullvadbrowser"
|
||||
"neovim"
|
||||
"nginx"
|
||||
"niri"
|
||||
"nix"
|
||||
"node"
|
||||
"notmuch"
|
||||
"obs"
|
||||
"offlineimap3"
|
||||
"opencv"
|
||||
"openmpi"
|
||||
"opensmtpd"
|
||||
"openssh"
|
||||
"openttd"
|
||||
"pandoc"
|
||||
"password-store"
|
||||
"pavucontrol"
|
||||
"php"
|
||||
"picard"
|
||||
"pipewire"
|
||||
"pkg-config"
|
||||
"plasma"
|
||||
"plasma-desktop"
|
||||
"po4a"
|
||||
"podman"
|
||||
"postgresql"
|
||||
"python"
|
||||
"python-lxml"
|
||||
"python-pycryptodome"
|
||||
"qemu"
|
||||
"ranger"
|
||||
"retroarch"
|
||||
;;"rocm"
|
||||
"rofi"
|
||||
"rspamd"
|
||||
"rsync"
|
||||
"screen"
|
||||
"slurm"
|
||||
"sqlite"
|
||||
"sqlitebrowser"
|
||||
"strace"
|
||||
"strawberry"
|
||||
"syncthing"
|
||||
"taisei"
|
||||
"telegram-desktop"
|
||||
"texlive-babel"
|
||||
"texlive-babel-english"
|
||||
"texlive-babel-french"
|
||||
"texlive-babel-german"
|
||||
"texlive-collection-latex"
|
||||
"texlive-collection-latexrecommended"
|
||||
"texlive-collection-xetex"
|
||||
"texlive-pdfjam"
|
||||
"tmux"
|
||||
"tuba"
|
||||
"ungoogled-chromium"
|
||||
"unison"
|
||||
"unzip"
|
||||
"uv"
|
||||
"viewnior"
|
||||
"virt-manager"
|
||||
"waybar"
|
||||
"wine"
|
||||
"wine64"
|
||||
"wireguard-tools"
|
||||
"xmobar"
|
||||
"xmonad"
|
||||
"xournal"
|
||||
"xournalpp"
|
||||
"xpdf"
|
||||
"yt-dlp"
|
||||
"zig"
|
||||
"zip"
|
||||
"zsh"))
|
||||
@@ -42,107 +42,10 @@
|
||||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(entry (commit "6d4cb99a15da7f4fd55f956c55f4f4aacfcc7742")
|
||||
(title
|
||||
(en "@code{%desktop-services} now includes GDM on AArch64")
|
||||
(de "@code{%desktop-services} enthält jetzt GDM auf AArch64")
|
||||
(pt "@code{%desktop-services} agora inclui GDM no AArch64"))
|
||||
(body
|
||||
(en "On Guix System in an operating system configuration, your value for the
|
||||
@code{services} field is based on @code{%desktop-services} for desktop
|
||||
machines.
|
||||
|
||||
The @code{%desktop-services} contains a login manager that is
|
||||
architecture-dependent. Previously, GDM has been used on x86_64 and SDDM on
|
||||
other architectures.
|
||||
|
||||
Now, GDM is used on all 64-bit architectures. This affects only AArch64 in
|
||||
the end, as other 64-bit architectures aren't mature enough to use
|
||||
%desktop-services, yet.
|
||||
|
||||
In case you're on AArch64 and you've changed the login manager, you will have
|
||||
to adapt your config to remove @code{gdm-service-type} instead of
|
||||
@code{sddm-service-type}.")
|
||||
(de "Auf Guix System liegen in einer Betriebssystemkonfiguration Ihrem
|
||||
Wert des @code{services}-Feldes auf Desktop-Maschinen die
|
||||
@code{%desktop-services} zugrunde.
|
||||
|
||||
Zu den @code{%desktop-services} gehört eine Anmeldeverwaltung, die sich je nach
|
||||
Architektur unterscheidet. Bisher wurde GDM auf x86_64 benutzt und SDDM auf
|
||||
anderen Architekturen.
|
||||
|
||||
Ab jetzt wird GDM auf allen 64-Bit-Architekturen benutzt. Das betrifft
|
||||
letztlich nur AArch64, weil andere 64-Bit-Architecturen bisher noch nicht weit
|
||||
genug fortgeschritten sind, um die %desktop-services zu benutzen.
|
||||
|
||||
Falls Sie auf AArch64 sind und die Anmeldeverwaltung geändert haben, müssen Sie
|
||||
Ihre Konfiguration ändern und dort @code{gdm-service-type} entfernen statt
|
||||
@code{sddm-service-type}.")
|
||||
(pt "Em uma configuração de sistema operacional do Guix System, seu
|
||||
valor para o campo @code{services} é baseado em @code{%desktop-services} para
|
||||
máquinas desktop.
|
||||
|
||||
@code{%desktop-services} contém um gerenciador de login dependente de
|
||||
arquitetura. Anteriormente, GDM fora usado em x86_64 e SDDM nas demais.
|
||||
|
||||
Agora, GDM é usado em todas as arquiteturas de 64 bits. Esta mudança afeta
|
||||
apenas a AArch64 no frigir dos ovos, dado que as demais arquiteturas de 64
|
||||
bits não são maduras o bastante para usar @code{%desktop-services}, por
|
||||
enquanto.
|
||||
|
||||
No caso de você estar em um AArch64 e ter modificado o gerenciador de login,
|
||||
você terá que adaptar sua configuração para remover @code{gdm-service-type} em
|
||||
vez de @code{sddm-service-type}.")))
|
||||
|
||||
(entry (commit "d3b79beaa806452dceaffb8b211b69dc4c346aba")
|
||||
(title
|
||||
(en "Linux-libre 5.4 no longer supported")
|
||||
(de "Linux-libre 5.4 nicht mehr unterstützt")
|
||||
(pt "Linux-libre 5.4 não é mais suportado"))
|
||||
(body
|
||||
(en "The linux-libre 5.4 kernel series is no longer supported
|
||||
upstream and will be removed from GNU Guix soon:
|
||||
|
||||
https://www.kernel.org/category/releases.html
|
||||
|
||||
This kernel series was first added to Guix in 2019 by Mark Weaver, at version
|
||||
5.4.5. After ~297 updates delivered to Guix users, we have deployed the final
|
||||
update, 5.4.302.
|
||||
|
||||
The next kernel series removals are scheduled for December 2026, when the Linux
|
||||
long-term support team is planning to stop supporting four different kernel
|
||||
series: 6.12, 6.6, 5.15, and 5.10.")
|
||||
(de "Die Versionsreihe 5.4 des Linux-libre-Kernels wird von dessen
|
||||
Anbieter nicht mehr unterstützt und wird bald aus GNU Guix entfernt werden:
|
||||
|
||||
https://www.kernel.org/category/releases.html
|
||||
|
||||
Diese Kernel-Reihe wurde ursprünglich 2019 zu Guix hinzugefügt von Mark Weaver
|
||||
mit Version 5.4.5. Nach ~297 Aktualisierungen, die Guix seinen Nutzern
|
||||
bereitgestellt hat, haben wir nun die letzte Aktualisierung
|
||||
ausgeliefert, 5.4.302.
|
||||
|
||||
Der weitere Plan von Linux’ Team für Langzeitunterstützung sieht vor, als
|
||||
Nächstes die Unterstützung für vier verschiedene Kernel-Reihen im Dezember 2026
|
||||
zu beenden: 6.12, 6.6, 5.15 und 5.10.")
|
||||
(pt "A série 5.4 do kernel linux-libre não é mais suportada pelo
|
||||
fornecedor e será removida do GNU Guix em breve:
|
||||
|
||||
https://www.kernel.org/category/releases.html
|
||||
|
||||
Esta série de kernels foi adicionada inicialmente ao Guix em 2019 por Mark
|
||||
Weaver, na versão 5.4.5. Após ~297 atualizações entregues aos usuários do
|
||||
Guix, implantamos a atualização final, 5.4.302.
|
||||
|
||||
As próximas remoções de séries do kernel estão agendadas para dezembro de
|
||||
2026, quando o time de suporte de longo prazo planeja interromper o suporte a
|
||||
quatro séries diferentes do kernel: 6.12, 6.6, 5.15 e 5.10.")))
|
||||
|
||||
(entry (commit "14bb0192fde79909999c3880b6b66aa22499eb11")
|
||||
(title
|
||||
(en "Linux-libre 6.16 removed from Guix")
|
||||
(de "Linux-libre 6.16 wurde aus Guix entfernt")
|
||||
(pt "Linux-libre 6.16 removido do Guix")
|
||||
(zh "Linux-libre 6.16 已从 Guix 中移除"))
|
||||
(body
|
||||
(en "The linux-libre 6.16 kernel series has been removed from Guix, as
|
||||
@@ -151,8 +54,6 @@ default.")
|
||||
(de "Die Versionsreihe 6.16 des Linux-libre-Kernels wurde aus GNU Guix
|
||||
entfernt, weil sie von dessen Anbieter nicht mehr unterstützt wird.
|
||||
Kernel-Versionsreihe 6.17 ist jetzt vorgegeben.")
|
||||
(pt "A série 6.16 do kernel linux-libre foi removida do Guix, dado
|
||||
que não é mais suportada pelo fornecedor. A série 6.17 é o padrão atual")
|
||||
(zh "由于上游不再支持,GNU Guix 已移除 6.16 系列的 linux-libre 内核。6.17
|
||||
内核系列现已成为默认版本。")))
|
||||
|
||||
|
||||
+32
-45
@@ -92,7 +92,7 @@ exec $pre_inst_env_maybe guix repl -- "$0" "$@"
|
||||
(email person-email)
|
||||
(account person-codeberg-account))
|
||||
|
||||
(define (person name email account)
|
||||
(define* (person name #:optional email account)
|
||||
(make-person name email account))
|
||||
|
||||
(define* (team id #:key name description (members '())
|
||||
@@ -630,7 +630,6 @@ of Rebar and Mix build systems and Hex.pm importer."
|
||||
#:name "Electronics team"
|
||||
#:description "Electronics and hardware related packages."
|
||||
#:scope (list "gnu/packages/electronics.scm"
|
||||
"gnu/packages/hdl.scm"
|
||||
"gnu/packages/libftdi.scm"
|
||||
"gnu/packages/engineering.scm"
|
||||
"gnu/packages/flashing-tools.scm")))
|
||||
@@ -667,8 +666,6 @@ ecosystem."
|
||||
"gnu/packages/luanti.scm"
|
||||
"gnu/packages/esolangs.scm" ; granted, rather niche
|
||||
"gnu/packages/motti.scm"
|
||||
"gnu/services/games.scm"
|
||||
"gnu/tests/games.scm"
|
||||
"guix/build/luanti-build-system.scm")))
|
||||
|
||||
(define-team gnome
|
||||
@@ -705,7 +702,6 @@ GLib/GIO, GTK, GStreamer and Webkit."
|
||||
(team 'hare
|
||||
#:name "Hare"
|
||||
#:scope (list "gnu/packages/hare.scm"
|
||||
"gnu/packages/hare-apps.scm"
|
||||
"gnu/packages/hare-xyz.scm"
|
||||
"guix/build-system/hare.scm"
|
||||
"guix/build/hare-build-system.scm")))
|
||||
@@ -742,8 +738,6 @@ the haskell-build-system."
|
||||
#:description "High-performance computing (HPC) related packages."
|
||||
#:scope (list "gnu/packages/mpi.scm"
|
||||
"gnu/packages/oneapi.scm"
|
||||
"gnu/packages/opencl.scm"
|
||||
"gnu/packages/parallel.scm"
|
||||
"gnu/packages/rocm.scm"
|
||||
"gnu/packages/sycl.scm"
|
||||
"gnu/packages/tbb.scm"
|
||||
@@ -848,12 +842,6 @@ asdf-build-system."
|
||||
#:description "LXQt desktop environment."
|
||||
#:scope (list "gnu/packages/lxqt.scm")))
|
||||
|
||||
(define-team mate
|
||||
(team 'mate
|
||||
#:name "MATE team"
|
||||
#:description "MATE desktop environment"
|
||||
#:scope (list "gnu/packages/mate.scm")))
|
||||
|
||||
(define-team mentors
|
||||
(team 'mentors
|
||||
#:name "Mentors"
|
||||
@@ -963,7 +951,7 @@ release."
|
||||
(define-team ruby
|
||||
(team 'ruby
|
||||
#:name "Ruby team"
|
||||
#:scope (list (make-regexp* "^gnu/packages/(ruby)(-.+|)\\.scm$")
|
||||
#:scope (list "gnu/packages/ruby.scm"
|
||||
"guix/build/ruby-build-system.scm"
|
||||
"guix/build-system/ruby.scm"
|
||||
"guix/import/gem.scm"
|
||||
@@ -988,13 +976,14 @@ release."
|
||||
#:name "Crypto team"
|
||||
#:description
|
||||
"Secrets, passwords, cryptography and security related packages."
|
||||
#:scope (list (make-regexp* "^gnu/packages/(.*-|)crypto\\.scm$")
|
||||
"gnu/packages/gnupg.scm"
|
||||
"gnu/packages/nettle.scm"
|
||||
"gnu/packages/password-utils.scm"
|
||||
"gnu/packages/security-token.scm"
|
||||
"gnu/packages/ssh.scm"
|
||||
"gnu/packages/tls.scm")))
|
||||
#:scope (list
|
||||
"gnu/packages/crypto.scm"
|
||||
"gnu/packages/gnupg.scm"
|
||||
"gnu/packages/nettle.scm"
|
||||
"gnu/packages/password-utils.scm"
|
||||
"gnu/packages/security-token.scm"
|
||||
"gnu/packages/ssh.scm"
|
||||
"gnu/packages/tls.scm")))
|
||||
|
||||
(define-team science
|
||||
(team 'science
|
||||
@@ -1209,6 +1198,10 @@ the \"texlive\" importer."
|
||||
"jpoiret")
|
||||
installer)
|
||||
|
||||
(define-member (person "("
|
||||
"paren@disroot.org")
|
||||
)
|
||||
|
||||
(define-member (person "Simon Tournier"
|
||||
"zimon.toutoune@gmail.com"
|
||||
"zimoun")
|
||||
@@ -1269,15 +1262,23 @@ the \"texlive\" importer."
|
||||
"Hellseher")
|
||||
go julia python science sysadmin)
|
||||
|
||||
(define-member (person "Vivien Kraus"
|
||||
"vivien@planete-kraus.eu")
|
||||
gnome)
|
||||
|
||||
(define-member (person "Mark H Weaver"
|
||||
"mhw@netris.org"
|
||||
"mhw")
|
||||
mozilla)
|
||||
|
||||
(define-member (person "Adam Faiz"
|
||||
"adam.faiz@disroot.org")
|
||||
games)
|
||||
|
||||
(define-member (person "Laurent Gatto"
|
||||
"lgatto@protonmail.ch"
|
||||
"laurent.gatto@gmail.com"
|
||||
"lgatto")
|
||||
r bioinformatics)
|
||||
r)
|
||||
|
||||
(define-member (person "Nicolas Goaziou"
|
||||
"guix@nicolasgoaziou.fr"
|
||||
@@ -1317,7 +1318,7 @@ the \"texlive\" importer."
|
||||
(define-member (person "Cayetano Santos"
|
||||
"csantosb@inventati.org"
|
||||
"csantosb")
|
||||
ai emacs electronics hpc crypto reproduciblebuilds)
|
||||
ai emacs electronics hpc crypto)
|
||||
|
||||
(define-member (person "Greg Hogan"
|
||||
"code@greghogan.com"
|
||||
@@ -1326,7 +1327,8 @@ the \"texlive\" importer."
|
||||
|
||||
(define-member (person "Hilton Chain"
|
||||
"hako@ultrarare.space"
|
||||
"hako"))
|
||||
"hako")
|
||||
emacs home localization mozilla rust zig)
|
||||
|
||||
(define-member (person "Noé Lopez"
|
||||
"noelopez@free.fr"
|
||||
@@ -1338,6 +1340,10 @@ the \"texlive\" importer."
|
||||
"Ashvith")
|
||||
games go javascript sysadmin xfce)
|
||||
|
||||
(define-member (person "Trevor Richards"
|
||||
"trev@trevdev.ca")
|
||||
lisp emacs)
|
||||
|
||||
(define-member (person "Konrad Hinsen"
|
||||
"guix@khinsen.fastmail.net"
|
||||
"khinsen")
|
||||
@@ -1386,7 +1392,7 @@ the \"texlive\" importer."
|
||||
(define-member (person "Danny Milosavljevic"
|
||||
"dannym@friendly-machines.com"
|
||||
"daym")
|
||||
bootstrap hpc python rust science)
|
||||
bootstrap hpc rust science)
|
||||
|
||||
(define-member (person "Andy Tai"
|
||||
"atai@atai.org"
|
||||
@@ -1403,25 +1409,6 @@ the \"texlive\" importer."
|
||||
"delitrem")
|
||||
beam)
|
||||
|
||||
(define-member (person "Nguyễn Gia Phong"
|
||||
"cnx@loang.net"
|
||||
"cnx")
|
||||
python sysadmin)
|
||||
|
||||
(define-member (person "Lilah Tascheter"
|
||||
"lilah@lunabee.space"
|
||||
"tinystar")
|
||||
hare)
|
||||
|
||||
(define-member (person "FuncProgLinux"
|
||||
"softwarelibre@urutau-ltd.org"
|
||||
"FuncProgLinux")
|
||||
mate)
|
||||
|
||||
(define-member (person "Reza Housseini"
|
||||
"reza@housseini.me"
|
||||
"rhou")
|
||||
python science c++)
|
||||
|
||||
(define (find-team name)
|
||||
(or (hash-ref %teams (string->symbol name))
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; This file returns a manifest of packages built using the hare-build-system.
|
||||
;;; It is used to assist continuous integration of the hare-team branch.
|
||||
;;; This file returns a manifest of packages built using the cargo-build-system.
|
||||
;;; It is used to assist continuous integration of the rust-team branch.
|
||||
|
||||
(use-modules (guix packages)
|
||||
(guix profiles)
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 jgart <jgart@dismail.de>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; This file returns a manifest of packages built using any one of the
|
||||
;;; asdf build systems. It is used to assist continuous integration of
|
||||
;;; the lisp-team branch.
|
||||
|
||||
(use-modules (guix packages)
|
||||
(guix profiles)
|
||||
(guix build-system))
|
||||
|
||||
(manifest
|
||||
(map package->manifest-entry
|
||||
(fold-packages
|
||||
(lambda (package lst)
|
||||
(if (or (eq? 'asdf/sbcl (build-system-name (package-build-system package)))
|
||||
(eq? 'asdf/ecl (build-system-name (package-build-system package)))
|
||||
(eq? 'asdf/clasp (build-system-name (package-build-system package)))
|
||||
(string=? "clasp-cl" (package-name package))
|
||||
(string=? "ecl" (package-name package))
|
||||
(string=? "sbcl" (package-name package)))
|
||||
(cons package lst)
|
||||
lst))
|
||||
'())))
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 FuncProgLinux <softwarelibre@urutau-ltd.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(use-modules (guix packages)
|
||||
(guix profiles)
|
||||
(gnu packages mate)
|
||||
(ice-9 match)
|
||||
(srfi srfi-1))
|
||||
|
||||
(define (propagated-inputs package)
|
||||
(map
|
||||
(match-lambda
|
||||
((_ (? package? pkg)) pkg)
|
||||
((_ (? package? pkg) output) (list pkg output)))
|
||||
(package-propagated-inputs package)))
|
||||
|
||||
(packages->manifest
|
||||
(append-map propagated-inputs
|
||||
(list mate)))
|
||||
@@ -1,35 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2025 jgart <jgart@dismail.de>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; This file returns a manifest of packages built using the python-build-system.
|
||||
;;; It is used to assist continuous integration of the python-team branch.
|
||||
|
||||
(use-modules (guix packages)
|
||||
(guix profiles)
|
||||
(guix build-system))
|
||||
|
||||
(manifest
|
||||
(map package->manifest-entry
|
||||
(fold-packages
|
||||
(lambda (package lst)
|
||||
(if (or (eq? 'python (build-system-name (package-build-system package)))
|
||||
(eq? 'pyproject (build-system-name (package-build-system package)))
|
||||
(string=? "python" (package-name package)))
|
||||
(cons package lst)
|
||||
lst))
|
||||
'())))
|
||||
@@ -1,413 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; This manifest returns build artfacts for all supported systems. This can be
|
||||
;;; controlled by SUPPORTED_SYSTEMS environment variable. For the list of
|
||||
;;; artifacts produced, see artifacts-for-system and the `<thing>-for-system?`
|
||||
;;; procedures. NOTE: the --system argument does not change the system for which
|
||||
;;; the resulting package is built. They return different definitions of the
|
||||
;;; images. To change the system, pass different SUPPORTED_SYSTEMS.
|
||||
|
||||
(use-modules (gnu compression)
|
||||
(gnu image)
|
||||
(gnu packages graphviz)
|
||||
(gnu packages imagemagick)
|
||||
(gnu packages package-management)
|
||||
(gnu packages perl)
|
||||
(gnu services)
|
||||
(gnu system image)
|
||||
(gnu system install)
|
||||
(gnu system)
|
||||
(guix build-system gnu)
|
||||
(guix build-system trivial)
|
||||
(guix channels)
|
||||
(guix gexp)
|
||||
(guix git)
|
||||
(guix grafts)
|
||||
(guix memoization)
|
||||
(guix monads)
|
||||
(guix packages)
|
||||
(guix profiles)
|
||||
(guix records)
|
||||
(guix scripts pack)
|
||||
(guix store)
|
||||
(guix ui)
|
||||
(guix utils)
|
||||
(ice-9 format)
|
||||
(ice-9 match)
|
||||
(srfi srfi-9)
|
||||
(srfi srfi-26)
|
||||
(srfi srfi-35))
|
||||
|
||||
;; For easier testing, use (snapshot) guix package from (gnu packages
|
||||
;; package-management). Otherwise, the package is updated to current commit and
|
||||
;; might not be substitutable, leading to longer build times.
|
||||
(define %use-snapshot-package?
|
||||
(string=? (or (getenv "GUIX_USE_SNAPSHOT_PACKAGE") "no") "yes"))
|
||||
|
||||
(define (%guix-version)
|
||||
;; NOTE: while package-version guix is not correct in general,
|
||||
;; it is correct for the release itself. At that time, the
|
||||
;; guix package is updated to vX.Y.Z and it's the version
|
||||
;; we want to use.
|
||||
(package-version guix))
|
||||
|
||||
(define (%vm-image-path)
|
||||
(search-path %load-path "gnu/system/examples/vm-image.tmpl"))
|
||||
|
||||
(define (%vm-image-efi-path)
|
||||
(search-path %load-path "gnu/system/examples/vm-image-efi.tmpl"))
|
||||
|
||||
;; monadic record and gexp-compiler
|
||||
;; taken from Inria
|
||||
;; https://gitlab.inria.fr/numpex-pc5/wp3/guix-images/-/blob/17bf4585abc2d637faa5d339436e778b7c9fb1ce/modules/guix-hpc/packs.scm
|
||||
|
||||
;; XXX: The <monadic> hack below will hopefully become unnecessary once the
|
||||
;; (guix scripts pack) interface switches to declarative style--i.e.,
|
||||
;; file-like objects.
|
||||
|
||||
(define-record-type <monadic>
|
||||
(monadic->declarative mvalue)
|
||||
monadic?
|
||||
(mvalue monadic-value))
|
||||
|
||||
(define-gexp-compiler (monadic-compiler (monadic <monadic>) system target)
|
||||
(monadic-value monadic))
|
||||
|
||||
;; The tarball should be the same for every system.
|
||||
;; Still, we need to decide what system to build it
|
||||
;; for, so use the one that CI has most resources for.
|
||||
(define (source-tarball-for-system? system)
|
||||
(member system
|
||||
'("x86_64-linux")))
|
||||
|
||||
(define (iso-for-system? system)
|
||||
(member system
|
||||
'("x86_64-linux" "i686-linux" "aarch64-linux")))
|
||||
|
||||
(define (qcow2-for-system? system)
|
||||
(member system
|
||||
'("x86_64-linux" "aarch64-linux")))
|
||||
|
||||
(define* (qcow2-gpt-for-system? system)
|
||||
(string=? system "aarch64-linux"))
|
||||
|
||||
(define (copy-/etc/config.scm config)
|
||||
"Copy the configuration.scm of the operating system to /etc/config.scm, for
|
||||
user's convenience. The file has to be writable, not a link to the store, so
|
||||
etc-service-type can't be used here. CONFIG is a pair of strings, (FROM . TO).
|
||||
The config will be copied from FROM to TO."
|
||||
(match config
|
||||
((from . to)
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(when (not (file-exists? #$to))
|
||||
(copy-file #$from #$to)
|
||||
(make-file-writable #$to)))))
|
||||
(_ (raise
|
||||
(formatted-message-string
|
||||
(G_ "unexpected config parameter, should be pair of strings: ~a"
|
||||
config))))))
|
||||
|
||||
(define copy-/etc/config.scm-service-type
|
||||
(service-type (name 'copy-/etc/config.scm)
|
||||
(description
|
||||
"Copy the system configuration file to /etc/config.scm.")
|
||||
(extensions (list (service-extension activation-service-type
|
||||
copy-/etc/config.scm)))
|
||||
(default-value (cons "/run/current-system/configuration.scm"
|
||||
"/etc/config.scm"))))
|
||||
|
||||
(define (operating-system-with-/etc/config.scm os)
|
||||
"Copy the system configuration file to writable /etc/config.scm on first boot."
|
||||
(operating-system
|
||||
(inherit os)
|
||||
(services (cons (service copy-/etc/config.scm-service-type)
|
||||
(operating-system-user-services os)))))
|
||||
|
||||
(define (simple-provenance-entry config-file)
|
||||
"Return system entries describing the operating system config, provided
|
||||
through CONFIG-FILE."
|
||||
(mbegin %store-monad
|
||||
(return `(("configuration.scm"
|
||||
,(local-file (assume-valid-file-name config-file)
|
||||
"configuration.scm"))))))
|
||||
|
||||
;; This is mostly taken from provenance-service-type from (gnu services),
|
||||
;; but it provides only configuration.scm, not channels.scm. This is
|
||||
;; to get the same derivations for both Cuirass and local builds.
|
||||
;; In the future, provenance-service-type could be adapted to support
|
||||
;; this use case as well.
|
||||
(define simple-provenance-service-type
|
||||
(service-type (name 'provenance)
|
||||
(extensions
|
||||
(list (service-extension system-service-type
|
||||
simple-provenance-entry)))
|
||||
(default-value #f) ;the OS config file
|
||||
(description
|
||||
"Store configuration.scm of the system in the system
|
||||
itself.")))
|
||||
|
||||
(define* (operating-system-with-simple-provenance
|
||||
os
|
||||
#:optional
|
||||
(config-file
|
||||
(operating-system-configuration-file
|
||||
os)))
|
||||
"Return a variant of OS that stores its CONFIG-FILE. This is similar to
|
||||
`operating-system-with-provenance`, but it does copy only the
|
||||
configuration.scm."
|
||||
(operating-system
|
||||
(inherit os)
|
||||
(services (cons (service simple-provenance-service-type config-file)
|
||||
(operating-system-user-services os)))))
|
||||
|
||||
(define (guix-package-commit guix)
|
||||
;; Extract the commit of the GUIX package.
|
||||
(match (package-source guix)
|
||||
((? channel? source)
|
||||
(channel-commit source))
|
||||
(_
|
||||
(apply (lambda* (#:key commit #:allow-other-keys) commit)
|
||||
(package-arguments guix)))))
|
||||
|
||||
;; NOTE: Normally, we would use (current-guix), along with url
|
||||
;; overridden to the upstream repository to not leak our local checkout.
|
||||
;; But currently, the (current-guix) derivation has to be computed through
|
||||
;; QEMU for systems other than your host system. This takes a lot of time,
|
||||
;; it takes at least half an hour to get the derivations.
|
||||
(define (guix-package/with-commit guix commit)
|
||||
"Use the guix from (gnu packages package-management),
|
||||
but override its commit to the specified version. Make sure
|
||||
to also override the channel commit to have the correct
|
||||
provenance."
|
||||
(let ((scm-version (car (string-split (package-version guix) #\-))))
|
||||
(package
|
||||
(inherit guix)
|
||||
(version (string-append scm-version "." (string-take commit 7)))
|
||||
(source (git-checkout
|
||||
(url (channel-url %default-guix-channel))
|
||||
(commit commit)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments guix)
|
||||
((#:configure-flags flags '())
|
||||
#~(cons*
|
||||
(string-append "--with-channel-commit=" #$commit)
|
||||
(filter (lambda (flag)
|
||||
(not (string-prefix? "--with-channel-commit=" flag)))
|
||||
#$flags))))))))
|
||||
|
||||
(define guix-for-images
|
||||
(mlambda (system)
|
||||
(cond
|
||||
;; For testing purposes, use the guix package directly.
|
||||
(%use-snapshot-package? guix)
|
||||
;; Normally, update the guix package to current commit.
|
||||
(else
|
||||
(guix-package/with-commit guix (guix-package-commit (current-guix)))))))
|
||||
|
||||
(define %binary-tarball-compression "xz")
|
||||
|
||||
;; Like guix pack -C xz -s --localstatedir --profile-name=current-guix guix
|
||||
(define* (binary-tarball-for-system system #:key (extra-packages '()))
|
||||
(let* ((base-name (string-append "guix-binary-" (%guix-version) "." system))
|
||||
(manifest (packages->manifest (cons* guix extra-packages)))
|
||||
(profile (profile (content manifest)))
|
||||
(inputs `(("profile" ,profile)))
|
||||
(compression %binary-tarball-compression))
|
||||
(manifest-entry
|
||||
(name (string-append base-name ".tar." compression))
|
||||
(version (%guix-version))
|
||||
(item (monadic->declarative
|
||||
(self-contained-tarball
|
||||
base-name profile
|
||||
#:profile-name "current-guix"
|
||||
#:compressor (lookup-compressor compression)
|
||||
#:localstatedir? #t))))))
|
||||
|
||||
;; Like guix system image -t iso9660 \
|
||||
;; --label="GUIX_$${system}_$(VERSION)" gnu/system/install.scm
|
||||
(define* (iso-for-system system)
|
||||
(let* ((name (string-append
|
||||
"guix-system-install-" (%guix-version) "." system ".iso"))
|
||||
(base-os (make-installation-os
|
||||
#:grub-displayed-version (%guix-version)
|
||||
#:efi-only? (string=? system "aarch64-linux")))
|
||||
(base-image (os->image base-os #:type iso-image-type))
|
||||
(label (string-append "GUIX_" system "_"
|
||||
(if (> (string-length (%guix-version)) 7)
|
||||
(string-take (%guix-version) 7)
|
||||
(%guix-version)))))
|
||||
(manifest-entry
|
||||
(name name)
|
||||
(version (%guix-version))
|
||||
(item (system-image
|
||||
(image-with-label
|
||||
(image
|
||||
(inherit base-image)
|
||||
(name (string->symbol name)))
|
||||
label))))))
|
||||
|
||||
;; Like guix system image -t qcow2 gnu/system/examples/vm-image.tmpl
|
||||
(define* (qcow2-for-system system)
|
||||
(let* ((name (string-append
|
||||
"guix-system-vm-image-" (%guix-version) "." system ".qcow2"))
|
||||
(base-os-path
|
||||
(if (qcow2-gpt-for-system? system)
|
||||
(%vm-image-efi-path)
|
||||
(%vm-image-path)))
|
||||
(target-image-type
|
||||
(if (qcow2-gpt-for-system? system)
|
||||
qcow2-gpt-image-type
|
||||
qcow2-image-type))
|
||||
(base-os
|
||||
(operating-system-with-/etc/config.scm
|
||||
(operating-system-with-simple-provenance
|
||||
(load base-os-path) base-os-path)))
|
||||
(base-image (os->image base-os #:type target-image-type)))
|
||||
(manifest-entry
|
||||
(name name)
|
||||
(version (%guix-version))
|
||||
(item (system-image
|
||||
(image
|
||||
(inherit base-image)
|
||||
(volatile-root? #f)
|
||||
(size (* 20 (expt 1024 3))) ; 20 GiB to have spare space
|
||||
(name (string->symbol name))))))))
|
||||
|
||||
(define* (guix-source-tarball)
|
||||
(let ((guix (package
|
||||
(inherit guix)
|
||||
(native-inputs
|
||||
(modify-inputs (package-native-inputs guix)
|
||||
;; graphviz-minimal -> graphviz
|
||||
(replace "graphviz" graphviz)
|
||||
(append imagemagick)
|
||||
(append perl))))))
|
||||
(manifest-entry
|
||||
(name (string-append "guix-" (%guix-version) ".tar.gz"))
|
||||
(version (package-version guix))
|
||||
(item (dist-package
|
||||
guix
|
||||
;; Guix is built from git source, not from tarball.
|
||||
;; So it's fine to use its source directly.
|
||||
(package-source guix))))))
|
||||
|
||||
(define* (manifest-entry-with-parameters system entry
|
||||
#:key
|
||||
(guix-for-images-proc guix-for-images))
|
||||
(manifest-entry
|
||||
(inherit entry)
|
||||
(item
|
||||
(with-parameters
|
||||
((%current-system system)
|
||||
(%current-target-system #f)
|
||||
(current-guix-package (guix-for-images-proc system)))
|
||||
(manifest-entry-item entry)))))
|
||||
|
||||
(define* (manifest-with-parameters system manifest
|
||||
#:key
|
||||
(guix-for-images-proc guix-for-images))
|
||||
"Returns entries in the manifest accompanied with %current-system,
|
||||
%current-target-sytem and current-guix-package parameters."
|
||||
(make-manifest
|
||||
(map (cut manifest-entry-with-parameters system <>
|
||||
#:guix-for-images-proc guix-for-images-proc)
|
||||
(manifest-entries manifest))))
|
||||
|
||||
(define (artifacts-for-system/nonparameterized system)
|
||||
"Get all artifacts for given system. This will always include the
|
||||
guix-binary tarball and optionally iso and/or qcow2 images."
|
||||
(manifest
|
||||
(append
|
||||
(list
|
||||
(binary-tarball-for-system system))
|
||||
;; TODO: After source tarball generation is ready, uncomment.
|
||||
;; (if (source-tarball-for-system? system)
|
||||
;; (list (guix-source-tarball))
|
||||
;; '())
|
||||
(if (iso-for-system? system)
|
||||
(list (iso-for-system system))
|
||||
'())
|
||||
(if (qcow2-for-system? system)
|
||||
(list (qcow2-for-system system))
|
||||
'()))))
|
||||
|
||||
(define* (artifacts-for-system system
|
||||
#:key
|
||||
(guix-for-images-proc guix-for-images))
|
||||
"Collects all artifacts for a system. Gives them the proper %current-system
|
||||
and %current-target-system parameters, so the --system passed on CLI is
|
||||
irrelevant."
|
||||
;; NOTE: parameterizing current system, because the tarball seems to somehow
|
||||
;; depend on it early on. I haven't investigated it, but seems like a bug. Could
|
||||
;; it be the gexp->derivation + monadic->declarative, not passing down the
|
||||
;; system? Symptom: guix build --system=x86_64 -m artifacts-manifest.scm and
|
||||
;; guix build --system=i686-linux -m artifacts-manifest.scm gives out different
|
||||
;; results without the parameterization.
|
||||
(parameterize
|
||||
((%current-system system)
|
||||
(%current-target-system #f)
|
||||
(current-guix-package (guix-for-images-proc system)))
|
||||
(manifest-with-parameters
|
||||
system
|
||||
(artifacts-for-system/nonparameterized system)
|
||||
#:guix-for-images-proc guix-for-images-proc)))
|
||||
|
||||
(define (manifest->union manifest)
|
||||
"Makes a union that will be a folder with all the entries symlinked. This
|
||||
is different from a profile as it expects the entries are just simple files
|
||||
and symlinks them by their manifest-entry-name."
|
||||
(let ((entries (manifest-entries manifest)))
|
||||
(computed-file
|
||||
"artifacts-union"
|
||||
(with-imported-modules '((guix build union)
|
||||
(guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
(mkdir-p #$output)
|
||||
|
||||
(for-each
|
||||
(lambda* (entry)
|
||||
(symlink (cdr entry)
|
||||
(string-append #$output "/" (car entry))))
|
||||
(list #$@(map (lambda (entry)
|
||||
#~(cons
|
||||
#$(manifest-entry-name entry)
|
||||
#$(manifest-entry-item entry)))
|
||||
entries))))))))
|
||||
|
||||
(define %supported-systems
|
||||
(or (and
|
||||
(getenv "SUPPORTED_SYSTEMS")
|
||||
(string-split (getenv "SUPPORTED_SYSTEMS") #\ ))
|
||||
'("x86_64-linux" "i686-linux"
|
||||
"armhf-linux" "aarch64-linux"
|
||||
"powerpc64le-linux" "riscv64-linux")))
|
||||
|
||||
(define supported-systems-union-manifest
|
||||
(concatenate-manifests
|
||||
(map artifacts-for-system
|
||||
%supported-systems)))
|
||||
|
||||
(when %use-snapshot-package?
|
||||
(warning (G_ "building images using the 'guix' package (snapshot)~%")))
|
||||
(info (G_ "producing artifacts for the following systems: ~a~%")
|
||||
%supported-systems)
|
||||
supported-systems-union-manifest
|
||||
@@ -1,26 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Produce a single directory with all the artifacts inside of it, with proper
|
||||
;;; names. They can then be easily copied to releasedir in Makefile. The files are
|
||||
;;; symlinked to save space, but they should be copied out of the store as regular
|
||||
;;; files.
|
||||
|
||||
(load "artifacts-manifest.scm")
|
||||
|
||||
(manifest->union
|
||||
supported-systems-union-manifest)
|
||||
@@ -22,7 +22,7 @@
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module ((gnu packages rust-sources) #:prefix package:)
|
||||
#:use-module (gnu packages rust-sources)
|
||||
#:export (lookup-cargo-inputs))
|
||||
|
||||
;;;
|
||||
|
||||
+2
-2
@@ -29,7 +29,7 @@
|
||||
;;; Code:
|
||||
|
||||
(define %artwork-repository
|
||||
(let ((commit "08259679a0faef63e3ba169df5b937d836bd9262"))
|
||||
(let ((commit "4c7f2ce6428a63e202cd2a9474a06f68a946934d"))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -39,6 +39,6 @@
|
||||
"-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0anryix0y8w9brksiaz39r8c10vdd0fp4h96b9f3m4aw0xpv8xlf")))))
|
||||
"1rl569759q9wm1dxn7nkq3873d2k92giic7aa6jwzwr3n16prc7y")))))
|
||||
|
||||
;;; artwork.scm ends here
|
||||
|
||||
+6
-5
@@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2017 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017, 2020, 2022 Mathieu Othacehe <othacehe@gnu.org>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2019, 2021, 2023, 2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2022 Josselin Poiret <dev@jpoiret.xyz>
|
||||
;;; Copyright © 2022 Reza Alizadeh Majd <r.majd@pantherx.org>
|
||||
@@ -26,8 +26,7 @@
|
||||
(define-module (gnu bootloader)
|
||||
#:use-module (gnu system file-systems)
|
||||
#:use-module (gnu system uuid)
|
||||
#:autoload (guix discovery) (fold-module-public-variables)
|
||||
#:autoload (guix describe) (modules-from-current-profile)
|
||||
#:use-module (guix discovery)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix profiles)
|
||||
#:use-module (guix records)
|
||||
@@ -306,8 +305,10 @@ instead~%")))
|
||||
|
||||
(define (bootloader-modules)
|
||||
"Return the list of bootloader modules."
|
||||
(modules-from-current-profile "gnu/bootloader"
|
||||
#:warn warn-about-load-error))
|
||||
(all-modules (map (lambda (entry)
|
||||
`(,entry . "gnu/bootloader"))
|
||||
%load-path)
|
||||
#:warn warn-about-load-error))
|
||||
|
||||
(define %bootloaders
|
||||
;; The list of publically-known bootloaders.
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
|
||||
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2025 dan <i@dan.games>
|
||||
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -65,12 +64,7 @@
|
||||
((? string?)
|
||||
(list #~(install-file (string-append bootloader #$file)
|
||||
install-dir)))
|
||||
((? file-like?)
|
||||
(list #~(mkdir-p install-dir)
|
||||
#~(copy-file #$file
|
||||
(string-append install-dir
|
||||
"/"
|
||||
#$(plain-file-name file)))))
|
||||
((? file-like?) (list #~(install-file #$file install-dir)))
|
||||
(#f '()))))
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((install-dir (string-append mount-point "/boot")))
|
||||
@@ -138,12 +132,7 @@ is BLOCK-SIZE * COUNT, or FILE size if COUNT is not given."
|
||||
;; starfive_visionfive2.dtb. We cannot guarantee that users will
|
||||
;; update this U-Boot, so set the FDT explicitly.
|
||||
(plain-file "uEnv.txt"
|
||||
(string-join
|
||||
(list
|
||||
"boot_targets=mmc1 nvme0 mmc0 dhcp"
|
||||
"bootcmd_mmc1=bootflow scan"
|
||||
"fdtfile=starfive/jh7110-starfive-visionfive-2-v1.3b.dtb")
|
||||
"\n"))))
|
||||
"fdtfile=starfive/jh7110-starfive-visionfive-2-v1.3b.dtb~%")))
|
||||
|
||||
|
||||
;;;
|
||||
|
||||
+9
-16
@@ -359,7 +359,7 @@ to it atomically and set the appropriate permissions."
|
||||
(left unused-subid-range-left ;previous unused subuid range or #f
|
||||
(default #f))
|
||||
(min unused-subid-range-min ;lower bound of this unused subuid range
|
||||
(default 0))
|
||||
(default %subordinate-id-min))
|
||||
(max unused-subid-range-max ;upper bound
|
||||
(default %subordinate-id-max))
|
||||
(right unused-subid-range-right ;next unused subuid range or #f
|
||||
@@ -555,10 +555,7 @@ will be marked as used in it."
|
||||
(define actual-range
|
||||
(subid-range
|
||||
(inherit range)
|
||||
;; New IDs are only allocated between %subordinate-id-min and
|
||||
;; %subordinate-id-max.
|
||||
(start
|
||||
(max allocation-start %subordinate-id-min))))
|
||||
(start allocation-start)))
|
||||
|
||||
(if (within-interval? allocation actual-range)
|
||||
(values
|
||||
@@ -606,6 +603,13 @@ is visited to find the best unused range that can hold RANGE."
|
||||
(define range-end
|
||||
(subid-range-end range))
|
||||
|
||||
(unless (and (subordinate-id? range-start)
|
||||
(subordinate-id? range-end))
|
||||
(raise
|
||||
(condition
|
||||
(&invalid-subid-range-error
|
||||
(range range)))))
|
||||
|
||||
(define less?
|
||||
(< range-end allocation-start))
|
||||
(define more?
|
||||
@@ -798,23 +802,12 @@ new UIDs."
|
||||
(define* (allocate-subids ranges #:optional (current-ranges '()))
|
||||
"Return a list of subids entries for RANGES, a list of <subid-range>. IDs
|
||||
found in CURRENT-RANGES, a list of subid entries, are reused."
|
||||
;; Ranges from disk must always have a start.
|
||||
(let ((generic (any (compose not subid-range-has-start?) current-ranges)))
|
||||
(when generic
|
||||
(raise
|
||||
(condition
|
||||
(&specific-subid-range-expected-error
|
||||
(range generic))))))
|
||||
(for-each
|
||||
(lambda (range)
|
||||
;; New ranges must always be included in the current supported set.
|
||||
(unless (or (not (subid-range-has-start? range))
|
||||
(and (subordinate-id? (subid-range-start range))
|
||||
(subordinate-id? (subid-range-end range))))
|
||||
(raise
|
||||
(condition (&invalid-subid-range-error (range range))))))
|
||||
ranges)
|
||||
|
||||
(define sorted-ranges
|
||||
(stable-sort ranges
|
||||
subid-range-less))
|
||||
|
||||
@@ -321,18 +321,13 @@ EINVAL, ELOOP, etc."
|
||||
;; convention to be followed.
|
||||
(source (canonicalize-path* (string-append etc "/" file))))
|
||||
(rm-f target)
|
||||
(cond ((string=? (basename target) "sudoers")
|
||||
(begin
|
||||
;; /etc/sudoers must be a regular file.
|
||||
(copy-file source target)
|
||||
;; XXX: dirty hack to meet sudo's expectations
|
||||
(chmod target #o440)))
|
||||
((string=? (basename target) "hosts")
|
||||
;; /etc/hosts must be a regular file, as some software
|
||||
;; like vpn-slice expect to be able to write to it.
|
||||
(copy-file source target))
|
||||
(else ;usual case
|
||||
(symlink source target)))))
|
||||
(if (string=? (basename target) "sudoers")
|
||||
(begin
|
||||
;; /etc/sudoers must be a regular file.
|
||||
(copy-file source target)
|
||||
;; XXX: dirty hack to meet sudo's expectations
|
||||
(chmod target #o440))
|
||||
(symlink source target)))) ;usual case
|
||||
(scandir etc (negate dot-or-dot-dot?)
|
||||
;; The default is 'string-locale<?', but we don't have
|
||||
;; it when run from the initrd's statically-linked
|
||||
|
||||
@@ -91,7 +91,7 @@ each retry."
|
||||
((sleep*) delay) ;else wait and retry
|
||||
(loop (+ 1 attempts)))
|
||||
(error "maximum number of retry attempts reached"
|
||||
(quote (begin body ...)) args))))))
|
||||
(quote body ...) args))))))
|
||||
|
||||
|
||||
;;;
|
||||
|
||||
+2
-7
@@ -83,8 +83,7 @@ turn doesn't take any constant overhead into account, force a 1-MiB minimum."
|
||||
(label (partition-label partition))
|
||||
(uuid (partition-uuid partition)))
|
||||
(apply invoke
|
||||
`("unshare" "--map-root-user" "mkfs.btrfs"
|
||||
"-r" ,root
|
||||
`("fakeroot" "mkfs.btrfs" "-r" ,root
|
||||
"-L" ,label
|
||||
,@(if uuid
|
||||
`("-U" ,(uuid->string uuid))
|
||||
@@ -429,11 +428,7 @@ GRUB configuration and OS-DRV as the stuff in it."
|
||||
"-not" "-wholename" "/System/*"
|
||||
"-not" "-name" "unicode.pf2"
|
||||
"-not" "-name" "bzImage"
|
||||
"-not" "-name" "zImage"
|
||||
"-not" "-name" "Image"
|
||||
"-not" "-name" "vmlinuz"
|
||||
"-not" "-name" "*.gz" ; initrd
|
||||
"-not" "-name" "*.zst" ; all man pages
|
||||
"-not" "-name" "*.gz" ; initrd & all man pages
|
||||
"-not" "-name" "*.png" ; includes grub-image.png
|
||||
"-exec" "set_filter" "--zisofs"
|
||||
"--")
|
||||
|
||||
@@ -46,26 +46,7 @@
|
||||
make-static-device-nodes
|
||||
configure-qemu-networking
|
||||
|
||||
boot-system
|
||||
|
||||
linux-console
|
||||
|
||||
linux-console?
|
||||
linux-console-device
|
||||
linux-console-can-read?
|
||||
linux-console-can-write?
|
||||
linux-console-can-unblank?
|
||||
linux-console-enabled?
|
||||
linux-console-preferred?
|
||||
linux-console-primary?
|
||||
linux-console-printk?
|
||||
linux-console-braille?
|
||||
linux-console-safe-when-cpu-offline?
|
||||
linux-console-major
|
||||
linux-console-minor
|
||||
linux-console-virtual?
|
||||
|
||||
read-linux-consoles))
|
||||
boot-system))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
@@ -694,56 +675,4 @@ the root file system...\n" root-delay)
|
||||
(start-repl)))))
|
||||
#:on-error on-error))
|
||||
|
||||
(define-record-type <linux-console>
|
||||
(make-linux-console device can-read? can-write? can-unblank?
|
||||
enabled? preferred? primary? printk? braille?
|
||||
safe-when-cpu-offline? major minor virtual?)
|
||||
linux-console?
|
||||
(device linux-console-device)
|
||||
(can-read? linux-console-can-read?)
|
||||
(can-write? linux-console-can-write?)
|
||||
(can-unblank? linux-console-can-unblank?)
|
||||
(enabled? linux-console-enabled?)
|
||||
(preferred? linux-console-preferred?)
|
||||
(primary? linux-console-primary?)
|
||||
(printk? linux-console-printk?)
|
||||
(braille? linux-console-braille?)
|
||||
(safe-when-cpu-offline? linux-console-safe-when-cpu-offline?)
|
||||
(major linux-console-major)
|
||||
(minor linux-console-minor)
|
||||
(virtual? linux-console-virtual?))
|
||||
|
||||
(define* (read-linux-consoles #:optional (consoles-file "/proc/consoles"))
|
||||
"Parses CONSOLES-FILE and returns a list of <linux-console> records."
|
||||
(if (not (file-exists? consoles-file))
|
||||
'()
|
||||
(with-input-from-file consoles-file
|
||||
(lambda ()
|
||||
(let ((line-regex (make-regexp
|
||||
"^([^ ]+)[ ]+(.+)[ ]+([0-9]+):([0-9]+)$"))
|
||||
(virt-regex (make-regexp "^tty[0-9]+$")))
|
||||
(let loop ((line (read-line))
|
||||
(results '()))
|
||||
(cond
|
||||
((eof-object? line)
|
||||
(reverse results))
|
||||
((regexp-exec line-regex line)
|
||||
=> (lambda (m)
|
||||
(let* ((dev (match:substring m 1))
|
||||
(flags (match:substring m 2))
|
||||
(major (string->number (match:substring m 3)))
|
||||
(minor (string->number (match:substring m 4)))
|
||||
(virtual? (regexp-exec virt-regex dev))
|
||||
(has? (lambda (c)
|
||||
(string-any (lambda (f) (char=? f c)) flags))))
|
||||
(loop (read-line)
|
||||
(cons (make-linux-console
|
||||
dev
|
||||
(has? #\R) (has? #\W) (has? #\U) (has? #\E)
|
||||
(has? #\C) (has? #\B) (has? #\p) (has? #\b)
|
||||
(has? #\a)
|
||||
major minor virtual?)
|
||||
results)))))
|
||||
(else (loop (read-line) results)))))))))
|
||||
|
||||
;;; linux-boot.scm ends here
|
||||
|
||||
@@ -129,6 +129,9 @@
|
||||
(define (list-of-string-ish? lst)
|
||||
(every string-ish? lst))
|
||||
|
||||
(define (list-of-packages? lst)
|
||||
(every package? lst))
|
||||
|
||||
(define (bar-position? p)
|
||||
(member p '(top bottom)))
|
||||
|
||||
|
||||
+7
-6
@@ -367,13 +367,14 @@ purposes."
|
||||
'unknown)
|
||||
((channels ...)
|
||||
(map (lambda (channel)
|
||||
;; NOTE: URL is not logged to synchronize the derivations
|
||||
;; coming out of pre-inst-env, time-machine and Cuirass
|
||||
;; for generating release artifacts.
|
||||
`(channel ,(channel-name channel) ,(channel-commit channel)))
|
||||
(let* ((uri (string->uri (channel-url channel)))
|
||||
(url (if (or (not uri) (eq? 'file (uri-scheme uri)))
|
||||
"local checkout"
|
||||
(channel-url channel))))
|
||||
`(channel ,(channel-name channel) ,url ,(channel-commit channel))))
|
||||
channels))))
|
||||
|
||||
(define* (installer-program #:key dry-run? (guix-for-installer (current-guix)))
|
||||
(define* (installer-program #:key dry-run?)
|
||||
"Return a file-like object that runs the given INSTALLER."
|
||||
(define init-gettext
|
||||
;; Initialize gettext support, so that installer messages can be
|
||||
@@ -422,7 +423,7 @@ purposes."
|
||||
guile-gnutls
|
||||
guile-zlib ;for (gnu build linux-modules)
|
||||
guile-zstd ;for (gnu build linux-modules)
|
||||
guix-for-installer)
|
||||
(current-guix))
|
||||
(with-imported-modules `(,@(source-module-closure
|
||||
`(,@modules
|
||||
(gnu services herd)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2024,2026 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -168,10 +168,8 @@ or #f. Return #t on success and #f on failure."
|
||||
(const '())))
|
||||
(install-command (append `( "guix" "system" "init"
|
||||
"--fallback"
|
||||
,@(if (%current-target-system)
|
||||
`(,(string-append
|
||||
"--target="
|
||||
(%current-target-system)))
|
||||
,@(if (target-hurd?)
|
||||
'("--target=i586-pc-gnu")
|
||||
'()))
|
||||
options
|
||||
(list (%installer-configuration-file)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -27,8 +27,7 @@
|
||||
str)
|
||||
|
||||
(define (kernel->configuration kernel dry-run?)
|
||||
(if (and (string? kernel)
|
||||
(string-prefix? "Hurd" kernel))
|
||||
(if (equal? kernel "Hurd")
|
||||
`((kernel %hurd-default-operating-system-kernel)
|
||||
,(comment (G_ ";; \"noide\" disables the gnumach IDE driver, enabling rumpdisk.\n"))
|
||||
(kernel-arguments '("noide"))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -23,48 +23,23 @@
|
||||
#:export (run-kernel-page))
|
||||
|
||||
(define (run-kernel-page)
|
||||
;; TRANSLATORS: "Hurd" is a proper noun and must not be translated.
|
||||
(let* ((hurd-x86 (G_ "Hurd 32-bit (experimental)"))
|
||||
(hurd-x86_64 (G_ "Hurd 64-bit (highly experimental!)"))
|
||||
(linux-libre "Linux Libre")
|
||||
(kernels (parameterize ((%current-target-system #f))
|
||||
`(,linux-libre
|
||||
,@(cond ((target-x86-64?)
|
||||
(list hurd-x86 hurd-x86_64))
|
||||
((target-x86?)
|
||||
(list hurd-x86))
|
||||
(else
|
||||
'())))))
|
||||
(default (cond ((equal? (%current-target-system) "i586-pc-gnu")
|
||||
hurd-x86)
|
||||
((equal? (%current-target-system) "x86_64-pc-gnu")
|
||||
hurd-x86_64)
|
||||
(else
|
||||
linux-libre)))
|
||||
(let* ((kernels `(,@(if (target-x86?) '("Hurd") '())
|
||||
"Linux Libre"))
|
||||
(result
|
||||
(run-listbox-selection-page
|
||||
#:title (G_ "Kernel")
|
||||
#:info-text
|
||||
;; TRANSLATORS: "Hurd" is a proper noun and must not be translated.
|
||||
;; TRANSLATORS: "Linux Libre" is a literal and must not be translated.
|
||||
(G_ "Please select a kernel. When in doubt, choose \"Linux Libre\".
|
||||
|
||||
The Hurd is offered as a technology preview and development aid; many packages \
|
||||
are not yet available in Guix, such as a desktop environment or even a \
|
||||
windowing system (X, Wayland).")
|
||||
are not yet available in Guix, such as a desktop environment or even a windowing \
|
||||
system (X, Wayland).")
|
||||
#:listbox-items kernels
|
||||
#:listbox-item->text identity
|
||||
#:listbox-default-item default
|
||||
#:sort-listbox-items? #f ;keep Linux first
|
||||
#:listbox-default-item "Linux Libre"
|
||||
#:button-text (G_ "Back")
|
||||
#:button-callback-procedure
|
||||
(lambda _
|
||||
(abort-to-prompt 'installer-step 'abort)))))
|
||||
(let ((target (cond ((equal? result hurd-x86)
|
||||
"i586-pc-gnu")
|
||||
((equal? result hurd-x86_64)
|
||||
"x86_64-pc-gnu")
|
||||
(else
|
||||
#f))))
|
||||
(%current-target-system target))
|
||||
(when (equal? result "Hurd")
|
||||
(%current-target-system "i586-pc-gnu"))
|
||||
result))
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
#:use-module (guix i18n)
|
||||
#: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 (ice-9 match)
|
||||
@@ -113,24 +112,20 @@ network devices were found. Do you want to continue anyway?"))
|
||||
full-value
|
||||
(+ value 1)))))))
|
||||
|
||||
(define* (url-alive? url #:key (ensure-ok-status? #f))
|
||||
(define (url-alive? url)
|
||||
(false-if-exception
|
||||
(let ((response (http-request url)))
|
||||
(or (not ensure-ok-status?)
|
||||
(= (response-code response)
|
||||
200)))))
|
||||
(begin
|
||||
(http-request url)
|
||||
#t)))
|
||||
|
||||
(define* (common-urls-alive? urls #:key (ensure-ok-status? #f))
|
||||
"Return #t if at least some of the given URLS are alive,
|
||||
meaning that they do respond to a HTTP request. If ENSURE-OK-STATUS? is
|
||||
#t, return #t only if the code is 200."
|
||||
(define (common-urls-alive? urls)
|
||||
(dynamic-wind
|
||||
(lambda ()
|
||||
(sigaction SIGALRM
|
||||
(lambda _ #f))
|
||||
(alarm 3))
|
||||
(lambda ()
|
||||
(any (cut url-alive? <> #:ensure-ok-status? ensure-ok-status?)
|
||||
(any url-alive?
|
||||
urls))
|
||||
(lambda ()
|
||||
(alarm 0))))
|
||||
@@ -145,9 +140,7 @@ FULL-VALUE tentatives, spaced by 1 second."
|
||||
"https://bordeaux.guix.gnu.org"
|
||||
"https://ci.guix.gnu.org"
|
||||
"https://guix.gnu.org"
|
||||
"https://gnu.org")
|
||||
;; Any HTTP response means the users is online.
|
||||
#:ensure-ok-status? #f))
|
||||
"https://gnu.org")))
|
||||
(file-exists? "/tmp/installer-assume-online")))
|
||||
|
||||
(let* ((full-value 5))
|
||||
@@ -180,8 +173,7 @@ Do you want to continue anyway?"))
|
||||
(common-urls-alive?
|
||||
(list
|
||||
"https://bordeaux.guix.gnu.org/nix-cache-info"
|
||||
"https://ci.guix.gnu.org/nix-cache-info")
|
||||
#:ensure-ok-status? #t)))
|
||||
"https://ci.guix.gnu.org/nix-cache-info"))))
|
||||
|
||||
(let* ((full-value 5))
|
||||
(run-scale-page
|
||||
|
||||
@@ -108,23 +108,20 @@ all data on disk will be lost, are you sure you want to proceed?") item)
|
||||
|
||||
(define (run-label-page button-text button-callback)
|
||||
"Run a page asking the user to select a partition table label."
|
||||
;; Force the GPT label if UEFI is supported.
|
||||
(cond ((efi-installation?)
|
||||
((run-label-confirmation-page button-callback) "gpt"))
|
||||
;; Force the MSDOS label on Hurd.
|
||||
((target-hurd?)
|
||||
((run-label-confirmation-page button-callback) "msdos"))
|
||||
(else (run-listbox-selection-page
|
||||
#:info-text (G_ "Select a new partition table type. \
|
||||
;; Force the GPT label if UEFI is supported.
|
||||
(if (efi-installation?)
|
||||
((run-label-confirmation-page button-callback) "gpt")
|
||||
(run-listbox-selection-page
|
||||
#:info-text (G_ "Select a new partition table type. \
|
||||
Be careful, all data on the disk will be lost.")
|
||||
#:title (G_ "Partition table")
|
||||
#:listbox-items '("msdos" "gpt")
|
||||
#:listbox-default-item (if (target-hurd?) "msdos" "gpt")
|
||||
#:listbox-item->text identity
|
||||
#:listbox-callback-procedure
|
||||
(run-label-confirmation-page button-callback)
|
||||
#:button-text button-text
|
||||
#:button-callback-procedure button-callback))))
|
||||
#:title (G_ "Partition table")
|
||||
#:listbox-items '("msdos" "gpt")
|
||||
#:listbox-default-item (if (target-hurd?) "msdos" "gpt")
|
||||
#:listbox-item->text identity
|
||||
#:listbox-callback-procedure
|
||||
(run-label-confirmation-page button-callback)
|
||||
#:button-text button-text
|
||||
#:button-callback-procedure button-callback)))
|
||||
|
||||
(define (run-type-page partition)
|
||||
"Run a page asking the user to select a partition type."
|
||||
|
||||
@@ -36,9 +36,11 @@
|
||||
environments."
|
||||
(let ((items (filter desktop-system-service? (%system-services))))
|
||||
(run-checkbox-tree-page
|
||||
#:info-text (G_ "Please select the desktop environment(s) you wish to \
|
||||
#:info-text (if (target-hurd?)
|
||||
(G_ "Currently, none of these is available for the Hurd.")
|
||||
(G_ "Please select the desktop environment(s) you wish to \
|
||||
install. If you select multiple desktop environments here, you will be able \
|
||||
to choose from them later when you log in.")
|
||||
to choose from them later when you log in."))
|
||||
#:title (G_ "Desktop environment")
|
||||
#:items items
|
||||
#:selection (map system-service-recommended? items)
|
||||
@@ -48,16 +50,6 @@ to choose from them later when you log in.")
|
||||
(lambda ()
|
||||
(abort-to-prompt 'installer-step 'abort)))))
|
||||
|
||||
;; FIXME: all platforms should support %desktop-services and some of the
|
||||
;; offered desktop environments. Instead of globally disabling the desktop
|
||||
;; page, disable only non-working desktop environments.
|
||||
(define (run-desktop-environments-cbt-page/maybe)
|
||||
"Run page with desktop environments, as long as the user is on
|
||||
a system that supports them."
|
||||
(if (or (target-hurd?) (target-x86-32?))
|
||||
'()
|
||||
(run-desktop-environments-cbt-page)))
|
||||
|
||||
(define (run-networking-cbt-page)
|
||||
"Run a page allowing the user to select networking services."
|
||||
(let ((items (filter (lambda (service)
|
||||
@@ -139,7 +131,7 @@ client may be enough for a server.")
|
||||
(abort-to-prompt 'installer-step 'abort)))))
|
||||
|
||||
(define (run-services-page)
|
||||
(let ((desktop (run-desktop-environments-cbt-page/maybe)))
|
||||
(let ((desktop (run-desktop-environments-cbt-page)))
|
||||
;; When the user did not select any desktop services, and thus didn't get
|
||||
;; '%desktop-services', offer network management services.
|
||||
(append desktop
|
||||
|
||||
@@ -195,21 +195,8 @@
|
||||
(define (system-services->configuration services)
|
||||
"Return the configuration field for SERVICES."
|
||||
(let* ((snippets (append-map system-service-snippet services))
|
||||
(packages (append-map system-service-packages services))
|
||||
(desktop? (find desktop-system-service? services))
|
||||
(packages
|
||||
(append (append-map system-service-packages services)
|
||||
(if desktop?
|
||||
(cons (comment (G_ ";; Fonts to cover all languages.\n"))
|
||||
(map (lambda (package)
|
||||
`(specification->package ,package))
|
||||
'("font-google-noto"
|
||||
"font-google-noto-emoji"
|
||||
;; FIXME: Selection of fonts depends on the
|
||||
;; locale. Use a monospaced CJK font with
|
||||
;; latin letters before there's proper fix.
|
||||
;; See <https://codeberg.org/guix/guix/pulls/5654#issuecomment-9928509>
|
||||
"font-sarasa-gothic")))
|
||||
'())))
|
||||
(base (if desktop?
|
||||
(if (target-hurd?)
|
||||
'%desktop-services/hurd
|
||||
|
||||
+41
-75
@@ -1,5 +1,5 @@
|
||||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012-2026 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2012-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2022, 2023, 2024, 2025 Andreas Enge <andreas@enge.fr>
|
||||
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Mark H Weaver <mhw@netris.org>
|
||||
@@ -19,7 +19,7 @@
|
||||
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||
# Copyright © 2018, 2019, 2020, 2021, 2022, 2024, 2025 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||
# Copyright © 2018, 2020-2026 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
# Copyright © 2018, 2020-2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
# Copyright © 2019, 2020, 2021, 2022, 2024 Guillaume Le Vaillant <glv@posteo.net>
|
||||
# Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
|
||||
# Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
||||
@@ -35,7 +35,7 @@
|
||||
# Copyright © 2020 Ryan Prior <rprior@protonmail.com>
|
||||
# Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
|
||||
# Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
|
||||
# Copyright © 2020, 2023, 2025 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||
# Copyright © 2020, 2023 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||
# Copyright © 2020 Martin Becze <mjbecze@riseup.net>
|
||||
# Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes@gmail.com>
|
||||
# Copyright © 2020, 2023 Vinicius Monego <monego@posteo.net>
|
||||
@@ -73,7 +73,6 @@
|
||||
# Copyright © 2024 James Smith <jsubuntuxp@disroot.org>
|
||||
# Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
|
||||
# Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||
# Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@@ -212,6 +211,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/connman.scm \
|
||||
%D%/packages/containers.scm \
|
||||
%D%/packages/convmv.scm \
|
||||
%D%/packages/cook.scm \
|
||||
%D%/packages/coq.scm \
|
||||
%D%/packages/cpio.scm \
|
||||
%D%/packages/cpp.scm \
|
||||
@@ -303,7 +303,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/freeipmi.scm \
|
||||
%D%/packages/ftp.scm \
|
||||
%D%/packages/fribidi.scm \
|
||||
%D%/packages/fusion.scm \
|
||||
%D%/packages/gambas.scm \
|
||||
%D%/packages/game-development.scm \
|
||||
%D%/packages/games.scm \
|
||||
@@ -358,7 +357,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/gxmessage.scm \
|
||||
%D%/packages/hardware.scm \
|
||||
%D%/packages/hare.scm \
|
||||
%D%/packages/hare-apps.scm \
|
||||
%D%/packages/hare-xyz.scm \
|
||||
%D%/packages/haskell.scm \
|
||||
%D%/packages/haskell-apps.scm \
|
||||
@@ -367,7 +365,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/haskell-web.scm \
|
||||
%D%/packages/haskell-xyz.scm \
|
||||
%D%/packages/haxe.scm \
|
||||
%D%/packages/hdl.scm \
|
||||
%D%/packages/heads.scm \
|
||||
%D%/packages/hexedit.scm \
|
||||
%D%/packages/high-availability.scm \
|
||||
@@ -377,6 +374,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/i2p.scm \
|
||||
%D%/packages/ibus.scm \
|
||||
%D%/packages/icu4c.scm \
|
||||
%D%/packages/idris.scm \
|
||||
%D%/packages/idutils.scm \
|
||||
%D%/packages/image.scm \
|
||||
%D%/packages/image-processing.scm \
|
||||
@@ -697,6 +695,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/vpn.scm \
|
||||
%D%/packages/vulkan.scm \
|
||||
%D%/packages/w3m.scm \
|
||||
%D%/packages/wdiff.scm \
|
||||
%D%/packages/weather.scm \
|
||||
%D%/packages/web.scm \
|
||||
%D%/packages/web-browsers.scm \
|
||||
@@ -759,7 +758,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/services/networking.scm \
|
||||
%D%/services/nix.scm \
|
||||
%D%/services/nfs.scm \
|
||||
%D%/services/opensnitch.scm \
|
||||
%D%/services/pam-mount.scm \
|
||||
%D%/services/power.scm \
|
||||
%D%/services/science.scm \
|
||||
@@ -804,7 +802,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/system/uuid.scm \
|
||||
%D%/system/vm.scm \
|
||||
\
|
||||
%D%/system/images/a20-olinuxino-lime2.scm \
|
||||
%D%/system/images/hurd.scm \
|
||||
%D%/system/images/novena.scm \
|
||||
%D%/system/images/orangepi-r1-plus-lts-rk3328.scm \
|
||||
@@ -971,6 +968,11 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/adb-add-libraries.patch \
|
||||
%D%/packages/patches/adb-libssl_11-compatibility.patch \
|
||||
%D%/packages/patches/accountsservice-extensions.patch \
|
||||
%D%/packages/patches/aegis-constness-error.patch \
|
||||
%D%/packages/patches/aegis-perl-tempdir1.patch \
|
||||
%D%/packages/patches/aegis-perl-tempdir2.patch \
|
||||
%D%/packages/patches/aegis-test-fixup-1.patch \
|
||||
%D%/packages/patches/aegis-test-fixup-2.patch \
|
||||
%D%/packages/patches/aegisub-icu59-include-unistr.patch \
|
||||
%D%/packages/patches/aegisub-boost68.patch \
|
||||
%D%/packages/patches/aegisub-boost81.patch \
|
||||
@@ -990,6 +992,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/amd-smi-python.patch \
|
||||
%D%/packages/patches/ibus-anthy-fix-tests.patch \
|
||||
%D%/packages/patches/ibus-table-paths.patch \
|
||||
%D%/packages/patches/anki-mpv-args.patch \
|
||||
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
||||
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
||||
%D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \
|
||||
@@ -1058,7 +1061,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/binutils-mingw-w64-deterministic.patch \
|
||||
%D%/packages/patches/binutils-2.41-fix-cross.patch \
|
||||
%D%/packages/patches/bloomberg-bde-tools-fix-install-path.patch \
|
||||
%D%/packages/patches/bmake-run-check-separately.patch \
|
||||
%D%/packages/patches/boolector-find-googletest.patch \
|
||||
%D%/packages/patches/boost-fix-duplicate-definitions-bug.patch \
|
||||
%D%/packages/patches/btanks-scons-python.patch \
|
||||
@@ -1084,7 +1086,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/cdparanoia-fpic.patch \
|
||||
%D%/packages/patches/cdrkit-libre-cross-compile.patch \
|
||||
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \
|
||||
%D%/packages/patches/ceph-fix-cmake.patch \
|
||||
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
|
||||
%D%/packages/patches/ceph-fix-for-newer-boost.patch \
|
||||
%D%/packages/patches/cf-tool-add-languages.patch \
|
||||
%D%/packages/patches/chmlib-inttypes.patch \
|
||||
%D%/packages/patches/cl-asdf-config-directories.patch \
|
||||
@@ -1117,9 +1120,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/cogl-fix-double-free.patch \
|
||||
%D%/packages/patches/collada-dom-boost.patch \
|
||||
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
||||
%D%/packages/patches/collectd-5.11.0-python-3.11.patch \
|
||||
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
||||
%D%/packages/patches/combinatorial-blas-awpm.patch \
|
||||
%D%/packages/patches/combinatorial-blas-io-fix.patch \
|
||||
%D%/packages/patches/compsize-fix-btrfs-progs-compatibility.patch \
|
||||
@@ -1140,11 +1141,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/crc32c-unbundle-googletest.patch \
|
||||
%D%/packages/patches/crda-optional-gcrypt.patch \
|
||||
%D%/packages/patches/clucene-contribs-lib.patch \
|
||||
%D%/packages/patches/cryfs-boost-1.88-fix.patch \
|
||||
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
|
||||
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
|
||||
%D%/packages/patches/ctranslate2-local-build.patch \
|
||||
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
|
||||
%D%/packages/patches/cube-nocheck.patch \
|
||||
%D%/packages/patches/cups-relax-root-ownership-check.patch \
|
||||
%D%/packages/patches/cura-engine-gcc-14.patch \
|
||||
@@ -1175,7 +1173,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/dhclient-script-resolvconf-support.patch \
|
||||
%D%/packages/patches/dicedb-remove-init-from-config-subpkg.patch \
|
||||
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
|
||||
%D%/packages/patches/django-compressor-build-with-beautifulsoup-4.14+.patch \
|
||||
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
|
||||
%D%/packages/patches/doc++-gcc-14.patch \
|
||||
%D%/packages/patches/docbook-utils-documentation-edits.patch \
|
||||
@@ -1202,22 +1199,20 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/duc-fix-test-sh.patch \
|
||||
%D%/packages/patches/dune-common-skip-failing-tests.patch \
|
||||
%D%/packages/patches/durden-shadow-arcan.patch \
|
||||
%D%/packages/patches/dvdbackup-with-libdvdread-6.1.0+.patch \
|
||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||
%D%/packages/patches/dwarves-threading-reproducibility.patch \
|
||||
%D%/packages/patches/efivar-fix-fprint-format.patch \
|
||||
%D%/packages/patches/eigen-fix-strict-aliasing-bug.patch \
|
||||
%D%/packages/patches/einstein-build.patch \
|
||||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||
%D%/packages/patches/elixir-httpoison-tag-network-dependent-test-cases.patch \
|
||||
%D%/packages/patches/elixir-path-length.patch \
|
||||
%D%/packages/patches/elm-ghc9.2.patch \
|
||||
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
|
||||
%D%/packages/patches/elm-offline-package-registry.patch \
|
||||
%D%/packages/patches/elm-reactor-static-files.patch \
|
||||
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
|
||||
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
|
||||
%D%/packages/patches/emacs-disable-jit-compilation.patch \
|
||||
%D%/packages/patches/emacs-doc-toc-shell-commands.patch \
|
||||
%D%/packages/patches/emacs-elisp-autofmt-fix-region-send.patch \
|
||||
%D%/packages/patches/emacs-exec-path.patch \
|
||||
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
|
||||
@@ -1249,9 +1244,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ergodox-firmware-fix-numpad.patch \
|
||||
%D%/packages/patches/ericw-tools-add-check-for-sse2-in-light.cc.patch \
|
||||
%D%/packages/patches/ericw-tools-gcc-11-pass-const-to-offsetof.patch \
|
||||
%D%/packages/patches/erlang-binpp-disable-failing-tests.patch \
|
||||
%D%/packages/patches/erlang-man-path.patch \
|
||||
%D%/packages/patches/erlang-mochiweb-disable-known-to-fail-tests.patch \
|
||||
%D%/packages/patches/esmini-use-pkgconfig.patch \
|
||||
%D%/packages/patches/esmtp-add-lesmtp.patch \
|
||||
%D%/packages/patches/esound-c99.patch \
|
||||
@@ -1327,6 +1320,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/freeimage-unbundle.patch \
|
||||
%D%/packages/patches/freeimage-CVE-2020-21428.patch \
|
||||
%D%/packages/patches/freeimage-CVE-2020-22524.patch \
|
||||
%D%/packages/patches/freerdp-3.16.0-rpath.patch \
|
||||
%D%/packages/patches/freesolid-automake.patch \
|
||||
%D%/packages/patches/freesolid-autotools.patch \
|
||||
%D%/packages/patches/freesolid-configure.patch \
|
||||
@@ -1504,7 +1498,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/gnome-tweaks-search-paths.patch \
|
||||
%D%/packages/patches/gnulib-bootstrap.patch \
|
||||
%D%/packages/patches/gnumach-div0.patch \
|
||||
%D%/packages/patches/gnumach-kmsg-overflow.patch \
|
||||
%D%/packages/patches/gnumach-version.patch \
|
||||
%D%/packages/patches/gnupg-default-pinentry.patch \
|
||||
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
|
||||
@@ -1541,13 +1534,13 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/guile-default-utf8.patch \
|
||||
%D%/packages/patches/guile-2.2-default-utf8.patch \
|
||||
%D%/packages/patches/guile-relocatable.patch \
|
||||
%D%/packages/patches/guile-3.0.11-cross-compilation.patch \
|
||||
%D%/packages/patches/guile-3.0-relocatable.patch \
|
||||
%D%/packages/patches/guile-linux-syscalls.patch \
|
||||
%D%/packages/patches/guile-3.0-linux-syscalls.patch \
|
||||
%D%/packages/patches/guile-ac-d-bus-fix-tests.patch \
|
||||
%D%/packages/patches/guile-lib-fix-tests-for-guile2.2.patch \
|
||||
%D%/packages/patches/guile-fibers-cross-build-fix.patch \
|
||||
%D%/packages/patches/guile-fibers-destroy-peer-schedulers.patch \
|
||||
%D%/packages/patches/guile-fibers-epoll-instance-is-dead.patch \
|
||||
%D%/packages/patches/guile-fibers-fd-finalizer-leak.patch \
|
||||
%D%/packages/patches/guile-fibers-wait-for-io-readiness.patch \
|
||||
@@ -1599,8 +1592,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/hurd-refcounts-assert.patch \
|
||||
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
|
||||
%D%/packages/patches/hurd-startup.patch \
|
||||
%D%/packages/patches/hurd-streamio-select.patch \
|
||||
%D%/packages/patches/hurd-proc-zombies.patch \
|
||||
%D%/packages/patches/hwloc-1-test-btrfs.patch \
|
||||
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
|
||||
%D%/packages/patches/i7z-gcc-10.patch \
|
||||
@@ -1615,29 +1606,13 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/icedove-observer-fix.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-pointer-comparison.patch \
|
||||
%D%/packages/patches/icu4c-20548-dateinterval-timezone.patch \
|
||||
%D%/packages/patches/icu4c-22132-standardize-vtzone-output.patch \
|
||||
%D%/packages/patches/icu4c-23069-rosh-hashanah-postponement.patch \
|
||||
%D%/packages/patches/icu4c-78-double-conversion.patch \
|
||||
%D%/packages/patches/icu4c-bug-1706949-wasi-workaround.patch \
|
||||
%D%/packages/patches/icu4c-bug-1790071-ICU-22132-standardize-vtzone-output.patch \
|
||||
%D%/packages/patches/icu4c-bug-1856290-ICU-20548-dateinterval-timezone.patch \
|
||||
%D%/packages/patches/icu4c-bug-1954138-dtitvfmt-adopt-calendar.patch \
|
||||
%D%/packages/patches/icu4c-bug-1972781-chinese-based-calendar.patch \
|
||||
%D%/packages/patches/icu4c-bug-2000225-ICU-23264-increase-measure-unit-capacity.patch \
|
||||
%D%/packages/patches/icu4c-bug-2002735-ICU-23277-coptic-single-era.patch \
|
||||
%D%/packages/patches/icu4c-dayperiod-fractional-seconds.patch \
|
||||
%D%/packages/patches/icu4c-double-conversion.patch \
|
||||
%D%/packages/patches/icu4c-dtitvfmt-adopt-calendar.patch \
|
||||
%D%/packages/patches/icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch \
|
||||
%D%/packages/patches/icu4c-icu-22132-fix-vtimezone.patch \
|
||||
%D%/packages/patches/icu4c-suppress-warnings.patch \
|
||||
%D%/packages/patches/icu4c-wasi-workaround.patch \
|
||||
%D%/packages/patches/icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch \
|
||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
||||
%D%/packages/patches/idris-test-ffi008.patch \
|
||||
%D%/packages/patches/ilmbase-fix-tests.patch \
|
||||
%D%/packages/patches/inferno-fix-crash.patch \
|
||||
%D%/packages/patches/iniparser-remove-fetchcontent-usage.patch \
|
||||
%D%/packages/patches/inkscape-libxml2.patch \
|
||||
%D%/packages/patches/instead-use-games-path.patch \
|
||||
%D%/packages/patches/intltool-perl-compatibility.patch \
|
||||
@@ -1647,9 +1622,11 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/irrlicht-link-against-needed-libs.patch \
|
||||
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
|
||||
%D%/packages/patches/ispell-for-linphone-cmake.patch \
|
||||
%D%/packages/patches/jami-allow-system-zxing-cpp.patch \
|
||||
%D%/packages/patches/jami-avutil-link.patch \
|
||||
%D%/packages/patches/jami-find-package-avutil.patch \
|
||||
%D%/packages/patches/jami-libjami-headers-search.patch \
|
||||
%D%/packages/patches/jami-qwindowkit.patch \
|
||||
%D%/packages/patches/jami-skip-tests-requiring-internet.patch \
|
||||
%D%/packages/patches/jami-unbundle-dependencies.patch \
|
||||
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
|
||||
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
|
||||
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
|
||||
@@ -1659,6 +1636,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch \
|
||||
%D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \
|
||||
%D%/packages/patches/java-commons-collections-fix-java8.patch \
|
||||
%D%/packages/patches/java-commons-lang-fix-dependency.patch \
|
||||
%D%/packages/patches/java-guava-remove-annotation-deps.patch \
|
||||
%D%/packages/patches/java-jeromq-fix-tests.patch \
|
||||
%D%/packages/patches/java-openjfx-build-jdk_version.patch \
|
||||
@@ -1695,15 +1673,11 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/libgeotiff-fix-tests-on-i386.patch \
|
||||
%D%/packages/patches/libguestfs-syms.patch \
|
||||
%D%/packages/patches/libinfinity-renew-test-certificate.patch \
|
||||
%D%/packages/patches/libjami-pkgconf.patch \
|
||||
%D%/packages/patches/libjami-simdutf.patch \
|
||||
%D%/packages/patches/libmaus2-fix-gcc-13-require-include-cstdint.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-data.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-gc-font-tool.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-libusb-assert.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-vulkan-headers.patch \
|
||||
%D%/packages/patches/librewolf-add-store-to-rdd-allowlist.patch \
|
||||
%D%/packages/patches/librewolf-compare-paths.patch \
|
||||
%D%/packages/patches/librewolf-neuter-locale-download.patch \
|
||||
%D%/packages/patches/librewolf-use-system-wide-dir.patch \
|
||||
%D%/packages/patches/libvirt-add-install-prefix.patch \
|
||||
@@ -1714,8 +1688,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/lightdm-vnc-ipv6.patch \
|
||||
%D%/packages/patches/lightdm-vnc-color-depth.patch \
|
||||
%D%/packages/patches/lightdm-vncserver-check.patch \
|
||||
%D%/packages/patches/linphone-desktop-cmake-belcard.patch \
|
||||
%D%/packages/patches/linphone-desktop-cmake-find-modules.patch \
|
||||
%D%/packages/patches/localed-xorg-keyboard.patch \
|
||||
%D%/packages/patches/kaldi-ignore-failing-test.patch \
|
||||
%D%/packages/patches/kaldi-openblas-0.3.29-compatibility.patch \
|
||||
@@ -1904,6 +1876,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/mpc123-initialize-ao.patch \
|
||||
%D%/packages/patches/mpg321-CVE-2019-14247.patch \
|
||||
%D%/packages/patches/mpg321-gcc-10.patch \
|
||||
%D%/packages/patches/mpv-0.40.0-fix-ffmpeg-8.0.patch \
|
||||
%D%/packages/patches/mpv-0.40.0-fix-wayland-cpu-usage.patch \
|
||||
%D%/packages/patches/modglue-fix-build.patch \
|
||||
%D%/packages/patches/modem-manager-fix-test-wrapper.patch \
|
||||
%D%/packages/patches/module-init-tools-moduledir.patch \
|
||||
@@ -1949,6 +1923,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/netsurf-system-utf8proc.patch \
|
||||
%D%/packages/patches/netsurf-y2038-tests.patch \
|
||||
%D%/packages/patches/netsurf-longer-test-timeout.patch \
|
||||
%D%/packages/patches/nextpnr-gtest.patch \
|
||||
%D%/packages/patches/nextpnr-imgui.patch \
|
||||
%D%/packages/patches/nhc98-c-update.patch \
|
||||
%D%/packages/patches/nix-dont-build-html-doc.diff \
|
||||
@@ -1992,8 +1967,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/openboardview-use-system-mpc.patch \
|
||||
%D%/packages/patches/openbox-add-fix-for-glib2-exposed-segfault.patch \
|
||||
%D%/packages/patches/openbox-python3.patch \
|
||||
%D%/packages/patches/opendht-meson-install-headers.patch \
|
||||
%D%/packages/patches/opendht-meson-liburing.patch \
|
||||
%D%/packages/patches/opendht-nanosleep.patch \
|
||||
%D%/packages/patches/openexr-2-gcc-14.patch \
|
||||
%D%/packages/patches/openfst-for-vosk-fix-unique-ptr.patch \
|
||||
%D%/packages/patches/openjdk-currency-time-bomb.patch \
|
||||
@@ -2034,6 +2008,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/opentaxsolver-file-browser-fix.patch \
|
||||
%D%/packages/patches/open-zwave-hidapi.patch \
|
||||
%D%/packages/patches/opusfile-CVE-2022-47021.patch \
|
||||
%D%/packages/patches/orangeduck-mpc-fix-pkg-config.patch \
|
||||
%D%/packages/patches/orbit2-fix-array-allocation-32bit.patch \
|
||||
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
|
||||
%D%/packages/patches/ots-no-include-missing-file.patch \
|
||||
@@ -2071,11 +2046,11 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-bed-reader-use-store-samples.patch \
|
||||
%D%/packages/patches/python-chai-drop-python2.patch \
|
||||
%D%/packages/patches/python-clarabel-blas.patch \
|
||||
%D%/packages/patches/python-daemon-relax-lockfile.patch \
|
||||
%D%/packages/patches/python-docrepr-fix-tests.patch \
|
||||
%D%/packages/patches/python-gpg-setup-72.patch \
|
||||
%D%/packages/patches/python-feedparser-missing-import.patch \
|
||||
%D%/packages/patches/python-hdmedians-replace-nose.patch \
|
||||
%D%/packages/patches/python-louvain-fix-test.patch \
|
||||
%D%/packages/patches/python-matplotlib-fix-legend-loc-best-test.patch \
|
||||
%D%/packages/patches/python-mohawk-pytest.patch \
|
||||
%D%/packages/patches/python-msal-requests.patch \
|
||||
%D%/packages/patches/python-norns-nose.patch \
|
||||
@@ -2097,7 +2072,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/qtdeclarative-5-disable-qmlcache.patch \
|
||||
%D%/packages/patches/qtdeclarative-disable-qmlcache.patch \
|
||||
%D%/packages/patches/qtlocation-5.15.8-mapboxgl-gcc13.patch \
|
||||
%D%/packages/patches/qtwebengine-revert-egl.patch \
|
||||
%D%/packages/patches/quodlibet-disable-bundled-packages.patch \
|
||||
%D%/packages/patches/qxlsx-fix-include-directory.patch \
|
||||
%D%/packages/patches/schiffbruch-fix-build-for-gcc-13.patch \
|
||||
@@ -2218,10 +2192,12 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-pytorch-system-libraries.patch \
|
||||
%D%/packages/patches/python-pytorch-without-kineto.patch \
|
||||
%D%/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch \
|
||||
%D%/packages/patches/python-scipy-i686.patch \
|
||||
%D%/packages/patches/python-vaex-core-fix-tsl-use.patch \
|
||||
%D%/packages/patches/python-vega-datasets-remove-la-riots-code.patch \
|
||||
%D%/packages/patches/python-versioneer-guix-support.patch \
|
||||
%D%/packages/patches/python-werkzeug-tests.patch \
|
||||
%D%/packages/patches/python-xmp-toolkit-add-missing-error-codes.patch \
|
||||
%D%/packages/patches/qdigidoc-bundle-config-files.patch \
|
||||
%D%/packages/patches/qdigidoc-bundle-tsl-files.patch \
|
||||
%D%/packages/patches/qemu-build-info-manual.patch \
|
||||
@@ -2229,28 +2205,24 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/qemu-glibc-2.30.patch \
|
||||
%D%/packages/patches/qemu-fix-agent-paths.patch \
|
||||
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
|
||||
%D%/packages/patches/qemu-disable-aarch64-migration-test.patch \
|
||||
%D%/packages/patches/qrcodegen-cpp-cmake.patch \
|
||||
%D%/packages/patches/qtbase-absolute-runpath.patch \
|
||||
%D%/packages/patches/qtbase-qmake-fix-includedir.patch \
|
||||
%D%/packages/patches/qtbase-qmlimportscanner-qml-import-path.patch \
|
||||
%D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \
|
||||
%D%/packages/patches/qtbase-patch-libvulkan.patch \
|
||||
%D%/packages/patches/qtbase-qmake-use-libname.patch \
|
||||
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
|
||||
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||
%D%/packages/patches/quagga-reproducible-build.patch \
|
||||
%D%/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch \
|
||||
%D%/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch \
|
||||
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
|
||||
%D%/packages/patches/quilt-grep-compat.patch \
|
||||
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
|
||||
%D%/packages/patches/qtwayland-dont-recreate-callbacks.patch \
|
||||
%D%/packages/patches/qtwayland-cleanup-callbacks.patch \
|
||||
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
|
||||
%D%/packages/patches/qtwebengine-fix-dependencies.patch \
|
||||
%D%/packages/patches/qtwebsockets-6.9-fix-tst_QWebSocket.patch\
|
||||
%D%/packages/patches/rabbitmq-defaults.patch \
|
||||
%D%/packages/patches/radare2-fix-meson-build-to-use-sys-qjs.patch \
|
||||
%D%/packages/patches/radare2-fix-meson-build-to-use-sys-sdb.patch \
|
||||
%D%/packages/patches/ragel-char-signedness.patch \
|
||||
%D%/packages/patches/randomjungle-disable-static-build.patch \
|
||||
%D%/packages/patches/rapidcheck-fix-libs.patch \
|
||||
@@ -2278,13 +2250,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/remake-impure-dirs.patch \
|
||||
%D%/packages/patches/restartd-update-robust.patch \
|
||||
%D%/packages/patches/restic-0.9.6-fix-tests-for-go1.15.patch \
|
||||
%D%/packages/patches/rlwrap-no-rbgen.patch \
|
||||
%D%/packages/patches/rng-tools-revert-build-randstat.patch \
|
||||
%D%/packages/patches/rocclr-5.6.0-enable-gfx800.patch \
|
||||
%D%/packages/patches/rocm-opencl-runtime-4.3-noclinfo.patch \
|
||||
%D%/packages/patches/rocm-bandwidth-test-fix-external-packages-search.patch \
|
||||
%D%/packages/patches/rocm-bandwidth-test-fix-hsa-include-file-lookup.patch \
|
||||
%D%/packages/patches/rocm-bandwidth-test-take-default-gpus-from-environment.patch \
|
||||
%D%/packages/patches/rottlog-direntry.patch \
|
||||
%D%/packages/patches/ruby-actionpack-remove-browser-tests.patch \
|
||||
%D%/packages/patches/ruby-activesupport-fix-deprecation-warning.patch \
|
||||
@@ -2308,6 +2276,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
|
||||
%D%/packages/patches/s7-flint-3.patch \
|
||||
%D%/packages/patches/safeint-disable-tests.patch \
|
||||
%D%/packages/patches/sage-safeguard-sage-getargspec-cython.patch \
|
||||
%D%/packages/patches/sajson-for-gemmi-numbers-as-strings.patch \
|
||||
%D%/packages/patches/sajson-build-with-gcc10.patch \
|
||||
%D%/packages/patches/sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch \
|
||||
@@ -2318,7 +2287,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
|
||||
%D%/packages/patches/sbcl-ciel-repl.patch \
|
||||
%D%/packages/patches/sbcl-clml-fix-types.patch \
|
||||
%D%/packages/patches/sbcl-cl-redis-replace-sbcl-specific-calls.patch \
|
||||
%D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \
|
||||
%D%/packages/patches/sbcl-lack-fix-tests.patch \
|
||||
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
|
||||
@@ -2337,6 +2305,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||
%D%/packages/patches/libsequoia-fix-ffi-Makefile.patch \
|
||||
%D%/packages/patches/libsequoia-remove-store.patch \
|
||||
%D%/packages/patches/shaderc-for-pcsx2-changes.patch \
|
||||
%D%/packages/patches/shakespeare-spl-fix-grammar.patch \
|
||||
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
|
||||
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
||||
@@ -2433,8 +2402,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \
|
||||
%D%/packages/patches/uftrace-fix-tests.patch \
|
||||
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \
|
||||
%D%/packages/patches/unity-test-set-subdir-correctly.patch \
|
||||
%D%/packages/patches/unity-test-support-int64.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
|
||||
@@ -2509,16 +2476,15 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/wmctrl-64-fix.patch \
|
||||
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
|
||||
%D%/packages/patches/wmfire-update-for-new-gdk-versions.patch \
|
||||
%D%/packages/patches/woof-doom-unbundle-spng-miniz.patch \
|
||||
%D%/packages/patches/wordnet-CVE-2008-2149.patch \
|
||||
%D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch \
|
||||
%D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch \
|
||||
%D%/packages/patches/wpa-supplicant-dbus-group-policy.patch \
|
||||
%D%/packages/patches/x2goclient-fix-makefile.patch \
|
||||
%D%/packages/patches/x265-arm-flags.patch \
|
||||
%D%/packages/patches/x265-4-arm-flags.patch \
|
||||
%D%/packages/patches/xdg-desktop-portal-disable-portal-tests.patch\
|
||||
%D%/packages/patches/xdg-desktop-portal-disable-configuration-search-exit.patch\
|
||||
%D%/packages/patches/xdg-desktop-portal-1.20.3-disable-configuration-search-exit.patch\
|
||||
%D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
|
||||
%D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \
|
||||
%D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \
|
||||
@@ -2535,8 +2501,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \
|
||||
%D%/packages/patches/xpra-5.0-install_libs.patch \
|
||||
%D%/packages/patches/xpra-5.0-systemd-run.patch \
|
||||
%D%/packages/patches/xpra-6.4-systemd-run.patch \
|
||||
%D%/packages/patches/xpra-6.4-install_libs.patch \
|
||||
%D%/packages/patches/xpra-6.0-systemd-run.patch \
|
||||
%D%/packages/patches/xpra-6.1-install_libs.patch \
|
||||
%D%/packages/patches/xterm-370-explicit-xcursor.patch \
|
||||
%D%/packages/patches/xygrib-fix-finding-data.patch \
|
||||
%D%/packages/patches/xygrib-newer-proj.patch \
|
||||
|
||||
@@ -235,6 +235,50 @@ incorporated.")
|
||||
(home-page "https://brltty.app/")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public florence
|
||||
(package
|
||||
(name "florence")
|
||||
(version "0.6.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/florence/florence/" version
|
||||
"/florence-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"07h9qm22krlwayhzvc391lr23vicw81s48g7rirvx1fj0zyr4aa2"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--with-xtst"
|
||||
"--without-docs"
|
||||
"--with-notification")))
|
||||
(inputs
|
||||
(list libxml2
|
||||
libglade
|
||||
(librsvg-for-system)
|
||||
gstreamer
|
||||
cairo
|
||||
gtk+
|
||||
libxtst
|
||||
libxcomposite
|
||||
libnotify))
|
||||
(native-inputs
|
||||
(list gettext-minimal intltool pkg-config))
|
||||
(home-page "https://florence.sourceforge.net/")
|
||||
(synopsis "Extensible, scalable virtual keyboard for X11")
|
||||
(description
|
||||
"Florence is an extensible scalable virtual keyboard for X11.
|
||||
It is useful for people who can't use a real hardware keyboard (for
|
||||
example for people with disabilities), but you must be able to use
|
||||
a pointing device (as a mouse, a trackball, a touchscreen or opengazer).
|
||||
|
||||
Florence stays out of your way when you don't need it: it appears on the
|
||||
screen only when you need it. A timer-based auto-click input method is
|
||||
available to help to click.")
|
||||
;; The documentation is under FDL1.2, but we do not install the
|
||||
;; documentation.
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public footswitch
|
||||
(let ((commit "e455d6752221b9e9c3818cc304c873b9c2792490")
|
||||
(revision "0"))
|
||||
|
||||
+24
-22
@@ -30,13 +30,10 @@
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix utils))
|
||||
|
||||
@@ -98,28 +95,33 @@
|
||||
(define-public python-pylibacl
|
||||
(package
|
||||
(name "python-pylibacl")
|
||||
(version "0.7.3")
|
||||
(version "0.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pylibacl" version))
|
||||
(sha256
|
||||
(base32 "08pr5cbipij3j591bihh72r5h14lyrspy24qwmfjsn0c1rcgp7wx"))))
|
||||
(build-system pyproject-build-system)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pylibacl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zyrk2m20p5b6bdwxhrwib273i6i71zyr5hzssbxfqis5qra9848"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-tests
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
;; These tests operate on real files, but our tmpfs does not support
|
||||
;; ACLs.
|
||||
(substitute* "tests/test_acls.py"
|
||||
(("( *)def test_applyto(_extended(_mixed)?)?" match indent)
|
||||
(string-append indent "@pytest.mark.skip(reason=\"guix\")\n"
|
||||
match))))))))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-tests
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
;; These tests operate on real files, but our tmpfs does not support
|
||||
;; ACLs.
|
||||
(substitute* "tests/test_acls.py"
|
||||
(("( *)def test_applyto(_extended(_mixed)?)?" match indent)
|
||||
(string-append indent "@pytest.mark.skip(reason=\"guix\")\n"
|
||||
match)))))
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "pytest" "tests")))))))
|
||||
(inputs (list acl))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(native-inputs (list python-pytest))
|
||||
(home-page "https://pylibacl.k1024.org/")
|
||||
(synopsis "POSIX.1e @acronym{ACLs, access control lists} for Python")
|
||||
(description
|
||||
|
||||
+64
-212
@@ -48,7 +48,7 @@
|
||||
;;; Copyright © 2021, 2025 muradm <mail@muradm.net>
|
||||
;;; Copyright © 2021 pineapples <guixuser6392@protonmail.com>
|
||||
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
|
||||
;;; Copyright © 2021-2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2021-2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
|
||||
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
|
||||
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
|
||||
@@ -72,14 +72,12 @@
|
||||
;;; Copyright © 2024 nathan <nathan_mail@nborghese.com>
|
||||
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
|
||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||
;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2024, 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2024 Ashvith Shetty <ashvithshetty10@gmail.com>
|
||||
;;; Copyright © 2025 Dariqq <dariqq@posteo.net>
|
||||
;;; Copyright © 2024 nik gaffney <nik@fo.am>
|
||||
;;; Copyright © 2025 Simon Streit <simon@netpanic.org>
|
||||
;;; Copyright © 2025 Luca Kredel <luca.kredel@web.de>
|
||||
;;; Copyright © 2025 ROCKTAKEY <rocktakey@gmail.com>
|
||||
;;; Copyright © 2026 Andreas Enge <andreas@enge.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -139,7 +137,6 @@
|
||||
#:use-module (gnu packages dns)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
@@ -608,35 +605,15 @@ interface and is based on GNU Guile.")
|
||||
(base32
|
||||
"1mh080060lnycys8yq6kkiy363wif8dsip3nyklgd3a1r22wb274"))))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "--localstatedir=/var"
|
||||
;; Gzip and zstd are used by the log rotation service.
|
||||
(string-append "--with-gzip=" #$(this-package-input "gzip")
|
||||
"/bin/gzip")
|
||||
(string-append "--with-zstd=" #$(this-package-input "zstd")
|
||||
"/bin/zstd"))
|
||||
#:make-flags #~'("GUILE_AUTO_COMPILE=0")
|
||||
#:phases (if (%current-target-system)
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'set-fibers-directory
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; When cross-compiling, refer to the target
|
||||
;; Fibers, not the native one.
|
||||
(let ((fibers
|
||||
(search-input-file
|
||||
inputs
|
||||
"share/guile/site/3.0/fibers.scm"))
|
||||
(fibers-go
|
||||
(search-input-file
|
||||
inputs
|
||||
"lib/guile/3.0/site-ccache/fibers.go")))
|
||||
(substitute* '("herd.in" "shepherd.in")
|
||||
(("%FIBERS_SOURCE_DIRECTORY%")
|
||||
(dirname fibers))
|
||||
(("%FIBERS_OBJECT_DIRECTORY%")
|
||||
(dirname fibers-go)))))))
|
||||
#~%standard-phases)))
|
||||
(substitute-keyword-arguments (package-arguments shepherd-0.10)
|
||||
((#:configure-flags flags #~'())
|
||||
#~(list "--localstatedir=/var"
|
||||
|
||||
;; Gzip and zstd are used by the log rotation service.
|
||||
(string-append "--with-gzip=" #$(this-package-input "gzip")
|
||||
"/bin/gzip")
|
||||
(string-append "--with-zstd=" #$(this-package-input "zstd")
|
||||
"/bin/zstd")))))
|
||||
(native-inputs
|
||||
(modify-inputs (package-native-inputs shepherd-0.10)
|
||||
(replace "guile-fibers"
|
||||
@@ -1076,7 +1053,7 @@ console.")
|
||||
(define-public btop
|
||||
(package
|
||||
(name "btop")
|
||||
(version "1.4.6")
|
||||
(version "1.4.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1085,7 +1062,7 @@ console.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nj58dbv3c0rj8fngldkyrmdmacmjnbg8ch1c07ik97kqnnzd3l7"))))
|
||||
"03dchclmbjphirzqii4m0vyqfd0vw1k8mgpchmr13g3brlfzxd34"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list lowdown))
|
||||
(arguments
|
||||
@@ -2527,7 +2504,7 @@ system administrator.")
|
||||
(inputs
|
||||
(append (list coreutils zlib)
|
||||
(if (target-hurd?)
|
||||
(list libxcrypt)
|
||||
'()
|
||||
(list linux-pam))))
|
||||
(home-page "https://www.sudo.ws/")
|
||||
(synopsis "Run commands as root")
|
||||
@@ -3148,25 +3125,20 @@ track changes in important system configuration files.")
|
||||
(define-public libcap-ng
|
||||
(package
|
||||
(name "libcap-ng")
|
||||
(version "0.9")
|
||||
(version "0.8.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/stevegrubb/libcap-ng")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0izrrh2kmhi6dcy5iqcccmx90nwlaqcglhc60sl8n5ds8il14pi8"))))
|
||||
"1zy6ga6cqi6qvy2p3091i8zbillymyv01g6gmapriymx3i6jk99v"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--disable-static"
|
||||
"--without-python")))
|
||||
(inputs
|
||||
(list libbpf))
|
||||
(native-inputs
|
||||
(list autoconf automake libtool pkg-config))
|
||||
(home-page "https://people.redhat.com/sgrubb/libcap-ng/")
|
||||
(synopsis "Library for more easily working with POSIX capabilities")
|
||||
(description
|
||||
@@ -3381,17 +3353,7 @@ provides the following commands:
|
||||
(uri (pypi-uri "ansible" version))
|
||||
(sha256
|
||||
(base32 "0apj783acx4jzkf3bnibn4y5jc6jd8ly7l0rdqq8f1jpgxal933x"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: All tests errored with:
|
||||
;; from ...common.utils import (
|
||||
;; E ImportError: attempted relative import with no known parent package
|
||||
;;
|
||||
;; tests: 17 skipped, 1 warning, 1132 errors
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs (list ansible-core))
|
||||
;; The Ansible collections are found by ansible-core via the Python search
|
||||
;; path; the following search path ensures that they are found even when
|
||||
@@ -3420,7 +3382,7 @@ modules and plugins that extend Ansible.")
|
||||
(define-public debops
|
||||
(package
|
||||
(name "debops")
|
||||
(version "3.2.5")
|
||||
(version "3.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3429,14 +3391,13 @@ modules and plugins that extend Ansible.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "15wfhha2b315i15l40j3sylyvs3mdrfw5awzq4cix51l5jppx8z5"))
|
||||
(base32 "0y7bmrnynbw0hz88shfv301a9fsank2cx86fvb7jx6g6kkbsa9pz"))
|
||||
(patches
|
||||
(search-patches "debops-setup-py-avoid-git.patch"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs
|
||||
(list ansible
|
||||
bash-minimal
|
||||
encfs
|
||||
fuse-2
|
||||
util-linux ;; for umount
|
||||
@@ -4505,7 +4466,7 @@ you are running, what theme or icon set you are using, etc.")
|
||||
(define-public hyfetch
|
||||
(package
|
||||
(name "hyfetch")
|
||||
(version "2.0.5")
|
||||
(version "2.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4514,11 +4475,12 @@ you are running, what theme or icon set you are using, etc.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xb0m7mna6mm3gc823c40rfdhnw39afdr3g7kb4cqrc21s7fdd5y"))))
|
||||
(base32 "1h3s8m6csmxj815cpzh30m59132n8drxya0s2lh5ngjkpazgdnv3"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-hatchling
|
||||
python-pytest))
|
||||
(list python-pytest
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(inputs
|
||||
(list python-typing-extensions))
|
||||
(home-page "https://github.com/hykilpikonna/HyFetch")
|
||||
@@ -4724,7 +4686,7 @@ information tool.")
|
||||
(define-public fastfetch-minimal
|
||||
(package
|
||||
(name "fastfetch-minimal")
|
||||
(version "2.57.0")
|
||||
(version "2.55.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4733,13 +4695,10 @@ information tool.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1cipr083bf8frqijvxnff7bgzvzczxksicaqj0m22avyhzxc7p3d"))
|
||||
(base32 "0a2a8rp75nx16gvq0918999hifr2lph8dagpfipmyflaa5awlw54"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
(delete-file-recursively "src/3rdparty")
|
||||
(substitute* "src/modules/logo/logo.c"
|
||||
(("\"3rdparty/yyjson/yyjson.h\"")
|
||||
"<yyjson.h>"))))))
|
||||
(delete-file-recursively "src/3rdparty")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -4783,8 +4742,7 @@ system distribution, akin to many similar tools.")
|
||||
libxcb
|
||||
mesa
|
||||
wayland
|
||||
zlib ;for imagemagick and an #ifdef
|
||||
zfs)))))
|
||||
zlib))))) ;for imagemagick and an #ifdef
|
||||
|
||||
(define-public nnn
|
||||
(package
|
||||
@@ -4990,7 +4948,7 @@ launch daemons into the relevant nodes.")
|
||||
;; Fails to build as c++17.
|
||||
"CXXFLAGS=-std=c++14 -O2 -g")))
|
||||
(inputs
|
||||
(list openmpi munge launchmon libgcrypt zlib))
|
||||
(list openmpi munge launchmon libgcrypt))
|
||||
(synopsis "Scalable library loading in HPC environments")
|
||||
(description
|
||||
"Spindle is a tool for improving the performance of dynamic library and
|
||||
@@ -5142,102 +5100,36 @@ support forum. It runs with the @code{/exec} command in most IRC clients.")
|
||||
(define-public python-pyudev
|
||||
(package
|
||||
(name "python-pyudev")
|
||||
(version "0.24.4")
|
||||
(version "0.22.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pyudev/pyudev")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1m7xrsazbij5dcmnirn9hq6cwrfmzam5mr3kmvvcgnh24nhm401x"))))
|
||||
(build-system pyproject-build-system)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyudev" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xmj6l08iih2js9skjqpv4w7y0dhxyg91zmrs6v5aa65gbmipfv9"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 46 passed, 36 skipped, 79 deselected, 2 warnings
|
||||
#:test-flags
|
||||
;; These tests actually try to read /sys/devices:
|
||||
#~(list "-k" (string-join
|
||||
(list "not test_action"
|
||||
"test_action_mock"
|
||||
"test_ancestors"
|
||||
"test_anything"
|
||||
"test_asbool"
|
||||
"test_asint"
|
||||
"test_asstring"
|
||||
"test_attributes"
|
||||
"test_contains_mock"
|
||||
"test_deprecated_handler"
|
||||
"test_device_node"
|
||||
"test_device_number"
|
||||
"test_device_ordering"
|
||||
"test_device_path"
|
||||
"test_device_sys_name"
|
||||
"test_driver"
|
||||
"test_equality"
|
||||
"test_fake"
|
||||
"test_fake_monitor"
|
||||
"test_find_parent_no_devtype_mock"
|
||||
"test_find_parent_with_devtype_mock"
|
||||
"test_from_device_file"
|
||||
"test_from_device_number"
|
||||
"test_from_device_number_wrong_type"
|
||||
"test_from_name"
|
||||
"test_from_name_no_device_in_existing_subsystem"
|
||||
"test_from_path"
|
||||
"test_from_path_strips_leading_slash"
|
||||
"test_from_sys_path"
|
||||
"test_getitem"
|
||||
"test_getitem"
|
||||
"test_getitem_nonexisting"
|
||||
"test_hash"
|
||||
"test_inequality"
|
||||
"test_is_initialized"
|
||||
"test_is_initialized_mock"
|
||||
"test_iteration"
|
||||
"test_iteration_mock"
|
||||
"test_key_subset"
|
||||
"test_length"
|
||||
"test_links"
|
||||
"test_match"
|
||||
"test_match_parent"
|
||||
"test_match_property_bool"
|
||||
"test_match_subsystem"
|
||||
"test_match_subsystem_nomatch_complete"
|
||||
"test_match_subsystem_nomatch_unfulfillable"
|
||||
"test_name"
|
||||
"test_non_iterable"
|
||||
"test_parent"
|
||||
"test_path"
|
||||
"test_sequence_number"
|
||||
"test_subsystem"
|
||||
"test_sys_number"
|
||||
"test_sys_path"
|
||||
"test_tags"
|
||||
"test_time_since_initialized"
|
||||
"test_time_since_initialized_mock"
|
||||
"test_traverse"
|
||||
"test_type"
|
||||
"test_unsetitem")
|
||||
" and not "))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-ctypes-udev
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/pyudev/core.py"
|
||||
(("\"udev\"")
|
||||
(format #f "~s"
|
||||
(search-input-file inputs "/lib/libudev.so"))))
|
||||
(substitute* "src/pyudev/_ctypeslib/utils.py"
|
||||
`(#:tests? #f ; Tests require /sys
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-ctypes-udev
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((eudev (assoc-ref inputs "eudev")))
|
||||
(substitute* "src/pyudev/core.py"
|
||||
(("'udev'")
|
||||
(string-append "'" eudev "/lib/libudev.so'")))
|
||||
(substitute* "src/pyudev/_ctypeslib/utils.py"
|
||||
;; Use absolute paths instead of keys.
|
||||
(("= find_library") "= ")))))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(("= find_library") "= "))
|
||||
#t))))))
|
||||
(inputs
|
||||
(list eudev))
|
||||
(propagated-inputs
|
||||
(list python-six))
|
||||
(native-inputs
|
||||
(list python-docutils python-hypothesis python-mock python-pytest
|
||||
python-sphinx))
|
||||
(home-page "https://pyudev.readthedocs.io/")
|
||||
(synopsis "Python udev binding")
|
||||
(description "This package provides @code{udev} bindings for Python.")
|
||||
@@ -5278,7 +5170,7 @@ cache of unix and unix-like systems.")
|
||||
(define-public solaar
|
||||
(package
|
||||
(name "solaar")
|
||||
(version "1.1.18")
|
||||
(version "1.1.16")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5287,7 +5179,7 @@ cache of unix and unix-like systems.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0wf8rkm9anxr9iw51yxaav9cifpfkf1m4cw7i9rfsq8xb3aa2n9b"))))
|
||||
(base32 "1q05pcrl1pr6ls92m5k690qrwqb4nz1lganxvbj9b40w3c6nh5iy"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
@@ -5664,7 +5556,7 @@ entries, providing commands to add, remove, comment, and search.")
|
||||
(define-public nmrpflash
|
||||
(package
|
||||
(name "nmrpflash")
|
||||
(version "0.9.26")
|
||||
(version "0.9.25")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5673,7 +5565,7 @@ entries, providing commands to add, remove, comment, and search.")
|
||||
(url "https://github.com/jclehner/nmrpflash")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "19dna96qg32nscvsalgd0xslp3da84aj196cczdm0ixhv1k9pvi3"))
|
||||
(base32 "0xqvj52m6rk0gma8saqvp8b4jms9hca8i1v2kb5hcd6miaqgx276"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -5922,11 +5814,6 @@ This program allows you to view and manipulate this EEPROM list.")
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(setenv "CONFIG_SHELL" (which "bash"))
|
||||
(setenv "CFLAGS"
|
||||
(string-append "-g -O2 "
|
||||
"-Wno-error=implicit-int "
|
||||
"-Wno-error=implicit-function-declaration "
|
||||
"-Wno-error=incompatible-pointer-types"))
|
||||
(invoke "./configure"
|
||||
(string-append "--prefix="
|
||||
(assoc-ref outputs "out"))))))))
|
||||
@@ -7033,45 +6920,10 @@ with which other processes. It provides more usable versions of @command{ps},
|
||||
network, which causes enabled computers to power on.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public witr
|
||||
(package
|
||||
(name "witr")
|
||||
(version "0.1.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pranshuparmar/witr")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "18xx01lxd5j019gy9jmpms3awv4snlr028w01bfkyfid6hlwxbq2"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
#:import-path "github.com/pranshuparmar/witr/cmd/witr"
|
||||
#:unpack-path "github.com/pranshuparmar/witr"
|
||||
#:build-flags #~(list "-ldflags"
|
||||
(string-append "-X main.version=" #$version))))
|
||||
(home-page "https://github.com/pranshuparmar/witr")
|
||||
(synopsis "Utility to show why the process is running")
|
||||
(description
|
||||
"The @dfn{witr} (why-is-this-running), is a utility to show:
|
||||
@enumerate
|
||||
@item What is running?
|
||||
@item How did it start?
|
||||
@item What is keeping it running?
|
||||
@item What context does it belong to?
|
||||
@end enumerate
|
||||
It shows which process uses the port, and its information like process tree,
|
||||
working directory, user, pid, command, and so on.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public xfel
|
||||
(package
|
||||
(name "xfel")
|
||||
(version "1.3.5")
|
||||
(version "1.3.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -7079,7 +6931,7 @@ working directory, user, pid, command, and so on.")
|
||||
(url "https://github.com/xboot/xfel")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "1vmb3dr3vplxdxn9i8i4chdnfihb429rakvkqsfccb885ivkkn3b"))
|
||||
(base32 "15xlqkj7lf3xszgfyci32lrwdjhqmmm9clmwlp1qn6hywal3d2p4"))
|
||||
(file-name (git-file-name name version))))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
|
||||
+16
-61
@@ -9,7 +9,6 @@
|
||||
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -132,24 +131,29 @@ read all zbar supported codes.")
|
||||
(define-public zint
|
||||
(package
|
||||
(name "zint")
|
||||
(version "2.16.0")
|
||||
(version "2.15.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/zint/zint")
|
||||
(commit version)))
|
||||
(url "https://github.com/zint/zint")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zpv9ar1kfjl3bb27jc8hd8601zcda9yv4dz1jhxfhdsg6v4cdg7"))))
|
||||
(build-system cmake-build-system)
|
||||
"0arnpdqspyy3bxafm3lqc020bhwq3vazfnja2fk2s8c7mr9wimgr"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:disallowed-references (list qtbase)
|
||||
#:parallel-tests? #f ;test suite fails otherwise
|
||||
#:configure-flags #~(list "-DZINT_TEST=ON"
|
||||
"-DZINT_UNINSTALL=OFF")))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list libpng))
|
||||
(list #:qtbase qtbase
|
||||
#:parallel-tests? #f
|
||||
#:configure-flags
|
||||
#~(list "-DZINT_QT6=ON"
|
||||
"-DZINT_TEST=ON"
|
||||
"-DZINT_UNINSTALL=OFF")))
|
||||
(native-inputs
|
||||
(list pkg-config qttools))
|
||||
(inputs
|
||||
(list libpng
|
||||
qtsvg))
|
||||
(synopsis "Barcode encoding library")
|
||||
(description "Zint is a suite of programs to allow easy encoding of data in
|
||||
any of the wide range of public domain barcode standards and to allow
|
||||
@@ -157,23 +161,6 @@ integration of this capability into your own programs.")
|
||||
(home-page "https://www.zint.org.uk/")
|
||||
(license (list license:bsd-3 license:gpl3+))))
|
||||
|
||||
(define-public zint-with-qt
|
||||
(package/inherit zint
|
||||
(name "zint-with-qt")
|
||||
(build-system qt-build-system)
|
||||
(arguments (substitute-keyword-arguments (package-arguments zint)
|
||||
((#:disallowed-references references)
|
||||
(delete qtbase references))
|
||||
((#:qtbase _ #f)
|
||||
qtbase)
|
||||
((#:configure-flags flags ''())
|
||||
#~(cons "-DZINT_QT6=ON" #$flags))))
|
||||
(inputs (modify-inputs (package-inputs zint)
|
||||
;; The UI library of qttools is linked to; hence it must be used
|
||||
;; as an input rather than a native input.
|
||||
(append qtsvg qttools)))
|
||||
(synopsis "Barcode encoding library (with graphical user interface)")))
|
||||
|
||||
(define-public zxing-cpp
|
||||
(package
|
||||
(name "zxing-cpp")
|
||||
@@ -313,38 +300,6 @@ barcodes of the modern ECC200 variety. libdmtx is a shared library, allowing
|
||||
C/C++ programs to use its capabilities without restrictions or overhead.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public dmtx-utils
|
||||
(package
|
||||
(name "dmtx-utils")
|
||||
(version "0.7.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dmtx/dmtx-utils/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
"06m3qncqdlcnmw83n95yrx2alaq6bld320ax26z4ndnla41yk0p4")))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list autoconf automake libtool pkg-config))
|
||||
(inputs (list libdmtx imagemagick libjpeg-turbo))
|
||||
(home-page "https://github.com/dmtx/dmtx-utils/")
|
||||
(synopsis "Utilities for working with Data Matrix barcodes")
|
||||
(description
|
||||
"libdmtx is a software library that enables programs to read and write Data
|
||||
Matrix barcodes of the modern ECC200 variety. This package, dmtx-utils,
|
||||
provides command line utilities that allow scripts and command line users to
|
||||
use libdmtx functionality.
|
||||
|
||||
This package includes the following programs:
|
||||
@enumerate
|
||||
@item @code{dmtxquery}: Extract information from dmtxread output.
|
||||
@item @code{dmtxread}: Scan Data Matrix barcodes.
|
||||
@item @code{dmtxwrite}: Create Data Matrix barcodes.
|
||||
@end enumerate")
|
||||
(license (list license:lgpl2.1 license:gpl2))))
|
||||
|
||||
;; XXX: qt variant utils are broken: zbarcam-qt fails with segmentation fault.
|
||||
(define-public zbar
|
||||
(package
|
||||
|
||||
+12
-19
@@ -498,20 +498,25 @@ or text interfaces) or as a C++ library.")
|
||||
(define-public flint
|
||||
(package
|
||||
(name "flint")
|
||||
(version "3.4.0")
|
||||
(version "3.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://flintlib.org/download/flint-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0csa8n7d4l3mh892q36nhiv1r7bkb168vszz79p95bfy0jc6g5wl"))))
|
||||
(base32 "0gyjbkhwrmx2vgb1gailnmmzacl4aikzgi70dzmpf8lpfxny8yya"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list ntl))
|
||||
(propagated-inputs
|
||||
(list gmp mpfr)) ; header files included by flint.h or mpfr_mat.h
|
||||
(arguments
|
||||
;; Parallel tests failed in the past on ARM, this may need to be
|
||||
;; tested again.
|
||||
`(#:parallel-tests? #f
|
||||
;; Prevent build machine specifics from ending up in the binary.
|
||||
'(#:configure-flags '("--disable-assembly")))
|
||||
#:configure-flags '("--disable-assembly")))
|
||||
(synopsis "Fast library for number theory")
|
||||
(description
|
||||
"FLINT is a C library for number theory. It supports arithmetic
|
||||
@@ -529,18 +534,6 @@ fast arithmetic.")
|
||||
(properties
|
||||
'((release-monitoring-url . "http://flintlib.org/downloads.html")))))
|
||||
|
||||
(define-public flint-3.3
|
||||
(package
|
||||
(inherit flint)
|
||||
(version "3.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://flintlib.org/download/flint-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1yzasdcv90f6w926p9g92cli2daxvb0mh2s1w1qskkvn618hxmv4"))))))
|
||||
|
||||
(define-public python-flint
|
||||
(package
|
||||
(name "python-flint")
|
||||
@@ -565,7 +558,7 @@ fast arithmetic.")
|
||||
python-pytest))
|
||||
(inputs
|
||||
(list gmp
|
||||
flint-3.3))
|
||||
flint))
|
||||
(propagated-inputs
|
||||
(list python-numpy))
|
||||
(home-page "https://fredrikj.net/python-flint/")
|
||||
@@ -627,7 +620,7 @@ matrices, and polynomials over the integers and over finite fields.")
|
||||
(define-public singular
|
||||
(package
|
||||
(name "singular")
|
||||
(version "4.4.1p5")
|
||||
(version "4.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -643,7 +636,7 @@ matrices, and polynomials over the integers and over finite fields.")
|
||||
"/singular-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pwygpmhf4sddf1v5x5fr1kbbkb29wlfd5yyj7lryvhbs45s9rdw"))))
|
||||
"16xlhar1krlskh9gxbw1gw4qi8248c95w71vzxdw72avs2pblkva"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -805,7 +798,7 @@ a C program.")
|
||||
(native-inputs
|
||||
(list googletest
|
||||
pkg-config
|
||||
python-numpy
|
||||
python-numpy-2
|
||||
python-wrapper))
|
||||
(inputs
|
||||
(list fftw
|
||||
|
||||
+138
-137
@@ -37,7 +37,6 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system android-ndk)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
@@ -468,17 +467,29 @@ the corresponding @command{rsync} flags.")
|
||||
(package
|
||||
(name "mkbootimg")
|
||||
(version (android-platform-version))
|
||||
(source (android-platform-system-core version))
|
||||
(build-system copy-build-system)
|
||||
(source (origin
|
||||
(inherit (android-platform-system-core version))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-plan
|
||||
''(("mkbootimg/mkbootimg" "bin/")
|
||||
("mkbootimg/bootimg.h" "include/"))))
|
||||
(inputs (list python-wrapper))
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'enter-source
|
||||
(lambda _ (chdir "mkbootimg") #t))
|
||||
(delete 'configure)
|
||||
(delete 'build)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(include (string-append out "/include")))
|
||||
(install-file "mkbootimg" bin)
|
||||
(install-file "bootimg.h" include)
|
||||
#t))))))
|
||||
(home-page "https://developer.android.com/studio/command-line/adb.html")
|
||||
(synopsis "Tool to create Android boot images")
|
||||
(description "This package provides a tool to create Android Boot Images.")
|
||||
(description "This package provides a tool to create Android Boot
|
||||
Images.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public android-safe-iop
|
||||
@@ -972,7 +983,7 @@ The standard for the ETC1 texture format can be found at
|
||||
(define-public git-repo
|
||||
(package
|
||||
(name "git-repo")
|
||||
(version "2.60.1")
|
||||
(version "2.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -981,90 +992,88 @@ The standard for the ETC1 texture format can be found at
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (string-append "git-repo-" version "-checkout"))
|
||||
(sha256
|
||||
(base32 "1cx1b0zmvnmglyn6kbdifcy6w3gm89z2icw4pykxm0wyasy7sc1c"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32 "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list
|
||||
;; XXX: Requires GnuPG.
|
||||
"--deselect=tests/test_wrapper.py::SetupGnuPG::test_full"
|
||||
;; This is expected, as the package is patched for this.
|
||||
"-k" "not test_fetches_when_stale")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-executable-paths
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* '("repo" "git_command.py")
|
||||
(("^GIT = 'git'")
|
||||
(format #f "GIT = '~a'"
|
||||
(search-input-file inputs "/bin/git"))))
|
||||
(substitute* "git_config.py"
|
||||
((" command_base = \\['ssh',")
|
||||
(format #f " command_base = ['~a',"
|
||||
(search-input-file inputs "/bin/ssh"))))))
|
||||
(add-before 'build 'do-not-self-update
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Setting the REPO_MAIN variable to an absolute file name is
|
||||
;; enough to have _FindRepo return the store main.py file. The
|
||||
;; self update mechanism is activated with the call to _Init() in
|
||||
;; main(), so we bypass it.
|
||||
|
||||
;; Ticket requesting upstream to provide a mean to disable the
|
||||
;; self update mechanism:
|
||||
;; https://bugs.chromium.org/p/gerrit/issues/detail?id=12407.
|
||||
(let ((repo-main (string-append #$output
|
||||
"/share/git-repo/main.py")))
|
||||
(substitute* "repo"
|
||||
(("^REPO_MAIN = .*")
|
||||
(format #f "REPO_MAIN = ~s~%" repo-main))
|
||||
((" _Init\\(args, gitc_init=\\(cmd ==.*" all)
|
||||
(string-append "True #" all)))
|
||||
;; Prevent repo from trying to git describe its version from
|
||||
;; the (disabled) self updated copy.
|
||||
(substitute* "git_command.py"
|
||||
(("ver = getattr\\(RepoSourceVersion.*")
|
||||
(format #f "ver = ~s~%" #$version)))
|
||||
(substitute* "subcmds/version.py"
|
||||
(("rp_ver = .*")
|
||||
(format #f "rp_ver = ~s~%" #$version)))
|
||||
;; Prevent repo from adding its (disabled) self update copy to
|
||||
;; the list of projects to fetch when using 'repo sync'.
|
||||
(substitute* "subcmds/sync.py"
|
||||
(("to_fetch\\.extend\\(all_projects\\).*" all)
|
||||
(string-append "#" all))
|
||||
(("self\\._Fetch\\(to_fetch")
|
||||
"self._Fetch(all_projects")
|
||||
(("_PostRepoFetch\\(rp, opt\\.repo_verify).*" all)
|
||||
(string-append "pass #" all))))))
|
||||
(delete 'build) ;nothing to build
|
||||
(add-before 'check 'configure-git
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
;; XXX: pytest needs this for conftest to import local modules.
|
||||
(setenv "PYTHONPATH" (getcwd))
|
||||
(invoke "git" "config" "--global" "user.email" "you@example.com")
|
||||
(invoke "git" "config" "--global" "user.name" "Your Name")))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((bin-dir (string-append #$output "/bin"))
|
||||
(repo-dir (string-append #$output "/share/"
|
||||
#$name)))
|
||||
(mkdir-p bin-dir)
|
||||
(mkdir-p repo-dir)
|
||||
(copy-recursively "." repo-dir)
|
||||
(delete-file-recursively (string-append repo-dir "/tests"))
|
||||
(symlink (string-append repo-dir "/repo")
|
||||
(string-append bin-dir "/repo"))))))))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'set-executable-paths
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(git (assoc-ref inputs "git"))
|
||||
(ssh (assoc-ref inputs "ssh")))
|
||||
(substitute* '("repo" "git_command.py")
|
||||
(("^GIT = 'git'")
|
||||
(string-append "GIT = '" git "/bin/git'")))
|
||||
(substitute* "git_config.py"
|
||||
((" command_base = \\['ssh',")
|
||||
(string-append " command_base = ['" ssh "/bin/ssh',")))
|
||||
#t)))
|
||||
(add-before 'build 'do-not-self-update
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Setting the REPO_MAIN variable to an absolute file name is
|
||||
;; enough to have _FindRepo return the store main.py file. The
|
||||
;; self update mechanism is activated with the call to _Init() in
|
||||
;; main(), so we bypass it.
|
||||
|
||||
;; Ticket requesting upstream to provide a mean to disable the
|
||||
;; self update mechanism:
|
||||
;; https://bugs.chromium.org/p/gerrit/issues/detail?id=12407.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(repo-main (string-append out "/share/git-repo/main.py")))
|
||||
(substitute* "repo"
|
||||
(("^REPO_MAIN = .*")
|
||||
(format #f "REPO_MAIN = ~s~%" repo-main))
|
||||
((" _Init\\(args, gitc_init=\\(cmd ==.*" all)
|
||||
(string-append "True #" all)))
|
||||
;; Prevent repo from trying to git describe its version from
|
||||
;; the (disabled) self updated copy.
|
||||
(substitute* "git_command.py"
|
||||
(("ver = getattr\\(RepoSourceVersion.*")
|
||||
(format #f "ver = ~s~%" ,version)))
|
||||
(substitute* "subcmds/version.py"
|
||||
(("rp_ver = .*")
|
||||
(format #f "rp_ver = ~s~%" ,version)))
|
||||
;; Prevent repo from adding its (disabled) self update copy to
|
||||
;; the list of projects to fetch when using 'repo sync'.
|
||||
(substitute* "subcmds/sync.py"
|
||||
(("to_fetch\\.extend\\(all_projects\\).*" all)
|
||||
(string-append "#" all))
|
||||
(("self\\._Fetch\\(to_fetch")
|
||||
"self._Fetch(all_projects")
|
||||
(("_PostRepoFetch\\(rp, opt\\.repo_verify).*" all)
|
||||
(string-append "#" all))))))
|
||||
(delete 'build) ; nothing to build
|
||||
(add-before 'check 'configure-git
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
(invoke "git" "config" "--global" "user.email" "you@example.com")
|
||||
(invoke "git" "config" "--global" "user.name" "Your Name")))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "./run_tests")))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin-dir (string-append out "/bin"))
|
||||
(repo-dir (string-append out "/share/" ,name)))
|
||||
(mkdir-p bin-dir)
|
||||
(mkdir-p repo-dir)
|
||||
(copy-recursively "." repo-dir)
|
||||
(delete-file-recursively (string-append repo-dir "/tests"))
|
||||
(symlink (string-append repo-dir "/repo")
|
||||
(string-append bin-dir "/repo"))
|
||||
#t))))))
|
||||
(inputs
|
||||
;; TODO: Add git-remote-persistent-https once it is available in guix
|
||||
(list git openssh))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
`(("git" ,git)
|
||||
("ssh" ,openssh)))
|
||||
(native-inputs
|
||||
`(("pytest" ,python-pytest)))
|
||||
(home-page "https://code.google.com/p/git-repo/")
|
||||
(synopsis "Helps to manage many Git repositories")
|
||||
(description
|
||||
"Repo is a tool built on top of Git. Repo helps manage many Git
|
||||
repositories, does the uploads to revision control systems, and automates
|
||||
(description "Repo is a tool built on top of Git. Repo helps manage many
|
||||
Git repositories, does the uploads to revision control systems, and automates
|
||||
parts of the development workflow. Repo is not meant to replace Git, only to
|
||||
make it easier to work with Git. The repo command is an executable Python
|
||||
script that you can put anywhere in your path.")
|
||||
@@ -1297,58 +1306,50 @@ emulator inside the comfort of Emacs.")
|
||||
(package
|
||||
(name "enjarify")
|
||||
(version "1.0.3")
|
||||
(home-page "https://github.com/Storyyeller/enjarify")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Storyyeller/enjarify")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(patches
|
||||
(search-patches "enjarify-setup-py.patch"))
|
||||
(sha256
|
||||
(base32 "1nam7h1g4f1h6jla4qcjjagnyvd24dv6d5445w04q8hx07nxdapk"))))
|
||||
(build-system pyproject-build-system)
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(patches
|
||||
(search-patches "enjarify-setup-py.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nam7h1g4f1h6jla4qcjjagnyvd24dv6d5445w04q8hx07nxdapk"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda _
|
||||
(substitute* "enjarify/runtests.py"
|
||||
(("from \\.main") "from enjarify.main")
|
||||
(("from \\.jvm") "from enjarify.jvm"))
|
||||
;; Upstream adjusted this test in commit:
|
||||
;; 3ae884a6485af82d300515813f537685b08dd800
|
||||
(substitute* "tests/test2/expected.txt"
|
||||
(("^20") "0"))
|
||||
;; Upstream removed this argument in order to support 32-bit
|
||||
;; architectures. commit:
|
||||
;; 4be0111d879aa95fdc0d9f24fe529f8c664d4093
|
||||
(substitute* "enjarify/runtests.py"
|
||||
(("java -Xss515m") "java "))))
|
||||
(add-after 'install 'install-enjarify-wrapper
|
||||
(lambda _
|
||||
(let ((bin (string-append #$output "/bin")))
|
||||
(install-file "enjarify.sh" bin)
|
||||
(symlink (string-append bin "/enjarify.sh")
|
||||
(string-append bin "/enjarify")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "python" "-m" "enjarify.runtests")))))))
|
||||
(native-inputs
|
||||
(list openjdk12
|
||||
python-setuptools))
|
||||
(home-page "https://github.com/Storyyeller/enjarify")
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'fixup-expected-test-results
|
||||
;; Upstream adjusted this test in commit:
|
||||
;; 3ae884a6485af82d300515813f537685b08dd800
|
||||
(lambda _
|
||||
(substitute* "tests/test2/expected.txt"
|
||||
(("^20") "0"))
|
||||
#t))
|
||||
(add-before 'check 'drop-java-xss-argument
|
||||
;; Upstream removed this argument in order to support 32-bit
|
||||
;; architectures. commit: 4be0111d879aa95fdc0d9f24fe529f8c664d4093
|
||||
(lambda _
|
||||
(substitute* "enjarify/runtests.py"
|
||||
(("java -Xss515m") "java "))
|
||||
#t))
|
||||
(add-after 'install 'install-enjarify-wrapper
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out")))
|
||||
(mkdir-p (string-append out "/bin/"))
|
||||
(copy-file "enjarify.sh" (string-append out "/bin/enjarify"))
|
||||
#t))))))
|
||||
(native-inputs (list openjdk12))
|
||||
(synopsis "Translate Dalvik bytecode to equivalent Java bytecode")
|
||||
(description
|
||||
"Android applications are Java programs that run on a customized virtual
|
||||
machine, which is part of the Android operating system, the Dalvik VM. Their
|
||||
bytecode differs from the bytecode of normal Java applications. Enjarify can
|
||||
translate the Dalvik bytecode back to equivalent Java bytecode, which
|
||||
simplifies the analysis of Android applications. It's an alternative fork of
|
||||
not maintained Goole's project https://github.com/google/enjarify.")
|
||||
(description "Android applications are Java programs that run on a
|
||||
customized virtual machine, which is part of the Android operating system, the
|
||||
Dalvik VM. Their bytecode differs from the bytecode of normal Java
|
||||
applications. Enjarify can translate the Dalvik bytecode back to equivalent
|
||||
Java bytecode, which simplifies the analysis of Android applications.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public android-file-transfer
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
(define-public libapparmor
|
||||
(package
|
||||
(name "libapparmor")
|
||||
(version "4.1.2")
|
||||
(version "3.1.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -50,7 +50,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0p3vq0awvn4ar6sblmhcs0i9m7zc9kbwm3f3zcggx4lqgmy8s18b"))))
|
||||
"1h77a7ww0rxfv5nsi1iy4fffklxdr2vq6r7kdsqm15yysglhbjyi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
@@ -84,7 +84,6 @@
|
||||
(chdir "libraries/libapparmor"))))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
autoconf-archive
|
||||
automake
|
||||
bison
|
||||
dejagnu
|
||||
|
||||
+512
-688
File diff suppressed because it is too large
Load Diff
+36
-201
@@ -132,7 +132,6 @@
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages ninja)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
#:use-module (gnu packages oneapi)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages pulseaudio) ;libsndfile, libsamplerate
|
||||
@@ -152,10 +151,10 @@
|
||||
#:use-module (gnu packages serialization)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages tbb)
|
||||
#:use-module (gnu packages telephony)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages toolkits)
|
||||
#:use-module (gnu packages valgrind)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages video)
|
||||
@@ -1225,7 +1224,7 @@ engineers, musicians, soundtrack editors and composers.")
|
||||
(define-public audacity
|
||||
(package
|
||||
(name "audacity")
|
||||
(version "3.7.7")
|
||||
(version "3.7.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1234,7 +1233,7 @@ engineers, musicians, soundtrack editors and composers.")
|
||||
(commit (string-append "Audacity-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0h2xdhbx6bjhlk2mxqalpbpzjcdj0sb8wf1rp3vj0fbgvxy1y92k"))
|
||||
(base32 "184hak52p00qid0i581gky7076fl5rjxwqly0fw7ix8yi6j8li4h"))
|
||||
(patches (search-patches "audacity-ffmpeg-fallback.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
@@ -3636,31 +3635,27 @@ cross-platform audio input/output stream library.")
|
||||
(define-public python-pulsectl
|
||||
(package
|
||||
(name "python-pulsectl")
|
||||
(version "24.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mk-fg/python-pulse-control")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1f15w2312j2yc9bs689dvdgq891sjrp5x3q1vf08743px70gxc1m"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;tests try to communicate with PulseAudio
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "pulsectl/_pulsectl.py"
|
||||
(("libpulse.so.0")
|
||||
(search-input-file inputs "/lib/libpulse.so.0"))))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(version "24.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pulsectl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0r9igs365cqgrn1m55a8qjz0hc446nwjm3p3i9kphbj5gl7dazk9"))))
|
||||
(build-system python-build-system)
|
||||
(inputs (list pulseaudio))
|
||||
(arguments
|
||||
`(#:tests? #f ; tests try to communicate with PulseAudio
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "pulsectl/_pulsectl.py"
|
||||
(("libpulse.so.0")
|
||||
(string-append (search-input-file inputs "/lib/libpulse.so.0")))))))))
|
||||
(home-page "https://github.com/mk-fg/python-pulse-control")
|
||||
(synopsis "Python bindings for mixer-like controls in PulseAudio")
|
||||
(synopsis
|
||||
"Python bindings for mixer-like controls in PulseAudio")
|
||||
(description
|
||||
"This package provides a Python high-level interface and ctypes-based
|
||||
bindings for PulseAudio (libpulse), to use in simple synchronous code.
|
||||
@@ -3825,21 +3820,16 @@ one-dimensional sample-rate conversion library.")
|
||||
(version "0.2.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/NFJones/python3-midi")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python3_midi" version))
|
||||
(sha256
|
||||
(base32 "1zihn7n9dr9jjgkjlpad515hhwh22k94irb21ji793sr5crh5s15"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; XXX: midi module has not been packaged yet.
|
||||
(native-inputs (list python-setuptools))
|
||||
(base32
|
||||
"1z9j1w7mpn3xhkcpxmqm5rvmj6nffb5rf14bv7n3sdh07nf6n7sf"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/NFJones/python3-midi")
|
||||
(synopsis "Python MIDI API")
|
||||
(description
|
||||
"This package provides a python API to read and write MIDI files.")
|
||||
(description "This package provides a python API to read and write MIDI
|
||||
files.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-wavefile
|
||||
@@ -4329,126 +4319,6 @@ different audio devices such as ALSA or PulseAudio.")
|
||||
(license:non-copyleft
|
||||
"file://src/TPCircularBuffer/README.markdown")))))
|
||||
|
||||
(define-public projectm-eval
|
||||
(package
|
||||
(name "projectm-eval")
|
||||
(version "1.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/projectM-visualizer/projectm-eval")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04m5k6azji0fk3japzd8v4k04affbfpangfw4fgvk3ac5w75872a"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list googletest))
|
||||
(home-page "https://github.com/projectM-visualizer/projectm-eval")
|
||||
(synopsis "Re-implementation of the NullSoft Expression Evaluation Library")
|
||||
(description "This is an open-source re-implementation of the NullSoft
|
||||
Expression Evaluation Library 2, as used in the Milkdrop music visualizer.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public projectm
|
||||
(package
|
||||
(name "projectm")
|
||||
(version "4.1.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/projectM-visualizer/projectm")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0yw1q6zmx2683immxfxn2kxjwwv6xk9m6yja701m4z2brhdx1iw1"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list
|
||||
"-DBUILD_TESTING=ON" "-DENABLE_SDL_UI=OFF" "-DENABLE_SYSTEM_GLM=ON")))
|
||||
(inputs (list mesa projectm-eval))
|
||||
(native-inputs (list googletest glm))
|
||||
(home-page "https://github.com/projectM-visualizer/projectm")
|
||||
(synopsis "Milkdrop-like music visualizer")
|
||||
(description "projectM is an open-source re-implementation of the MilkDrop
|
||||
visualizer. This package contains only the libprojectm library.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public projectm-presets
|
||||
(let ((commit "0180df21f5e0bd39b9060cc5de420ed2f1f9e509")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "projectm-presets")
|
||||
(version (git-version "0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/projectM-visualizer/presets-cream-of-the-crop")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1g64s6v4xbmx0skiy3ag9889adl8rvwahzd7rmrchiwbd1gap771"))))
|
||||
(build-system copy-build-system)
|
||||
(home-page "https://github.com/projectM-visualizer/presets-cream-of-the-crop")
|
||||
(synopsis "Curated selection of ProjectM/Milkdrop presets")
|
||||
(description "A curated selection of 9,795 ProjectM/Milkdrop presets,
|
||||
meant to be included in any projectM-based application.")
|
||||
(license license:public-domain))))
|
||||
|
||||
(define-public projectm-sdl
|
||||
(let ((source-commit "72e5632897c9d9bef452c679d3cbe8c7b4bb4157")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "projectm-sdl")
|
||||
(version (git-version "0" revision source-commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/projectM-visualizer/frontend-sdl-cpp")
|
||||
(commit source-commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "14vsjn589lrcwkz0d4528i33aslqsgh7m17kxj0fyd21pwj5n54l"))
|
||||
(modules '((guix build utils)))
|
||||
;;There are no icon files to install.
|
||||
(snippet #~(substitute* "install.cmake" (("install_icon.+") "")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;There are no tests.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'link-imgui
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(begin (delete-file-recursively "vendor/imgui")
|
||||
(symlink (assoc-ref %build-inputs "imgui-source")
|
||||
"vendor/imgui")))))
|
||||
#:configure-flags
|
||||
#~(list
|
||||
;; There are texture repositories from both ProjectM and
|
||||
;; Milkdrop, but their licensing is unclear, so they are not
|
||||
;; packaged. ProjectM functions fine with only presets.
|
||||
(string-append "-DDEFAULT_PRESETS_PATH="
|
||||
(assoc-ref %build-inputs "projectm-presets"))
|
||||
;; The config location search path can be changed, but the
|
||||
;; install path stays the same, so only this value works.
|
||||
;; And without it, only the binary's path is checked.
|
||||
(string-append "-DDEFAULT_CONFIG_PATH="
|
||||
#$output "/share/projectMSDL/"))))
|
||||
(inputs (list freetype poco projectm projectm-presets sdl2))
|
||||
(native-inputs (list `("imgui-source" ,(package-source imgui))))
|
||||
(home-page "https://github.com/projectM-visualizer/frontend-sdl-cpp")
|
||||
(synopsis "Reference frontend for the libprojectm music visualizer")
|
||||
(description "This is a simple Milkdrop-like music visualizer that uses
|
||||
the projectM library to visualize audio input.")
|
||||
(license license:gpl3+)))) ;presets
|
||||
|
||||
(define-public qjackctl
|
||||
(package
|
||||
(name "qjackctl")
|
||||
@@ -4784,21 +4654,21 @@ tempo and pitch of an audio recording independently of one another.")
|
||||
(define-public rtmidi
|
||||
(package
|
||||
(name "rtmidi")
|
||||
(version "6.0.0")
|
||||
(version "5.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://caml.music.mcgill.ca/~gary/rtmidi"
|
||||
(uri (string-append "https://www.music.mcgill.ca/~gary/rtmidi"
|
||||
"/release/rtmidi-" version ".tar.gz"))
|
||||
(file-name (string-append "rtmidi-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0nyvck6qlncbfpplgxspjk77fmi05w78ik0cf8039hj29gvcqq2r"))))
|
||||
"1ff2yfq3k4l209fr71v3w98fpjjv1chs09vkbmxj03lcikahxns8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list alsa-lib jack-2))
|
||||
(native-inputs
|
||||
(list autoconf automake libtool pkg-config))
|
||||
(home-page "https://caml.music.mcgill.ca/~gary/rtmidi")
|
||||
(home-page "https://www.music.mcgill.ca/~gary/rtmidi")
|
||||
(synopsis "Cross-platform MIDI library for C++")
|
||||
(description
|
||||
"RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific
|
||||
@@ -6324,41 +6194,6 @@ the following features:
|
||||
")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public normalize
|
||||
(package
|
||||
(name "normalize")
|
||||
(version "0.7.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://download.savannah.gnu.org/releases/normalize/normalize-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1n5khss10vjjp6w69q9qcl4kqfkd0pr555lgqghrchn6rjms4mb0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags
|
||||
#~(list "CFLAGS=-g -O2 -Wno-error=implicit-function-declaration")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-shell-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "test/Makefile.in"
|
||||
(("/bin/sh")
|
||||
(search-input-file inputs "/bin/sh"))))))))
|
||||
(inputs (list libmad))
|
||||
(home-page "https://normalize.nongnu.org/")
|
||||
(synopsis "Audio track volume normalizer")
|
||||
(description
|
||||
"@code{normalize} is an audio track normalizer.
|
||||
For a collection of tracks with varying volumes, it is able to
|
||||
make the loudness consistent between them. This is helpful
|
||||
when making mixtapes, for example.
|
||||
It can work with WAV and MP3 files.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public lv2-speech-denoiser
|
||||
(let ((commit "04cfba929630404f8d4f4ca5bac8d9b09a99152f")
|
||||
(revision "1"))
|
||||
@@ -7865,7 +7700,7 @@ and DSD streams.")
|
||||
(define-public qpwgraph
|
||||
(package
|
||||
(name "qpwgraph")
|
||||
(version "0.9.8")
|
||||
(version "0.9.7")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -7874,7 +7709,7 @@ and DSD streams.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1d45qzjiixjmzjpaa04qvnz69bpf6dhlcq56zrgps507rr413fbx"))))
|
||||
"1j3na9svy0rvz84rl9g2szl3rqxfyi5rqk1i12hdiwnyi6q7ppxi"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; no tests
|
||||
@@ -8083,7 +7918,7 @@ verifies checksums.")
|
||||
pipewire
|
||||
rnnoise
|
||||
speexdsp
|
||||
onetbb
|
||||
tbb
|
||||
zita-convolver
|
||||
soundtouch))
|
||||
;; Propagating these allows EasyEffects to find the plugins via their
|
||||
|
||||
@@ -2039,7 +2039,7 @@ CONFIG_SCSI_LOWLEVEL=y
|
||||
# CONFIG_SCSI_DEBUG is not set
|
||||
# CONFIG_SCSI_PMCRAID is not set
|
||||
# CONFIG_SCSI_PM8001 is not set
|
||||
CONFIG_SCSI_VIRTIO=m
|
||||
# CONFIG_SCSI_VIRTIO is not set
|
||||
# CONFIG_SCSI_DH is not set
|
||||
# end of SCSI device support
|
||||
|
||||
|
||||
+33
-92
@@ -21,7 +21,7 @@
|
||||
;;; Copyright © 2021 Timothy Sample <samplet@ngyro.com>
|
||||
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
|
||||
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
|
||||
;;; Copyright © 2022, 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2022 Feng Shu <tumashu@163.com>
|
||||
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
|
||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
@@ -140,7 +140,7 @@
|
||||
tzdata-for-tests
|
||||
python-mock))
|
||||
(propagated-inputs
|
||||
(list python-pygobject python-urllib3))
|
||||
(list python-lockfile python-pygobject python-urllib3))
|
||||
(inputs
|
||||
(list bash-minimal ; to run the wrapped program
|
||||
dbus ; dbus-launch (Gio backend)
|
||||
@@ -357,62 +357,6 @@ random access nor for in-place modification. This package provides the
|
||||
@command{bsdcat}, @command{bsdcpio} and @command{bsdtar} commands.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
;;; TODO: core update (20k rebuilds).
|
||||
(define-public libarchive-next
|
||||
(package
|
||||
(inherit libarchive)
|
||||
(name "libarchive")
|
||||
(version "3.8.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append "https://libarchive.org/downloads/libarchive-"
|
||||
version ".tar.xz")
|
||||
(string-append "https://github.com/libarchive/libarchive"
|
||||
"/releases/download/v" version "/libarchive-"
|
||||
version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0wxdr7qws1z1b1gp5jsm7n2ccnjlmrnds52d5wc5xkzagyslgf67"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments libarchive)
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
(delete 'patch-pwd)
|
||||
(add-before 'build 'patch-commands
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("/bin/pwd") (which "pwd")))
|
||||
(substitute* "test_utils/test_main.c"
|
||||
(("/bin/sh") (which "sh")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key parallel-build? tests? #:allow-other-keys)
|
||||
(if tests?
|
||||
(begin
|
||||
;; These environment variables are taken from
|
||||
;; <https://raw.githubusercontent.com/libarchive/libarchive/refs/heads/master/.github/workflows/ci.yml>
|
||||
(setenv "SKIP_OPEN_FD_ERR_TEST" "1")
|
||||
(setenv "IGNORE_TRAVERSALS_TEST4" "1")
|
||||
|
||||
;; XXX: The test_owner_parse, test_read_disk, and
|
||||
;; test_write_disk_lookup tests expect user 'root' to
|
||||
;; exist, but the chroot's /etc/passwd doesn't have it
|
||||
;; (see:
|
||||
;; <https://github.com/libarchive/libarchive/issues/2794>).
|
||||
(invoke "make" "-j" (number->string
|
||||
(if parallel-build?
|
||||
(parallel-job-count)
|
||||
1))
|
||||
"libarchive_test"
|
||||
"bsdcpio_test"
|
||||
"bsdtar_test")
|
||||
;; XXX: This glob disables too much.
|
||||
(invoke "./libarchive_test" "^test_*_disk*")
|
||||
(invoke "./bsdcpio_test" "^test_owner_parse")
|
||||
(invoke "./bsdtar_test"))
|
||||
;; Tests may be disabled if cross-compiling.
|
||||
(format #t "Test suite not run.~%"))))))))))
|
||||
|
||||
(define-public rdup
|
||||
(package
|
||||
(name "rdup")
|
||||
@@ -630,13 +574,13 @@ rsnapshot uses hard links to deduplicate identical files.")
|
||||
(define-public borg
|
||||
(package
|
||||
(name "borg")
|
||||
(version "1.4.3")
|
||||
(version "1.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "borgbackup" version))
|
||||
(sha256
|
||||
(base32 "07s4jqcv03s98hi6lvqpvmnnhl532qnvv11mjy2xc08rbmsgmfvr"))
|
||||
(base32 "0f9qj05i02aj17lhk97fqyknb1jx3h9xr8d569mhp44xq7qziyxq"))
|
||||
(snippet
|
||||
#~(begin
|
||||
;; Delete files generated by Cython. We used to have a regex that
|
||||
@@ -1265,42 +1209,39 @@ compression parameters used by Gzip.")
|
||||
(define-public borgmatic
|
||||
(package
|
||||
(name "borgmatic")
|
||||
(version "2.0.13")
|
||||
(version "2.0.7")
|
||||
(source
|
||||
(origin
|
||||
;; PyPI archive does not contain NEWS file needed for one test.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://projects.torsion.org/borgmatic-collective/borgmatic")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "borgmatic" version))
|
||||
(sha256
|
||||
(base32
|
||||
"05w3j4knhsg4w0a0yrz8c7lvz3vp3nf95ddmql9i8mqknjqddm1v"))))
|
||||
(base32 "01l44ny2zyn7x1hhbvhhhwr12jipcjxl3j1cz13kf6c3bdfwms8y"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'configure
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Set absolute store path to borg.
|
||||
(substitute* "borgmatic/commands/borgmatic.py"
|
||||
(("\\.get\\('local_path', 'borg'\\)")
|
||||
(string-append ".get('local_path', '"
|
||||
(search-input-file inputs "bin/borg")
|
||||
"')")))
|
||||
(substitute* "tests/unit/commands/test_borgmatic.py"
|
||||
(("(module.get_local_path.+ == )'borg'" all start)
|
||||
(string-append start "'"
|
||||
(search-input-file inputs "bin/borg")
|
||||
"'")))))
|
||||
(add-before 'check 'set-path
|
||||
(lambda _
|
||||
;; Tests require the installed executable.
|
||||
(setenv "PATH"
|
||||
(string-append #$output "/bin" ":"
|
||||
(getenv "PATH"))))))))
|
||||
;; XXX: all tests fail with error: AttributeError: module
|
||||
;; '_pytest.runner' has no attribute 'call_runtest_hook'.
|
||||
#:tests? #f
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'configure
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Set absolute store path to borg.
|
||||
(substitute* "borgmatic/commands/borgmatic.py"
|
||||
(("\\.get\\('local_path', 'borg'\\)")
|
||||
(string-append ".get('local_path', '"
|
||||
(search-input-file inputs "bin/borg")
|
||||
"')")))
|
||||
(substitute* "tests/unit/commands/test_borgmatic.py"
|
||||
(("(module.get_local_path.+ == )'borg'" all start)
|
||||
(string-append start "'"
|
||||
(search-input-file inputs "bin/borg")
|
||||
"'")))))
|
||||
(add-before 'check 'set-path
|
||||
(lambda _
|
||||
;; Tests require the installed executable.
|
||||
(setenv "PATH"
|
||||
(string-append #$output "/bin" ":"
|
||||
(getenv "PATH"))))))))
|
||||
(native-inputs
|
||||
(list python-flexmock
|
||||
python-pytest
|
||||
@@ -1325,7 +1266,7 @@ borgmatic is powered by borg.")
|
||||
(define-public vorta
|
||||
(package
|
||||
(name "vorta")
|
||||
(version "0.11.1")
|
||||
(version "0.10.3")
|
||||
;; The test folder is not included in the PyPI archive.
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -1335,7 +1276,7 @@ borgmatic is powered by borg.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"16r9ch80i6nfngah634id16fqnmn62ayh60j62zxn5cfivcn3wsq"))))
|
||||
"0b4042a0lpbmwlmbh5559b2x9vr2055w6jjrs7088n45d7rkn4sn"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+117
-165
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015-2026 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015-2025 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
|
||||
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
|
||||
@@ -716,14 +716,14 @@ sapiens @code{dbSNP} build 131.")
|
||||
(define-public r-reactome-db
|
||||
(package
|
||||
(name "r-reactome-db")
|
||||
(version "1.95.0")
|
||||
(version "1.94.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "reactome.db" version 'annotation))
|
||||
(sha256
|
||||
(base32
|
||||
"1b87byr45cmqa7jyd5fw3askmrzfhdljjp2d7jcmm88baf45mfg6"))))
|
||||
"0a6gx6iss43innhkhydqmv4jpnwkkjfdl32zxr4kjvm57xb2k4p0"))))
|
||||
(properties `((upstream-name . "reactome.db")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -3406,14 +3406,14 @@ the @code{HorvathMethylChip40} (Mammal40) array.")
|
||||
(define-public r-systempiperdata
|
||||
(package
|
||||
(name "r-systempiperdata")
|
||||
(version "2.14.2")
|
||||
(version "2.14.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "systemPipeRdata" version
|
||||
'experiment))
|
||||
(sha256
|
||||
(base32 "0qqkdrqvr0wic1hwrmhd6024w83gs66pdp0mc876qc68mv26nzwb"))))
|
||||
(base32 "10q3dj16pkjdmqhxqfi255sszh7y1k6yw7j77n0gbh5223ay4zgw"))))
|
||||
(properties `((upstream-name . "systemPipeRdata")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-biocgenerics r-biostrings r-jsonlite r-remotes))
|
||||
@@ -4639,13 +4639,13 @@ for use in Bioconductor’s AnnotationHub.")
|
||||
(define-public r-anvil
|
||||
(package
|
||||
(name "r-anvil")
|
||||
(version "1.22.3")
|
||||
(version "1.22.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "AnVIL" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0na8m3d2svrcblz8xzwb560sar39anx1bp0i787rw9sk23f2kwrc"))))
|
||||
"08r41q8zb72kbfslw851152h4k2q7jzkk0d85d6rmvdd3r1qd9bw"))))
|
||||
(properties `((upstream-name . "AnVIL")))
|
||||
(build-system r-build-system)
|
||||
;; Tests require Internet access.
|
||||
@@ -5504,13 +5504,13 @@ cohorts of interdependent C++ libraries.")
|
||||
(define-public r-atena
|
||||
(package
|
||||
(name "r-atena")
|
||||
(version "1.16.1")
|
||||
(version "1.16.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "atena" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wqgyk256d1dg4a9d9wwyfzw2my3sidjjgg0gmvnyfx8hrxav82g"))))
|
||||
"02jbsk6inh63pcsandwik8cc0dd1q30raddkgxs7pszwlkdk1q73"))))
|
||||
(properties `((upstream-name . "atena")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -6418,13 +6418,13 @@ how the coverage distributed across the genome.")
|
||||
(define-public r-cpp11bigwig
|
||||
(package
|
||||
(name "r-cpp11bigwig")
|
||||
(version "0.1.3")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "cpp11bigwig" version))
|
||||
(sha256
|
||||
(base32 "0p6s8h4a8a1j367iiq2n01bl6f6aijsli9lbm0k98hzfw8bqgdqk"))))
|
||||
(base32 "0r8z8d1vsll2sdczcc982iqzilc2cph56jkm1va72mq8yds5pc5a"))))
|
||||
(properties
|
||||
'((upstream-name . "cpp11bigwig")
|
||||
(updater-extra-inputs . ("curl"))))
|
||||
@@ -7470,13 +7470,13 @@ dynamic documents and vignettes.")
|
||||
(define-public r-escape
|
||||
(package
|
||||
(name "r-escape")
|
||||
(version "2.6.2")
|
||||
(version "2.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "escape" version))
|
||||
(sha256
|
||||
(base32 "1siimy3qsyjw6in2x2kf07ilyglamcq79n9lcysq755k1g2pz689"))))
|
||||
(base32 "0cq6xlfvmxs3c6923ck3ipx1k6yh9kna3fnfahdsxb4b17hsrhzv"))))
|
||||
(properties
|
||||
'((upstream-name . "escape")
|
||||
(updater-extra-native-inputs
|
||||
@@ -7585,13 +7585,13 @@ arbitrary genomic intervals along chromosomal ideogram.")
|
||||
(define-public r-immapex
|
||||
(package
|
||||
(name "r-immapex")
|
||||
(version "1.4.3")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "immApex" version))
|
||||
(sha256
|
||||
(base32 "0hv342gn73y6rzdjmzyv1kwp8gbazqbcnzwh8iz69x57kx94mmvj"))))
|
||||
(base32 "0xwj70fgfhqilc4clm54lj7h1q1742339z44nwbl1sjh049x388f"))))
|
||||
(properties `((upstream-name . "immApex")))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
@@ -8015,13 +8015,13 @@ objects can be used within Nebulosa.")
|
||||
(define-public r-netgsa
|
||||
(package
|
||||
(name "r-netgsa")
|
||||
(version "4.0.7")
|
||||
(version "4.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "netgsa" version))
|
||||
(sha256
|
||||
(base32 "0a38gg33h5qmihg61jh8lpckzhp7yrbgsdn8lqk7j0gcp5fc3ylv"))))
|
||||
(base32 "0zdj464mlhm71cwgn6jhzb6nrpnwy6php7gifgzag7pin9zh0l5y"))))
|
||||
(properties `((upstream-name . "netgsa")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-annotationdbi
|
||||
@@ -8038,6 +8038,7 @@ objects can be used within Nebulosa.")
|
||||
r-magrittr
|
||||
r-matrix
|
||||
r-msigdbr
|
||||
r-org-hs-eg-db
|
||||
r-quadprog
|
||||
r-rcpp
|
||||
r-rcppeigen
|
||||
@@ -9484,13 +9485,13 @@ global-scaling and full-quantile normalization.")
|
||||
(define-public r-edger
|
||||
(package
|
||||
(name "r-edger")
|
||||
(version "4.8.2")
|
||||
(version "4.8.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "edgeR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"190dfvj5xfldiqppyqw1f0xxrjmg1wdsw32fn40k0yf55zrm256w"))))
|
||||
"0r0384f1kxx861diwrwrrqqy0jv0qyc06rfhwl0x1m4lahcb3sk3"))))
|
||||
(properties `((upstream-name . "edgeR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -9510,16 +9511,16 @@ CAGE.")
|
||||
(define-public r-enhancedvolcano
|
||||
(package
|
||||
(name "r-enhancedvolcano")
|
||||
(version "1.28.2")
|
||||
(version "1.26.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "EnhancedVolcano" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gsanshy8ryg67xpfhysv0f6dax2niblz4qrakkcq5ki2l1d6dpw"))))
|
||||
"19dxqk5dk9443a3949y3b2dhcphhn2lvi6fvlakqxll2lvhjqivi"))))
|
||||
(properties `((upstream-name . "EnhancedVolcano")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-ggplot2 r-ggrepel r-scales))
|
||||
(propagated-inputs (list r-ggplot2 r-ggrepel))
|
||||
(native-inputs (list r-biocgenerics r-knitr r-runit))
|
||||
(home-page "https://github.com/kevinblighe/EnhancedVolcano")
|
||||
(synopsis
|
||||
@@ -9848,13 +9849,13 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
|
||||
(define-public r-genomeinfodb
|
||||
(package
|
||||
(name "r-genomeinfodb")
|
||||
(version "1.46.2")
|
||||
(version "1.46.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomeInfoDb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1akwckiya3nv0j193h2nilg3240v3anrvvzjzqcnwwdiqvmsl68n"))))
|
||||
"03mxzpz9pwhmg63is4pn5gbrkcphfj9nyzdpxymhy9s8nv3hzfd9"))))
|
||||
(properties
|
||||
'((upstream-name . "GenomeInfoDb")
|
||||
(updater-ignored-native-inputs
|
||||
@@ -10057,13 +10058,13 @@ provide added flexibility for data combination and manipulation.")
|
||||
(define-public r-genomicranges
|
||||
(package
|
||||
(name "r-genomicranges")
|
||||
(version "1.62.1")
|
||||
(version "1.62.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicRanges" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mf5gcd33i65blgmihd1m48y32x14l8jxmihps2763i8vivipz30"))))
|
||||
"0wsbl49c542k107cgczsw5dynnrrwk9hslks229zpvxlcvapmivv"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomicRanges")
|
||||
(updater-extra-native-inputs . ("r-runit"))
|
||||
@@ -10259,13 +10260,13 @@ Enrichment Analysis} (GSEA).")
|
||||
(define-public r-gsva
|
||||
(package
|
||||
(name "r-gsva")
|
||||
(version "2.4.4")
|
||||
(version "2.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GSVA" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rvzy8rx3pxy4slmmbrzydgwv3w6pjfvgz8xnwkm7zl18ik1y3h6"))))
|
||||
"0axpdds05vmrbpixdbp50a84rj93cm9cx56y10giknwljsa7zqfm"))))
|
||||
(properties `((upstream-name . "GSVA")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-biobase
|
||||
@@ -10274,12 +10275,12 @@ Enrichment Analysis} (GSEA).")
|
||||
r-biocsingular
|
||||
r-cli
|
||||
r-delayedarray
|
||||
r-delayedmatrixstats
|
||||
r-gseabase
|
||||
r-hdf5array
|
||||
r-iranges
|
||||
r-matrix
|
||||
r-matrixgenerics
|
||||
r-memuse
|
||||
r-s4arrays
|
||||
r-s4vectors
|
||||
r-singlecellexperiment
|
||||
@@ -10578,36 +10579,6 @@ from a @code{GRangesList} representation and provides a semblance of a
|
||||
rectangular dataset.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-rarr
|
||||
(package
|
||||
(name "r-rarr")
|
||||
(version "1.10.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rarr" version))
|
||||
(sha256
|
||||
(base32 "1j7zpz0fb996yywvrqbnw67p8a2m4y77kx6ijq7wgald6qg0y1v1"))))
|
||||
(properties `((upstream-name . "Rarr")))
|
||||
(build-system r-build-system)
|
||||
(inputs (list zlib))
|
||||
(propagated-inputs (list r-biocgenerics
|
||||
r-curl
|
||||
r-delayedarray
|
||||
r-jsonlite
|
||||
r-paws-storage
|
||||
r-r-utils))
|
||||
(native-inputs (list r-knitr r-testthat r-withr))
|
||||
(home-page "https://huber-group-embl.github.io/Rarr/")
|
||||
(synopsis "Read Zarr files in R")
|
||||
(description
|
||||
"The Zarr specification defines a format for chunked, compressed,
|
||||
N-dimensional arrays. Its design allows efficient access to subsets of the
|
||||
stored array, and supports both local and cloud storage systems. Rarr aims to
|
||||
implement this specification in R with minimal reliance on external tools or
|
||||
libraries.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-rdisop
|
||||
(package
|
||||
(name "r-rdisop")
|
||||
@@ -11979,12 +11950,7 @@ of mass spectrometry based proteomics data.")
|
||||
'(modify-phases %standard-phases
|
||||
;; Needed for r-r-cache
|
||||
(add-after 'unpack 'set-HOME
|
||||
(lambda _ (setenv "HOME" "/tmp")))
|
||||
(add-after 'unpack 'disable-bad-tests
|
||||
(lambda _
|
||||
;; This checks for a file hash.
|
||||
(substitute* "inst/unitTests/test_data_load.R"
|
||||
(("test_data_load_mzR") "skip_test_data_load_mzR")))))))
|
||||
(lambda _ (setenv "HOME" "/tmp"))))))
|
||||
(propagated-inputs
|
||||
(list r-annotationdbi
|
||||
r-annotationhub
|
||||
@@ -12790,13 +12756,13 @@ library implementing most of the pipeline's features.")
|
||||
(define-public r-rcy3
|
||||
(package
|
||||
(name "r-rcy3")
|
||||
(version "2.30.1")
|
||||
(version "2.30.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "RCy3" version))
|
||||
(sha256
|
||||
(base32 "09bqpmahrrcvychx1mjqrb1zf9z45dpr5vv6nbnp9v67yy6qbzlf"))))
|
||||
(base32 "1xc19lvdz6yyg2844j83idv64adfrw1bkpiazd4w39xa46l46lck"))))
|
||||
(properties `((upstream-name . "RCy3")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-base64enc
|
||||
@@ -13002,13 +12968,13 @@ browser.")
|
||||
(define-public r-rhdf5
|
||||
(package
|
||||
(name "r-rhdf5")
|
||||
(version "2.54.1")
|
||||
(version "2.54.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "rhdf5" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1brp806vagja149w6faldir5vfcrlvhqdakb3q5crr5wxfqp7qk5"))))
|
||||
"1psfaqha2sflpp0sm0j3wcxscxb9490pbck69izrsfrrg75jbf7n"))))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -13263,13 +13229,13 @@ pre-processed data.")
|
||||
(define-public r-rtracklayer
|
||||
(package
|
||||
(name "r-rtracklayer")
|
||||
(version "1.70.1")
|
||||
(version "1.70.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "rtracklayer" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g43xcps4jajrvwbn5ky8rb4yax8kywjqx5xl8syjiyv1jjqbd08"))))
|
||||
"1i9yx0ngx97lmw7pcdj89da6bb0w6gpc98mrwy9prlmml78d81dn"))))
|
||||
(properties
|
||||
'((updater-ignored-native-inputs
|
||||
. ("r-bsgenome-hsapiens-ucsc-hg19"
|
||||
@@ -13597,13 +13563,13 @@ different experiment.")
|
||||
(define-public r-screpertoire
|
||||
(package
|
||||
(name "r-screpertoire")
|
||||
(version "2.6.2")
|
||||
(version "2.5.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "scRepertoire" version))
|
||||
(sha256
|
||||
(base32 "1n8vdia8bsxikl3vfsnafz1i04qn4kqcrchjrbkzrskbl28mkzq5"))))
|
||||
(base32 "0ijycpmaivcqqmdc90h5jx8rcwg9112pl2mdpms1hgvww70x3s6w"))))
|
||||
(properties
|
||||
'((upstream-name . "scRepertoire")))
|
||||
(build-system r-build-system)
|
||||
@@ -13619,14 +13585,14 @@ different experiment.")
|
||||
(string-append m "skip('guix')\n"))
|
||||
((".*getContigDoublets works for inputs with doublets.*" m)
|
||||
(string-append m "skip('guix')\n")))
|
||||
(substitute* "tests/testthat/test-combineContigs.R"
|
||||
((".*combineBCR works.*" m)
|
||||
(string-append m "skip('guix')\n")))
|
||||
(substitute* "tests/testthat/test-loadContigs.R"
|
||||
((".*loadContigs correctly auto-detects and processes various formats.*" m)
|
||||
(string-append m "skip('guix')\n"))
|
||||
((".*loadContigs correctly processes various formats from URL.*" m)
|
||||
(string-append m "skip('guix')\n")))
|
||||
;; There is code running outside of testthat that tries to
|
||||
;; download files off the Internet.
|
||||
(delete-file "tests/testthat/test-combineContigs.R")
|
||||
;; These fail with: Unknown property set: 'kideraFactors'.
|
||||
(substitute* "tests/testthat/test-positionalProperty.R"
|
||||
((".*positionalProperty: Output structure is correct.*" m)
|
||||
@@ -13866,13 +13832,13 @@ reference point and sorted by a user defined feature.")
|
||||
(define-public r-sesame
|
||||
(package
|
||||
(name "r-sesame")
|
||||
(version "1.28.1")
|
||||
(version "1.28.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "sesame" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0nfaw8fkszrw0z7fjsxa1qng1cajsqp90k9jhf00j7pb1b0m3wch"))))
|
||||
"0268p9yvzsnrjjbmbyqzhz9vnc6227200639kyn7yi2daa6fkzav"))))
|
||||
(properties `((upstream-name . "sesame")))
|
||||
(build-system r-build-system)
|
||||
;; Tests use ExperimentHub, so needs Internet access.
|
||||
@@ -14144,13 +14110,13 @@ level.")
|
||||
(define-public r-tcgautils
|
||||
(package
|
||||
(name "r-tcgautils")
|
||||
(version "1.30.2")
|
||||
(version "1.30.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "TCGAutils" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zwzx7mfp4s0v1rdjsyxj4l9w360g4qm3am8yf5lsd0biciqqh93"))))
|
||||
"1dc5d3ag89jl3dnajqwy92ih1fzzzmmx8r9a14g59fpc9wx5z7fm"))))
|
||||
(properties `((upstream-name . "TCGAutils")))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
@@ -14315,13 +14281,13 @@ methylation data.")
|
||||
(define-public r-transcriptr
|
||||
(package
|
||||
(name "r-transcriptr")
|
||||
(version "1.38.3")
|
||||
(version "1.37.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "transcriptR" version))
|
||||
(sha256
|
||||
(base32 "08m2wdxwv0d9np40hg7p1bnx9lw6944hyjf2a72k5jd6d26d7qgj"))))
|
||||
(base32 "18gxiwl1i5v10rxdprnpjylx57p2zfgpm5akb2vn7mzj24n4fhh3"))))
|
||||
(properties
|
||||
'((upstream-name . "transcriptR")
|
||||
(updater-ignored-native-inputs
|
||||
@@ -14345,6 +14311,7 @@ methylation data.")
|
||||
(list r-biocgenerics
|
||||
r-caret
|
||||
r-chipseq
|
||||
r-e1071
|
||||
r-genomeinfodb
|
||||
r-genomicalignments
|
||||
r-genomicfeatures
|
||||
@@ -14584,13 +14551,13 @@ tools either included in speaq or available elsewhere on CRAN.")
|
||||
(define-public r-spectra
|
||||
(package
|
||||
(name "r-spectra")
|
||||
(version "1.20.1")
|
||||
(version "1.20.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Spectra" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qxil7dinx9kwm7zhzk5s0aa3kn3svkx30inqcnzpa1hyxslrzgg"))))
|
||||
"0ajaxgsvg6aav2l74zmar76pwbjnrzd5sv8xv20v3jdcnwq33ghw"))))
|
||||
(properties
|
||||
'((upstream-name . "Spectra")
|
||||
;; Avoid dependency cycle.
|
||||
@@ -14869,14 +14836,14 @@ unmodeled, or latent sources of noise.")
|
||||
(define-public r-systempiper
|
||||
(package
|
||||
(name "r-systempiper")
|
||||
(version "2.16.3")
|
||||
(version "2.16.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "systemPipeR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0maixi0hwqzkpiq60hf60x4q3gv3hkvmrqh3ygv0fk63g1k9f6cj"))))
|
||||
"1mpwjz0r5cy2r5745b4splygg6jycfnfrqrca9vqic3bnpsrc6gf"))))
|
||||
(properties `((upstream-name . "systemPipeR")))
|
||||
(build-system r-build-system)
|
||||
;; Tests fail because genWorkenvir fails to set up the environment.
|
||||
@@ -14954,16 +14921,16 @@ dependencies between GO terms can be implemented and applied.")
|
||||
(define-public r-txdbmaker
|
||||
(package
|
||||
(name "r-txdbmaker")
|
||||
(version "1.6.2")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "txdbmaker" version))
|
||||
(sha256
|
||||
(base32 "0m84qprk6z4ggj8qsds4lj2gbrvs0mvq63sg5f7i4m2kfawc5qpw"))))
|
||||
(base32 "0rczknnbccc2vlbs0mkv89fqmr1myxjba12dvvyqfpnh7pcxfihp"))))
|
||||
(properties
|
||||
'((upstream-name . "txdbmaker")
|
||||
(updater-extra-native-inputs . ("r-genomeinfodbdata" "r-runit"))))
|
||||
(updater-extra-native-inputs . ("r-runit"))))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -15008,13 +14975,13 @@ convenient formats.")
|
||||
(define-public r-tximport
|
||||
(package
|
||||
(name "r-tximport")
|
||||
(version "1.38.2")
|
||||
(version "1.38.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "tximport" version))
|
||||
(sha256
|
||||
(base32
|
||||
"06kz3fq2hh23z41vn7vb369y2xrkj77q9l0h5zjs94f4qp9fpsh6"))))
|
||||
"1r07xnks4byp5hr51gq1j04bdrkb0axhi0bbhjpzbvgyc3fj67i3"))))
|
||||
(properties
|
||||
'((updater-extra-native-inputs
|
||||
. ("r-matrix" "r-rhdf5"))))
|
||||
@@ -15045,29 +15012,29 @@ of gene-level counts.")
|
||||
(define-public r-valr
|
||||
(package
|
||||
(name "r-valr")
|
||||
(version "0.9.1")
|
||||
(version "0.8.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "valr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1f0q7c8mz7w2ih5m3bfb0g5y9lx5lmn1ifj234k75ksffwwi4lz9"))))
|
||||
"138s6ydqhhik0ymfby9sdnpyjj56m98yqav4vmgv619fhialyx0y"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-broom
|
||||
r-cli
|
||||
r-cpp11
|
||||
r-cpp11bigwig
|
||||
r-dplyr
|
||||
r-ggplot2
|
||||
r-lifecycle
|
||||
r-rcpp
|
||||
r-readr
|
||||
r-rlang
|
||||
r-stringr
|
||||
r-tibble))
|
||||
(native-inputs
|
||||
(list r-knitr r-testthat))
|
||||
(list r-knitr r-testthat r-vdiffr))
|
||||
(home-page "https://github.com/rnabioco/valr")
|
||||
(synopsis "Genome interval arithmetic in R")
|
||||
(description
|
||||
@@ -15367,13 +15334,13 @@ libraries for systems that do not have these available via other means.")
|
||||
(define-public r-zellkonverter
|
||||
(package
|
||||
(name "r-zellkonverter")
|
||||
(version "1.20.1")
|
||||
(version "1.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "zellkonverter" version))
|
||||
(sha256
|
||||
(base32 "1si2g69l4scgkfrgas7fj6klj1rn1bcnch9panv564nyvkfrlmmv"))))
|
||||
(base32 "1w9kkx5qxskkxmq5y0x58pim5n9i4hms5mhm6y2n58qd1ja2qap2"))))
|
||||
(properties `((upstream-name . "zellkonverter")))
|
||||
(build-system r-build-system)
|
||||
;; This uses r-basilisk, which attempts to set up a Conda environment.
|
||||
@@ -15966,13 +15933,13 @@ expressed genes in DNA microarray experiments.")
|
||||
(define-public r-graph
|
||||
(package
|
||||
(name "r-graph")
|
||||
(version "1.88.1")
|
||||
(version "1.88.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "graph" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0l4gsrb1s9dc0yq6cawb8bpci0byhxmvfhrp9q8gxhvn8asxh6zb"))))
|
||||
"1sxn2h83j3qawp9jwpg63g50px2gk5dmlmdy6a7jwx3hb44sppbm"))))
|
||||
(properties '((updater-extra-native-inputs . ("r-xml"))))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
@@ -17227,14 +17194,14 @@ data.")
|
||||
(define-public r-ggtree
|
||||
(package
|
||||
(name "r-ggtree")
|
||||
(version "4.0.4")
|
||||
(version "4.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ggtree" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qi5nispv0cirfayijybnn1nr8l6sb2adnic3y37qm3yv91w6s6z"))))
|
||||
"0vk1l1jmw4acgmpmgcx0pz7j39yp391mba8q1xnc8rmlfw51qvxj"))))
|
||||
(properties `((upstream-name . "ggtree")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -18548,37 +18515,23 @@ standardization of the analyses and the development of best practices.")
|
||||
(define-public r-microbiomestat
|
||||
(package
|
||||
(name "r-microbiomestat")
|
||||
(version "1.3")
|
||||
(version "1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "MicrobiomeStat" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02xg8l4d0z5wrdrm5dj5a0q51vsbhf3f6z2lk8294c4d85s09dhl"))))
|
||||
(properties
|
||||
'((upstream-name . "MicrobiomeStat")
|
||||
(updater-extra-inputs . ("nlopt"))
|
||||
(updater-extra-native-inputs . ("pkg-config"))))
|
||||
"1kpc68sl63k104xy7r6f3gxan0yx0rs7ksn8ldbq8xla00ddflgq"))))
|
||||
(properties `((upstream-name . "MicrobiomeStat")))
|
||||
(build-system r-build-system)
|
||||
(inputs (list nlopt))
|
||||
(native-inputs (list pkg-config))
|
||||
(propagated-inputs (list r-bbmisc
|
||||
r-dplyr
|
||||
r-foreach
|
||||
(propagated-inputs (list r-foreach
|
||||
r-ggplot2
|
||||
r-ggrepel
|
||||
r-lhs
|
||||
r-lmertest
|
||||
r-mass
|
||||
r-matrix
|
||||
r-matrixstats
|
||||
r-mlr
|
||||
r-mlrmbo
|
||||
r-modeest
|
||||
r-paramhelpers
|
||||
r-rcpp
|
||||
r-rcpparmadillo
|
||||
r-smoof
|
||||
r-statmod))
|
||||
(home-page "https://cran.r-project.org/package=MicrobiomeStat")
|
||||
(synopsis "Statistical methods for microbiome compositional data")
|
||||
@@ -19001,14 +18954,14 @@ surface of a flowcell.")
|
||||
(define-public r-mutoss
|
||||
(package
|
||||
(name "r-mutoss")
|
||||
(version "0.1-14")
|
||||
(version "0.1-13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "mutoss" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gswlg6n2pz1z8gyap6syggvyv3bfzr5kmxcwimhbixm36xzfkhz"))))
|
||||
"0hgi9wpy3ai23dk6cdba6r118vvmgw210racsg3n1p24rv6ny3xn"))))
|
||||
(properties `((upstream-name . "mutoss")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -19028,14 +18981,14 @@ are standardized and usable by the accompanying mutossGUI package.")
|
||||
(define-public r-metap
|
||||
(package
|
||||
(name "r-metap")
|
||||
(version "1.13")
|
||||
(version "1.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "metap" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02vn6gb39il341nc10arx81bfhzsqy6gd3sc6la4lyfa5r1ysncl"))))
|
||||
"0icrk4krmzgawpzf80rm82x2lvxdqlvjz91v0n3p4j4hy041yrbc"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-lattice
|
||||
@@ -19380,14 +19333,14 @@ presence of additional sites within the allowed window size.")
|
||||
(define-public r-fgsea
|
||||
(package
|
||||
(name "r-fgsea")
|
||||
(version "1.36.2")
|
||||
(version "1.36.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "fgsea" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0njza9d0g7ybzxqmsdbhikl1w7g94amvld5n2yvn7lqh0ksnz6fn"))))
|
||||
"040z8k28zg9rlvlrywp1ah39pcll74jdmfzhy2r7rijmmvw8ypip"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-bh
|
||||
@@ -19482,14 +19435,14 @@ correspondence between different data sources.")
|
||||
(define-public r-enrichplot
|
||||
(package
|
||||
(name "r-enrichplot")
|
||||
(version "1.30.4")
|
||||
(version "1.30.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "enrichplot" version))
|
||||
(sha256
|
||||
(base32
|
||||
"080q91ll8rvqf93hcmxc7kjbmmihyh0vrpxck2pqrwglbqxm4xll"))))
|
||||
"04dyxwlry1nqihi1s6h3j1dxn2wh8sip16s82lk0jrsfjr07c2mz"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-aplot
|
||||
@@ -19502,13 +19455,13 @@ correspondence between different data sources.")
|
||||
r-ggtree
|
||||
r-gosemsim
|
||||
r-igraph
|
||||
r-magrittr
|
||||
r-plyr
|
||||
r-purrr
|
||||
r-rcolorbrewer
|
||||
r-reshape2
|
||||
r-rlang
|
||||
r-scatterpie
|
||||
r-tidydr
|
||||
r-yulab-utils))
|
||||
(native-inputs
|
||||
(list r-knitr))
|
||||
@@ -19550,14 +19503,14 @@ attempts to assess their statistical significance.")
|
||||
(define-public r-clusterprofiler
|
||||
(package
|
||||
(name "r-clusterprofiler")
|
||||
(version "4.18.4")
|
||||
(version "4.18.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "clusterProfiler" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00kd5zmzd9pm0mxd2r95l7j4mvqgnbbkaqs2rb5fh06r3rk2c14p"))))
|
||||
"0m26gbiaff72jivvk6ncgrd4mhq5y0asc7mnjn1qqrba4k63x9nr"))))
|
||||
(properties
|
||||
'((upstream-name . "clusterProfiler")
|
||||
(updater-extra-native-inputs . ("r-org-hs-eg-db"))))
|
||||
@@ -20625,14 +20578,14 @@ decomposition algorithms.")
|
||||
(define-public r-yapsa
|
||||
(package
|
||||
(name "r-yapsa")
|
||||
(version "1.36.1")
|
||||
(version "1.36.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "YAPSA" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0anx6jd3vjj4bi3dzaygd6xvb26yfpmssfcl7rfnv4fv1h5hsyl7"))))
|
||||
"0i6s8vhk8ar62g9fzn5zr76w94i11qy7g7gfbbk3kmvg3g4rrj4c"))))
|
||||
(properties `((upstream-name . "YAPSA")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -20985,13 +20938,13 @@ data for high-throughput, untargeted analyte profiling.")
|
||||
(define-public r-wppi
|
||||
(package
|
||||
(name "r-wppi")
|
||||
(version "1.18.0")
|
||||
(version "1.16.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "wppi" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q3745vxarns4kp069ga8nilfz21i0rmaxbllxcys3rvwc7jr77d"))))
|
||||
"17rkfbhy0r22ayca4c7n8gr2kjgbj3r4gk1rh423cp566x0n7pcp"))))
|
||||
(properties `((upstream-name . "wppi")))
|
||||
(build-system r-build-system)
|
||||
;; This is necessary because omnipathr attempts to write a configuration
|
||||
@@ -21796,13 +21749,13 @@ and to both short and long sequence reads.")
|
||||
(define-public r-flames
|
||||
(package
|
||||
(name "r-flames")
|
||||
(version "2.4.2")
|
||||
(version "2.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "FLAMES" version))
|
||||
(sha256
|
||||
(base32 "1w9z79w3jm6piijyhqfgx7m7zldq9f6q161h92idxn5aw3my1c18"))
|
||||
(base32 "1ls28dc01bm0bmf304ybgy8w89q2wwccf9krk44cn0bhynm7bsq4"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(delete-file-recursively "src/submodule/minimap2"))))
|
||||
@@ -22053,14 +22006,14 @@ interact with gated cytometry data.")
|
||||
(define-public r-flowcore
|
||||
(package
|
||||
(name "r-flowcore")
|
||||
(version "2.22.1")
|
||||
(version "2.22.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "flowCore" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19arbmdhdk41ayd2pyaizcq8w3s125nh5wb71v80g5800jbaqkis"))))
|
||||
"0rmlff8d36z8d59s9w4va0csdklz6vkl8k0ywyg6rgmg5k327jqd"))))
|
||||
(properties
|
||||
'((upstream-name . "flowCore")
|
||||
(updater-ignored-native-inputs
|
||||
@@ -22158,14 +22111,14 @@ manipulation of flow cytometry data.")
|
||||
(define-public r-ggcyto
|
||||
(package
|
||||
(name "r-ggcyto")
|
||||
(version "1.38.1")
|
||||
(version "1.38.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ggcyto" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13yg17hn6f6gsfr44gkm6rx0p1d0lvhp8rywyhpby4ckqzw6xwxb"))))
|
||||
"0gpqwg8f2pwb9z9rjdmiy6x60zry2wwlf5xq44scv5dm6l2jfapw"))))
|
||||
(properties
|
||||
`((upstream-name . "ggcyto")
|
||||
;; Avoid dependency cycle.
|
||||
@@ -22316,14 +22269,14 @@ for other R packages to compile and link against.")
|
||||
(define-public r-flowworkspace
|
||||
(package
|
||||
(name "r-flowworkspace")
|
||||
(version "4.22.1")
|
||||
(version "4.22.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "flowWorkspace" version))
|
||||
(sha256
|
||||
(base32
|
||||
"05d2xz9y8w1q4zgfmqm6drlgyfrnl2q2b42x7mgfzsva36dgnv0f"))))
|
||||
"1hy44nyhgk8z85lis8nz1djsma4wyanixibs7qds0xgimk5r9qqq"))))
|
||||
(properties
|
||||
`((upstream-name . "flowWorkspace")
|
||||
;; Avoid dependency cycles.
|
||||
@@ -23373,14 +23326,14 @@ populations, splice site strength, conservation, etc.")
|
||||
(define-public r-variancepartition
|
||||
(package
|
||||
(name "r-variancepartition")
|
||||
(version "1.40.1")
|
||||
(version "1.40.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "variancePartition" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xqy4jl8im7i4kd4iwn8hvhy172fzsadyn90kprihmvccmpd5cr3"))))
|
||||
"0inwnrk6jppjfmsin7zjlfg250y7q7049x5nis2xqn559pfls37s"))))
|
||||
(properties
|
||||
'((upstream-name . "variancePartition")
|
||||
(updater-extra-native-inputs . ("r-rfast"))))
|
||||
@@ -23403,7 +23356,6 @@ populations, splice site strength, conservation, etc.")
|
||||
r-matrixstats
|
||||
r-pbkrtest
|
||||
r-rdpack
|
||||
r-reformulas
|
||||
r-remacor
|
||||
r-reshape2
|
||||
r-rhpcblasctl
|
||||
@@ -23492,13 +23444,13 @@ directly interact with SingleCellExperiment and Seurat objects.")
|
||||
(define-public r-ucsc-utils
|
||||
(package
|
||||
(name "r-ucsc-utils")
|
||||
(version "1.6.1")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "UCSC.utils" version))
|
||||
(sha256
|
||||
(base32 "14j337wylpxkx4k1fi3f7p5fs1xy538jmzha2fqcwfx75h3x0v75"))))
|
||||
(base32 "0ylb4d3bsl859609b4wsclhhv2zrvhkcr25q5mv6ywyvppri3j1y"))))
|
||||
(properties `((upstream-name . "UCSC.utils")))
|
||||
(build-system r-build-system)
|
||||
;; Tests require Internet access.
|
||||
@@ -24484,13 +24436,13 @@ monograph.")
|
||||
(define-public r-bioccheck
|
||||
(package
|
||||
(name "r-bioccheck")
|
||||
(version "1.46.3")
|
||||
(version "1.46.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "BiocCheck" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ygspnxj1jqx4mk3b26ff4k6h47spdq6y8a4nh1dgdrqk2wrx0ic"))))
|
||||
"0fb114cdk8xl9r4kgvril4b8zw082f32mdrxwk564byz5r5r41cl"))))
|
||||
(properties
|
||||
`((upstream-name . "BiocCheck")))
|
||||
(build-system r-build-system)
|
||||
@@ -25015,14 +24967,14 @@ distance measures.")
|
||||
(define-public r-pcatools
|
||||
(package
|
||||
(name "r-pcatools")
|
||||
(version "2.22.1")
|
||||
(version "2.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "PCAtools" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ngm3227viafcjmq5c25ihj3lrrs98c1rs5zx2ims6xzv68dbzwz"))))
|
||||
"0jik25f4rpmr8gjy22i2myjhgsgqgslfjfskhv5bgkmqwbn931ar"))))
|
||||
(properties `((upstream-name . "PCAtools")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -25298,13 +25250,13 @@ routines.")
|
||||
(define-public r-s4arrays
|
||||
(package
|
||||
(name "r-s4arrays")
|
||||
(version "1.10.1")
|
||||
(version "1.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "S4Arrays" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rviwjscy9c4vbdhg080p91jwlavs8agcc3z435z4dijb1syvkm3"))))
|
||||
"1vbvr0vfwl36i7dv09ibzs7mkfyzlzfl475rrkss377zsz7gbsjh"))))
|
||||
(properties
|
||||
'((upstream-name . "S4Arrays")
|
||||
(updater-ignored-native-inputs . ("r-delayedarray"))))
|
||||
@@ -25515,13 +25467,13 @@ assays such as Hi-C.")
|
||||
(define-public r-h5mread
|
||||
(package
|
||||
(name "r-h5mread")
|
||||
(version "1.2.1")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "h5mread" version))
|
||||
(sha256
|
||||
(base32 "0xdjp5y0wkv2aazj17hi65qmsjaa9jaadim5hx525h5gb0c6p8nw"))))
|
||||
(base32 "01iykyb36cnzbs7xf3jcgnndnib4pk0w4wg8scy1rnagcy89yp2a"))))
|
||||
(properties
|
||||
'((upstream-name . "h5mread")
|
||||
;; Avoid dependency cycle.
|
||||
@@ -26339,13 +26291,13 @@ variable and significantly correlated genes.")
|
||||
(define-public r-sparsearray
|
||||
(package
|
||||
(name "r-sparsearray")
|
||||
(version "1.10.8")
|
||||
(version "1.10.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "SparseArray" version))
|
||||
(sha256
|
||||
(base32 "1bjxljwfrv787ikp61xl29wx3k6624qz75gl1kzfif62vys7vgf0"))))
|
||||
(base32 "0576063dl9a464ddc86ldpmz4c8g2qibsagw1adzrs30282d1m35"))))
|
||||
(properties `((upstream-name . "SparseArray")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-biocgenerics
|
||||
@@ -26497,14 +26449,14 @@ memory usage and processing time is minimized.")
|
||||
(define-public r-mscoreutils
|
||||
(package
|
||||
(name "r-mscoreutils")
|
||||
(version "1.22.1")
|
||||
(version "1.21.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "MsCoreUtils" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1vrczrj854i0510y91zad51nnai1spl3wwgn2bafgk25fx8f48gl"))))
|
||||
"1lckbd96589vsmyy6prqijxafwiwx3mnm9c1jlw6dbxivfzmk3n7"))))
|
||||
(properties
|
||||
'((upstream-name . "MsCoreUtils")
|
||||
;; Avoid dependency cycle.
|
||||
@@ -27162,14 +27114,14 @@ on the plot.")
|
||||
(define-public r-abn
|
||||
(package
|
||||
(name "r-abn")
|
||||
(version "3.1.13")
|
||||
(version "3.1.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "abn" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l1yv2rc4aa3zp5w9qsr4n9mbr7g5n5bgldpvpy9z1wf664lxy8w"))))
|
||||
"1k0pxan20ldhx4yl6li3bj3darzhbxh7m9kk2r3cpkwsxavvxm7z"))))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -27981,13 +27933,13 @@ targets. It can also be used for differential expression/2-class data.")
|
||||
(define-public r-bayesspace
|
||||
(package
|
||||
(name "r-bayesspace")
|
||||
(version "1.20.2")
|
||||
(version "1.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "BayesSpace" version))
|
||||
(sha256
|
||||
(base32 "0spymw9hva3q2p8a0a69a0jaix09cw75a6k7sr4wh9bqxjglyccc"))))
|
||||
(base32 "1mqa0f08ynpplvg7ni8alk0a9w4yy876jslzx3p1kmyb8ncb4zaj"))))
|
||||
(properties `((upstream-name . "BayesSpace")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -28982,14 +28934,14 @@ embeddings and functions to build new reference.")
|
||||
(define-public r-tximeta
|
||||
(package
|
||||
(name "r-tximeta")
|
||||
(version "1.28.1")
|
||||
(version "1.28.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "tximeta" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1152llv077q19zyyzzba0ggy03vlvgqrirrkssa8nk0pi93nh1zv"))))
|
||||
"0rpka083c8gw3crd1sp2vhlbk9rbyvnc6r5gnr55am73rp7dk3px"))))
|
||||
(properties `((upstream-name . "tximeta")))
|
||||
(build-system r-build-system)
|
||||
;; Two tests fail because data files are not included.
|
||||
|
||||
+812
-1053
File diff suppressed because it is too large
Load Diff
@@ -73,3 +73,16 @@ simple tools through complex programming languages.
|
||||
|
||||
Bison also provides an implementation of @command{yacc}, as specified by POSIX.")
|
||||
(license gpl3+)))
|
||||
|
||||
(define-public bison-3.0
|
||||
(package
|
||||
(inherit bison)
|
||||
(version "3.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/bison/bison-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0f7kjygrckkx8vas2nm673592jif0a9mw5g8207f6hj6h4pfyp07"))))))
|
||||
|
||||
+27
-16
@@ -226,7 +226,7 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
||||
(define-public stig
|
||||
(package
|
||||
(name "stig")
|
||||
(version "0.14.1a0")
|
||||
(version "0.14.0a0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -235,18 +235,7 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0196brcasdyn0mx3h2cqlgrx8x9fyv2n7bmx13nj58vnf3y4c1hg"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;tests require network access
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'loosen-version-restrictions
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("urwidtrees==1.0.3")
|
||||
"urwidtrees>=1.0.3")))))))
|
||||
(base32 "1jfcgncva94pyzjifar1l6wlmb7aylg0l4fxljc83rkbj1a2aan0"))))
|
||||
(propagated-inputs
|
||||
(list python-urwid
|
||||
python-urwidtrees
|
||||
@@ -257,12 +246,20 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
||||
python-natsort
|
||||
python-async-timeout
|
||||
python-setproctitle))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;tests require network access
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'loosen-version-restrictions
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("urwidtrees==1.0.3") "urwidtrees>=1.0.3")))))))
|
||||
(inputs (list python))
|
||||
(native-inputs (list python-setuptools))
|
||||
(build-system python-build-system)
|
||||
(synopsis "TUI and CLI for the BitTorrent client Transmission")
|
||||
(description
|
||||
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command
|
||||
Line Interface} client for the BitTorrent client Transmission.")
|
||||
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command Line
|
||||
Interface} client for the BitTorrent client Transmission.")
|
||||
(home-page "https://github.com/rndusr/stig")
|
||||
(license l:gpl3)))
|
||||
|
||||
@@ -540,6 +537,20 @@ focusing on efficiency and scalability. It runs on embedded devices as well as
|
||||
desktops.")
|
||||
(license l:bsd-2)))
|
||||
|
||||
(define-public libtorrent-rasterbar-1.2
|
||||
(package
|
||||
(inherit libtorrent-rasterbar)
|
||||
(version "1.2.20")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/arvidn/libtorrent/"
|
||||
"releases/download/v" version "/"
|
||||
"libtorrent-rasterbar-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1z5rdynzxcm6wb7v48ssfbwjairbjacb8rjix5fn70fw4668xgyc"))))))
|
||||
|
||||
(define-public qbittorrent
|
||||
(package
|
||||
(name "qbittorrent")
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages texlive)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages webkit)
|
||||
#:use-module (gnu packages xml))
|
||||
@@ -158,6 +159,9 @@ core computer science concepts such as abstraction in programming,
|
||||
metalinguistic abstraction, recursion, interpreters, and modular programming.")
|
||||
(license license:cc-by-sa4.0))))
|
||||
|
||||
;; It may be removed after 2025-12-19.
|
||||
(define-deprecated/public-alias sicp book-sicp)
|
||||
|
||||
(define-public book-sparc
|
||||
(package
|
||||
(name "book-sparc")
|
||||
@@ -302,7 +306,7 @@ software, with support for multiple texts and languages.")
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list appstream
|
||||
appstream-glib
|
||||
at-spi2-core
|
||||
atk
|
||||
biblesync
|
||||
desktop-file-utils ;for 'desktop-file-validate'
|
||||
(list glib "bin")
|
||||
@@ -334,7 +338,7 @@ parallel study, and original language study.")
|
||||
(define-public book-emacs-lisp-elements
|
||||
(package
|
||||
(name "book-emacs-lisp-elements")
|
||||
(version "2.0.1")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -343,7 +347,7 @@ parallel study, and original language study.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0774zycgx3zspn6f8pszap1751xgrlv2h3x66kksnj589nfnwzil"))))
|
||||
(base32 "1fwbj2hrb33blknxd3qrm7jjs2ixrbyc77788i37qvn6v1y741ry"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -357,8 +361,8 @@ parallel study, and original language study.")
|
||||
(home-page "https://protesilaos.com/emacs/emacs-lisp-elements")
|
||||
(synopsis "Overview of the Emacs Lisp programming language")
|
||||
(description
|
||||
"Emacs Lisp Elements is a book written by Protesilaos Stavrou, providing
|
||||
a big picture view of the @acronym{Elisp, Emacs Lisp} programming language by
|
||||
"Emacs Lisp Elements is a book written by Protesilaos Stavrou, providing a big
|
||||
picture view of the @acronym{Elisp, Emacs Lisp} programming language by
|
||||
combining prose with code. This book aims to provide an idea of how Elisp
|
||||
works by showing some of the main concepts and patterns encountered in
|
||||
everyday Elisp code.
|
||||
|
||||
+2
-17
@@ -8,7 +8,7 @@
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018, 2020, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2018, 2020, 2023 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019, 2020 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
@@ -239,21 +239,6 @@ across a broad spectrum of applications.")
|
||||
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
|
||||
"Some components have other similar licences."))))
|
||||
|
||||
(define-public boost-1.88
|
||||
(package
|
||||
(inherit boost)
|
||||
(name "boost")
|
||||
(version "1.88.0")
|
||||
(source (origin
|
||||
(inherit (package-source boost))
|
||||
(uri (string-append
|
||||
"https://archives.boost.io/release/"
|
||||
version "/source/boost_"
|
||||
(version-with-underscores version) ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yrgn6syk260ckq9ld44vjv1bl6bamhy3jbp10kikcipcv0d5na6"))))))
|
||||
|
||||
(define-public boost-1.83
|
||||
(hidden-package (package (inherit boost)
|
||||
(name "boost")
|
||||
@@ -368,7 +353,7 @@ across a broad spectrum of applications.")
|
||||
(name "boost-numpy")
|
||||
(native-inputs
|
||||
(modify-inputs (package-native-inputs boost)
|
||||
(append python-numpy-1)))))
|
||||
(append python-numpy)))))
|
||||
|
||||
(define-public boost-sync
|
||||
(let ((commit "e690de2d30e2f1649ff500c9a6f3539814994b1c")
|
||||
|
||||
@@ -949,16 +949,8 @@ Info manual.")))
|
||||
(modify-inputs (package-native-inputs u-boot)
|
||||
(prepend python-filelock
|
||||
python-pycryptodomex))))
|
||||
(inputs (list gnutls ncurses/tinfo))
|
||||
(arguments
|
||||
`(#:make-flags '("HOSTCC=gcc"
|
||||
,@(if (%current-target-system)
|
||||
(list "CROSS_BUILD_TOOLS=y"
|
||||
(string-append
|
||||
"CROSS_COMPILE="
|
||||
(%current-target-system)
|
||||
"-"))
|
||||
'()))
|
||||
`(#:make-flags '("HOSTCC=gcc")
|
||||
#:test-target "tcheck"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
||||
+68
-63
@@ -2,7 +2,6 @@
|
||||
;;; Copyright © 2022 Christopher Rodriguez <yewscion@gmail.com>
|
||||
;;; Copyright © 2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
|
||||
;;; Copyright © 2025 Lee Thompson <lee.p.thomp@gmail.com>
|
||||
;;; © 2025 case_lambda <case_lambda@disroot.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -37,71 +36,77 @@
|
||||
#:use-module (gnu packages compression))
|
||||
|
||||
(define-public dbqn
|
||||
(package
|
||||
(name "dbqn")
|
||||
(version "0.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dzaima/BQN")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1zy3y9wbmaw0mrd2sp7d1r912gvs9k0mzw5d3drgmbzkbvpd6iq1"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules `((guix build ant-build-system)
|
||||
,@%default-gnu-imported-modules)
|
||||
#:modules '((guix build gnu-build-system)
|
||||
((guix build ant-build-system)
|
||||
#:prefix ant:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "./build")))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(if tests?
|
||||
(invoke "./BQN" "./test/test")
|
||||
(begin
|
||||
(display "test suite not run")
|
||||
(newline)))))
|
||||
(add-after 'install 'reorder-jar-content
|
||||
(assoc-ref ant:%standard-phases
|
||||
'reorder-jar-content))
|
||||
(add-after 'reorder-jar-content 'generate-jar-indices
|
||||
(assoc-ref ant:%standard-phases
|
||||
'generate-jar-indices))
|
||||
(add-after 'generate-jar-indices 'strip-jar-timestamps
|
||||
(assoc-ref ant:%standard-phases
|
||||
'strip-jar-timestamps))
|
||||
(replace 'install
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((dest-jar (string-append #$output "/share/java")))
|
||||
(rename-file "BQN" "dbqn")
|
||||
(substitute* "dbqn"
|
||||
(("java")
|
||||
(search-input-file inputs "/bin/java"))
|
||||
(("BQN.jar")
|
||||
(string-append dest-jar "/BQN.jar")))
|
||||
(install-file "BQN.jar" dest-jar)
|
||||
(install-file "dbqn"
|
||||
(string-append #$output "/bin"))))))))
|
||||
(native-inputs (list `(,icedtea-8 "jdk") zip))
|
||||
(inputs (list bash-minimal icedtea-8))
|
||||
(synopsis "BQN implementation based on dzaima/APL")
|
||||
(description
|
||||
"dbqn is a Java implementation of the
|
||||
(let ((commit "88f2b43966a75cc2c382421218eb30003bb16f4a")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "dbqn")
|
||||
(version (git-version "0.2.1" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dzaima/BQN")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06mzvv7kmandhgwb6jwz3rivsj4ic549sy8afnb5zr6mfn5isyg5"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules `(,@%default-gnu-imported-modules
|
||||
(guix build ant-build-system))
|
||||
#:modules `((guix build gnu-build-system)
|
||||
((guix build ant-build-system)
|
||||
#:prefix ant:)
|
||||
(guix build utils))
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda* _
|
||||
(invoke "./build")
|
||||
(chmod "./BQN" #o755)))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(system "./BQN ./test/test"))))
|
||||
(add-after 'install 'reorder-jar-content
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(apply (assoc-ref ant:%standard-phases
|
||||
'reorder-jar-content)
|
||||
#:outputs (list outputs))))
|
||||
(add-after 'reorder-jar-content 'jar-indices
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(apply (assoc-ref ant:%standard-phases
|
||||
'generate-jar-indices)
|
||||
#:outputs (list outputs))))
|
||||
(add-after 'jar-indices 'fix-jar-timestamps
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(apply (assoc-ref ant:%standard-phases
|
||||
'reorder-jar-content)
|
||||
#:outputs (list outputs))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(dest-bin (string-append out "/bin"))
|
||||
(dest-jar (string-append out "/share/java")))
|
||||
(mkdir-p dest-bin)
|
||||
(mkdir-p dest-jar)
|
||||
(rename-file "BQN" "dbqn")
|
||||
(install-file "dbqn" dest-bin)
|
||||
(install-file "BQN.jar" dest-jar)
|
||||
(substitute* (string-append dest-bin "/dbqn")
|
||||
(("BQN.jar")
|
||||
(string-append dest-jar "/BQN.jar")))))))))
|
||||
(native-inputs (list `(,icedtea-8 "jdk") zip))
|
||||
(inputs (list icedtea-8 bash-minimal))
|
||||
(synopsis "BQN implementation based on dzaima/APL")
|
||||
(description
|
||||
"dbqn is a Java implementation of the
|
||||
@uref{https://mlochbaum.github.io/BQN/, BQN programming language} that does
|
||||
not need to be bootstrapped, based on an earlier Java implementation of APL by
|
||||
the same author.")
|
||||
(home-page "https://github.com/dzaima/BQN")
|
||||
(license license:expat)))
|
||||
(home-page "https://github.com/dzaima/BQN")
|
||||
(license license:expat))))
|
||||
|
||||
(define bqn-sources
|
||||
;; Aside from dbqn above, the main bqn repository is used by other
|
||||
|
||||
+61
-113
@@ -21,7 +21,6 @@
|
||||
;;; Copyright © 2022, 2023 Juliana Sims <juli@incana.org>
|
||||
;;; Copyright © 2024 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Anderson Torres <anderson.torres.8519@gmail.com>
|
||||
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
|
||||
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
|
||||
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
@@ -62,7 +61,6 @@
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages adns)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
@@ -101,40 +99,6 @@
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public acr
|
||||
(package
|
||||
(name "acr")
|
||||
(version "2.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/radareorg/acr")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qd7p50b9gkh2ihf7gs6xpdkb5jk8frg90ajqlw1pbza8735f9q1"))
|
||||
(snippet
|
||||
#~(begin
|
||||
(delete-file "configure")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'bootstrap)
|
||||
(add-after 'patch-source-shebangs 'bootstrap-after-patch-source-shebangs
|
||||
(assoc-ref %standard-phases 'bootstrap)))))
|
||||
(synopsis "Autoconf replacement written in pure Bash")
|
||||
(description
|
||||
"@acronym{ACR, Autoconf Replacement} tries to replace autoconf
|
||||
functionality generating a full-compatible configure script, but relying on
|
||||
Bourne shell script instead of m4.")
|
||||
(home-page "https://github.com/radareorg/acr")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public bam
|
||||
(package
|
||||
(name "bam")
|
||||
@@ -226,67 +190,47 @@ generate such a compilation database.")
|
||||
(define-public bmake
|
||||
(package
|
||||
(name "bmake")
|
||||
(version "20251111")
|
||||
(version "20230723")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0q30a04lg91g4932xgl0hg4c798inr5ky8fq6cwqzfkpar8zi8s5"))
|
||||
(patches (search-patches "bmake-run-check-separately.patch"))))
|
||||
(base32 "012rzgjmncdla1l43f9wl8v13h7d46zgn28k6djpcgx23fahsan4"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list bash-minimal))
|
||||
(native-inputs
|
||||
(list bc coreutils))
|
||||
(list coreutils))
|
||||
(arguments
|
||||
(list
|
||||
#:test-target "test"
|
||||
#:tests? #f ; test during build
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Ensure that a store path to /bin/sh is detected as a POSIX shell by
|
||||
;; modifying the pattern matching in the use_defshell() function.
|
||||
;; Without this, the tests won't correctly detect our provided default
|
||||
;; shell as a POSIX shell and will thus fail.
|
||||
(add-after 'unpack 'fix-shell-detection
|
||||
(lambda _
|
||||
(substitute* "configure"
|
||||
(("sh\\|/bin/sh\\|\\*/bsh)")
|
||||
"*/bin/sh)"))))
|
||||
(add-after 'configure 'fix-test ; fix from nixpkgs
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
(substitute* "unit-tests/unexport-env.mk"
|
||||
(("PATH=\t/bin:/usr/bin:/sbin:/usr/sbin")
|
||||
"PATH := ${PATH}"))
|
||||
(substitute* '("unit-tests/varmod-sun-shell1.exp"
|
||||
"unit-tests/suff.exp")
|
||||
(("/bin/sh")
|
||||
(search-input-file (or native-inputs inputs) "/bin/sh")))
|
||||
(substitute* '("unit-tests/opt-keep-going-indirect.mk"
|
||||
"unit-tests/opt-keep-going-indirect.exp")
|
||||
(("false")
|
||||
(search-input-file (or native-inputs inputs) "/bin/false"))))))
|
||||
(search-input-file (or native-inputs inputs) "/bin/false")))))
|
||||
(add-after 'configure 'remove-fail-tests
|
||||
(lambda _
|
||||
(substitute* "unit-tests/Makefile"
|
||||
(("cmd-interrupt") "")
|
||||
(("deptgt-interrupt") "")
|
||||
(("varmod-localtime") "")))))
|
||||
#:configure-flags
|
||||
#~(list
|
||||
(string-append
|
||||
"--with-defshell=" #$(this-package-input "bash-minimal") "/bin/sh")
|
||||
"--with-defshell=" #$(this-package-input "bash-minimal") "/bin/bash")
|
||||
(string-append
|
||||
"--with-default-sys-path=" #$output "/share/mk"))
|
||||
#:make-flags
|
||||
#~(list
|
||||
"INSTALL=install" ; use coreutils' install
|
||||
(string-append
|
||||
"BROKEN_TESTS="
|
||||
(string-join
|
||||
(list "cmd-interrupt"
|
||||
"deptgt-interrupt"
|
||||
"varmod-localtime"
|
||||
;; directive-export failures are related to TZ env.
|
||||
;; these tests are also disabled by nixpkgs.
|
||||
"directive-export"
|
||||
"directive-export-gmake"
|
||||
" "))))))
|
||||
#~(list "INSTALL=install"))) ; use coreutils' install
|
||||
(home-page "http://www.crufty.net/help/sjg/bmake.htm")
|
||||
(synopsis "BSD's make")
|
||||
(description
|
||||
@@ -447,51 +391,55 @@ resembles Python.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public muon
|
||||
(package
|
||||
(name "muon")
|
||||
(version "0.5.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/muon-build/muon")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1w0vkishj7r3swzg4m1fl3hacs8mycwhsrr5vw8sy67y81cihqbd"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:meson (computed-file "null-package" #~(mkdir #$output))
|
||||
#:ninja samu-as-ninja-wrapper
|
||||
#:configure-flags #~(list "-Dsamurai=disabled")
|
||||
#:tests? #f ;to avoid extra dependencies
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-/bin/sh
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "tools/generate_test_check_script.py"
|
||||
(("#!/bin/sh")
|
||||
(string-append "#!" (search-input-file inputs
|
||||
"bin/sh"))))))
|
||||
(add-after 'patch-source-shebangs 'build-muon-bootstrap
|
||||
(lambda _
|
||||
(setenv "CC" #$(cc-for-target))
|
||||
(setenv "CFLAGS" "-DBOOTSTRAP_NO_SAMU")
|
||||
(invoke "./bootstrap.sh" "build")))
|
||||
(add-after 'build-muon-bootstrap 'setup-muon-bootstrap-as-meson
|
||||
(lambda _
|
||||
(mkdir "bin")
|
||||
(symlink "../build/muon-bootstrap" "bin/meson")
|
||||
(setenv "PATH" (string-append (getcwd) "/bin:"
|
||||
(getenv "PATH"))))))))
|
||||
(native-inputs (list samurai))
|
||||
(inputs (list bash-minimal pkgconf))
|
||||
(native-search-paths (list $PKG_CONFIG_PATH))
|
||||
(home-page "https://muon.build/")
|
||||
(synopsis "Meson build system alternative implementation in C99")
|
||||
(description "Muon is an implementation of the meson build system in c99
|
||||
;; Use the latest commit, as there hasn't yet been a new release including
|
||||
;; recent changes (see: https://github.com/muon-build/muon/issues/146).
|
||||
(let ((commit "55b7285a92779bd8b8870482e5535ce878f3e09f")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "muon")
|
||||
(version (git-version "0.4.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/muon-build/muon")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kpk1h82djb0brxkwy5ylpvdpp2l1489bq822dmryhmsd573ii48"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:meson (computed-file "null-package" #~(mkdir #$output))
|
||||
#:ninja samu-as-ninja-wrapper
|
||||
#:configure-flags #~(list "-Dsamurai=disabled")
|
||||
#:tests? #f ;to avoid extra dependencies
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-/bin/sh
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "tools/generate_test_check_script.py"
|
||||
(("#!/bin/sh")
|
||||
(string-append "#!" (search-input-file inputs
|
||||
"bin/sh"))))))
|
||||
(add-after 'patch-source-shebangs 'build-muon-bootstrap
|
||||
(lambda _
|
||||
(setenv "CC" #$(cc-for-target))
|
||||
(setenv "CFLAGS" "-DBOOTSTRAP_NO_SAMU")
|
||||
(invoke "./bootstrap.sh" "build")))
|
||||
(add-after 'build-muon-bootstrap 'setup-muon-bootstrap-as-meson
|
||||
(lambda _
|
||||
(mkdir "bin")
|
||||
(symlink "../build/muon-bootstrap" "bin/meson")
|
||||
(setenv "PATH" (string-append (getcwd) "/bin:"
|
||||
(getenv "PATH"))))))))
|
||||
(native-inputs (list samurai))
|
||||
(inputs (list bash-minimal pkgconf))
|
||||
(native-search-paths (list $PKG_CONFIG_PATH))
|
||||
(home-page "https://muon.build/")
|
||||
(synopsis "Meson build system alternative implementation in C99")
|
||||
(description "Muon is an implementation of the meson build system in c99
|
||||
with minimal dependencies.")
|
||||
(license license:gpl3))) ;for the combined work
|
||||
(license license:gpl3)))) ;for the combined work
|
||||
|
||||
(define-public muon-as-meson-wrapper
|
||||
(package/inherit muon
|
||||
|
||||
+58
-121
@@ -9,7 +9,7 @@
|
||||
;;; Copyright © 2020, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
|
||||
;;; Copyright © 2020, 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2020, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2020, 2021 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2021 David Dashyan <mail@davie.li>
|
||||
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
|
||||
@@ -24,8 +24,6 @@
|
||||
;;; Copyright @ 2022, Kitzman <kitzman@disroot.org>
|
||||
;;; Copyright @ 2025 Dariqq <dariqq@posteo.net>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -53,7 +51,6 @@
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix store)
|
||||
#:use-module (gnu packages)
|
||||
@@ -73,10 +70,8 @@
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages oneapi)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages gettext)
|
||||
@@ -153,59 +148,6 @@ data structure with good performance characteristics for concatenation and
|
||||
slicing.")
|
||||
(license license:boost1.0))))
|
||||
|
||||
(define-public c-siphash
|
||||
(package
|
||||
(name "c-siphash")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/c-util/c-siphash")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1igz5nbdm8l0hir5azmjcc46qz9qhrhkr656fzll99vsnja815sb"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(propagated-inputs
|
||||
(list c-stdaux))
|
||||
(home-page "https://c-util.github.io/c-siphash/")
|
||||
(synopsis "Streaming-capable SipHash")
|
||||
(description
|
||||
"The c-siphash project is a standalone implementation of SipHash in
|
||||
Standard ISO-C11. It provides a streaming-capable API to compute data hashes
|
||||
according to the SipHash algorithm. For API documentation, see the
|
||||
@code{c-siphash.h} header file, as well as the docbook comments for each function.")
|
||||
(license (list license:asl2.0
|
||||
license:lgpl2.1+))))
|
||||
|
||||
(define-public c-stdaux
|
||||
(package
|
||||
(name "c-stdaux")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/c-util/c-stdaux")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0kj03iw2sfy3ni6s4p810wkaj561bl8fqqgzyvb48llnkyi6appz"))))
|
||||
(build-system meson-build-system)
|
||||
(home-page "https://c-util.github.io/c-stdaux/")
|
||||
(synopsis "Auxiliary macros and functions for the C standard library")
|
||||
(description
|
||||
"This package provides support macros and auxiliary functions around
|
||||
the functionality of common C standard libraries. This includes helpers for
|
||||
the ISO C Standard Library, but also other common specifications like POSIX or
|
||||
common extended features of widespread compilers like @code{gcc} and
|
||||
@code{clang}.")
|
||||
(license (list license:asl2.0
|
||||
license:lgpl2.1+))))
|
||||
|
||||
(define-public cproc
|
||||
(let ((commit "14a8916e23bc6daebcb54f1384fa0eb2455072e3")
|
||||
(revision "3"))
|
||||
@@ -524,26 +466,23 @@ language as input.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rihvlg11nzk70kfzz4i3gi5izcy46w05ismcx04p5j1hlim0brb"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32
|
||||
"1rihvlg11nzk70kfzz4i3gi5izcy46w05ismcx04p5j1hlim0brb"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'unittest
|
||||
#:test-flags #~(list "discover" "-s" "tests" "-p" "*.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unbundle-ply
|
||||
(lambda _
|
||||
(rmdir "pcpp/ply")
|
||||
(substitute* "setup.py"
|
||||
(("'pcpp/ply/ply'")
|
||||
"")))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unbundle-ply
|
||||
(lambda _
|
||||
(rmdir "pcpp/ply")
|
||||
(substitute* "setup.py"
|
||||
(("'pcpp/ply/ply'") "")))))))
|
||||
(native-inputs (list python-pytest))
|
||||
(propagated-inputs (list python-ply))
|
||||
(home-page "https://github.com/ned14/pcpp")
|
||||
(synopsis "C99 preprocessor written in Python")
|
||||
(description
|
||||
"This package provides a C99 preprocessor written in pure Python.")
|
||||
(description "This package provides a C99 preprocessor written in pure
|
||||
Python.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public aml
|
||||
@@ -1522,8 +1461,8 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
|
||||
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
|
||||
(define-public orangeduck-mpc
|
||||
;; The last release lacks an 'install' target.
|
||||
(let ((commit "1049534fc56b1971345c7aaa792dea55d6f9b7bc")
|
||||
(revision "1"))
|
||||
(let ((commit "7c910e9303833c349f7432188ff77f2745254df2")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "orangeduck-mpc")
|
||||
(version (git-version "0.9.0" revision commit))
|
||||
@@ -1535,7 +1474,9 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wpxchbjxsyksr8il9pvg195nvqzsjdshzyzwikxda0fss0p7aap"))))
|
||||
"01a4vcxdnz0fbn90c9zc3jzklyqqvp9sfjpjwpq0f5r0l2pp37ad"))
|
||||
(patches
|
||||
(search-patches "orangeduck-mpc-fix-pkg-config.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
|
||||
@@ -1762,7 +1703,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
||||
(define-public simdutf
|
||||
(package
|
||||
(name "simdutf")
|
||||
(version "7.7.1")
|
||||
(version "7.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1771,9 +1712,8 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0kw4j4qqcfjaii667xa745pklj50m70nqq8cj5agj714acczbk7y"))))
|
||||
(base32 "1kw4k3mhkj3bcmfmwwzq76hs2ypg5lrjl4vnp2dfg73vas9v9w35"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
|
||||
(synopsis "SIMD Unicode validation and transcoding")
|
||||
(description
|
||||
"simdutf is a C++ library providing Unicode routines (UTF8, UTF16,
|
||||
@@ -1851,7 +1791,7 @@ SIMD (Single Instruction, Multiple Data) instructions.")
|
||||
(define-public ispc
|
||||
(package
|
||||
(name "ispc")
|
||||
(version "1.29.1")
|
||||
(version "1.19.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1860,49 +1800,46 @@ SIMD (Single Instruction, Multiple Data) instructions.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "02n14684nqbp1sxpnjkg6r9vwpdzqiwwaqxlp9bjykd125834ip2"))))
|
||||
(base32 "0yhcgyzjlrgs920lm0l6kygj2skanfb6qkxbdgm69r8c2xkzkaa3"))))
|
||||
(inputs (list ncurses))
|
||||
(native-inputs (list bison clang flex m4 python))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
#~(list (string-append "-DCMAKE_C_COMPILER=" #$(cc-for-target))
|
||||
(string-append "-DCMAKE_CXX_COMPILER=" #$(cxx-for-target))
|
||||
(string-append "-DCLANG_EXECUTABLE="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang")
|
||||
(string-append "-DCLANGPP_EXECUTABLE="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang++"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-curses-requirement
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\bCURSES_CURSES_LIBRARY\\b")
|
||||
"CURSES_LIBRARY"))))
|
||||
;; Note: This works around the following issue:
|
||||
;; <https://github.com/ispc/ispc/issues/1865>
|
||||
;; Because GCC in Guix does not have multilib support.
|
||||
(add-before 'configure 'patch-target-archs
|
||||
(lambda _
|
||||
(substitute* "cmake/GenerateBuiltins.cmake"
|
||||
(("\\bforeach \\(bit 32 64\\)")
|
||||
#$@(if (target-64bit?)
|
||||
'("foreach (bit 64)")
|
||||
'("foreach (bit 32)")))
|
||||
(("\\bforeach \\(arch .*?\\)")
|
||||
#$@(if (target-x86?)
|
||||
'("foreach (arch \"x86\")")
|
||||
'("foreach (arch \"arm\")")))
|
||||
(("\\bforeach \\(os_name \"windows\" .*?\\)")
|
||||
"foreach (os_name \"linux\")")))))))
|
||||
(inputs
|
||||
(list ncurses onetbb))
|
||||
(native-inputs
|
||||
(list bison clang-19 flex m4 python-minimal-wrapper))
|
||||
(supported-systems
|
||||
'("x86_64-linux" "i686-linux" "aarch64-linux" "armhf-linux"))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:configure-flags
|
||||
`(,,(string-append "-DCMAKE_C_COMPILER=" (cc-for-target))
|
||||
,,(string-append "-DCMAKE_CXX_COMPILER=" (cxx-for-target))
|
||||
,(string-append "-DCLANG_EXECUTABLE="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang")
|
||||
,(string-append "-DCLANGPP_EXECUTABLE="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang++"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-curses-requirement
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\bCURSES_CURSES_LIBRARY\\b")
|
||||
"CURSES_LIBRARY"))))
|
||||
;; Note: This works around the following issue:
|
||||
;; <https://github.com/ispc/ispc/issues/1865>
|
||||
;; Because GCC in Guix does not have multilib support.
|
||||
(add-before 'configure 'patch-target-archs
|
||||
(lambda _
|
||||
(substitute* "cmake/GenerateBuiltins.cmake"
|
||||
(("\\bforeach \\(bit 32 64\\)")
|
||||
,(if (target-64bit?)
|
||||
"foreach (bit 64)"
|
||||
"foreach (bit 32)"))
|
||||
(("\\bforeach \\(arch .*?\\)")
|
||||
,(if (target-x86?)
|
||||
"foreach (arch \"x86\")"
|
||||
"foreach (arch \"arm\")"))
|
||||
(("\\bforeach \\(os_name \"windows\" .*?\\)")
|
||||
"foreach (os_name \"linux\")")))))))
|
||||
(synopsis "Implicit SPMD Program Compiler")
|
||||
(description
|
||||
"ISPC is a compiler for a variant of the C programming language, with
|
||||
|
||||
+163
-68
@@ -58,7 +58,6 @@
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 nomike Postmann <nomike@nomike.com>
|
||||
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
|
||||
;;; Copyright © 2025 Murilo <murilo@disroot.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -110,7 +109,6 @@
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages python-science)
|
||||
#:use-module (gnu packages ruby)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages time)
|
||||
@@ -671,7 +669,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
|
||||
(define-public catch2
|
||||
(package
|
||||
(name "catch2")
|
||||
(version "2.13.10")
|
||||
(version "2.13.8")
|
||||
(home-page "https://github.com/catchorg/Catch2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -681,7 +679,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dcwp41963vga22hm32hj609wxgfn0a6p9impcw8dxqj477gcx2y"))))
|
||||
"18a6d7rcb6ilhxd5dff32jkfdf2ik58pbywrv04ras70217kdq4c"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list python-wrapper))
|
||||
@@ -834,20 +832,7 @@ format.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:parallel-tests? #f
|
||||
#:configure-flags '("-DBUILD_TESTS=ON"
|
||||
"-DUSE_BUNDLED_TINYXML2=OFF")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-testcondition-test
|
||||
(lambda _
|
||||
(substitute* "test/testcondition.cpp"
|
||||
(("test.cpp:4\\] -> \\[test.cpp:6")
|
||||
"test.cpp:4:25] -> [test.cpp:6:18")
|
||||
(("test.cpp:3\\] -> \\[test.cpp:5(.*false)"_ rest)
|
||||
(string-append "test.cpp:3:22] -> [test.cpp:5:22" rest
|
||||
" [knownConditionTrueFalse]"))))))))
|
||||
(inputs
|
||||
(list tinyxml2))
|
||||
#:configure-flags '("-DBUILD_TESTS=ON")))
|
||||
(home-page "https://cppcheck.sourceforge.io")
|
||||
(synopsis "Static C/C++ code analyzer")
|
||||
(description "Cppcheck is a static code analyzer for C and C++. Unlike
|
||||
@@ -1010,7 +995,7 @@ has been designed to be fast, light and unintrusive.")
|
||||
(define-public kyua
|
||||
(package
|
||||
(name "kyua")
|
||||
(version "0.14.1")
|
||||
(version "0.13")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1019,7 +1004,7 @@ has been designed to be fast, light and unintrusive.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0w238ynhnjz7p2v8fbgxv35kl1x7a4vs86227qhb4gxncr75nsbl"))))
|
||||
"1jzdal9smhmivj18683a5gy8jd2p1dbni7kcpaxq4g9jgjdidcrq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1044,6 +1029,16 @@ has been designed to be fast, light and unintrusive.")
|
||||
(format #f "chdir(~s)" (dirname (which "ls"))))
|
||||
(("\"/bin/ls\"")
|
||||
(string-append "\"" (which "ls") "\"")))))
|
||||
(add-before 'check 'prepare-for-tests
|
||||
(lambda _
|
||||
;; The test suite expects HOME to be writable.
|
||||
(setenv "HOME" "/tmp")
|
||||
;; Generate the autom4te-generated testsuite script, which
|
||||
;; contains a '/bin/sh' shebang.
|
||||
(invoke "make" "bootstrap/testsuite")
|
||||
(substitute* "bootstrap/testsuite"
|
||||
(("/bin/sh")
|
||||
(which "sh")))))
|
||||
(add-after 'unpack 'disable-problematic-tests
|
||||
(lambda _
|
||||
;; The stacktrace tests expect core files to be dumped to the
|
||||
@@ -1052,8 +1047,12 @@ has been designed to be fast, light and unintrusive.")
|
||||
;; https://github.com/freebsd/kyua/issues/214).
|
||||
(substitute* "utils/Kyuafile"
|
||||
((".*atf_test_program.*stacktrace_test.*")
|
||||
"")))))))
|
||||
(native-inputs (list autoconf automake gdb-minimal libtool pkg-config))
|
||||
""))))
|
||||
(add-after 'install 'delete-installed-tests
|
||||
(lambda _
|
||||
;; Delete 200 MiB of tests.
|
||||
(delete-file-recursively (string-append #$output "/tests")))))))
|
||||
(native-inputs (list autoconf automake gdb-minimal pkg-config))
|
||||
(inputs (list atf lutok sqlite))
|
||||
(home-page "https://github.com/freebsd/kyua")
|
||||
(synopsis "Testing framework for infrastructure software")
|
||||
@@ -1913,6 +1912,41 @@ tests. Tests can be rerun in a specific order by passing a seed value
|
||||
reported in a previous test run.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-randomly
|
||||
(package
|
||||
(name "python-pytest-randomly")
|
||||
(version "3.16.0")
|
||||
(source (origin
|
||||
(method git-fetch) ;no tests in pypi archive
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pytest-dev/pytest-randomly")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ai6gn811wm1ixjimgpsi5nwlcpxaj4kmil69vf2s2ph0c2zw93s"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "-p" "no:randomly"
|
||||
;; The tests validating ordering fail, as well as as two others,
|
||||
;; for unknown reasons (see:
|
||||
;; https://github.com/pytest-dev/pytest-randomly/issues/454).
|
||||
"-k" "not test_it_runs_before_stepwise and not test_model_bakery")))
|
||||
(native-inputs
|
||||
(list python-factory-boy
|
||||
python-faker
|
||||
python-numpy
|
||||
python-pytest-bootstrap
|
||||
python-pytest-xdist
|
||||
python-setuptools))
|
||||
(home-page "https://github.com/pytest-dev/pytest-randomly")
|
||||
(synopsis "Pytest plugin to randomly order tests")
|
||||
(description "This is a Pytest plugin to randomly order tests and control
|
||||
Python's @code{random.seed}.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-runner
|
||||
(package
|
||||
(name "python-pytest-runner")
|
||||
@@ -3118,6 +3152,57 @@ non-technical or business participants in a software project. Behave uses
|
||||
tests written in a natural language style, backed up by Python code.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public python-behave-web-api
|
||||
(package
|
||||
(name "python-behave-web-api")
|
||||
(version "2.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "behave-web-api" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04p5sp6wck3mafj634w1fpvfhxm170l5q3hfb9d06pi71ql606n6"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-dependencies
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'wheel'") "") ; We don't use it.
|
||||
(("'ordereddict==1.1'") "")) ; Python >= 2.7 has it built-in.
|
||||
#t)))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(propagated-inputs
|
||||
(list behave python-requests))
|
||||
(home-page "https://github.com/jefersondaniel/behave-web-api")
|
||||
(synopsis "Provides testing for JSON APIs with Behave for Python")
|
||||
(description "This package provides testing utility modules for testing
|
||||
JSON APIs with Behave.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-nose-timer
|
||||
(package
|
||||
(name "python-nose-timer")
|
||||
(version "0.7.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "nose-timer" version))
|
||||
(sha256
|
||||
(base32 "05wzkc88vbzw62pqkvhl33211b90kns0lny70b7qw62rcg4flzk4"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-nose python-termcolor))
|
||||
(home-page "https://github.com/mahmoudimus/nose-timer")
|
||||
(synopsis "Timer plugin for nosetests")
|
||||
(description "Shows how much time was needed to run individual tests.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-freezegun
|
||||
(package
|
||||
(name "python-freezegun")
|
||||
@@ -3398,52 +3483,6 @@ of advanced library and language features, which means it should be easily
|
||||
portable to just about any platform.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public unity-test
|
||||
(package
|
||||
(name "unity-test")
|
||||
(version "2.6.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ThrowTheSwitch/Unity")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1s0jj9f2zav49mn9ib90idcmb6hq93aczbqysn5hj6binjmrnjw3"))
|
||||
(patches (search-patches "unity-test-set-subdir-correctly.patch"
|
||||
"unity-test-support-int64.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-Dsupport_double=true"
|
||||
"-Dsupport_int64=true")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'patch-source-shebangs 'patch-more-shebangs
|
||||
(lambda _
|
||||
(substitute* '("auto/unity_test_summary.rb")
|
||||
(("/usr/bin/ruby")
|
||||
(string-append #$(this-package-input "ruby")
|
||||
"/bin/ruby")))
|
||||
(substitute* '("auto/stylize_as_junit.py"
|
||||
"auto/unity_test_summary.py")
|
||||
(("#! python3")
|
||||
(string-append #$(this-package-input "python")
|
||||
"/bin/python3")))))
|
||||
(add-after 'install 'install-extra
|
||||
(lambda _
|
||||
(for-each (lambda (x)
|
||||
(install-file x
|
||||
(string-append #$output "/share/unity-test")))
|
||||
(find-files "../source/auto")))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list python ruby))
|
||||
(home-page "https://github.com/ThrowTheSwitch/Unity")
|
||||
(synopsis "Simple unit testing for C")
|
||||
(description "This package provides a unit testing framework built for C,
|
||||
with a focus on working with embedded toolchains.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public libfaketime
|
||||
(package
|
||||
(name "libfaketime")
|
||||
@@ -3735,6 +3774,28 @@ system. The code under test requires no modification to work with pyfakefs.")
|
||||
asynchronous code in Python (asyncio).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-dependency
|
||||
(package
|
||||
(name "python-pytest-dependency")
|
||||
(version "0.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest-dependency" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0swl3mxca7nnjbb5grfzrm3fa2750h9vjsha0f2kyrljc6895a62"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-pytest))
|
||||
(home-page
|
||||
"https://github.com/RKrahl/pytest-dependency")
|
||||
(synopsis "Manage dependencies of tests")
|
||||
(description "This pytest plugin manages dependencies of tests. It allows
|
||||
to mark some tests as dependent from other tests. These tests will then be
|
||||
skipped if any of the dependencies did fail or has been skipped.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-pytest-datadir
|
||||
(package
|
||||
(name "python-pytest-datadir")
|
||||
@@ -3758,6 +3819,40 @@ asynchronous code in Python (asyncio).")
|
||||
directories and files.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-regressions
|
||||
(package
|
||||
(name "python-pytest-regressions")
|
||||
(version "2.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest_regressions" version))
|
||||
(sha256
|
||||
(base32 "0pph1935rq180ax0szwwf3c6zq2v40snypagr49914i31570cc2c"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Do not fail on warning.
|
||||
;; DeprecationWarning: module 'sre_constants' is deprecated
|
||||
#:test-flags #~(list "-W" "ignore::DeprecationWarning")))
|
||||
(native-inputs
|
||||
(list python-numpy
|
||||
python-pandas
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-pytest-datadir
|
||||
python-pyyaml))
|
||||
(home-page "https://github.com/ESSS/pytest-regressions")
|
||||
(synopsis "Easy to use fixtures to write regression tests")
|
||||
(description
|
||||
"This plugin makes it simple to test general data, images, files, and
|
||||
numeric tables by saving expected data in a data directory (courtesy of
|
||||
pytest-datadir) that can be used to verify that future runs produce the same
|
||||
data.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-tornado5
|
||||
(package
|
||||
(name "python-pytest-tornado5")
|
||||
|
||||
+155
-154
@@ -812,7 +812,7 @@ quantum chemistry (and molecular mechanics) softwares.")
|
||||
glm
|
||||
netcdf))
|
||||
(native-inputs (list cmake-minimal catch2 python-pytest python-setuptools))
|
||||
(propagated-inputs (list python-numpy-1))
|
||||
(propagated-inputs (list python-numpy))
|
||||
(home-page "https://pymol.org")
|
||||
(synopsis "Molecular visualization system")
|
||||
(description
|
||||
@@ -1049,57 +1049,56 @@ integrals for Gaussian type functions.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:modules '((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
((guix build python-build-system)
|
||||
#:select (site-packages)))
|
||||
#:imported-modules (append %cmake-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
#:modules
|
||||
'((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
((guix build pyproject-build-system) #:select (site-packages)))
|
||||
'((guix build python-build-system)))
|
||||
#:configure-flags
|
||||
#~(list "-DUSE_PYTHON=ON"
|
||||
(string-append "-DPYTHON_INSTALL_DIR="
|
||||
(site-packages %build-inputs %outputs)))
|
||||
#:phases
|
||||
(with-extensions (list (pyproject-guile-json))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-includes
|
||||
(lambda _
|
||||
(substitute* (list "src/json.cpp"
|
||||
"src/sprintf.cpp"
|
||||
"include/gemmi/dirwalk.hpp"
|
||||
"include/gemmi/cif.hpp"
|
||||
"include/gemmi/json.hpp"
|
||||
"python/gemmi.cpp"
|
||||
"python/serial.h"
|
||||
"include/gemmi/atof.hpp"
|
||||
"include/gemmi/numb.hpp"
|
||||
"include/gemmi/fourier.hpp")
|
||||
(("<stb/stb_sprintf.h>") "<stb_sprintf.h>")
|
||||
(("\"third_party/tinydir.h\"") "<tinydir.h>")
|
||||
(("\"third_party/tao/pegtl.hpp\"") "<tao/pegtl.hpp>")
|
||||
(("\"\\.\\./third_party/sajson.h\"") "<sajson.h>")
|
||||
(("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"")
|
||||
"<tao/pegtl/parse_error.hpp>")
|
||||
(("\"third_party/fast_float.h\"")
|
||||
"<fast_float/fast_float.h>")
|
||||
(("\"third_party/pocketfft_hdronly.h\"")
|
||||
"<pocketfft_hdronly.h>")
|
||||
(("\"\\.\\./third_party/serializer.h\"")
|
||||
"<zpp/serializer.h>"))))
|
||||
(add-after 'unpack 'change-bin-prefix
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("install\\(TARGETS program DESTINATION bin\\)")
|
||||
(string-append
|
||||
"install(TARGETS program DESTINATION "
|
||||
#$output:bin "/bin)")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "../source"
|
||||
(setenv "PYTHONPATH" "../build/py")
|
||||
(invoke "python3" "-m" "unittest" "discover" "-v"
|
||||
"-s" "tests")))))))))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-includes
|
||||
(lambda _
|
||||
(substitute* (list "src/json.cpp"
|
||||
"src/sprintf.cpp"
|
||||
"include/gemmi/dirwalk.hpp"
|
||||
"include/gemmi/cif.hpp"
|
||||
"include/gemmi/json.hpp"
|
||||
"python/gemmi.cpp"
|
||||
"python/serial.h"
|
||||
"include/gemmi/atof.hpp"
|
||||
"include/gemmi/numb.hpp"
|
||||
"include/gemmi/fourier.hpp")
|
||||
(("<stb/stb_sprintf.h>") "<stb_sprintf.h>")
|
||||
(("\"third_party/tinydir.h\"") "<tinydir.h>")
|
||||
(("\"third_party/tao/pegtl.hpp\"") "<tao/pegtl.hpp>")
|
||||
(("\"\\.\\./third_party/sajson.h\"") "<sajson.h>")
|
||||
(("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"")
|
||||
"<tao/pegtl/parse_error.hpp>")
|
||||
(("\"third_party/fast_float.h\"")
|
||||
"<fast_float/fast_float.h>")
|
||||
(("\"third_party/pocketfft_hdronly.h\"")
|
||||
"<pocketfft_hdronly.h>")
|
||||
(("\"\\.\\./third_party/serializer.h\"")
|
||||
"<zpp/serializer.h>"))))
|
||||
(add-after 'unpack 'change-bin-prefix
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("install\\(TARGETS program DESTINATION bin\\)")
|
||||
(string-append
|
||||
"install(TARGETS program DESTINATION "
|
||||
#$output:bin "/bin)")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "../source"
|
||||
(setenv "PYTHONPATH" "../build/py")
|
||||
(invoke "python3" "-m" "unittest" "discover" "-v"
|
||||
"-s" "tests"))))))))
|
||||
(inputs (list python zlib))
|
||||
(native-inputs
|
||||
(list fast-float
|
||||
@@ -1464,55 +1463,56 @@ and rendering molecules.")
|
||||
"-DPYTHON_EXECUTABLE=python3"
|
||||
(string-append "-DPYTHON_FLAGS=;--prefix=" #$output ";--root=/"))
|
||||
#:imported-modules (append %cmake-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
'((guix build python-build-system)))
|
||||
#:modules '((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
((guix build pyproject-build-system) #:prefix py:))
|
||||
((guix build python-build-system)
|
||||
#:select (add-installed-pythonpath)))
|
||||
#:phases
|
||||
(with-extensions (list (pyproject-guile-json))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-cmake
|
||||
(lambda _
|
||||
(substitute* (list "src/Test/CMakeLists.txt"
|
||||
"src/RingDecomposerLib/CMakeLists.txt")
|
||||
(("build_.*STATIC") "#"))
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
(("STATIC_TEST") "SHARED_TEST"))
|
||||
;; Link Python library against shared library
|
||||
(substitute* "src/python/CMakeLists.txt"
|
||||
(("RingDecomposerLibStatic") "RingDecomposerLib"))
|
||||
(substitute* "src/python/setup.py.in"
|
||||
(("static_libs =.*") "static_libs = []\n")
|
||||
(("shared_libs\\s*=.*")
|
||||
(string-append
|
||||
"shared_libs = ['RingDecomposerLib']"))
|
||||
(("library_dirs\\s*=\\s*\\[\\]")
|
||||
"library_dirs = ['${CMAKE_BINARY_DIR}/src/RingDecomposerLib']")
|
||||
(("extra_objects=.*")
|
||||
(string-append
|
||||
"extra_link_args=['-Wl,-rpath=" #$output "/lib'],\n")))))
|
||||
(add-after 'build 'build-doc
|
||||
(lambda _
|
||||
;; Disable redundant LaTeX documentation
|
||||
(substitute* "../source/documentation/sphinx/conf.py"
|
||||
(("^(subprocess.*latex|shutil).*") ""))
|
||||
(substitute* "../source/documentation/doxygen.cfg"
|
||||
(("GENERATE_LATEX.*YES") "GENERATE_LATEX = NO"))
|
||||
;; Build HTML documentation
|
||||
(invoke "sphinx-build" "-b" "html"
|
||||
"../source/documentation/sphinx" "html")))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda _
|
||||
;; Not reproducible
|
||||
(delete-file-recursively "html/.doctrees")
|
||||
(copy-recursively "html"
|
||||
(string-append #$output "/share/doc/"
|
||||
#$name "-" #$version "/html"))))
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(assoc-ref %standard-phases 'check))
|
||||
(add-before 'check 'add-install-to-pythonpath
|
||||
(assoc-ref py:%standard-phases 'add-install-to-pythonpath))))))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-cmake
|
||||
(lambda _
|
||||
(substitute* (list "src/Test/CMakeLists.txt"
|
||||
"src/RingDecomposerLib/CMakeLists.txt")
|
||||
(("build_.*STATIC") "#"))
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
(("STATIC_TEST") "SHARED_TEST"))
|
||||
;; Link Python library against shared library
|
||||
(substitute* "src/python/CMakeLists.txt"
|
||||
(("RingDecomposerLibStatic") "RingDecomposerLib"))
|
||||
(substitute* "src/python/setup.py.in"
|
||||
(("static_libs =.*") "static_libs = []\n")
|
||||
(("shared_libs\\s*=.*")
|
||||
(string-append
|
||||
"shared_libs = ['RingDecomposerLib']"))
|
||||
(("library_dirs\\s*=\\s*\\[\\]")
|
||||
"library_dirs = ['${CMAKE_BINARY_DIR}/src/RingDecomposerLib']")
|
||||
(("extra_objects=.*")
|
||||
(string-append
|
||||
"extra_link_args=['-Wl,-rpath=" #$output "/lib'],\n")))))
|
||||
(add-after 'build 'build-doc
|
||||
(lambda _
|
||||
;; Disable redundant LaTeX documentation
|
||||
(substitute* "../source/documentation/sphinx/conf.py"
|
||||
(("^(subprocess.*latex|shutil).*") ""))
|
||||
(substitute* "../source/documentation/doxygen.cfg"
|
||||
(("GENERATE_LATEX.*YES") "GENERATE_LATEX = NO"))
|
||||
;; Build HTML documentation
|
||||
(invoke "sphinx-build" "-b" "html"
|
||||
"../source/documentation/sphinx" "html")))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda _
|
||||
;; Not reproducible
|
||||
(delete-file-recursively "html/.doctrees")
|
||||
(copy-recursively "html"
|
||||
(string-append #$output "/share/doc/"
|
||||
#$name "-" #$version "/html"))))
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(assoc-ref %standard-phases 'check))
|
||||
(add-before 'check 'set-pythonpath
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(add-installed-pythonpath inputs outputs))))))
|
||||
(inputs (list python))
|
||||
(native-inputs (list doxygen python python-cython-0 python-sphinx))
|
||||
(home-page "https://github.com/rareylab/RingDecomposerLib")
|
||||
@@ -1602,10 +1602,11 @@ Tanimoto scoring.")
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules (append %cmake-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
'((guix build python-build-system)))
|
||||
#:modules '((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
((guix build pyproject-build-system) #:prefix py:))
|
||||
((guix build python-build-system)
|
||||
#:select (add-installed-pythonpath)))
|
||||
#:configure-flags
|
||||
#~(list "-DRDK_BUILD_AVALON_SUPPORT=ON"
|
||||
"-DRDK_BUILD_CAIRO_SUPPORT=ON"
|
||||
@@ -1630,67 +1631,67 @@ Tanimoto scoring.")
|
||||
"-DCMAKE_INCLUDE_PATH="
|
||||
(search-input-directory %build-inputs "/include/avalontoolkit")))
|
||||
#:phases
|
||||
(with-extensions (list (pyproject-guile-json))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'copy-external-dependencies
|
||||
(lambda _
|
||||
(symlink
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'copy-external-dependencies
|
||||
(lambda _
|
||||
(symlink
|
||||
(string-append
|
||||
(search-input-file
|
||||
%build-inputs "/share/fonts/truetype/ComicNeue-Regular.ttf"))
|
||||
"Data/Fonts/ComicNeue-Regular.ttf")))
|
||||
(add-after 'unpack 'fix-inchi-include
|
||||
(lambda _
|
||||
(substitute* "Code/cmake/Modules/FindInchi.cmake"
|
||||
(("inchi_api.h.*\\)") "inchi/inchi_api.h)")
|
||||
(("INCHI_LIBRARY NAMES.*\\)")
|
||||
"INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)")
|
||||
(("find_library" prev)
|
||||
(string-append
|
||||
(search-input-file
|
||||
%build-inputs "/share/fonts/truetype/ComicNeue-Regular.ttf"))
|
||||
"Data/Fonts/ComicNeue-Regular.ttf")))
|
||||
(add-after 'unpack 'fix-inchi-include
|
||||
"list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1)\n"
|
||||
prev)))
|
||||
(substitute* "External/INCHI-API/inchi.cpp"
|
||||
(("<inchi_api.h>") "<inchi/inchi_api.h>"))))
|
||||
(add-before 'build 'enable-bytecode-determinism
|
||||
(lambda _
|
||||
(substitute* "Code/cmake/Modules/FindInchi.cmake"
|
||||
(("inchi_api.h.*\\)") "inchi/inchi_api.h)")
|
||||
(("INCHI_LIBRARY NAMES.*\\)")
|
||||
"INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)")
|
||||
(("find_library" prev)
|
||||
(string-append
|
||||
"list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1)\n"
|
||||
prev)))
|
||||
(substitute* "External/INCHI-API/inchi.cpp"
|
||||
(("<inchi_api.h>") "<inchi/inchi_api.h>"))))
|
||||
(add-before 'build 'enable-bytecode-determinism
|
||||
(assoc-ref py:%standard-phases 'enable-bytecode-determinism))
|
||||
(add-after 'install 'pre-check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(with-directory-excursion "../source"
|
||||
(invoke "sqlite3" "Data/RDData.sqlt"
|
||||
".read rdkit/Dbase/test_data/RDData.sqlite")
|
||||
(invoke "sqlite3" "Data/RDTests.sqlt"
|
||||
".read rdkit/Dbase/test_data/RDTests.sqlite")
|
||||
(setenv "RDBASE" (canonicalize-path ".")))))
|
||||
(add-after 'install 'add-install-to-pythonpath
|
||||
(assoc-ref py:%standard-phases 'add-install-to-pythonpath))
|
||||
(delete 'check)
|
||||
(add-after 'pre-check 'check
|
||||
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((job-count (number->string
|
||||
(if parallel-tests? (parallel-job-count) 1))))
|
||||
(invoke
|
||||
"ctest" "-j" job-count
|
||||
"-E" (string-append
|
||||
"("
|
||||
(string-join
|
||||
'(;; need pickled data
|
||||
"pyDiscreteValueVect" "pySparseIntVect"
|
||||
"graphmoltestPickler" "pyPartialCharges"
|
||||
"substructLibraryTest" "pyFeatures"
|
||||
"pythonTestDirML" "pythonTestDirChem"
|
||||
"pyRealValueVect" "pyDiscreteValueVect"
|
||||
"pickleTestsCatch"
|
||||
;; Catching Python exception fails
|
||||
"pyRanker"
|
||||
;; Flaky test depending on floating point rounding
|
||||
"testConrec"
|
||||
;; Expensive test which may time out
|
||||
"pySynthonSpaceSearch"
|
||||
;; Circular import
|
||||
"pythonSourceTests"
|
||||
) "|")
|
||||
")"))))))))))
|
||||
(setenv "PYTHONHASHSEED" "0")
|
||||
(setenv "PYTHONDONTWRITEBYTECODE" "1")))
|
||||
(add-after 'install 'pre-check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(with-directory-excursion "../source"
|
||||
(invoke "sqlite3" "Data/RDData.sqlt"
|
||||
".read rdkit/Dbase/test_data/RDData.sqlite")
|
||||
(invoke "sqlite3" "Data/RDTests.sqlt"
|
||||
".read rdkit/Dbase/test_data/RDTests.sqlite")
|
||||
(setenv "RDBASE" (canonicalize-path ".")))
|
||||
(add-installed-pythonpath inputs outputs)))
|
||||
(delete 'check)
|
||||
(add-after 'pre-check 'check
|
||||
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((job-count (number->string
|
||||
(if parallel-tests? (parallel-job-count) 1))))
|
||||
(invoke
|
||||
"ctest" "-j" job-count
|
||||
"-E" (string-append
|
||||
"("
|
||||
(string-join
|
||||
'(;; need pickled data
|
||||
"pyDiscreteValueVect" "pySparseIntVect"
|
||||
"graphmoltestPickler" "pyPartialCharges"
|
||||
"substructLibraryTest" "pyFeatures"
|
||||
"pythonTestDirML" "pythonTestDirChem"
|
||||
"pyRealValueVect" "pyDiscreteValueVect"
|
||||
"pickleTestsCatch"
|
||||
;; Catching Python exception fails
|
||||
"pyRanker"
|
||||
;; Flaky test depending on floating point rounding
|
||||
"testConrec"
|
||||
;; Expensive test which may time out
|
||||
"pySynthonSpaceSearch"
|
||||
;; Circular import
|
||||
"pythonSourceTests"
|
||||
) "|")
|
||||
")")))))))))
|
||||
(inputs
|
||||
(list avalon-toolkit
|
||||
cairo
|
||||
@@ -1716,7 +1717,7 @@ Tanimoto scoring.")
|
||||
rapidjson
|
||||
tar))
|
||||
(propagated-inputs
|
||||
(list python-numpy-1 python-cairocffi python-pillow))
|
||||
(list python-numpy python-cairocffi python-pillow))
|
||||
(home-page "https://rdkit.org/")
|
||||
(synopsis "Collection of cheminformatics software")
|
||||
(description "RDKit is a C++ and Python library for cheminformatics, which
|
||||
|
||||
+2
-2
@@ -72,7 +72,7 @@
|
||||
(define-public cuirass
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version "1.3.4")
|
||||
(version "1.3.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -82,7 +82,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0apzyda8hfnvq07lylvlz7kifkmnvhsc538jjwmzjl60af9f634a"))))
|
||||
"0zq56wdjyxnmhr93358db95cc9i7qkffk98vscjr26pb4ab3ym21"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:modules `((guix build utils)
|
||||
|
||||
+38
-26
@@ -29,7 +29,6 @@
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
@@ -73,36 +72,41 @@
|
||||
#:modules
|
||||
`((guix build meson-build-system)
|
||||
(guix build utils)
|
||||
((guix build pyproject-build-system) #:prefix py:))
|
||||
((guix build python-build-system) #:prefix python:))
|
||||
#:imported-modules
|
||||
(append %meson-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
`(,@%meson-build-system-modules
|
||||
(guix build python-build-system))
|
||||
#:configure-flags
|
||||
#~(list (string-append
|
||||
"-Dpy-overrides-dir="
|
||||
(py:site-packages %build-inputs %outputs) "/gi/overrides"))
|
||||
(python:site-packages %build-inputs %outputs) "/gi/overrides"))
|
||||
#:phases
|
||||
(with-extensions (list (pyproject-guile-json))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'set-gtk-module-path
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(define (string-quote str)
|
||||
(format #f "'~a'" str))
|
||||
(substitute* "libxapp/meson.build"
|
||||
(("gtk3_dep\\.get_pkgconfig_variable[(]'libdir'[)]")
|
||||
(string-quote (string-append #$output "/lib"))))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'set-gtk-module-path
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* "libxapp/meson.build"
|
||||
(("gtk3_dep\\.get_pkgconfig_variable[(]'libdir'[)]")
|
||||
(string-append "'" (assoc-ref outputs "out") "/lib'")))
|
||||
|
||||
(substitute* "scripts/pastebin"
|
||||
(("'nc'")
|
||||
(string-quote (search-input-file inputs "/bin/nc"))))
|
||||
(substitute* "scripts/upload-system-info"
|
||||
(("'inxi'")
|
||||
(string-quote (search-input-file inputs "/bin/inxi")))
|
||||
(("'/usr/bin/pastebin'")
|
||||
(string-quote (string-append #$output "/bin/pastebin")))
|
||||
(("'xdg-open'")
|
||||
(string-quote (search-input-file inputs
|
||||
"/bin/xdg-open"))))))))))
|
||||
(substitute* "scripts/pastebin"
|
||||
(("'nc'")
|
||||
(string-append "'"
|
||||
(search-input-file inputs "/bin/nc")
|
||||
"'")))
|
||||
|
||||
(substitute* "scripts/upload-system-info"
|
||||
(("'inxi'")
|
||||
(string-append "'"
|
||||
(search-input-file inputs "/bin/inxi")
|
||||
"'"))
|
||||
(("'/usr/bin/pastebin'")
|
||||
(string-append "'"
|
||||
(assoc-ref outputs "out")
|
||||
"/bin/pastebin'"))
|
||||
(("'xdg-open'")
|
||||
(string-append "'"
|
||||
(search-input-file inputs "/bin/xdg-open")
|
||||
"'"))))))))
|
||||
(inputs
|
||||
(list dbus
|
||||
glib ; for gio
|
||||
@@ -143,7 +147,15 @@ cross-DE solutions.")
|
||||
(sha256
|
||||
(base32 "06v84bvhhhx7lf7bsl2wdxh7vlkpb2fczjh6717b9jjr7xhvif8r"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments (list #:tests? #f)) ; no tests provided
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; no tests provided
|
||||
#:imported-modules `((guix build python-build-system)
|
||||
,@%meson-build-system-modules)
|
||||
#:modules '((guix build utils)
|
||||
(guix build meson-build-system)
|
||||
((guix build python-build-system)
|
||||
#:prefix python:))))
|
||||
(native-inputs
|
||||
(list gobject-introspection
|
||||
intltool
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
(define-public clifm
|
||||
(package
|
||||
(name "clifm")
|
||||
(version "1.26.3")
|
||||
(version "1.26")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -40,7 +40,7 @@
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xzpkiid5c51jkmxx4f9iyc6qsir7byp7zyjlskr6hnyah99i1wm"))))
|
||||
(base32 "0mdh24qjx4cghghrl6sbp49a6kv8birxa5vxrsmj8ddnya2j1n3q"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags (list (string-append "CC="
|
||||
|
||||
+214
-381
@@ -5,7 +5,6 @@
|
||||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
|
||||
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||
;;; Copyright © 2025, 2026 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -36,269 +35,102 @@
|
||||
#:use-module (guix build-system clojure)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public clojure-spec-alpha
|
||||
(package
|
||||
(name "clojure-spec-alpha")
|
||||
(version "0.6.249")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/spec.alpha")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rzy7mjzchsjpwkn3b5vg5hnmsj5h9ljxdjn48j92bgh7vl3k2r5"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(native-inputs (list clojure-test-check))
|
||||
(synopsis
|
||||
"Clojure library to describe the structure of data and functions")
|
||||
(description
|
||||
"This package can be used to validate data, conform (destructure) data, explain
|
||||
invalid data, generate examples that conform to the specs, and automatically
|
||||
use generative testing to test functions.
|
||||
|
||||
Clojure depends on this library and provides it. Thus it is not recommended
|
||||
to add a direct dependency on this package.")
|
||||
(home-page "https://github.com/clojure/spec.alpha")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-core-specs-alpha
|
||||
(package
|
||||
(name "clojure-core-specs-alpha")
|
||||
(version "0.5.81")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/core.specs.alpha")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hy060mb2hxirynkk36plx1rvpj6i2ldn8mvnwfd02wvjvh57dad"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '()
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Describe clojure.core macros and functions")
|
||||
(description
|
||||
"This package contains specs to describe Clojure core macros and functions.
|
||||
|
||||
Clojure depends on this library and provides it. Thus it is not recommended
|
||||
to add a direct dependency on this package.")
|
||||
(home-page "https://github.com/clojure/core.specs.alpha")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-java-classpath
|
||||
(package
|
||||
(name "clojure-java-classpath")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/java.classpath")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1k34yrx3gmvf46984zdgn2vb98ixf47q1vgh9p78bgmpyhrwzx2z"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Examine the Java classpath from Clojure programs")
|
||||
(description
|
||||
"This package provides utilities for dealing with the JVM's classpath from
|
||||
Clojure.")
|
||||
(home-page "https://github.com/clojure/java.classpath")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-data-generators
|
||||
(package
|
||||
(name "clojure-data-generators")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/data.generators")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ynazp55v15zv5jwz1wh2p8cawjcmn0bwzgfs2dwrp6aq231jafm"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Generators for random Clojure data")
|
||||
(description
|
||||
"This package contains various functions to generate random clojure data.")
|
||||
(home-page "https://github.com/clojure/data.generators")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-namespace
|
||||
(package
|
||||
(name "clojure-tools-namespace")
|
||||
(version "1.5.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/tools.namespace")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0j1lz3xnpgvyi0mcg9mjz7hrchf3hwhbhxi2163d739dxdx60s22"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(propagated-inputs (list clojure-java-classpath
|
||||
clojure-tools-reader))
|
||||
(synopsis "Tools for managing namespaces in Clojure")
|
||||
(description
|
||||
"This package parses ns declarations from source files, extract their
|
||||
dependencies, build a graph of namespace dependencies within a project, update
|
||||
that graph as files change, and reload files in the correct order.
|
||||
|
||||
This is only about namespace dependencies within a single project. It has
|
||||
nothing to do with Leiningen, Maven, JAR files, or repositories.")
|
||||
(home-page "https://github.com/clojure/tools.namespace")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-test-generative
|
||||
(package
|
||||
(name "clojure-test-generative")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/test.generative")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lb72cr4s6rgpg18v3jr67ps6wx4p7j7mfzwnfgmm0v8rldlcycf"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/examples/clojure")
|
||||
#:doc-dirs '()))
|
||||
(propagated-inputs (list clojure-tools-namespace
|
||||
clojure-data-generators))
|
||||
(synopsis "Generative test runner")
|
||||
(description
|
||||
"This package defines generators functions and property based testing macros.")
|
||||
(home-page "https://github.com/clojure/test.generative")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-test-check
|
||||
(package
|
||||
(name "clojure-test-check")
|
||||
(version "1.1.3")
|
||||
(home-page "https://github.com/clojure/test.check")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1j1x80rv0pli3g91wy01panlqbhgf7zqm7jdr2rzjqf2yyksc70n"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "QuickCheck for Clojure")
|
||||
(description "@code{test.check} is a Clojure property-based testing tool
|
||||
inspired by QuickCheck. The core idea of @code{test.check} is that instead of
|
||||
enumerating expected input and output for unit tests, you write properties
|
||||
about your function that should hold true for all inputs. This lets you write
|
||||
concise, powerful tests.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-reader
|
||||
(package
|
||||
(name "clojure-tools-reader")
|
||||
(version "1.6.0")
|
||||
(home-page "https://github.com/clojure/tools.reader")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"006zy7dpk678rzawqyqcypccw48bl4b9s4xjrwzhgq8z5s8v6lnd"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:test-exclude '(clojure.tools.common-tests))) ; Loaded by other tests.
|
||||
(synopsis "Clojure reader written in Clojure")
|
||||
(description "The clojure.tools.reader library offers all functionality
|
||||
provided by the Clojure Core reader and more. It adds metadata such as column
|
||||
and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define (package-sources . packages)
|
||||
(map package-source packages))
|
||||
|
||||
(define-public clojure
|
||||
(let ((provided-libraries (package-sources clojure-core-specs-alpha
|
||||
clojure-spec-alpha))
|
||||
(test-libraries (package-sources clojure-data-generators
|
||||
clojure-java-classpath
|
||||
clojure-test-check
|
||||
clojure-test-generative
|
||||
clojure-tools-namespace
|
||||
clojure-tools-reader)))
|
||||
(let* ((lib (lambda (prefix version hash)
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "https://github.com/clojure/"
|
||||
prefix version ".tar.gz"))
|
||||
(sha256 (base32 hash)))))
|
||||
;; The libraries below are needed to run the tests.
|
||||
(libraries
|
||||
`(("core-specs-alpha-src"
|
||||
,(lib "core.specs.alpha/archive/v"
|
||||
"0.4.74"
|
||||
"1hgl3222381349s4w5bnz02gghxfc8jjsqxhrvgadvn8ybh3dcsp"))
|
||||
("data-generators-src"
|
||||
,(lib "data.generators/archive/data.generators-"
|
||||
"1.0.0"
|
||||
"0s3hf1njvs68b8igasikvzagzqxl0gbri7w2qhzsypkhfh60v2cp"))
|
||||
("java-classpath-src"
|
||||
,(lib "java.classpath/archive/java.classpath-"
|
||||
"1.0.0"
|
||||
"178zajjsc9phk5l61r8w9hcpk0wgc9a811pl7kjgvn7rg4l7fh7j"))
|
||||
("spec-alpha-src"
|
||||
,(lib "spec.alpha/archive/v"
|
||||
"0.5.238"
|
||||
"0h15q9cmxaa7l2pqwwcykfyql8vbw6ns2a4lqfchik1mpfpr9jrb"))
|
||||
("test-check-src"
|
||||
,(lib "test.check/archive/v"
|
||||
"1.1.1"
|
||||
"0kx8l79mhpnn94rpsgc7nac7gb222g7a47mzrycj8crfc54wf0c1"))
|
||||
("test-generative-src"
|
||||
,(lib "test.generative/archive/v"
|
||||
"1.1.0"
|
||||
"0sm3q4jkcn06b3r0m0p29z159zqc8jk3k02yz92xwvdbnywaqnfz"))
|
||||
("tools-namespace-src"
|
||||
,(lib "tools.namespace/archive/tools.namespace-"
|
||||
"1.0.0"
|
||||
"1ifpk93m33rj2xm1qnnninlsdvm1liqmsp9igr63pjjwwwjw1cnn"))
|
||||
("tools-reader-src"
|
||||
,(lib "tools.reader/archive/tools.reader-"
|
||||
"1.3.2"
|
||||
"1n4dhg61iyypnjbxmihhqjb7lfpc0lzfvlk4jd8w0yr6za414f3a"))))
|
||||
(library-names (match libraries
|
||||
(((library-name _) ...)
|
||||
library-name))))
|
||||
|
||||
(package
|
||||
(name "clojure")
|
||||
(version "1.12.4")
|
||||
(version "1.12.0")
|
||||
(source (let ((name+version (string-append name "-" version)))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/clojure")
|
||||
(commit name+version)))
|
||||
(url "https://github.com/clojure/clojure")
|
||||
(commit name+version)))
|
||||
(file-name (string-append name+version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"072dv6s2gxcg8snlgkpjk6bp1cb17bgfshdq6ijsa4yslpqbf9wc")))))
|
||||
(base32 "17f62x9qq71yhcfpg2npv19xi9wcpgqj255nmvpfy1z2md64gawz")))))
|
||||
(build-system ant-build-system)
|
||||
(inputs (list icedtea))
|
||||
(inputs
|
||||
`(("jre" ,icedtea)))
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build clojure-utils)
|
||||
(guix build clojure-build-system)
|
||||
(guix build guile-build-system)
|
||||
,@%ant-build-system-modules)
|
||||
#:modules ((guix build ant-build-system)
|
||||
((guix build clojure-build-system) #:prefix clj:)
|
||||
(guix build clojure-utils)
|
||||
(guix build java-utils)
|
||||
(guix build utils)
|
||||
(ice-9 match)
|
||||
(ice-9 regex)
|
||||
(srfi srfi-26))
|
||||
#:test-target "test"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-library-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (extract-provided-library name)
|
||||
(copy-recursively
|
||||
(string-append (assoc-ref inputs name) "/src/main/clojure")
|
||||
"src/clj/"))
|
||||
(for-each extract-provided-library
|
||||
',(map origin-actual-file-name provided-libraries))))
|
||||
(define (extract-library name)
|
||||
(mkdir-p name)
|
||||
(with-directory-excursion name
|
||||
(invoke "tar"
|
||||
"--extract"
|
||||
"--verbose"
|
||||
"--file" (assoc-ref inputs name)
|
||||
"--strip-components=1")))
|
||||
(for-each extract-library ',library-names)
|
||||
(copy-recursively "core-specs-alpha-src/src/main/clojure"
|
||||
"src/clj/")
|
||||
(copy-recursively "spec-alpha-src/src/main/clojure"
|
||||
"src/clj/")
|
||||
#t))
|
||||
(add-after 'unpack-library-sources 'fix-manifest-classpath
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("<attribute name=\"Class-Path\" value=\".\"/>") ""))))
|
||||
(("<attribute name=\"Class-Path\" value=\".\"/>") ""))
|
||||
#t))
|
||||
(add-after 'unpack-library-sources 'clojure-spec-skip-macros
|
||||
;; Disable spec macro instrumentation when compiling clojure.spec
|
||||
;; See: https://clojure.atlassian.net/browse/CLJ-2254
|
||||
@@ -308,7 +140,8 @@ and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
,(string-join
|
||||
'("<sysproperty key=\"java.awt.headless\" value=\"true\"/>"
|
||||
"<sysproperty key=\"clojure.spec.skip-macros\" value=\"true\"/>\n")
|
||||
"\n")))))
|
||||
"\n")))
|
||||
#t))
|
||||
(add-after 'unpack-library-sources 'clojure-spec-compile
|
||||
;; Compile and include clojure.spec.alpha & clojure.core.specs.alpha
|
||||
(lambda _
|
||||
@@ -319,34 +152,28 @@ and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
"<arg value=\"clojure.spec.alpha\"/>"
|
||||
"<arg value=\"clojure.spec.gen.alpha\"/>"
|
||||
"<arg value=\"clojure.spec.test.alpha\"/>"
|
||||
"<arg value=\"clojure.core.specs.alpha\"/>"))))))
|
||||
"<arg value=\"clojure.core.specs.alpha\"/>"))))
|
||||
#t))
|
||||
(add-before 'build 'maven-classpath-properties
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (source-dir library)
|
||||
(string-append (assoc-ref inputs library) "/src/main/clojure"))
|
||||
(let* ((libraries ',(map origin-actual-file-name test-libraries))
|
||||
(test-classpath (map source-dir libraries)))
|
||||
(with-output-to-file "maven-classpath.properties"
|
||||
(lambda _
|
||||
(display "maven.compile.classpath=\n")
|
||||
(display (string-append "maven.test.classpath="
|
||||
(string-join test-classpath ":")
|
||||
"\n")))))))
|
||||
(add-before 'check 'fix-test-classpath
|
||||
;; Some java test files need access to compiled classes.
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("javac srcdir=\"\\$\\{jtestsrc\\}\"" cmd)
|
||||
(string-append cmd " classpath=\"${build}\"")))))
|
||||
(define (make-classpath libraries)
|
||||
(string-join (map (lambda (library)
|
||||
(string-append library "/src/main/clojure"))
|
||||
libraries) ":"))
|
||||
(with-output-to-file "maven-classpath.properties"
|
||||
(lambda ()
|
||||
(let ((classpath (make-classpath ',library-names)))
|
||||
(display (string-append "maven.compile.classpath=" classpath "\n"))
|
||||
(display (string-append "maven.test.classpath=" classpath "\n")))))
|
||||
#t))
|
||||
(add-after 'build 'build-javadoc ant-build-javadoc)
|
||||
(replace 'install (install-jars "./"))
|
||||
(add-after 'install-license-files 'install-doc
|
||||
(cut install-doc #:doc-dirs '("doc/clojure/") <...>))
|
||||
(add-after 'install-doc 'install-javadoc
|
||||
(install-javadoc "target/javadoc/"))
|
||||
(add-after 'reset-gzip-timestamps 'reset-class-timestamps
|
||||
clj:reset-class-timestamps))))
|
||||
(native-inputs (append provided-libraries test-libraries))
|
||||
(add-after 'reset-gzip-timestamps 'reset-class-timestamps clj:reset-class-timestamps))))
|
||||
(native-inputs libraries)
|
||||
(home-page "https://clojure.org/")
|
||||
(synopsis "Lisp dialect running on the JVM")
|
||||
(description "Clojure is a dynamic, general-purpose programming language,
|
||||
@@ -377,14 +204,14 @@ designs.")
|
||||
(define-public clojure-tools
|
||||
(package
|
||||
(name "clojure-tools")
|
||||
(version "1.12.4.1582")
|
||||
(version "1.11.1.1413")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.clojure.org/install/clojure-tools-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256 (base32 "08gzfblnz0zhnk6pwr9vcm6y168psgrwmqww3wqk1v7j5gr68n7x"))
|
||||
(sha256 (base32 "1q0z71ifdxwvyy9gvq8mx8jbygf8cszrlhb3h22walfamnisbhwk"))
|
||||
;; Remove AOT compiled JAR. The other JAR only contains uncompiled
|
||||
;; Clojure source code.
|
||||
(snippet
|
||||
@@ -424,8 +251,7 @@ designs.")
|
||||
(inputs (list rlwrap
|
||||
clojure
|
||||
clojure-tools-deps
|
||||
java-commons-logging-minimal
|
||||
java-slf4j-nop))
|
||||
java-commons-logging-minimal))
|
||||
(home-page "https://clojure.org/releases/tools")
|
||||
(synopsis "CLI tools for the Clojure programming language")
|
||||
(description "The Clojure command line tools can be used to start a
|
||||
@@ -435,16 +261,16 @@ Clojure repl, use Clojure and Java libraries, and start Clojure programs.")
|
||||
(define-public clojure-algo-generic
|
||||
(package
|
||||
(name "clojure-algo-generic")
|
||||
(version "1.0.1")
|
||||
(version "0.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/algo.generic")
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "algo.generic-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0i10rxk5jxsw1cm2a8rsq9zgl04173cbpaj02vvc9nb4ig219a8y"))))
|
||||
(base32 "1s6q10qp276dcpzv06bq1q3bvkvlw03qhmncqcs9cc6p9lc0w4p4"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
@@ -468,16 +294,16 @@ that can be implemented for any data type.")
|
||||
(define-public clojure-algo-monads
|
||||
(package
|
||||
(name "clojure-algo-monads")
|
||||
(version "0.2.1")
|
||||
(version "0.1.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/algo.monads")
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "algo.monads-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1l420fzqr1mw45w1lz6iqx0s61m8w3r3ad8zmsg17cqahnfakh00"))))
|
||||
(base32 "0mv3ba72hyhgasg2k3zy83ij61gak6cs4d6qgh8123z3j02mbh8p"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
@@ -496,7 +322,7 @@ defining and using monads and useful monadic functions.")
|
||||
(define-public clojure-core-async
|
||||
(package
|
||||
(name "clojure-core-async")
|
||||
(version "1.8.741")
|
||||
(version "1.6.681")
|
||||
(home-page "https://github.com/clojure/core.async")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -506,7 +332,7 @@ defining and using monads and useful monadic functions.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1m6lir2xr119yxz483cz0rfw4k3a40qmmsiwl2y7kyxy65vab60z"))))
|
||||
"1j9yz14hy2qs8g3flsqkn1sx9c0qlr5mmpy6ab1zml9yhbw5arzg"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -530,7 +356,7 @@ work on Communicating Sequential Processes (CSP).")
|
||||
(define-public clojure-core-cache
|
||||
(package
|
||||
(name "clojure-core-cache")
|
||||
(version "1.2.249")
|
||||
(version "1.1.234")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -539,7 +365,7 @@ work on Communicating Sequential Processes (CSP).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hdwv5dsx49i12riz3frzshwkgw26ah43667lzga2n6zgpmrh8ii"))))
|
||||
"0jiq022kd5jdpmxz884rvg5317xmx7g3gnidkpcfsamchyfh5qxq"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -557,16 +383,16 @@ cache and Naive cache backed with soft references.")
|
||||
(define-public clojure-core-match
|
||||
(package
|
||||
(name "clojure-core-match")
|
||||
(version "1.1.1")
|
||||
(version "1.0.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/core.match")
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "core.match-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09kijs81js7iy810qkzn7fi996gmf7bmlm2ax571zy0yr38i2hbr"))))
|
||||
"0ajpxjv4yc282cm0jw8819fay2j6jqp9nfy69k7vll09q7vqsd22"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -582,7 +408,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
||||
(define-public clojure-core-memoize
|
||||
(package
|
||||
(name "clojure-core-memoize")
|
||||
(version "1.2.273")
|
||||
(version "1.1.266")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -591,7 +417,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"009fj19y464an66pryygmqbnx2dqk5wkp40rbkbgkir0ax0k6j3y"))))
|
||||
"0nys79zrvcnwgyxb91zlyl3nb4p6r6y4n5rbdvzqkvsxxazi9ji0"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -609,17 +435,17 @@ Least-recently-used, Least-used and Time-to-live.")
|
||||
(define-public clojure-data-codec
|
||||
(package
|
||||
(name "clojure-data-codec")
|
||||
(version "0.2.1")
|
||||
(version "0.1.1")
|
||||
(home-page "https://github.com/clojure/data.codec")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "data.codec-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wxqwkbpaxjchh03lwy3ngyx6dwv7x7l1qhac42dl6bg213izil5"))))
|
||||
"192df1dmbwvf1x837mi731n9x94bdypaz18va45plzgdsh4xx6dr"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -638,7 +464,7 @@ is on par with Java implementations, e.g., Apache commons-codec.")
|
||||
(define-public clojure-data-csv
|
||||
(package
|
||||
(name "clojure-data-csv")
|
||||
(version "1.1.1")
|
||||
(version "1.0.1")
|
||||
(home-page "https://github.com/clojure/data.csv")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -648,7 +474,7 @@ is on par with Java implementations, e.g., Apache commons-codec.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1i43qzjn29a0xb3q54sfrn8f77nmxd0v0fn9361as07yclh8jzif"))))
|
||||
"1mh1qli6xrw4s3yj9cxxh50z4m7z08indj3ya30znkhi4xsphii2"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -663,7 +489,7 @@ relaxed.")
|
||||
(define-public clojure-data-json
|
||||
(package
|
||||
(name "clojure-data-json")
|
||||
(version "2.5.2")
|
||||
(version "2.5.0")
|
||||
(home-page "https://github.com/clojure/data.json")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -673,7 +499,7 @@ relaxed.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xkcd6h5g7yhr839wci6dsynmbijj9r5mrrj70gx849mkhj98411"))))
|
||||
"04k3fr9y1gp337h0d2zxam3aa3hl046r2g2qiizn7aq0rq6311p9"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -689,7 +515,7 @@ external dependencies")
|
||||
(define-public clojure-data-priority-map
|
||||
(package
|
||||
(name "clojure-data-priority-map")
|
||||
(version "1.2.1")
|
||||
(version "1.2.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -698,7 +524,7 @@ external dependencies")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yswqr6855n0rg0mfmjfdx0npzasm654m7sz4x0wl13grwgg220k"))))
|
||||
"0aynzrdl0w08q89nd069lcx8s6msqmwrpqnya63jv1l2pn3w6ij4"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -718,17 +544,17 @@ maps also support conj/peek/pop operations.")
|
||||
(define-public clojure-data-xml
|
||||
(package
|
||||
(name "clojure-data-xml")
|
||||
(version "0.2.0-alpha10")
|
||||
(version "0.2.0-alpha6")
|
||||
(home-page "https://github.com/clojure/data.xml")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "data.xml-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mnhgrh20p2wwmq8a4631dkpxbgbijwi6sfhw5v784hzkjkfgkh6"))))
|
||||
"08vglcapq7sd9zhw8dw1y7dcdks7f21w1pw9p05i475i3bw4cf94"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -737,10 +563,9 @@ maps also support conj/peek/pop operations.")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'delete-cljs-tests
|
||||
(lambda _
|
||||
(delete-file "src/test/resources/clojure/data/xml/cljs_repl_nashorn.clj")
|
||||
(delete-file "src/test/resources/clojure/data/xml/cljs_testsuite.clj")
|
||||
(delete-file "src/test/clojure/clojure/data/xml/test_cljs.clj"))))))
|
||||
(lambda _
|
||||
(delete-file "src/test/resources/clojure/data/xml/cljs_testsuite.clj")
|
||||
(delete-file "src/test/clojure/clojure/data/xml/test_cljs.clj"))))))
|
||||
(propagated-inputs (list clojure-data-codec))
|
||||
(synopsis "Clojure library for reading and writing XML data")
|
||||
(description "@code{data.xml} is a Clojure library for reading and writing
|
||||
@@ -817,10 +642,37 @@ tree.
|
||||
(home-page "https://github.com/Engelberg/instaparse")
|
||||
(license license:epl1.0))))
|
||||
|
||||
(define-public clojure-test-check
|
||||
(package
|
||||
(name "clojure-test-check")
|
||||
(version "1.1.1")
|
||||
(home-page "https://github.com/clojure/test.check")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09jvlibnxhjv0l57y0sa7yy5in67gq4sssag77hv2d980mwdnls6"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "QuickCheck for Clojure")
|
||||
(description "@code{test.check} is a Clojure property-based testing tool
|
||||
inspired by QuickCheck. The core idea of @code{test.check} is that instead of
|
||||
enumerating expected input and output for unit tests, you write properties
|
||||
about your function that should hold true for all inputs. This lets you write
|
||||
concise, powerful tests.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-analyzer
|
||||
(package
|
||||
(name "clojure-tools-analyzer")
|
||||
(version "1.2.1")
|
||||
(version "1.2.0")
|
||||
(home-page "https://github.com/clojure/tools.analyzer")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -830,7 +682,7 @@ tree.
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0apa3gc45rmdj19plbvglpj6i9dadkgvvidj5mcnkzi9y3h0nr27"))))
|
||||
"05v4i8qs5d51lh113phib0brkysphxa2d71khm840586432knyaa"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -845,7 +697,7 @@ format.")
|
||||
(define-public clojure-tools-analyzer-jvm
|
||||
(package
|
||||
(name "clojure-tools-analyzer-jvm")
|
||||
(version "1.3.4")
|
||||
(version "1.3.0")
|
||||
(home-page "https://github.com/clojure/tools.analyzer.jvm")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -855,7 +707,7 @@ format.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pk9z8zf9bgzj0wi98yx130l7570arnxfsg9508g1jvq83djpn21"))))
|
||||
"13nxzdp15772hzl3jmi5014jkwldkm1qccfycwkk2pn64hycmnxl"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -873,16 +725,16 @@ tools.analyzer, providing additional JVM-specific passes.")
|
||||
(define-public clojure-tools-macro
|
||||
(package
|
||||
(name "clojure-tools-macro")
|
||||
(version "0.2.2")
|
||||
(version "0.1.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/tools.macro")
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "tools.macro-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "09xxp5vpf86akmn95mvjmd34a1pc48cjxbp6q4lvi3q8rhpkjfd5"))))
|
||||
(base32 "14mdxqkwja0cffmyfav5pbcli2qvw1mjdgz0n619a2z2036andx8"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
@@ -896,16 +748,16 @@ tools.analyzer, providing additional JVM-specific passes.")
|
||||
(define-public clojure-tools-cli
|
||||
(package
|
||||
(name "clojure-tools-cli")
|
||||
(version "1.3.250")
|
||||
(version "1.0.206")
|
||||
(home-page "https://github.com/clojure/tools.cli")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(commit (string-append "tools.cli-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1nyw33w83gd7xlbpma03p4jwcdcp38h8y99x2rqw4zcnw19gsz4p"))))
|
||||
(base32 "1hvk5zacl3fr8lfcbfgckaicqjx697j0kzw2x5hwj8j5xlr8ri2r"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
@@ -920,7 +772,7 @@ work with command-line arguments.")
|
||||
(define-public clojure-tools-deps
|
||||
(package
|
||||
(name "clojure-tools-deps")
|
||||
(version "0.28.1569")
|
||||
(version "0.18.1354")
|
||||
(home-page "https://github.com/clojure/tools.deps")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -930,26 +782,38 @@ work with command-line arguments.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04s8cishxm1y4vnx8mpdk1qma6j0khmb356j69fsy14s615yjgfg"))))
|
||||
"0ls5nixhsjjhf3qz8kbyhmks5lw7a25zxl46yrizbw7vba3mzrpl"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
||||
#:java-source-dirs '("src/main/java")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()
|
||||
;; FIXME: Could not initialize class
|
||||
;; org.eclipse.aether.transport.http.SslSocketFactory
|
||||
;; FIXME: Could not initialize class org.eclipse.aether.transport.http.SslSocketFactory
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'reference-clojure-jar-input
|
||||
;; Use static clojure jar from build input at runtime by default.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/main/resources/clojure/tools/deps/deps.edn"
|
||||
(("org\\.clojure/clojure.*$")
|
||||
(string-append "org.clojure/clojure {:local/root \""
|
||||
(assoc-ref inputs "clojure")
|
||||
"/share/java/clojure.jar\"}"))))))))
|
||||
;; FIXME: Currently, the S3 transporter depends on ClojureScript,
|
||||
;; which is very difficult to package due to dependencies on Java
|
||||
;; libraries with non-standard build systems. Instead of actually
|
||||
;; packaging these libraries, we just remove the S3 transporter that
|
||||
;; depends on them.
|
||||
(add-after 'unpack 'remove-s3-transporter
|
||||
(lambda _
|
||||
(for-each delete-file
|
||||
(list
|
||||
(string-append
|
||||
"src/main/clojure/clojure/"
|
||||
"tools/deps/util/s3_aws_client.clj")
|
||||
(string-append
|
||||
"src/main/clojure/clojure/"
|
||||
"tools/deps/util/s3_transporter.clj")
|
||||
(string-append
|
||||
"src/test/clojure/clojure/"
|
||||
"tools/deps/util/test_s3_transporter.clj")))
|
||||
(substitute*
|
||||
"src/main/clojure/clojure/tools/deps/util/maven.clj"
|
||||
(("clojure.tools.deps.util.s3-transporter")
|
||||
"")))))))
|
||||
(propagated-inputs (list maven-resolver-api
|
||||
maven-resolver-spi
|
||||
maven-resolver-impl
|
||||
@@ -961,8 +825,7 @@ work with command-line arguments.")
|
||||
maven-resolver-transport-file
|
||||
clojure-tools-gitlibs
|
||||
clojure-tools-cli
|
||||
clojure-data-xml
|
||||
cognitect-aws-api))
|
||||
clojure-data-xml))
|
||||
(synopsis "Clojure library supporting clojure-tools")
|
||||
(description "This package provides a functional API for transitive
|
||||
dependency graph expansion and the creation of classpaths.")
|
||||
@@ -974,7 +837,7 @@ dependency graph expansion and the creation of classpaths.")
|
||||
;; Keeping it to give downstream packages a chance to upgrade
|
||||
(package
|
||||
(name "clojure-tools-deps-alpha")
|
||||
(version "0.15.1254")
|
||||
(version "0.14.1212")
|
||||
(home-page "https://github.com/clojure/tools.deps.alpha")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -984,7 +847,7 @@ dependency graph expansion and the creation of classpaths.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"17zvizzw637az7facwipsrg9b1kjci03aycg6w5pnjpg6b6nd5m6"))))
|
||||
"0r8qfihii6cf95kl86x6zfldnm7wlkgda2qmq3340j1x03v244dd"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
||||
@@ -1036,7 +899,7 @@ dependency graph expansion and the creation of classpaths.")
|
||||
(define-public clojure-tools-gitlibs
|
||||
(package
|
||||
(name "clojure-tools-gitlibs")
|
||||
(version "2.6.212")
|
||||
(version "2.4.181")
|
||||
(home-page "https://github.com/clojure/tools.gitlibs")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -1046,7 +909,7 @@ dependency graph expansion and the creation of classpaths.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"199n58dwh44rlb0m514swh6zx3flckq3lccxv9dwbypbv29n9ghq"))))
|
||||
"1d8c79f33axghadwqa955yjfsxa6fgl8jq4nfll2zrp6sjw0597k"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
@@ -1064,7 +927,7 @@ keeps a cache of git directories and working trees that can be reused.")
|
||||
(define-public clojure-tools-logging
|
||||
(package
|
||||
(name "clojure-tools-logging")
|
||||
(version "1.3.1")
|
||||
(version "1.3.0")
|
||||
(home-page "https://github.com/clojure/tools.logging")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -1074,7 +937,7 @@ keeps a cache of git directories and working trees that can be reused.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jdk7b6zm73m7nki76123ik6px9rl5g5wb06298v34h56qyck8lr"))))
|
||||
"106n4cxsxzs0hvpsfi1h14b09xm6klrvj1g5fbd5nw8fj3mpkdac"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
@@ -1108,10 +971,36 @@ implementation, selected at runtime when the clojure.tools.logging namespace
|
||||
is first loaded.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-reader
|
||||
(package
|
||||
(name "clojure-tools-reader")
|
||||
(version "1.5.0")
|
||||
(home-page "https://github.com/clojure/tools.reader")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jf05q4ym8z16qaxidx47g2gjv04qcf1wvkca3wqyiaszpvym4zz"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:test-exclude '(clojure.tools.common-tests))) ; Loaded by other tests.
|
||||
(synopsis "Clojure reader written in Clojure")
|
||||
(description "The clojure.tools.reader library offers all functionality
|
||||
provided by the Clojure Core reader and more. It adds metadata such as column
|
||||
and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public http-kit
|
||||
(package
|
||||
(name "http-kit")
|
||||
(version "2.8.1")
|
||||
(version "2.8.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1120,7 +1009,7 @@ is first loaded.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fqfl7a7ygfw43xjmmlwrl55xbz34qxpzc8230bpqvjh9n417h74"))))
|
||||
"1361bpb4sn3dbp215s7gf1bcrb45lgx3lk6lix7bndw9lahr5ank"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:java-source-dirs '("src/java")
|
||||
@@ -1134,59 +1023,3 @@ high-performance Clojure HTTP client and server library with WebSocket and
|
||||
asynchronous support.")
|
||||
(home-page "https://github.com/http-kit/http-kit")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public cognitect-aws-api
|
||||
(package
|
||||
(name "cognitect-aws-api")
|
||||
(version "0.8.774")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cognitect-labs/aws-api")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1y3impishicd8niy1vddx6c80pnbpz24zfr7vysi4r56p1vqnwmb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(for-each delete-file
|
||||
(list
|
||||
;; Require Cognitect http client
|
||||
"src/cognitect/aws/http/cognitect.clj"
|
||||
;; Requires Babashka.
|
||||
"test/src/bb_test_runner.clj"
|
||||
;; Requires AWS Java SDK v2.
|
||||
"test/src/cognitect/aws/jdk_v2.clj"
|
||||
"test/src/cognitect/aws/signers_test.clj"
|
||||
;; Remove integration tests.
|
||||
"test/src/cognitect/aws/client/shared_test.clj"
|
||||
"test/src/cognitect/aws/api_test.clj"
|
||||
"test/src/cognitect/client/impl_test.clj"
|
||||
"test/src/cognitect/client/test_double_test.clj"))
|
||||
;; Remove integration tests
|
||||
(delete-file-recursively "test/src/cognitect/aws/integration")))))
|
||||
(build-system clojure-build-system)
|
||||
(propagated-inputs (list clojure-core-async
|
||||
clojure-tools-logging
|
||||
clojure-data-json
|
||||
clojure-data-xml))
|
||||
(native-inputs (list clojure-test-check
|
||||
http-kit))
|
||||
(arguments `(#:source-dirs '("src")
|
||||
#:doc-dirs '()
|
||||
#:test-dirs '("test/src" "test/resources")
|
||||
;; Allow using java.net.http client.
|
||||
#:jdk ,openjdk11))
|
||||
(synopsis
|
||||
"Programmatic access to AWS services from Clojure programs")
|
||||
(description
|
||||
"This package is an idiomatic, data-oriented Clojure library for invoking AWS
|
||||
APIs. While the library offers some helper and documentation functions you'll
|
||||
use at development time, the only functions you ever need at runtime are
|
||||
client, which creates a client for a given service and invoke, which invokes
|
||||
an operation on the service. invoke takes a map and returns a map, and works
|
||||
the same way for every operation on every service.")
|
||||
(home-page "https://github.com/cognitect-labs/aws-api")
|
||||
(license license:asl2.0)))
|
||||
|
||||
+8
-35
@@ -46,7 +46,6 @@
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
||||
#:use-module (gnu packages)
|
||||
@@ -461,40 +460,14 @@ and workspaces that can be used in the compiler environment of your choice.")
|
||||
(uri (pypi-uri "cmakelang" version))
|
||||
(sha256
|
||||
(base32 "0zz6g1ignqanl4ja9f5nrlk5f3mvv7cp5y9yswjd0m06n23jx603"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no test data in pypi archive
|
||||
#:modules '((guix build pyproject-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 textual-ports))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'adjust-setup.py
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("cmakelang/doc/README.rst")
|
||||
"README.rst"))
|
||||
;; XXX: setup.py has multiple setup() calls, breaking the 'build
|
||||
;; phase ; in this case the package is wrong, but conveniently
|
||||
;; our goal is the first setup() call, so discard what comes from
|
||||
;; the second one.
|
||||
(rename-file "setup.py" "setup.py.bak")
|
||||
(call-with-input-file "setup.py.bak"
|
||||
(lambda (in)
|
||||
(call-with-output-file "setup.py"
|
||||
(lambda (out)
|
||||
(let loop ((line (get-line in))
|
||||
(setup-seen #f))
|
||||
(unless (or (eof-object? line)
|
||||
(and (string-prefix? "setup(" line)
|
||||
setup-seen))
|
||||
(display line out)
|
||||
(newline out)
|
||||
(loop (get-line in)
|
||||
(or setup-seen
|
||||
(string-prefix? "setup(" line))))))))))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(build-system python-build-system)
|
||||
(arguments (list #:tests? #f ;no test data in pypi archive
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'adjust-setup.py
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("cmakelang/doc/README.rst")
|
||||
"README.rst")))))))
|
||||
(inputs (list python-jinja2 python-pyyaml python-six))
|
||||
(home-page "https://github.com/cheshirekow/cmake_format/")
|
||||
(synopsis "Language tools for CMake (format, lint, etc.)")
|
||||
|
||||
@@ -84,7 +84,6 @@
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages file)
|
||||
@@ -96,7 +95,6 @@
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages perl)
|
||||
@@ -2512,46 +2510,6 @@ download times, and other distribution and storage costs.")
|
||||
(properties `((lint-hidden-cve . ("CVE-2023-23456" "CVE-2023-23457"))))
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public qatzip
|
||||
(package
|
||||
(name "qatzip")
|
||||
(version "1.3.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/intel/QATzip")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c7kph69cf48gr97j3gzh1zwd58wxmp64vfv34z4r9ixj3lh6ziz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
;; The script has a broken shebang (see:
|
||||
;; <https://github.com/intel/QATzip/issues/143>).
|
||||
(invoke "sh" "autogen.sh"))))))
|
||||
(native-inputs (list autoconf automake libtool))
|
||||
(inputs (list numactl qatlib))
|
||||
(propagated-inputs (list lz4 zlib)) ;in Requires of qatzip.pc
|
||||
(home-page "https://github.com/intel/QATzip")
|
||||
(synopsis "Compression Library accelerated by Intel QuickAssist Technology")
|
||||
(description "QATzip is a library which builds on top of the
|
||||
Intel QuickAssist Technology user space library, to provide extended
|
||||
accelerated compression and decompression services by offloading the actual
|
||||
compression and decompression request(s) to the Intel Chipset Series. QATzip
|
||||
produces data using the standard gzip format (RFC1952) with extended headers
|
||||
or lz4 blocks with lz4 frame format. The data can be decompressed with a
|
||||
compliant gzip or lz4 implementation. QATzip is designed to take full
|
||||
advantage of the performance provided by Intel QuickAssist Technology.")
|
||||
(license license:bsd-3)
|
||||
;; This package only supports hardware that exists on the x86_64 platform,
|
||||
;; and is not portable.
|
||||
(supported-systems (list "x86_64-linux"))))
|
||||
|
||||
(define-public quazip
|
||||
(package
|
||||
(name "quazip")
|
||||
@@ -2876,7 +2834,7 @@ computations.")
|
||||
(define-public c-blosc2
|
||||
(package
|
||||
(name "c-blosc2")
|
||||
(version "2.22.0")
|
||||
(version "2.15.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2885,7 +2843,7 @@ computations.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"147gkmdrqbw3knqmsj8pc2x0jqcrai81wxjj5f3jna556krpxq6i"))))
|
||||
"17kqwvw2n6bgzidi8f5906s5hc9wm1lbfbpd491gf7csxjck99sx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:parallel-tests? #f
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
;;; Copyright © 2024 Foundation Devices, Inc. <hello@foundation.xyz>
|
||||
;;; Copyright © 2024 Jean-Pierre De Jesus DIAZ <jean@foundation.xyz>
|
||||
;;; Copyright © 2025 Tomas Volf <~@wolfsden.cz>
|
||||
;;; Copyright © 2025 Foster Hangdaan <foster@hangdaan.email>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -572,7 +571,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
|
||||
(define-public podman
|
||||
(package
|
||||
(name "podman")
|
||||
(version "5.7.1")
|
||||
(version "5.7.0")
|
||||
(outputs '("out" "docker"))
|
||||
(properties
|
||||
`((output-synopsis "docker" "docker alias for podman")
|
||||
@@ -585,7 +584,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
|
||||
(url "https://github.com/containers/podman")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "16lb58r8vkngics6fn1b3six8bl3nrl9awrnq6ivdv1grfgy9z61"))
|
||||
(base32 "0p1hh3sy5m1l1151wsda3q346pd4dm9hgpwjqakdha8yixyicwj8"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -703,33 +702,22 @@ To get @code{podman machine} working, install @code{qemu-minimal}, and
|
||||
(define-public podman-compose
|
||||
(package
|
||||
(name "podman-compose")
|
||||
(version "1.5.0")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/containers/podman-compose")
|
||||
(commit (string-append "v" version))))
|
||||
(url "https://github.com/containers/podman-compose")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08pz9axvgfyr0jd8rlndmhh8147s864mz17ng6qs07831g9ylj80"))))
|
||||
(base32 "06vm088q1x7j929n93ylq3bav716bqh6l79agj8sgzsqxjsmli73"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Only run tests in `tests/unit`, skipping the ones in
|
||||
;; `tests/integration`. The integration tests need an environment with
|
||||
;; the ability to manage containers and volumes using the `podman`
|
||||
;; command.
|
||||
;;
|
||||
;; tests: 378 tests
|
||||
#:test-backend #~'unittest
|
||||
#:test-flags #~(list "discover" "tests/unit")))
|
||||
(native-inputs
|
||||
(list python-parameterized
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-dotenv
|
||||
python-pyyaml))
|
||||
#:test-flags #~(list "pytests")))
|
||||
(native-inputs (list python-pytest python-parameterized python-setuptools python-wheel))
|
||||
(propagated-inputs (list python-dotenv python-pyyaml))
|
||||
(home-page "https://github.com/containers/podman-compose")
|
||||
(synopsis "Script to run docker-compose.yml using podman")
|
||||
(description
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages cook)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix download)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages groff)
|
||||
#:use-module (gnu packages text-editors)
|
||||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public cook
|
||||
(package
|
||||
(name "cook")
|
||||
(version "2.34")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "http://fossies.org/linux/misc/old/cook-2.34.tar.gz")
|
||||
(sha256
|
||||
(base32
|
||||
"104saqnqql1l7zr2pm3f718fdky3ds8j07c6xvwrs1rfkhrw58yw"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:parallel-build? #f ; There are some nasty racy rules in the Makefile.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-conf
|
||||
(lambda _
|
||||
(substitute* (append '("common/env.c")
|
||||
(find-files "test" "\\.sh"))
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; Guix's binutils (because it wants bit-reproducable builds) is
|
||||
;; is configured with the --enable-deterministic-archives flag.
|
||||
;; This means the timestamp of files appended to an ar archive
|
||||
;; are automatically and silently mutated to 00:00 1 Jan 1970
|
||||
;; which plays havoc with this test, for which correct timestamps
|
||||
;; are very important. Adding the U flag undoes the effect of
|
||||
;; --enable-deterministic-archives and allows this test to work
|
||||
;; again.
|
||||
(substitute* "test/00/t0077a.sh"
|
||||
(("ar qc") "ar qcU"))
|
||||
|
||||
;; Guix builds have LC_ALL set to "en_US.utf8", which causes
|
||||
;; `date` to use a 12-hour clock instead of 24h, which in turn
|
||||
;; makes t0217a.sh fail because of unexpected date output.
|
||||
(substitute* "test/02/t0217a.sh"
|
||||
(("export TZ")
|
||||
"export TZ\nLC_ALL=POSIX\nexport LC_ALL"))
|
||||
|
||||
(setenv "SH" (which "sh"))
|
||||
#t)))))
|
||||
(native-inputs (list bison-3.0
|
||||
;; For building the documentation:
|
||||
groff
|
||||
;; For the tests:
|
||||
sharutils
|
||||
;; One test wants rsh. However there is no rsh server
|
||||
;; running in the build environment and so far as I'm
|
||||
;; aware, it cannot be started without root.
|
||||
;; This test is therefore just skipped.
|
||||
;; ("inetutils" ,inetutils)
|
||||
ed))
|
||||
(home-page (string-append "https://web.archive.org/web/20140727122520/"
|
||||
"http://miller.emu.id.au/pmiller/software/cook/"))
|
||||
(synopsis "Tool for constructing files")
|
||||
(description "Cook is a tool for constructing files. It is given a set of
|
||||
files to create, and recipes of how to create them. In any non-trivial program
|
||||
there will be prerequisites to performing the actions necessary to creating
|
||||
any file, such as include files. Cook provides a mechanism to define these.")
|
||||
(license gpl3+)))
|
||||
+11
-170
@@ -50,7 +50,6 @@
|
||||
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2025 Philippe Swartvagher <phil.swart@gmx.fr>
|
||||
;;; Copyright © 2025 Murilo <murilo@disroot.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -103,7 +102,6 @@
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages glib)
|
||||
@@ -123,12 +121,10 @@
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-check)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages popt)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages pulseaudio)
|
||||
#:use-module (gnu packages samba)
|
||||
#:use-module (gnu packages sdl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages tex)
|
||||
@@ -333,31 +329,6 @@ This project is maintained by Kitware in support of ITK, the Insight
|
||||
Segmentation and Registration Toolkit.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public collada-dom
|
||||
(package
|
||||
(name "collada-dom")
|
||||
(version "2.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rdiankov/collada-dom.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1npz3yynv02g7w70c39zqn5w0g4sb438bmkkw0x7gj8cknjnwv9z"))
|
||||
(patches (search-patches "collada-dom-boost.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f)) ; No tests present
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list boost libxml2 minizip zlib))
|
||||
(home-page "https://github.com/rdiankov/collada-dom")
|
||||
(synopsis "COLLADA DOM C++ library")
|
||||
(description "COLLADA-DOM is a C++ library for loading
|
||||
and saving COLLADA documents that can contain 2D, 3D, physics
|
||||
and other types of content.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public cpp-utilities
|
||||
(package
|
||||
(name "cpp-utilities")
|
||||
@@ -976,7 +947,7 @@ library for SIMD (Single Instruction, Multiple Data) with runtime dispatch.")
|
||||
(define-public hyprgraphics
|
||||
(package
|
||||
(name "hyprgraphics")
|
||||
(version "0.5.0")
|
||||
(version "0.4.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -987,7 +958,7 @@ library for SIMD (Single Instruction, Multiple Data) with runtime dispatch.")
|
||||
(snippet #~(substitute* "CMakeLists.txt" (("libjxl_cms") "")))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8yfnv1vs6iqnh7r73yyfkbl8l61mqpmpyhri65sqwvplkgw41i"))))
|
||||
"1jii9l9qbksp6x1vwbm84a985hy9q9xcpl703bliprd5rkpi6w96"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list gcc-15 pkg-config))
|
||||
(inputs (list cairo
|
||||
@@ -1011,7 +982,7 @@ utilities used across the hypr* ecosystem.")
|
||||
(define-public hyprlang
|
||||
(package
|
||||
(name "hyprlang")
|
||||
(version "0.6.8")
|
||||
(version "0.6.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1020,7 +991,7 @@ utilities used across the hypr* ecosystem.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06wiizy73f0x6zj1ar878gm1w9zam1gmgjw0ybixj3qag0gxqv34"))))
|
||||
"13lqlwrpcd3gs5xw51sj1zx2w7kvsywvgdal81dp841rpph91z00"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1045,7 +1016,7 @@ language used in Hyprland.")
|
||||
(define-public hyprutils
|
||||
(package
|
||||
(name "hyprutils")
|
||||
(version "0.11.0")
|
||||
(version "0.10.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1054,7 +1025,7 @@ language used in Hyprland.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ymiqzncppdik8lw3ad7xaqig6c7bjcy7crcwbq3rjfk2hrc8rmc"))))
|
||||
"08b65pssaci780rgb5qgqc61zvbxmb9qda4gb58j8nh9yi3ya0jx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1077,102 +1048,6 @@ language used in Hyprland.")
|
||||
ecosystem.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hyprtoolkit
|
||||
(package
|
||||
(name "hyprtoolkit")
|
||||
(version "0.5.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hyprwm/hyprtoolkit")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jjb1bf55270r3qc3fzxd1l3ahqsbgs948z46qi9niapa3gx1zli"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f)) ; No tests in Release build type
|
||||
(native-inputs (list pkg-config hyprwayland-scanner))
|
||||
(inputs
|
||||
(list aquamarine
|
||||
cairo
|
||||
googletest
|
||||
hyprgraphics
|
||||
hyprlang
|
||||
hyprutils
|
||||
iniparser
|
||||
mesa
|
||||
libglvnd
|
||||
libxkbcommon
|
||||
pango
|
||||
pixman
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://github.com/hyprwm/hyprtoolkit")
|
||||
(synopsis "Modern C++ Wayland-native GUI toolkit")
|
||||
(description "This package provides a C++ toolkit for making wayland GUI
|
||||
apps.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hyprwire
|
||||
(package
|
||||
(name "hyprwire")
|
||||
(version "0.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hyprwm/hyprwire")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rzclhk42x9im9n6fz2bj98l9lb7jhl3vijvck4rj6yhb80kvli0"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f)) ; There are no tests
|
||||
(native-inputs (list pkg-config gcc-15))
|
||||
(inputs
|
||||
(list hyprutils
|
||||
libffi
|
||||
pugixml))
|
||||
(home-page "https://github.com/hyprwm/hyprwire")
|
||||
(synopsis "Fast and consistent wire protocol for IPC")
|
||||
(description "This package provides a fast and consistent wire protocol,
|
||||
and its implementation. This is essentially a method for processes to talk to
|
||||
each other.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hyprland-guiutils
|
||||
(package
|
||||
(name "hyprland-guiutils")
|
||||
(version "0.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hyprwm/hyprland-guiutils")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x5757ch8rvgbph66fkf5cg39r37isvfy450429746xmajsy0qa7"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f)) ; There are no tests
|
||||
(native-inputs (list pkg-config gcc-15))
|
||||
(inputs
|
||||
(list aquamarine
|
||||
cairo
|
||||
hyprgraphics
|
||||
hyprlang
|
||||
hyprtoolkit
|
||||
hyprutils
|
||||
mesa
|
||||
libxkbcommon
|
||||
pixman))
|
||||
(home-page "https://github.com/hyprwm/hyprland-guiutils")
|
||||
(synopsis "Hyprland GUI utilities")
|
||||
(description "This package provides GUI utilities for hyprland. It is the
|
||||
successor of hyprland-qtutils.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public xsimd-benchmark
|
||||
(package
|
||||
(inherit xsimd)
|
||||
@@ -1318,32 +1193,6 @@ collision) and the extra storage is linear with respect to the number of
|
||||
keys.")
|
||||
(license license:asl2.0))))
|
||||
|
||||
(define-public glaze
|
||||
(package
|
||||
(name "glaze")
|
||||
(version "7.0.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/stephenberry/glaze")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1plzxrpk470yqm0pzdw5ghc39jvcafn2xj90hk4gpy7r82wvwfhs"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f
|
||||
#:configure-flags
|
||||
;; Building tests require fetching external libraries
|
||||
#~(list "-DBUILD_TESTING=OFF")))
|
||||
(home-page "https://github.com/stephenberry/glaze")
|
||||
(synopsis "Fast, in memory, JSON and reflection library for modern C++")
|
||||
(description "Glaze is an in-memory JSON and reflection library for modern
|
||||
C++. It also provides support for BEVE, CBOR, CSV, MessagePack, TOML, YAML,
|
||||
and EETF.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public json-dto
|
||||
(package
|
||||
(name "json-dto")
|
||||
@@ -2624,22 +2473,17 @@ of C++14 components that complements @code{std} and Boost.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags #~(list "-DENABLE_TESTS=ON" "-DENABLE_CRYPTO=ON"
|
||||
"-DENABLE_NETSSL=ON")
|
||||
#:configure-flags #~(list "-DENABLE_TESTS=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-problematic-tests
|
||||
(lambda _
|
||||
(substitute* (list "Foundation/CMakeLists.txt" ; XXX: fails.
|
||||
;; Require network access.
|
||||
;; Require network access
|
||||
"Net/CMakeLists.txt"
|
||||
"MongoDB/CMakeLists.txt"
|
||||
"Redis/CMakeLists.txt"
|
||||
;; Requires network access and uses certificates
|
||||
;; that will expire.
|
||||
"NetSSL_OpenSSL/CMakeLists.txt")
|
||||
"Redis/CMakeLists.txt")
|
||||
(("ENABLE_TESTS") "FALSE")))))))
|
||||
(inputs (list openssl))
|
||||
(home-page "https://pocoproject.org/")
|
||||
(synopsis "Portable C++ components")
|
||||
(description "This package provides a collection of C++ libraries intended
|
||||
@@ -3373,11 +3217,8 @@ syntax with variables, conditions, functions and more.")
|
||||
(package
|
||||
(inherit jsonnet)
|
||||
(name "python-jsonnet")
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:test-flags #~(list "--ignore=case_studies/")))
|
||||
(native-inputs (modify-inputs (package-native-inputs jsonnet)
|
||||
(append python-pyyaml python-pytest python-setuptools)))
|
||||
(build-system python-build-system)
|
||||
(arguments '())
|
||||
(synopsis "Python bindings for Jsonnet, the data templating language")
|
||||
(description "This package provides a Python library named @code{_jsonnet}
|
||||
which can evaluate Jsonnet files and expressions.")))
|
||||
|
||||
+563
-726
File diff suppressed because it is too large
Load Diff
+27
-121
@@ -21,7 +21,7 @@
|
||||
;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net>
|
||||
;;; Copyright © 2021 Ellis Kenyő <me@elken.dev>
|
||||
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
|
||||
;;; Copyright © 2021, 2022, 2025 Brendan Tildesley <mail@brendan.scot>
|
||||
;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot>
|
||||
;;; Copyright © 2022 Allan Adair <allan@adair.no>
|
||||
;;; Copyright © 2022, 2024-2025 Maxim Cournoyer <maxim@guixoic.coop>
|
||||
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
@@ -30,7 +30,6 @@
|
||||
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025 Robin Templeton <robin@guixotic.coop>
|
||||
;;; Copyright © 2026 Hennadii Stepanov <hebasto@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -51,7 +50,6 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages aidc)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages attr)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
@@ -522,14 +520,14 @@ total number of shares generated.")
|
||||
(define-public tomb
|
||||
(package
|
||||
(name "tomb")
|
||||
(version "2.13")
|
||||
(version "2.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.dyne.org/tomb/releases/"
|
||||
"Tomb-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1405kw0j8i1bqyqbim8530xf6hchpf57r9p1v92aknwyn5wgny0g"))))
|
||||
(base32 "05f34yx91bn9fj7rkabgpzvkw4pa6bg2c1r8cnp72wwnx6bzj97m"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -796,47 +794,6 @@ data on your platform, so the seed itself will be as random as possible.
|
||||
@end enumerate\n")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public qatlib
|
||||
(package
|
||||
(name "qatlib")
|
||||
(version "25.08.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/intel/qatlib/")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hbhrj0wlr68by7gdvsw4nh35rwg4yngn3m7awkx799pbqsw4iyc"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "--disable-static") ;avoid large .a
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
;; The script has a broken shebang (see:
|
||||
;; <https://github.com/intel/qatlib/issues/128>).
|
||||
(invoke "sh" "autogen.sh"))))))
|
||||
(native-inputs (list autoconf autoconf-archive automake libtool nasm))
|
||||
(inputs (list numactl openssl zlib))
|
||||
(propagated-inputs (list openssl)) ;in 'Requires' of libqat.pc
|
||||
(home-page "https://github.com/intel/qatlib")
|
||||
(synopsis "Intel QuickAssist Technology Library (QATlib)")
|
||||
(description "Intel QuickAssist Technology provides hardware acceleration for
|
||||
offloading security, authentication and compression services from the CPU,
|
||||
thus significantly increasing the performance and efficiency of standard
|
||||
platform solutions. Its services include symmetric encryption and
|
||||
authentication, asymmetric encryption, digital signatures, RSA, DH and ECC,
|
||||
and lossless data compression. This package provides user space libraries
|
||||
that allow access to Intel QuickAssist devices and expose the Intel
|
||||
QuickAssist APIs and sample codes.")
|
||||
(license license:bsd-3)
|
||||
;; This package only supports hardware that exists on the x86_64 platform,
|
||||
;; and is not portable.
|
||||
(supported-systems (list "x86_64-linux"))))
|
||||
|
||||
(define-public crypto++
|
||||
(package
|
||||
(name "crypto++")
|
||||
@@ -1582,7 +1539,7 @@ non-encrypted files.")
|
||||
(define-public cryfs
|
||||
(package
|
||||
(name "cryfs")
|
||||
(version "1.0.1")
|
||||
(version "0.11.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1590,53 +1547,52 @@ non-encrypted files.")
|
||||
"https://github.com/cryfs/cryfs/releases/download/"
|
||||
version "/cryfs-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1va8l8yfyi895604i8npq2b5ha0ixiqydlrq2nck2106w52wrm3s"))
|
||||
(patches (search-patches
|
||||
;; https://github.com/cryfs/cryfs/pull/494
|
||||
"cryfs-boost-1.88-fix.patch"
|
||||
;; https://github.com/cryfs/cryfs/pull/500
|
||||
"cryfs-boost-1.89-fix.patch"))))
|
||||
(base32 "0a48qijfrd02ianp19x3kz24w1pgigmlxdr5nks0gag7z5b2s7m7"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-1))
|
||||
#:configure-flags
|
||||
;; Note: This also disables checking for security issues.
|
||||
'("-DCRYFS_UPDATE_CHECKS=OFF"
|
||||
"-DBUILD_TESTING=ON")
|
||||
;; crypto++ is still bundled: https://github.com/cryfs/cryfs/issues/369
|
||||
;; Note: This also disables checking for security issues.
|
||||
`("-DCRYFS_UPDATE_CHECKS=OFF"
|
||||
;; This helps us use some dependencies from Guix instead of conan.
|
||||
;; crypto++ is still bundled: https://github.com/cryfs/cryfs/issues/369
|
||||
;; Googletest is also since I wasn't sure how to unbundle that.
|
||||
,(string-append "-DDEPENDENCY_CONFIG=" (getcwd)
|
||||
"/cmake-utils/DependenciesFromLocalSystem.cmake"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'fix-up
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(chdir "..") ; We end up in .github somehow
|
||||
;; Remove junk directory that breaks the build
|
||||
(chdir "..") (delete-file-recursively ".circleci")
|
||||
;; Install documentation with Guix defaults.
|
||||
(substitute* "doc/CMakeLists.txt"
|
||||
(("CONFIGURATIONS Release")
|
||||
"CONFIGURATIONS Release RelWithDebInfo"))
|
||||
;; Disable Fuse tests.
|
||||
(substitute* "test/cryfs-cli/CMakeLists.txt"
|
||||
(("CliTest_IntegrityCheck.cpp") "")
|
||||
(("CliTest_Setup.cpp") "")
|
||||
(("CliTest_WrongEnvironment.cpp") "")
|
||||
(("CryfsUnmountTest.cpp") ""))))
|
||||
(when tests?
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("option.BUILD_TESTING .build test cases. OFF.")
|
||||
"option(BUILD_TESTING \"build test cases\" ON)")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "HOME" "/tmp")
|
||||
(let ((tests (find-files "test/" "-test$")))
|
||||
;; SignalHandler/SignalCatcher tests fails
|
||||
;; Fuse tests can't run in build env.
|
||||
(let ((tests (find-files "." "-test$")))
|
||||
;; XXX: Disable failing tests. Unfortunately there are a
|
||||
;; few. Some only fail in the build environment due to
|
||||
;; FUSE not being available.
|
||||
(for-each invoke
|
||||
(lset-difference string-contains
|
||||
tests
|
||||
'("cpp-utils-test"
|
||||
"cryfs-cli-test"
|
||||
"blobstore-test"
|
||||
"fspp-test"))))))))))
|
||||
(native-inputs
|
||||
(list googletest pkg-config python-wrapper))
|
||||
(list pkg-config python-wrapper))
|
||||
(inputs
|
||||
(list boost curl fuse-2 range-v3 spdlog))
|
||||
(list boost-1.83 curl fuse-2 range-v3 spdlog))
|
||||
(home-page "https://www.cryfs.org/")
|
||||
(synopsis "Encrypted FUSE filesystem for the cloud")
|
||||
(description "CryFS encrypts your files, so you can safely store them anywhere.
|
||||
@@ -1645,8 +1601,7 @@ others. CryFS creates an encrypted userspace filesystem that can be mounted
|
||||
via FUSE without root permissions. It is similar to EncFS, but provides
|
||||
additional security and privacy measures such as hiding file sizes and directory
|
||||
structure. However CryFS is not considered stable yet by the developers.")
|
||||
(license license:lgpl3+)
|
||||
(properties `((tunable? . #t)))))
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public b3sum
|
||||
(package
|
||||
@@ -1715,27 +1670,6 @@ SunMD5, sha1crypt, NT, bsdicrypt, bigcrypt, and descrypt.")
|
||||
(home-page "https://github.com/besser82/libxcrypt")
|
||||
(license license:lgpl2.1)))
|
||||
|
||||
(define-public libxcrypt-without-failure-tokens
|
||||
;; This version of libxcrypt is used for guile-2.2.4, which is used in Guix
|
||||
;; v1.0.0 and thus needs to be supported for guix time-machine.
|
||||
;;
|
||||
;; Guile uses the 'crypt' hashing function that used to be provided by glibc,
|
||||
;; but was moved to libxcrypt around glibc 2.39. However, the crypt function
|
||||
;; in libxcrypt works differently for invalid salt values: libxcrypt returnns
|
||||
;; the failure token "*0" for (crypt "pass" "$X$abc"), where glibc raised
|
||||
;; "Invalid argument" (EINVAL). The --disable-failure-tokens flag lets
|
||||
;; libxcrypt behave in the same way as glibc.
|
||||
;;
|
||||
;; Guile 2.2.4 explicitly checks for the glibc behavior of crypt, and thus
|
||||
;; needs libxcrypt to be compiled with --disable-failure-tokens.
|
||||
(hidden-package
|
||||
(package/inherit libxcrypt
|
||||
(name "libxcrypt-without-failure-tokens")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments libxcrypt)
|
||||
((#:configure-flags flags #~'())
|
||||
#~(cons* "--disable-failure-tokens" #$flags)))))))
|
||||
|
||||
(define-public keychain
|
||||
(package
|
||||
(name "keychain")
|
||||
@@ -1810,31 +1744,3 @@ configured to start gpg-agent.")
|
||||
signatures used by the Estonian ID card infrastructure. This library allows
|
||||
for creation and reading of DigiDoc files.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public osslsigncode
|
||||
(package
|
||||
(name "osslsigncode")
|
||||
(version "2.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mtrojnar/osslsigncode")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1fizcrcgavw5zkzws62pgz8ly5jnmrpv33whryabqgg9q5fwsf2j"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:parallel-tests? #f))
|
||||
(inputs (list openssl zlib))
|
||||
(native-inputs (list python-cryptography python-minimal-wrapper))
|
||||
(home-page "https://github.com/mtrojnar/osslsigncode")
|
||||
(synopsis
|
||||
"Authenticode signing for PE, CAB, CAT, MSI, APPX and script files")
|
||||
(description
|
||||
"osslsigncode is a small tool that implements part of the
|
||||
functionality of the Microsoft tool signtool.exe - more exactly the Authenticode
|
||||
signing and timestamping. It is based on OpenSSL.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
+95
-95
@@ -623,10 +623,11 @@ should only be used as part of the Guix cups-pk-helper service.")
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules %pyproject-build-system-modules
|
||||
#:imported-modules `((guix build python-build-system)
|
||||
,@%default-gnu-imported-modules)
|
||||
#:modules '((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
((guix build pyproject-build-system) #:prefix py:))
|
||||
((guix build python-build-system) #:prefix python:))
|
||||
#:configure-flags
|
||||
#~(list "--disable-imageProcessor-build"
|
||||
(string-append "--prefix=" #$output)
|
||||
@@ -647,103 +648,102 @@ should only be used as part of the Guix cups-pk-helper service.")
|
||||
"--enable-qt5"
|
||||
"--disable-qt4")
|
||||
#:phases
|
||||
(with-extensions (list (pyproject-guile-json))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-gcc-14-cflags
|
||||
;; We set CFLAGS here because adding setting it in
|
||||
;; #:configure-flags or #:make-flags does not work.
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("CFLAGS = @CFLAGS@" all)
|
||||
(string-append all
|
||||
" -Wno-error=attributes"
|
||||
" -Wno-error=implicit-function-declaration"
|
||||
" -Wno-error=implicit-int"
|
||||
" -Wno-error=incompatible-pointer-types"
|
||||
" -Wno-error=int-conversion"
|
||||
" -Wno-error=return-mismatch")))))
|
||||
(add-after 'unpack 'fix-hard-coded-file-names
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out #$output)
|
||||
;; FIXME: use merged ppds (I think actually only
|
||||
;; drvs need to be merged).
|
||||
(cupsdir #$(this-package-input "cups-minimal")))
|
||||
(substitute* (find-files "." "\\.py$")
|
||||
;; Refer to the correct default configuration file name.
|
||||
(("/etc/hp/hplip.conf")
|
||||
(string-append out "/etc/hp/hplip.conf")))
|
||||
(substitute* "base/g.py"
|
||||
(("'/usr/share;[^']*'")
|
||||
(string-append "'" cupsdir "/share'"))
|
||||
(("'/etc/hp/hplip.conf'")
|
||||
(string-append "'" out "/etc/hp/hplip.conf" "'")))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-gcc-14-cflags
|
||||
;; We set CFLAGS here because adding setting it in
|
||||
;; #:configure-flags or #:make-flags does not work.
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("CFLAGS = @CFLAGS@" all)
|
||||
(string-append all
|
||||
" -Wno-error=attributes"
|
||||
" -Wno-error=implicit-function-declaration"
|
||||
" -Wno-error=implicit-int"
|
||||
" -Wno-error=incompatible-pointer-types"
|
||||
" -Wno-error=int-conversion"
|
||||
" -Wno-error=return-mismatch")))))
|
||||
(add-after 'unpack 'fix-hard-coded-file-names
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out #$output)
|
||||
;; FIXME: use merged ppds (I think actually only
|
||||
;; drvs need to be merged).
|
||||
(cupsdir #$(this-package-input "cups-minimal")))
|
||||
(substitute* (find-files "." "\\.py$")
|
||||
;; Refer to the correct default configuration file name.
|
||||
(("/etc/hp/hplip.conf")
|
||||
(string-append out "/etc/hp/hplip.conf")))
|
||||
(substitute* "base/g.py"
|
||||
(("'/usr/share;[^']*'")
|
||||
(string-append "'" cupsdir "/share'"))
|
||||
(("'/etc/hp/hplip.conf'")
|
||||
(string-append "'" out "/etc/hp/hplip.conf" "'")))
|
||||
|
||||
(substitute* "Makefile.in"
|
||||
(("[[:blank:]]check-plugin\\.py[[:blank:]]") " ")
|
||||
;; FIXME Use beginning-of-word in regexp.
|
||||
(("[[:blank:]]plugin\\.py[[:blank:]]") " ")
|
||||
(("/usr/include/libusb-1.0")
|
||||
(search-input-directory inputs "/include/libusb-1.0"))
|
||||
(("hplip_statedir =.*$")
|
||||
;; Don't bail out while trying to create
|
||||
;; /var/lib/hplip. We can safely change its value
|
||||
;; here because it's hard-coded in the code anyway.
|
||||
"hplip_statedir = $(prefix)\n")
|
||||
(("hplip_confdir = /etc/hp")
|
||||
;; This is only used for installing the default config.
|
||||
(string-append "hplip_confdir = " out "/etc/hp"))
|
||||
(("halpredir = /usr/share/hal/fdi/preprobe/10osvendor")
|
||||
;; We don't use hal.
|
||||
(string-append "halpredir = " out
|
||||
"/share/hal/fdi/preprobe/10osvendor"))
|
||||
(("rulesdir = /etc/udev/rules.d")
|
||||
;; udev rules will be merged by base service.
|
||||
(string-append "rulesdir = " out "/lib/udev/rules.d"))
|
||||
(("rulessystemdir = /usr/lib/systemd/system")
|
||||
;; We don't use systemd.
|
||||
(string-append "rulessystemdir = " out "/lib/systemd/system"))
|
||||
(("/etc/sane.d")
|
||||
(string-append out "/etc/sane.d"))))))
|
||||
(add-after 'install 'move-sane-config-to-dll.d
|
||||
(lambda _
|
||||
;; move dll.conf to dll.d - the directory intended for 3rd-party
|
||||
;; backend configurations.
|
||||
(let ((dll.d (string-append #$output "/etc/sane.d/dll.d"))
|
||||
(dll.conf (string-append #$output "/etc/sane.d/dll.conf")))
|
||||
(mkdir-p dll.d)
|
||||
(rename-file dll.conf (string-append dll.d "/hpaio")))))
|
||||
(add-after 'install 'install-models-dat
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "data/models/models.dat"
|
||||
(string-append #$output "/share/hplip/data/models"))))
|
||||
(substitute* "Makefile.in"
|
||||
(("[[:blank:]]check-plugin\\.py[[:blank:]]") " ")
|
||||
;; FIXME Use beginning-of-word in regexp.
|
||||
(("[[:blank:]]plugin\\.py[[:blank:]]") " ")
|
||||
(("/usr/include/libusb-1.0")
|
||||
(search-input-directory inputs "/include/libusb-1.0"))
|
||||
(("hplip_statedir =.*$")
|
||||
;; Don't bail out while trying to create
|
||||
;; /var/lib/hplip. We can safely change its value
|
||||
;; here because it's hard-coded in the code anyway.
|
||||
"hplip_statedir = $(prefix)\n")
|
||||
(("hplip_confdir = /etc/hp")
|
||||
;; This is only used for installing the default config.
|
||||
(string-append "hplip_confdir = " out "/etc/hp"))
|
||||
(("halpredir = /usr/share/hal/fdi/preprobe/10osvendor")
|
||||
;; We don't use hal.
|
||||
(string-append "halpredir = " out
|
||||
"/share/hal/fdi/preprobe/10osvendor"))
|
||||
(("rulesdir = /etc/udev/rules.d")
|
||||
;; udev rules will be merged by base service.
|
||||
(string-append "rulesdir = " out "/lib/udev/rules.d"))
|
||||
(("rulessystemdir = /usr/lib/systemd/system")
|
||||
;; We don't use systemd.
|
||||
(string-append "rulessystemdir = " out "/lib/systemd/system"))
|
||||
(("/etc/sane.d")
|
||||
(string-append out "/etc/sane.d"))))))
|
||||
(add-after 'install 'move-sane-config-to-dll.d
|
||||
(lambda _
|
||||
;; move dll.conf to dll.d - the directory intended for 3rd-party
|
||||
;; backend configurations.
|
||||
(let ((dll.d (string-append #$output "/etc/sane.d/dll.d"))
|
||||
(dll.conf (string-append #$output "/etc/sane.d/dll.conf")))
|
||||
(mkdir-p dll.d)
|
||||
(rename-file dll.conf (string-append dll.d "/hpaio")))))
|
||||
(add-after 'install 'install-models-dat
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "data/models/models.dat"
|
||||
(string-append #$output "/share/hplip/data/models"))))
|
||||
(add-after 'install 'wrap-binaries
|
||||
;; Scripts in /bin are all symlinks to .py files in /share/hplip.
|
||||
;; Symlinks are immune to the Python build system's 'WRAP phase,
|
||||
;; and the .py files can't be wrapped because they are reused as
|
||||
;; modules. Replacing the symlinks in /bin with copies and
|
||||
;; wrapping them also doesn't work (“ModuleNotFoundError:
|
||||
;; No module named 'base'”). Behold: a custom WRAP-PROGRAM.
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((bin (string-append #$output "/bin"))
|
||||
(site (py:site-packages inputs outputs)))
|
||||
(with-directory-excursion bin
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(let ((target (readlink file)))
|
||||
(delete-file file)
|
||||
(with-output-to-file file
|
||||
(lambda _
|
||||
(format #t
|
||||
"#!~a~@
|
||||
;; Scripts in /bin are all symlinks to .py files in /share/hplip.
|
||||
;; Symlinks are immune to the Python build system's 'WRAP phase,
|
||||
;; and the .py files can't be wrapped because they are reused as
|
||||
;; modules. Replacing the symlinks in /bin with copies and
|
||||
;; wrapping them also doesn't work (“ModuleNotFoundError:
|
||||
;; No module named 'base'”). Behold: a custom WRAP-PROGRAM.
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(site (python:site-packages inputs outputs)))
|
||||
(with-directory-excursion bin
|
||||
(for-each (lambda (file)
|
||||
(let ((target (readlink file)))
|
||||
(delete-file file)
|
||||
(with-output-to-file file
|
||||
(lambda _
|
||||
(format #t
|
||||
"#!~a~@
|
||||
export GUIX_PYTHONPATH=\"~a:~a\"~@
|
||||
exec -a \"$0\" \"~a/~a\" \"$@\"~%"
|
||||
(which "bash")
|
||||
site
|
||||
(getenv "GUIX_PYTHONPATH")
|
||||
bin target)))
|
||||
(chmod file #o755)))
|
||||
(find-files "." (lambda (file stat)
|
||||
(eq? 'symlink (stat:type stat)))))))))))))
|
||||
(which "bash")
|
||||
site
|
||||
(getenv "GUIX_PYTHONPATH")
|
||||
bin target)))
|
||||
(chmod file #o755)))
|
||||
(find-files "." (lambda (file stat)
|
||||
(eq? 'symlink (stat:type stat))))))))))))
|
||||
;; Note that the error messages printed by the tools in the case of
|
||||
;; missing dependencies are often downright misleading.
|
||||
;; TODO: hp-toolbox still fails to start with:
|
||||
|
||||
@@ -147,7 +147,7 @@ Refresh}in-DRAM mitigations effectively and as such can trigger bit flips.")
|
||||
python-msgspec
|
||||
python-platformdirs
|
||||
python-psutil
|
||||
python-pydantic
|
||||
python-pydantic-2
|
||||
python-pygit2
|
||||
python-tabulate
|
||||
python-zstandard))
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
|
||||
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2025 Andreas Enge <andreas@enge.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -22,7 +21,6 @@
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
@@ -68,6 +66,7 @@
|
||||
glpk
|
||||
graphicsmagick
|
||||
gsl
|
||||
hdf4-alt
|
||||
hdf5
|
||||
libgeotiff
|
||||
libjpeg-turbo
|
||||
@@ -84,9 +83,6 @@
|
||||
udunits
|
||||
wxwidgets
|
||||
zlib))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags #~(list "-DHDF=OFF"))) ; keep default "-DHDF5=ON"
|
||||
(home-page "https://gnudatalanguage.github.io/")
|
||||
(synopsis "Compiler for GDL, an IDL-compatible programming language")
|
||||
(description
|
||||
|
||||
+323
-335
@@ -67,7 +67,6 @@
|
||||
;;; Copyright © 2025 Ashvith Shetty <ashvithshetty0010@zohomail.in>
|
||||
;;; Copyright © 2025 Philippe Swartvagher <phil.swart@gmx.fr>
|
||||
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
|
||||
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -140,7 +139,6 @@
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages node)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
#:use-module (gnu packages openstack)
|
||||
#:use-module (gnu packages pantheon)
|
||||
@@ -837,7 +835,7 @@ they exist.")
|
||||
python-httpx
|
||||
python-jinja2
|
||||
python-nodeenv
|
||||
python-pydantic
|
||||
python-pydantic-2
|
||||
python-tomlkit
|
||||
python-typing-extensions))
|
||||
(home-page "https://github.com/RobertCraigie/prisma-client-py")
|
||||
@@ -1326,9 +1324,8 @@ Language.")
|
||||
"--testcase-timeout=40"
|
||||
"--suite-timeout=600"
|
||||
"--parallel" (number->string (if parallel-tests?
|
||||
;; See guix/guix#5680.
|
||||
(min 64 (parallel-job-count))
|
||||
1))
|
||||
(parallel-job-count)
|
||||
1))
|
||||
;; Skip the replication tests: they are very I/O
|
||||
;; intensive and frequently causes indeterministic
|
||||
;; failures even on powerful hardware.
|
||||
@@ -1406,7 +1403,6 @@ as a drop-in replacement of MySQL.")
|
||||
|
||||
(define-public mariadb-embedded
|
||||
(package/inherit mariadb
|
||||
(name "mariadb-embedded")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments mariadb)
|
||||
((#:configure-flags flags)
|
||||
@@ -2161,27 +2157,6 @@ data in a single database. RocksDB is partially based on @code{LevelDB}.")
|
||||
;; files carry the 3-clause BSD license.
|
||||
(license (list license:gpl2 license:asl2.0 license:bsd-3))))
|
||||
|
||||
(define-public rocksdb-for-ceph
|
||||
(let ((commit "9fa4990159853479a222244574ca41202e4c95c1")
|
||||
(revision "0"))
|
||||
(package
|
||||
(inherit rocksdb)
|
||||
(name "rocksdb-for-ceph")
|
||||
(version (git-version "7.9.2" revision commit))
|
||||
(source (origin
|
||||
(inherit (package-source rocksdb))
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ceph/rocksdb")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pdy461m9a48x4i829sirpypdlzf3q79p8iw3dng9wd4r4vyv594"))))
|
||||
(arguments (substitute-keyword-arguments (package-arguments rocksdb)
|
||||
((#:configure-flags flags ''())
|
||||
#~(cons "-DCMAKE_CXX_FLAGS=-Wno-error=maybe-uninitialized"
|
||||
#$flags)))))))
|
||||
|
||||
(define-public sparql-query
|
||||
(package
|
||||
(name "sparql-query")
|
||||
@@ -2325,6 +2300,34 @@ for example from a shell script.")
|
||||
which uses SQL to describe changes.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public sqlcrush
|
||||
;; Unfortunately, there is no proper upstream release and may never be.
|
||||
(let ((commit "502a583e97a84efdeb48e59f1bfe403daa9681ee")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "sqlcrush")
|
||||
(version (git-version "0.1.5" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/coffeeandscripts/sqlcrush")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x2q4m9ryw68kifalnm3x4bv9v2xrc2ffsiap8m9wnw6lf1h05la"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
(list python-psycopg2 python-pymysql python-sqlalchemy))
|
||||
(home-page "https://github.com/coffeeandscripts/sqlcrush")
|
||||
(synopsis "Text console-based database viewer and editor")
|
||||
(description
|
||||
"SQLcrush lets you view and edit a database directly from the text
|
||||
console through an ncurses interface. You can explore each table's structure,
|
||||
browse and edit the contents, add and delete entries, all while tracking your
|
||||
changes.")
|
||||
(license license:gpl3+)))) ; no headers, see README.md
|
||||
|
||||
(define-public tdb
|
||||
(package
|
||||
(name "tdb")
|
||||
@@ -3687,7 +3690,7 @@ can autogenerate peewee models using @code{pwiz}, a model generator.")
|
||||
(define-public python-pypika-tortoise
|
||||
(package
|
||||
(name "python-pypika-tortoise")
|
||||
(version "0.6.3")
|
||||
(version "0.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3696,17 +3699,10 @@ can autogenerate peewee models using @code{pwiz}, a model generator.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0czxc4im7iik9igqzwvxfjbyn66avmr8a1bcvcsxpzd22ywiycis"))))
|
||||
(base32 "1pz7i9vgjwzzvacjjkvr5xbcmphn52xv993zbks602is844k0pp0"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 904 passed, 1 deselected
|
||||
#:test-flags
|
||||
;; FileNotFoundError: [Errno 2] No such file or directory: 'uvx'
|
||||
#~(list "--deselect=tests/test_poetry_add.py::test_added_by_poetry_v2")))
|
||||
(native-inputs
|
||||
(list python-pdm-backend
|
||||
python-pytest))
|
||||
(list python-poetry-core python-pytest))
|
||||
(home-page "https://github.com/tortoise/pypika-tortoise")
|
||||
(synopsis "Pypika fork for tortoise-orm")
|
||||
(description "Pypika-tortoise is a fork of pypika which has been
|
||||
@@ -3717,29 +3713,24 @@ for many database kinds that tortoise-orm doesn't need, for example.")
|
||||
(define-public python-asyncpg
|
||||
(package
|
||||
(name "python-asyncpg")
|
||||
;; asyncpg 0.31.0 requires Cython(>=3.2.1,<4.0.0), got Cython==3.1.2
|
||||
(version "0.30.0")
|
||||
(source
|
||||
(origin
|
||||
;; git-fetch leads to errors like
|
||||
;; ValueError: 'asyncpg/pgproto/pgproto.pyx' doesn't match any files
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "asyncpg" version))
|
||||
(sha256
|
||||
(base32 "0lf8xbrsb2ycpqx1vzlb05p48g5sh9zq24a8yh17cw5nia9fjlf5"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; raises ValueError("Invalid IPv6 URL") ; Maybe due to urllib?
|
||||
#~(list "-k" "not TestConnectParams")))
|
||||
(native-inputs
|
||||
(list postgresql
|
||||
python-cython
|
||||
python-pytest
|
||||
python-uvloop
|
||||
python-distro
|
||||
python-setuptools))
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(propagated-inputs
|
||||
(list python-async-timeout))
|
||||
(home-page "https://github.com/MagicStack/asyncpg")
|
||||
(synopsis "Fast PostgreSQL database client library for Python")
|
||||
(description "@code{asyncpg} is a database interface library designed
|
||||
@@ -3871,47 +3862,47 @@ of PyMySQL. @code{aiomysql} tries to preserve the same API as the
|
||||
(define-public python-tortoise-orm
|
||||
(package
|
||||
(name "python-tortoise-orm")
|
||||
(version "0.25.3")
|
||||
(version "0.22.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tortoise/tortoise-orm")
|
||||
(commit version)))
|
||||
(url "https://github.com/tortoise/tortoise-orm")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1b1a20cnhaj7rcdp5l1r5nvd6x1amybgynwpd3cnskpvzqjinsyl"))))
|
||||
(base32 "1xzwywvb3898hm41vwkzn785ziqprxh6lcf0lpmrgfcsc9qnnhzk"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 1280 passed, 104 skipped, 4 xfailed, 9 warnings
|
||||
#:test-flags
|
||||
#~(list "--numprocesses" (number->string (min 8 (parallel-job-count)))
|
||||
"--ignore=tests/benchmarks/"
|
||||
;; FileNotFoundError: [Errno 2] No such file or directory: 'uvx'
|
||||
"--deselect=tests/test_version.py::test_added_by_poetry_v2")))
|
||||
#~(list "-k" (string-join
|
||||
(list "not test_enum" ; Fixed in the next release.
|
||||
;; tortoise.exceptions.OperationalError
|
||||
"test_delete"
|
||||
"test_delete_limit"
|
||||
"test_delete_limit_order_by"
|
||||
"test_update_with_limit_ordering")
|
||||
" and not "))))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
(list python-asyncodbc
|
||||
python-fastapi
|
||||
python-pdm-backend
|
||||
python-pydantic
|
||||
python-pytest
|
||||
python-pytest-xdist))
|
||||
python-poetry-core
|
||||
python-psycopg
|
||||
python-psycopg-pool
|
||||
python-pydantic-2
|
||||
python-pyodbc
|
||||
python-pytest))
|
||||
(propagated-inputs
|
||||
(list python-aiosqlite
|
||||
python-anyio
|
||||
(list python-aiomysql
|
||||
python-aiosqlite
|
||||
python-asyncmy
|
||||
python-asyncpg
|
||||
python-ciso8601
|
||||
python-iso8601
|
||||
python-pypika-tortoise
|
||||
python-pytz
|
||||
;; [optional]
|
||||
python-aiomysql ;tortoise/backends/mysql/client.py
|
||||
python-asyncodbc ;tortoise/backends/odbc/client.py
|
||||
python-asyncpg ;tortoise/backends/asyncpg/client.py
|
||||
python-ciso8601
|
||||
python-orjson
|
||||
python-psycopg ;tortoise/backends/psycopg/client.py
|
||||
python-psycopg-pool ;
|
||||
python-pyodbc ;tortoise/backends/oracle/client.py
|
||||
python-rapidjson
|
||||
python-uvloop))
|
||||
(home-page "https://github.com/tortoise/tortoise-orm")
|
||||
(synopsis "Asynchronous Object Relational Mapper (ORM) for Python")
|
||||
@@ -3971,7 +3962,7 @@ similarity distances for scementic search using embeddings.")
|
||||
(native-inputs
|
||||
(list python-cryptography
|
||||
python-pdm-backend
|
||||
python-pydantic
|
||||
python-pydantic-2
|
||||
python-pydantic-settings
|
||||
python-pytest
|
||||
python-pytest-asyncio
|
||||
@@ -4323,56 +4314,50 @@ patterns, designed for efficient and high-performing database access, adapted
|
||||
into a simple and Pythonic domain language.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-sqlalchemy-stubs
|
||||
(package
|
||||
(name "python-sqlalchemy-stubs")
|
||||
(version "0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "sqlalchemy-stubs" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bppjmv7v7m0q8gwg791pgxbx4ay7mna0zq204pn9vw28kfxcrf6"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-mypy python-typing-extensions))
|
||||
(home-page "https://github.com/dropbox/sqlalchemy-stubs")
|
||||
(synopsis "SQLAlchemy stubs and mypy plugin")
|
||||
(description "This package contains type stubs and a mypy plugin to
|
||||
provide more precise static types and type inference for SQLAlchemy
|
||||
framework.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-sqlalchemy-utils
|
||||
(package
|
||||
(name "python-sqlalchemy-utils")
|
||||
(version "0.42.1")
|
||||
(version "0.38.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/kvesteri/sqlalchemy-utils")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0ny1p352p0dlgrf9fnmzj7ld1rga5zj698qpla1kdaliwwh6xawn"))))
|
||||
(build-system pyproject-build-system)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "SQLAlchemy-Utils" version))
|
||||
(sha256
|
||||
(base32 "0k8z0mjhvdv302kn0nhci8b2dgw4cn2akprsf37ma1540ykgp6lz"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; XXX: These tests require additional inputs.
|
||||
#~(list "--deselect=tests/test_views.py::TestMySqlTrivialView"
|
||||
"--deselect=tests/functions/test_database.py::\
|
||||
TestDatabasePostgresPg8000::test_create_and_drop"
|
||||
"--deselect=tests/functions/test_database.py::\
|
||||
TestDatabasePostgresPsycoPG2CFFI::test_create_and_drop")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'start-postgresql
|
||||
(lambda* (#:key inputs tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "TZDIR" (search-input-directory inputs
|
||||
"share/zoneinfo"))
|
||||
(let ((dbdir (string-append (getcwd) "/../pgdir")))
|
||||
(setenv "SQLALCHEMY_UTILS_TEST_POSTGRESQL_USER"
|
||||
"nixbld")
|
||||
(invoke "initdb" "-D" dbdir)
|
||||
(invoke "pg_ctl" "-D" dbdir
|
||||
"-o" (string-append "-k " dbdir)
|
||||
"-l" (string-append dbdir "/db.log")
|
||||
"start")
|
||||
(invoke "psql" "-h" dbdir "-d" "postgres"
|
||||
"-c" "CREATE DATABASE sqlalchemy_utils_test;"))))))))
|
||||
(propagated-inputs (list python-six python-sqlalchemy))
|
||||
'(#:tests? #f)) ; FIXME: Many tests require a running database server.
|
||||
;; #:phases
|
||||
;; (modify-phases %standard-phases
|
||||
;; (replace 'check
|
||||
;; (lambda _
|
||||
;; (zero? (system* "py.test" "sqlalchemy_utils" "tests")))))
|
||||
(propagated-inputs
|
||||
(list python-six python-sqlalchemy))
|
||||
(native-inputs
|
||||
(list postgresql
|
||||
python-dateutil
|
||||
python-flexmock
|
||||
python-psycopg2
|
||||
python-pytest
|
||||
python-pytz
|
||||
python-setuptools
|
||||
tzdata-for-tests))
|
||||
(list python-dateutil python-flexmock python-psycopg2 python-pytest
|
||||
python-pytz))
|
||||
(home-page "https://github.com/kvesteri/sqlalchemy-utils")
|
||||
(synopsis "Various utility functions for SQLAlchemy")
|
||||
(description
|
||||
@@ -4474,23 +4459,19 @@ SQLAlchemy Database Toolkit for Python.")
|
||||
(package
|
||||
(name "python-sqlite-fts4")
|
||||
(version "1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/simonw/sqlite-fts4")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05c69n4nrc9srkbih1q1wxlw6n9mb3dm7ysb47ipqjn3rp1aif11"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "sqlite-fts4" version))
|
||||
(sha256
|
||||
(base32
|
||||
"034kx0ac556sywy1p4qcrc36l24w3q0xwswqv2z9s3k8yvm5xc3q"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs (list python-pytest))
|
||||
(home-page "https://github.com/simonw/sqlite-fts4")
|
||||
(synopsis "Python functions for working with SQLite FTS4 search")
|
||||
(description
|
||||
"This package provides custom SQLite functions written in Python for
|
||||
ranking documents indexed using the SQLite's FTS4 full text search
|
||||
extension.")
|
||||
(description "This package provides custom SQLite functions written
|
||||
in Python for ranking documents indexed using the SQLite's FTS4 full
|
||||
text search extension.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-sqlite-utils
|
||||
@@ -4640,33 +4621,14 @@ managers for automatically closing connections.")
|
||||
(define-public python-databases
|
||||
(package
|
||||
(name "python-databases")
|
||||
;; 0.9.0 needs sqlalchemy>=2.0.7
|
||||
;; 0.8.0 needs sqlalchemy>=1.4.42,<1.5
|
||||
(version "0.8.0")
|
||||
(version "0.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/encode/databases")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "databases" version))
|
||||
(sha256
|
||||
(base32 "183yawn8w561y1ni117rf5zaxm4gqqbcmi9fp52xd5fx2dj8qy3v"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; These need TEST_DATABASE_URLS set.
|
||||
;; TODO: Use "sqlite:///test.db"? See docs/contributing.md.
|
||||
#~(list "--ignore=tests/test_databases.py"
|
||||
"--ignore=tests/test_integration.py"
|
||||
"--ignore=tests/test_connection_options.py")))
|
||||
(native-inputs
|
||||
(list python-httpx
|
||||
python-psycopg
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-starlette))
|
||||
(base32 "0x5nqhzgjqimv2ybjbzy5vv0l23g0n1g5f6fnyahbf1f7nfl2bga"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-aiosqlite
|
||||
python-aiopg
|
||||
@@ -4683,41 +4645,18 @@ libraries with SQLALchemy.")
|
||||
(define-public python-psycopg2
|
||||
(package
|
||||
(name "python-psycopg2")
|
||||
(version "2.9.11")
|
||||
(version "2.9.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/psycopg/psycopg2")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "psycopg2" version))
|
||||
(sha256
|
||||
(base32 "04l2yzbl15nrw1pcjfkqycvqn6h9phcdh1xx9ynfy3dzfscq5ly5"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32 "04chl9f7v7k1zssa40pmk06jvpyqiss2lpjq50dq69nqix0mhlgi"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'start-postgresql
|
||||
(lambda* (#:key inputs tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "TZDIR" (search-input-directory inputs
|
||||
"share/zoneinfo"))
|
||||
(let ((dbdir (string-append (getcwd) "/../pgdir")))
|
||||
(setenv "PSYCOPG2_TESTDB_USER" "nixbld")
|
||||
(setenv "PSYCOPG2_TESTDB_HOST" dbdir)
|
||||
(invoke "initdb" "-D" dbdir)
|
||||
(invoke "pg_ctl" "-D" dbdir
|
||||
"-o" (string-append "-k " dbdir)
|
||||
"-l" (string-append dbdir "/db.log")
|
||||
"start")
|
||||
(invoke "psql" "-h" dbdir "-d" "postgres"
|
||||
"-c" "CREATE DATABASE psycopg2_test;"))))))))
|
||||
(native-inputs
|
||||
(list postgresql
|
||||
python-pytest
|
||||
python-setuptools
|
||||
tzdata-for-tests))
|
||||
;; Tests would require a postgresql database "psycopg2_test"
|
||||
;; and a running postgresql database management service.
|
||||
'(#:tests? #f)) ; TODO re-enable after providing a test-db.
|
||||
(inputs
|
||||
(list postgresql)) ; libpq
|
||||
(home-page "https://www.psycopg.org/")
|
||||
@@ -4739,16 +4678,14 @@ libraries with SQLALchemy.")
|
||||
(sha256
|
||||
(base32
|
||||
"1pkx7nj1mhacwpna7ldzqfqxd1xg8826600r0bs9ad1h93f429yh"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;run for psycopg below
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; This module requires 'psycopg', however psycopg needs this
|
||||
;; for its tests. Disable sanity check to break the cycle.
|
||||
(delete 'sanity-check))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(list #:tests? #f ;run for psycopg below
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; This module requires 'psycopg', however psycopg needs this
|
||||
;; for its tests. Disable sanity check to break the cycle.
|
||||
(delete 'sanity-check))))
|
||||
(home-page "https://www.psycopg.org/")
|
||||
(synopsis "Connection pooler for psycopg")
|
||||
(description
|
||||
@@ -4859,49 +4796,23 @@ from a SQLAlchemy model (or directly from the database).")
|
||||
(define-public yoyo-migrations
|
||||
(package
|
||||
(name "yoyo-migrations")
|
||||
(version "9.0.0")
|
||||
(version "8.2.0")
|
||||
(source
|
||||
(origin
|
||||
;; We use the upstream repository, as the tests are not included in the
|
||||
;; PyPI releases.
|
||||
(method hg-fetch)
|
||||
(uri (hg-reference
|
||||
(url "https://hg.sr.ht/~olly/yoyo")
|
||||
(changeset (string-append "v" version "-release"))))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32 "0bn4n043y0n4dh7axwavfims2krap5dcmdaxswbadzmis3a4hxyb"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32 "1al030ix0w63hr4s3mqry6s0mlqdj8p242pdqks06br7c25nx3yj"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'start-postgresql
|
||||
(lambda* (#:key inputs tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(delete-file "test_databases.ini")
|
||||
(call-with-output-file "test_databases.ini"
|
||||
(lambda (port)
|
||||
(format port "[DEFAULT]
|
||||
postgresql = postgresql://nixbld@/yoyo_test~%")))
|
||||
(setenv "TZDIR" (search-input-directory inputs
|
||||
"share/zoneinfo"))
|
||||
(let ((dbdir (string-append (getcwd) "/../pgdir")))
|
||||
(setenv "PGHOST" dbdir)
|
||||
(setenv "PGUSER" "nixbld")
|
||||
(invoke "initdb" "-D" dbdir)
|
||||
(invoke "pg_ctl" "-D" dbdir
|
||||
"-o" (string-append "-k " dbdir)
|
||||
"-l" (string-append dbdir "/db.log")
|
||||
"start")
|
||||
(invoke "psql" "-h" dbdir "-d" "postgres"
|
||||
"-c" "CREATE DATABASE yoyo_test;"))))))))
|
||||
(native-inputs
|
||||
(list postgresql
|
||||
python-freezegun
|
||||
python-psycopg2
|
||||
python-pytest
|
||||
python-setuptools
|
||||
tms
|
||||
tzdata-for-tests))
|
||||
;; XXX: Tests require a connection to some pgsql database and psycopg
|
||||
;; fails to connect to it.
|
||||
'(#:tests? #f))
|
||||
(propagated-inputs
|
||||
(list python-sqlparse python-tabulate python-importlib-metadata))
|
||||
(home-page "https://ollycope.com/software/yoyo/latest/")
|
||||
@@ -5097,6 +5008,9 @@ reasonable substitute.")
|
||||
"This package provides a Python interface to the Redis key-value store.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-deprecated-package python-aioredis
|
||||
python-redis)
|
||||
|
||||
(define-public python-rq
|
||||
(package
|
||||
(name "python-rq")
|
||||
@@ -5181,13 +5095,13 @@ is designed to have a low barrier to entry.")
|
||||
(define-public python-sqlparse
|
||||
(package
|
||||
(name "python-sqlparse")
|
||||
(version "0.5.5")
|
||||
(version "0.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "sqlparse" version))
|
||||
(sha256
|
||||
(base32 "13pj7ylwm8w35nd8hz64grx5sk69qxk01lqh7gvgv1c51fdll3g2"))))
|
||||
(base32 "0wljxh3lh2zndy7amziwd3572cwwbmzzq6yyvgn1c2vayn3pgxh9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
@@ -5455,11 +5369,143 @@ language-bindings for structure manipulation. It also provides IPC and common
|
||||
algorithm implementations.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public apache-arrow-for-ceph
|
||||
(package
|
||||
(name "apache-arrow")
|
||||
(version "6.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/apache/arrow")
|
||||
(commit (string-append "apache-arrow-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mcw361akqw4sxnnpnr9c9v1zk4hphk6gcq763pcb19yzljh88ig"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'enter-source-directory
|
||||
(lambda _ (chdir "cpp")))
|
||||
(add-after 'unpack 'set-env
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "cpp/src/parquet/parquet.pc.in"
|
||||
(("includedir=\\$\\{prefix\\}/")
|
||||
"includedir="))
|
||||
(substitute* "cpp/cmake_modules/ThirdpartyToolchain.cmake"
|
||||
(("set\\(xsimd_SOURCE.*") ""))
|
||||
(setenv "BOOST_ROOT" (assoc-ref inputs "boost"))
|
||||
(setenv "BROTLI_HOME" (assoc-ref inputs "brotli"))
|
||||
(setenv "FLATBUFFERS_HOME" (assoc-ref inputs "flatbuffers"))
|
||||
(setenv "RAPIDJSON_HOME" (assoc-ref inputs "rapidjson")))))
|
||||
#:build-type "Release"
|
||||
#:configure-flags
|
||||
(list "-DARROW_PYTHON=ON"
|
||||
"-DARROW_GLOG=ON"
|
||||
;; Parquet options
|
||||
"-DARROW_PARQUET=ON"
|
||||
"-DPARQUET_BUILD_EXECUTABLES=ON"
|
||||
;; The maintainers disallow using system versions of
|
||||
;; jemalloc:
|
||||
;; https://issues.apache.org/jira/browse/ARROW-3507. This
|
||||
;; is unfortunate because jemalloc increases performance:
|
||||
;; https://arrow.apache.org/blog/2018/07/20/jemalloc/.
|
||||
"-DARROW_JEMALLOC=OFF"
|
||||
|
||||
;; The CMake option ARROW_DEPENDENCY_SOURCE is a global
|
||||
;; option that instructs the build system how to resolve
|
||||
;; each dependency. SYSTEM = Finding the dependency in
|
||||
;; system paths using CMake's built-in find_package
|
||||
;; function, or using pkg-config for packages that do not
|
||||
;; have this feature
|
||||
"-DARROW_DEPENDENCY_SOURCE=SYSTEM"
|
||||
"-Dxsimd_SOURCE=SYSTEM"
|
||||
|
||||
"-DARROW_RUNTIME_SIMD_LEVEL=NONE"
|
||||
"-DARROW_SIMD_LEVEL=NONE"
|
||||
"-DARROW_PACKAGE_KIND=Guix"
|
||||
|
||||
;; Split output into its component packages.
|
||||
(string-append "-DCMAKE_INSTALL_PREFIX="
|
||||
(assoc-ref %outputs "lib"))
|
||||
(string-append "-DCMAKE_INSTALL_RPATH="
|
||||
(assoc-ref %outputs "lib")
|
||||
"/lib")
|
||||
(string-append "-DCMAKE_INSTALL_BINDIR="
|
||||
(assoc-ref %outputs "out")
|
||||
"/bin")
|
||||
(string-append "-DCMAKE_INSTALL_INCLUDEDIR="
|
||||
(assoc-ref %outputs "include")
|
||||
"/share/include")
|
||||
|
||||
"-DARROW_WITH_SNAPPY=ON"
|
||||
"-DARROW_WITH_ZLIB=ON"
|
||||
"-DARROW_WITH_ZSTD=ON"
|
||||
"-DARROW_WITH_LZ4=ON"
|
||||
"-DARROW_COMPUTE=ON"
|
||||
"-DARROW_CSV=ON"
|
||||
"-DARROW_DATASET=ON"
|
||||
"-DARROW_FILESYSTEM=ON"
|
||||
"-DARROW_HDFS=ON"
|
||||
"-DARROW_JSON=ON"
|
||||
;; Arrow Python C++ integration library (required for
|
||||
;; building pyarrow). This library must be built against
|
||||
;; the same Python version for which you are building
|
||||
;; pyarrow. NumPy must also be installed. Enabling this
|
||||
;; option also enables ARROW_COMPUTE, ARROW_CSV,
|
||||
;; ARROW_DATASET, ARROW_FILESYSTEM, ARROW_HDFS, and
|
||||
;; ARROW_JSON.
|
||||
"-DARROW_PYTHON=ON"
|
||||
|
||||
;; Building the tests forces on all the
|
||||
;; optional features and the use of static
|
||||
;; libraries.
|
||||
"-DARROW_BUILD_TESTS=OFF"
|
||||
"-DBENCHMARK_ENABLE_GTEST_TESTS=OFF"
|
||||
;;"-DBENCHMARK_ENABLE_TESTING=OFF"
|
||||
"-DARROW_BUILD_STATIC=OFF")))
|
||||
(inputs
|
||||
(list boost
|
||||
brotli
|
||||
bzip2
|
||||
double-conversion
|
||||
gflags
|
||||
glog
|
||||
grpc
|
||||
protobuf
|
||||
python
|
||||
python-numpy
|
||||
rapidjson
|
||||
re2
|
||||
snappy
|
||||
xsimd))
|
||||
;; These are all listed under Requires.private in arrow.pc
|
||||
(propagated-inputs
|
||||
(list (list apache-thrift "lib")
|
||||
lz4
|
||||
utf8proc
|
||||
zlib
|
||||
(list zstd "lib")))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(outputs '("out" "lib" "include"))
|
||||
(home-page "https://arrow.apache.org/")
|
||||
(synopsis "Columnar in-memory analytics")
|
||||
(description "Apache Arrow is a columnar in-memory analytics layer
|
||||
designed to accelerate big data. It houses a set of canonical in-memory
|
||||
representations of flat and hierarchical data along with multiple
|
||||
language-bindings for structure manipulation. It also provides IPC and common
|
||||
algorithm implementations.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-pyarrow
|
||||
(package
|
||||
(inherit apache-arrow)
|
||||
(name "python-pyarrow")
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: Test data is distributed separately in
|
||||
@@ -5469,6 +5515,7 @@ algorithm implementations.")
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'build) ; XXX the build is performed again during the install phase
|
||||
(add-after 'unpack 'enter-source-directory
|
||||
(lambda _ (chdir "python")))
|
||||
(add-after 'enter-source-directory 'set-version
|
||||
@@ -5512,8 +5559,7 @@ __version_tuple__ = version_tuple = (~a)~%" version version-tuple))))))
|
||||
python-cython
|
||||
python-pytest
|
||||
python-pytest-runner
|
||||
python-setuptools-scm
|
||||
python-setuptools))
|
||||
python-setuptools-scm))
|
||||
(outputs '("out"))
|
||||
(home-page "https://arrow.apache.org/docs/python/")
|
||||
(synopsis "Python bindings for Apache Arrow")
|
||||
@@ -5526,41 +5572,52 @@ other traditional Python scientific computing packages.")
|
||||
(define-public python-fastparquet
|
||||
(package
|
||||
(name "python-fastparquet")
|
||||
(version "2025.12.0")
|
||||
(version "2024.11.0")
|
||||
(source
|
||||
(origin
|
||||
;; Fastparquet uses setuptools-scm to find the current version. This
|
||||
;; only works when we use the PyPI tarball, which does not contain
|
||||
;; tests. Instead, we use the git-fetch method and set the version via
|
||||
;; envar.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dask/fastparquet")
|
||||
(commit version)))
|
||||
(url "https://github.com/dask/fastparquet")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "15zd2khsazrbi6p4lzbwp2x96sk2zk2adxj3905wac9xzwlkbvrc"))))
|
||||
(base32 "0dhmyag06d073g1q58npbcikr9hjd6jgf05721gkl6m1gsprv7hq"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 382 passed, 124 skipped, 2 warnings
|
||||
#:test-flags
|
||||
#~(list "--numprocesses" (number->string (parallel-job-count)))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-dependencies-on-git
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("^.*\"git\", \"status\".*$") ""))))
|
||||
(add-before 'build 'set-version
|
||||
;; Remove dependencies on git.
|
||||
(("^.*\"git\", \"status\".*$") "")
|
||||
;; Guix is only compatible with a single version of numpy
|
||||
;; at a time. We can safely remove this dependency.
|
||||
(("'oldest-supported-numpy'") ""))))
|
||||
(add-before 'build 'pretend-version
|
||||
;; The version string is usually derived via setuptools-scm, but
|
||||
;; without the git metadata available, the version string is set
|
||||
;; to '0.0.0'.
|
||||
(lambda _
|
||||
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)))
|
||||
(add-before 'check 'remove-local-source
|
||||
(add-before 'check 'build-cython-extensions
|
||||
;; Cython extensions need to be built for the check phase.
|
||||
(lambda _
|
||||
(copy-recursively "fastparquet/test" "test")
|
||||
(delete-file-recursively "fastparquet"))))))
|
||||
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
python-pytest
|
||||
python-pytest-xdist
|
||||
python-setuptools
|
||||
python-setuptools-scm))
|
||||
python-setuptools-scm
|
||||
python-wheel))
|
||||
(propagated-inputs
|
||||
(list python-cramjam
|
||||
python-fsspec
|
||||
@@ -5588,31 +5645,16 @@ and @code{intake-parquet}. It supports the following compression algorithms:
|
||||
(define-public python-crate
|
||||
(package
|
||||
(name "python-crate")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/crate/crate-python")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0kk84wf7awgspdijycvhkbqvm5llp3wmwxa9n4w3qda861xn6krb"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "--ignore=tests/testing/test_layer.py" ; Requires crate binary.
|
||||
"--ignore=tests/client/test_http.py"))) ; XXX: fails collection.
|
||||
(native-inputs
|
||||
(list python-orjson
|
||||
python-pytest
|
||||
python-pytz
|
||||
python-setuptools
|
||||
python-sqlalchemy
|
||||
python-verlib2
|
||||
tzdata-for-tests))
|
||||
(propagated-inputs (list python-urllib3))
|
||||
(version "0.23.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "crate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ngmlvi320c5gsxab0s7qgq0ck4jdlcwvb6lbjhnfprafdp56vvx"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-urllib3))
|
||||
(home-page "https://github.com/crate/crate-python")
|
||||
(synopsis "CrateDB Python client")
|
||||
(description
|
||||
@@ -5807,46 +5849,6 @@ with no external dependencies. The targets are small apps that would
|
||||
be blown away by a SQL-DB or an external database server.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public sdb
|
||||
(package
|
||||
(name "sdb")
|
||||
(version "2.2.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/radareorg/sdb.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"15pc807s2nmhnr3mspyz9h47rkxkv1r07x959ir17v5b6zs7wxvw"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'setenv-cc
|
||||
(lambda _
|
||||
(setenv "CC" #$(cc-for-target))))
|
||||
;; The provided meson.build uses a Makefile in the source root
|
||||
;; to run the tests, but resolves its directory relative to
|
||||
;; the build directory, assuming the build is one level under
|
||||
;; the source tree. This breaks if the build tree is elsewhere.
|
||||
(add-before 'check 'set-test-workdir-to-source-root
|
||||
(lambda _
|
||||
(substitute* "../source/meson.build"
|
||||
(("workdir: join_paths.*$")
|
||||
"workdir: meson.project_source_root(),\n")))))))
|
||||
(native-inputs
|
||||
(list node
|
||||
perl
|
||||
python-minimal-wrapper))
|
||||
(home-page "https://github.com/radareorg/sdb")
|
||||
(synopsis "Simple and fast string based key-value database")
|
||||
(description "SDB is a simple key/value database based on djb's cdb disk
|
||||
storage that supports JSON and array introspection.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public sequeler
|
||||
(package
|
||||
(name "sequeler")
|
||||
@@ -5900,7 +5902,7 @@ a Gtk.Grid Widget.")
|
||||
(define-public sqlitebrowser
|
||||
(package
|
||||
(name "sqlitebrowser")
|
||||
(version "3.13.1")
|
||||
(version "3.13.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5909,30 +5911,17 @@ a Gtk.Grid Widget.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0615yks1krwjw4l1xxahn9j6qbd7cs8dxza7kc73hc5wr0xng5kf"))
|
||||
(base32 "0v4a59lgqng9hqvbc2k504aclinpwpk8hi6ckirbr6m1pnf26kfr"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Delete bundled dependencies, available as Guix packages.
|
||||
(for-each delete-file-recursively
|
||||
(list "libs/json"
|
||||
"libs/qcustomplot-source"
|
||||
"libs/qhexedit"
|
||||
"libs/qscintilla"))
|
||||
;; Patch #includes to be able to use Guix's nlohmann-json
|
||||
(with-directory-excursion "src"
|
||||
(substitute* (list "RemoteCommitsModel.h"
|
||||
"RemoteLocalFilesModel.h"
|
||||
"RemoteModel.h"
|
||||
"RemotePushDialog.cpp"
|
||||
"RemoteNetwork.cpp"
|
||||
"RemoteDock.cpp"
|
||||
"ExportDataDialog.cpp"
|
||||
"EditDialog.cpp")
|
||||
(("json\\.hpp") "nlohmann/json.hpp")))))))
|
||||
(delete-file-recursively "libs/qcustomplot-source/")
|
||||
(delete-file-recursively "libs/qhexedit/")
|
||||
(delete-file-recursively "libs/qscintilla")))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
;; TODO: Unbundle json (nlohmann-json).
|
||||
#~(list (string-append "-DQSCINTILLA_INCLUDE_DIR="
|
||||
#$(this-package-input "qscintilla")
|
||||
"/include/Qsci")
|
||||
@@ -5944,9 +5933,8 @@ a Gtk.Grid Widget.")
|
||||
qhexedit
|
||||
qscintilla
|
||||
qtbase-5
|
||||
qtwayland-5
|
||||
sqlite))
|
||||
(native-inputs (list nlohmann-json qttools-5))
|
||||
(native-inputs (list qttools-5))
|
||||
(home-page "https://sqlitebrowser.org/")
|
||||
(synopsis "Visual database browser and editor for SQLite")
|
||||
(description "Sqlitebrowser lets you create, design, and edit database files
|
||||
@@ -5959,7 +5947,7 @@ compatible with SQLite using a graphical user interface.")
|
||||
(define-public sqlitestudio
|
||||
(package
|
||||
(name "sqlitestudio")
|
||||
(version "3.4.19")
|
||||
(version "3.4.17")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5968,7 +5956,7 @@ compatible with SQLite using a graphical user interface.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1fvyd2l1pbpl4jgn7vp8j2gsmw0sbfzidyv3k87xm6a2d7i680yc"))))
|
||||
(base32 "1zb1qr88rwkzmrxc0lm99x8h99hpn5c2wfdpvqzs9f9ph8qvasww"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
@@ -170,78 +169,6 @@ and time-efficient for good hash functions.")
|
||||
(home-page "https://github.com/sparsehash/sparsehash")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public parallel-hashmap
|
||||
(package
|
||||
(name "parallel-hashmap")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/greg7mdp/parallel-hashmap")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "167pvbd3bwyn69i1s4vp3badcr97xy10sga63bbj7jqhj09f2816"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DPHMAP_BUILD_EXAMPLES=OFF")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'respect-tests?
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
;; fix parallel-hashmap's build script not respecting #:tests?
|
||||
(unless tests?
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("option\\(PHMAP_BUILD_TESTS.+$")
|
||||
"set(PHMAP_BUILD_TESTS OFF)\n")))))
|
||||
(add-after 'unpack 'disable-gtest-download
|
||||
(lambda _
|
||||
;; don't download googletest
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("include\\(cmake/DownloadGTest.cmake\\)")
|
||||
(format #f
|
||||
"add_subdirectory(~a ./googletest-build EXCLUDE_FROM_ALL)"
|
||||
#+(package-source (this-package-native-input "googletest"))))))))))
|
||||
;; FIXME: specify that we depend on the gtest source, not the package itself
|
||||
(native-inputs (list googletest))
|
||||
(home-page "https://greg7mdp.github.io/parallel-hashmap/")
|
||||
(synopsis "C++ implementation of efficient and concurrent hash maps")
|
||||
(description
|
||||
"parallel-hashmap provides a family of header-only, very fast and
|
||||
memory-friendly hashmap and btree containers for C++11 and above.
|
||||
|
||||
It has the following characteristics:
|
||||
|
||||
@itemize
|
||||
|
||||
@item Drop-in replacement for std::unordered_map, std::unordered_set, std::map,
|
||||
and std::set with better performance.
|
||||
|
||||
@item Requires C++11 compiler support and provides C++14 and C++17 APIs,
|
||||
including features like try_emplace.
|
||||
|
||||
@item Highly efficent and faster than standard unordered containers,
|
||||
Boost implementations, or sparsepp alternatives.
|
||||
|
||||
@item Memory-friendly: maintains low memory usage with a slight increase compared
|
||||
to sparsepp.
|
||||
|
||||
@item Heterogeneous lookup support.
|
||||
|
||||
@item Dump/load feature: for flat hash maps storing std::trivially_copyable data,
|
||||
the entire table can be dumped to disk and restored as a single array efficiently
|
||||
without hash computations. This is about 10 times faster than element-wise
|
||||
serialization but uses 10% to 60% extra disk space.
|
||||
|
||||
@item Automatic support for boost::hash_value() and default hash functions for
|
||||
std::pair and std::tuple.
|
||||
|
||||
@end itemize")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public ssdeep
|
||||
(package
|
||||
(name "ssdeep")
|
||||
|
||||
+10
-30
@@ -7,7 +7,6 @@
|
||||
;;; Copyright © 2022, 2024 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Junker <dk@junkeria.club>
|
||||
;;; Copyright © 2026 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -117,39 +116,13 @@ clients.")
|
||||
(define-public xandikos
|
||||
(package
|
||||
(name "xandikos")
|
||||
(version "0.3.0")
|
||||
(version "0.2.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "xandikos" version))
|
||||
(sha256
|
||||
(base32 "10j7qmwcrwql4ah6q8si3nf1ljwrx99w8ipiy85bzjd3qz2vackj"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'unittest
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'create-entrypoints
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((sitedir (site-packages inputs outputs))
|
||||
(interpreter (which "python"))
|
||||
(file-path (string-append #$output "/bin/xandikos")))
|
||||
(mkdir-p (string-append #$output "/bin"))
|
||||
(call-with-output-file file-path
|
||||
(lambda (port)
|
||||
(format port "#!~a -sP
|
||||
# Auto-generated entry point script.
|
||||
import sys
|
||||
import asyncio
|
||||
from xandikos.__main__ import main
|
||||
if __name__ == '__main__':
|
||||
sys.exit(asyncio.run(main(sys.argv[1:])))~%" interpreter)))
|
||||
(chmod file-path #o755))))
|
||||
(add-before 'check 'check-setup
|
||||
(lambda _
|
||||
(setenv "XANDIKOSPATH" (mkdtemp "/tmp/xandikospath-XXXXXX")))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(sha256 (base32 "0x6g5s9pkippxg429r9agp3w0xsid2vv1h45wfc3xzdfvgj6ygsr"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-aiohttp
|
||||
python-defusedxml
|
||||
@@ -158,6 +131,13 @@ if __name__ == '__main__':
|
||||
python-jinja2
|
||||
python-multidict
|
||||
python-vobject))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'check-setup
|
||||
(lambda _
|
||||
(setenv "XANDIKOSPATH" (mkdtemp "/tmp/xandikospath-XXXXXX")))))))
|
||||
(home-page "https://www.xandikos.org/")
|
||||
(synopsis "Lightweight CalDAV/CardDAV server")
|
||||
(description
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018, 2020-2026 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018, 2020-2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2023, 2024 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
@@ -607,7 +607,7 @@ unpacking them into a directory which can eventually be chrooted into.")
|
||||
"0hw407fm5ylsf28b0vrwz7rm2r2rsgfwzajbkbn6n2b6kqhdjyy9"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list autoconf automake gettext-minimal po4a-minimal))
|
||||
(list autoconf automake gettext-minimal po4a))
|
||||
(home-page "https://packages.debian.org/unstable/debianutils")
|
||||
(synopsis "Miscellaneous shell utilities")
|
||||
(description
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
;;; Copyright © 2023 Andy Tai <atai@atai.org>
|
||||
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2024 Raven Hallsby <karl@hallsby.com>
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||
;;; Copyright © 2025 Robin Templeton <robin@guixotic.coop>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -531,8 +531,8 @@ server and embedded PowerPC, and S390 guests.")
|
||||
|
||||
(define-public qemu-for-aflplusplus
|
||||
(let ((base qemu-minimal)
|
||||
(commit "60ebd5624c60589e276cf287516b925a9ee35b87")
|
||||
(revision "1"))
|
||||
(commit "790d2124fd054621d3c0d3ec31bea114b60601f9")
|
||||
(revision "0"))
|
||||
(hidden-package
|
||||
(package
|
||||
(inherit base)
|
||||
@@ -546,7 +546,7 @@ server and embedded PowerPC, and S390 guests.")
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vz7k1ssfnlimkpc01fqin27r2k4a23cwpxj2bbmsp7d3175bjbz"))))
|
||||
(base32 "1l2kl8768l4mbkiaj63zn6gsdn3qpl3rg7s6h62rmd7599ar3xn3"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:configure-flags _ #~'())
|
||||
@@ -610,7 +610,7 @@ server and embedded PowerPC, and S390 guests.")
|
||||
(package
|
||||
(inherit american-fuzzy-lop)
|
||||
(name "aflplusplus")
|
||||
(version "4.35c")
|
||||
(version "4.34c")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -619,7 +619,7 @@ server and embedded PowerPC, and S390 guests.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mwamvyv2ckfxrrns4cnhx9gf2dn9jjgi9dc1qp3cwjasbghg5lg"))))
|
||||
"14pllv986zwzbqarbsif02k618yns4fvqd3br6irzfcwivpysqfa"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments american-fuzzy-lop)
|
||||
((#:make-flags _ ''())
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2014-2016, 2018, 2021, 2024, 2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016-2018, 2020-2023, 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2017-2019, 2021, 2025 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2017, 2018, 2019, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2018, 2019, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
@@ -411,19 +411,15 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
|
||||
(define-public grammalecte
|
||||
(package
|
||||
(name "grammalecte")
|
||||
(version "2.3.0")
|
||||
(version "2.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append "https://grammalecte.net/zip/"
|
||||
(uri (string-append "https://grammalecte.net/grammalecte/zip/"
|
||||
"Grammalecte-fr-v" version ".zip"))
|
||||
(sha256
|
||||
(base32 "0kv8h0116sfcrqnpd3jv2b098ychda7v27fciq1phxw50jbj395a"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:test-backend #~'unittest))
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(base32 "076jv3ywdgqqzg92bfbagc7ypy08xjq5zn4vgna6j9350fkfqhzn"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://grammalecte.net")
|
||||
(synopsis "French spelling and grammar checker")
|
||||
(description "Grammalecte is a grammar checker for the French language,
|
||||
|
||||
+21
-28
@@ -522,14 +522,14 @@ scheme.")
|
||||
(define-public ddrescue
|
||||
(package
|
||||
(name "ddrescue")
|
||||
(version "1.30")
|
||||
(version "1.29.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/ddrescue/ddrescue-"
|
||||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32 "0hjmfj4g5m2w5xqd80mwx64acnc85clli4f1ryhqfv4x60nn4r12"))))
|
||||
(base32 "0xfx0hg3kkc6d3z0z9g1ingg2bnzcp1vjspcl8spi016y1fx9myx"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list (string-append "CXX=" ,(cxx-for-target)))))
|
||||
@@ -855,7 +855,7 @@ and can dramatically shorten the lifespan of the drive if left unchecked.")
|
||||
(sha256
|
||||
(base32
|
||||
"1ji5sq9jf0p44982zkb5dj2d3mrpy675k0mkyg3r17q5syz0wbia"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;XXX: root access is required, see: <scripts/tests/test.sh>
|
||||
@@ -970,31 +970,24 @@ reformatted. It can recover lost files from at least:
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public pydf
|
||||
(let ((commit "af38bb3b7aacbcc32271e6dafa8b8b0a77ffead8")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "pydf")
|
||||
(version (git-version "15" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/garabik/pydf")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "18ljigg8zm9pc3qg3alpyh3n4a4f1wcza4p36cchjn2vd4466jf4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments (list #:tests? #f)) ; No tests.
|
||||
(native-inputs (list python-setuptools))
|
||||
(home-page "http://kassiopeia.juls.savba.sk/~garabik/software/pydf/")
|
||||
(synopsis "Colourised @command{df} clone")
|
||||
(description
|
||||
"All-singing, all-dancing, fully colourised @command{df} clone written
|
||||
in Python. It displays the amount of disk space available on the mounted file
|
||||
systems, using different colours for different types of file systems. Output
|
||||
format is completely customizable.")
|
||||
(license license:public-domain))))
|
||||
(package
|
||||
(name "pydf")
|
||||
(version "12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pydf" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0f8ly8xyp93i2hm9c0qjqd4y86nz73axw2f09z01mszwmg1sfivz"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "http://kassiopeia.juls.savba.sk/~garabik/software/pydf/")
|
||||
(synopsis "Colourised @command{df} clone")
|
||||
(description "All-singing, all-dancing, fully colourised @command{df} clone
|
||||
written in Python. It displays the amount of disk space available on the
|
||||
mounted file systems, using different colours for different types of file
|
||||
systems. Output format is completely customizable.")
|
||||
(license license:public-domain)))
|
||||
|
||||
(define-public f3
|
||||
(package
|
||||
|
||||
+16
-27
@@ -203,13 +203,13 @@ your project into different processes.")
|
||||
(define-public python-django
|
||||
(package
|
||||
(name "python-django")
|
||||
(version "5.2.9")
|
||||
(version "5.2.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django" version))
|
||||
(sha256
|
||||
(base32 "15d45imlysz7wcm4azf6a9rjv19jxb953x8sav0fc9wcbvycrd8n"))))
|
||||
(base32 "0zvc8p4brwbj4yy8jxcannjfnik2xh4vis04c3x2r6mvlmk4h993"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
'(#:test-flags
|
||||
@@ -295,20 +295,20 @@ any Web site. Django focuses on automating as much as possible and adhering
|
||||
to the @dfn{don't repeat yourself} (DRY) principle.")
|
||||
(license license:bsd-3)
|
||||
(properties `((cpe-name . "django")
|
||||
;; This CVE seems fixed since 5.2.1.
|
||||
(lint-hidden-cve . ("CVE-2025-32873"))))))
|
||||
;; This CVE seems fixed since 4.2.1.
|
||||
(lint-hidden-cve . ("CVE-2023-31047"))))))
|
||||
|
||||
(define-public python-django-4
|
||||
(package
|
||||
(inherit python-django)
|
||||
(name "python-django-4")
|
||||
(version "4.2.27")
|
||||
(version "4.2.26")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django" version))
|
||||
(sha256
|
||||
(base32 "14jvv95nw76fz8v0gzqdn6xwicqdn91glpjcb4vfxld3ykhgnrdq"))))
|
||||
(base32 "0ylxdpkiwdh8yhqxqzm90fxiagm8v7xijvdm5ha3ypmmpj3y964k"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments python-django)
|
||||
((#:phases phases)
|
||||
@@ -695,27 +695,25 @@ them do this.")
|
||||
(define-public python-django-allauth
|
||||
(package
|
||||
(name "python-django-allauth")
|
||||
(version "65.13.1")
|
||||
(version "65.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/allauth/django-allauth")
|
||||
(url "https://github.com/pennersr/django-allauth")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1w98sd0hj96qgxqa6q7a80h5w800yshqlhli2pplkwb5bqkqwq5n"))))
|
||||
(base32 "1k5b3x7pdysb21vbqx7pxi9cm72yj057mm1clg19ymiqj4kq8yfl"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 1812 passed, 9 warnings
|
||||
#:test-flags
|
||||
;; XXX: KeyError: location
|
||||
#~(list "--ignore=allauth/socialaccount/providers/openid/tests.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; FIXME: This should be fixed in python-xmlsec
|
||||
;; E xmlsec.Error: (1, 'cannot load crypto library for xmlsec.')
|
||||
(add-before 'check 'pre-check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((lib (search-input-file inputs "lib/libxmlsec1-openssl.so")))
|
||||
@@ -724,15 +722,13 @@ them do this.")
|
||||
(propagated-inputs
|
||||
(list python-asgiref
|
||||
python-django
|
||||
;; [optional]
|
||||
python-fido2
|
||||
python-oauthlib
|
||||
python-openid
|
||||
python-pyjwt
|
||||
python-python3-saml ;TODO: rename to Guix name format
|
||||
python-pyyaml
|
||||
python-qrcode
|
||||
python-requests))
|
||||
python-requests
|
||||
python-requests-oauthlib
|
||||
python-python3-saml))
|
||||
(inputs (list xmlsec-openssl))
|
||||
(native-inputs
|
||||
(list tzdata-for-tests
|
||||
@@ -744,7 +740,7 @@ them do this.")
|
||||
python-pytest-asyncio
|
||||
python-pytest-django
|
||||
python-setuptools))
|
||||
(home-page "https://codeberg.org/allauth/django-allauth")
|
||||
(home-page "https://github.com/pennersr/django-allauth")
|
||||
(synopsis "Set of Django applications addressing authentication")
|
||||
(description
|
||||
"Integrated set of Django applications addressing authentication,
|
||||
@@ -1092,17 +1088,16 @@ entries, photos, book chapters, or anything else.")
|
||||
(define-public python-django-ninja
|
||||
(package
|
||||
(name "python-django-ninja")
|
||||
(version "1.5.1")
|
||||
(version "1.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django_ninja" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1iqp3c4gxvskw1xdi9bqzpz2rw6779ydkd6czp3382fncj5adkba"))))
|
||||
"0f5hgjkavvk1csb1yl34scqai3ljjhh93k5kbqm8s8hclry4fvg4"))))
|
||||
(build-system pyproject-build-system)
|
||||
;; tests: 670 passed, 1 skipped, 53 warnings
|
||||
(propagated-inputs
|
||||
(list python-django python-pydantic))
|
||||
(list python-django python-pydantic-2))
|
||||
(native-inputs
|
||||
(list python-flit-core
|
||||
python-psycopg2
|
||||
@@ -2066,12 +2061,6 @@ image files already supported by it.")
|
||||
(sha256
|
||||
(base32 "06h4g50qy1h77b4n28xbyzl2wvsblzs9qi63d7kvvm9x8n8whz92"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Skip test that fails on later Python versions; code itself seems fine.
|
||||
;; See: <https://github.com/joke2k/django-environ/issues/574>.
|
||||
#:test-flags
|
||||
#~(list "-k" "not test_db_parsing")))
|
||||
(native-inputs (list python-pytest
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
|
||||
+22
-25
@@ -33,7 +33,6 @@
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gawk)
|
||||
@@ -51,7 +50,6 @@
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-check)
|
||||
#:use-module (gnu packages python-graphics)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages qt)
|
||||
@@ -297,50 +295,50 @@ and white.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public didjvu
|
||||
(let ((revision "0")
|
||||
(commit "43e2735d0b3575ca04e82a427dca88bc68fa4931"))
|
||||
(package
|
||||
(name "didjvu")
|
||||
(version "0.11.0")
|
||||
(version (git-version "0.10.2" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
;; It's a fork of https://github.com/jwilk/didjvu, see:
|
||||
;; <https://github.com/FriedrichFroebel/didjvu/issues/47>.
|
||||
(url "https://github.com/FriedrichFroebel/didjvu")
|
||||
(commit version)))
|
||||
(url "https://github.com/FriedrichFroebel/didjvu")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "11z9daa5qfm8cqaxdywfvrnaxid33p7lidj7i8xzv30wyzxdr6zg"))))
|
||||
(base32 "0ippf3hsjy13xj6pqnqr30dz8lsncsfcan2r1vbxfk1g602m3p4c"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'unittest
|
||||
#:test-flags
|
||||
#~(list "discover" "--verbose" "--start-directory" "tests/")
|
||||
;; FIXME: Tests fail because they try to load the libxmp and pyexiv2
|
||||
;; modules that should not be enabled, as we only enable the gexiv2
|
||||
;; module.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-before 'check 'disable-failing-test
|
||||
(lambda _
|
||||
(substitute* "tests/test_ipc.py"
|
||||
;; test_wait_signal gets stuck forever
|
||||
(("self\\._test_signal\\(name\\)")
|
||||
"return True")
|
||||
;; test_path fails to find a file it should have created
|
||||
(("path = os\\.getenv\\('PATH'\\)")
|
||||
"return True"))
|
||||
(substitute* (list "tests/test_ipc.py" "tests/test_cli.py")
|
||||
;; XXX: See:
|
||||
;; <https://github.com/FriedrichFroebel/didjvu/issues/48>.
|
||||
(((string-append "(test_action_no_args|test_bad_action|"
|
||||
"test_no_args|test_wait_signal)")
|
||||
all)
|
||||
(string-append "__off_" all)))))
|
||||
(substitute* "tests/test_timestamp.py"
|
||||
;; test_timezones fails with:
|
||||
;; '2009-12-18T21:25:14Z' != '2009-12-18T22:25:14+01:00'
|
||||
(("samples = \\[" all)
|
||||
(string-append "return True\n " all)))))
|
||||
(add-after 'wrap 'wrap-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(wrap-program (string-append #$output "/bin/didjvu")
|
||||
`("PATH" ":" prefix
|
||||
(,(dirname (search-input-file inputs "bin/ddjvu"))))))))))
|
||||
(native-inputs
|
||||
(list boost
|
||||
tzdata-for-tests
|
||||
python-setuptools))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
djvulibre
|
||||
@@ -348,15 +346,14 @@ and white.")
|
||||
minidjvu
|
||||
python-gamera
|
||||
python-pillow
|
||||
python-py3exiv2
|
||||
python-pygobject
|
||||
python-xmp-toolkit))
|
||||
python-wrapper))
|
||||
(synopsis "DjVu encoder with foreground/background separation")
|
||||
(description
|
||||
"@code{didjvu} uses the @code{Gamera} framework to separate the foreground
|
||||
and background layers of images, which can then be encoded into a DjVu file.")
|
||||
(home-page "https://jwilk.net/software/didjvu")
|
||||
(license license:gpl2)))
|
||||
(license license:gpl2))))
|
||||
|
||||
(define-public ocrodjvu
|
||||
(let ((revision "0")
|
||||
|
||||
+5
-11
@@ -253,10 +253,10 @@ management tool.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m5ifgxdhcf7yci0ncgnxjas879sksrf3im0fahs573g268farz9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
;; Integration tests need a running Docker daemon.
|
||||
(arguments (list #:tests? #f))
|
||||
(native-inputs (list python-setuptools))
|
||||
(native-inputs '())
|
||||
(inputs (modify-inputs (package-inputs python-docker)
|
||||
(prepend python-six)
|
||||
(delete "python-urllib3")))
|
||||
@@ -264,9 +264,6 @@ management tool.")
|
||||
(modify-inputs (package-propagated-inputs python-docker)
|
||||
(prepend python-docker-pycreds python-urllib3-1.26)))))
|
||||
|
||||
;; Needed for old v1 of docker-compose; remove once Docker is updated to a
|
||||
;; more recent version which has the command "docker compose" built-in, see:
|
||||
;; <https://codeberg.org/guix/guix/milestone/30347>.
|
||||
(define-public python-dockerpty
|
||||
(package
|
||||
(name "python-dockerpty")
|
||||
@@ -278,11 +275,9 @@ management tool.")
|
||||
(sha256
|
||||
(base32
|
||||
"1kjn64wx23jmr8dcc6g7bwlmrhfmxr77gh6iphqsl39sayfxdab9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; XXX: Requires outdated python-expects
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
(list python-setuptools python-six))
|
||||
(list python-six))
|
||||
(home-page "https://github.com/d11wtq/dockerpty")
|
||||
(synopsis "Python library to use the pseudo-TTY of a Docker container")
|
||||
(description "Docker PTY provides the functionality needed to operate the
|
||||
@@ -303,7 +298,7 @@ client.")
|
||||
(sha256
|
||||
(base32
|
||||
"1dq9kfak61xx7chjrzmkvbw9mvj9008k7g8q7mwi4x133p9dk32c"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
;; TODO: Tests require running Docker daemon.
|
||||
(arguments
|
||||
(list
|
||||
@@ -315,7 +310,6 @@ client.")
|
||||
(substitute* "setup.py"
|
||||
((", < 6")
|
||||
"")))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs
|
||||
(list python-cached-property
|
||||
python-distro
|
||||
|
||||
@@ -435,6 +435,7 @@ the Net to search for documents which are not on the local system.")
|
||||
qtwayland
|
||||
qtwebchannel
|
||||
qtwebengine
|
||||
qtx11extras
|
||||
xcb-util-keysyms))
|
||||
(home-page "https://zealdocs.org/")
|
||||
(synopsis "Offline documentation browser inspired by Dash")
|
||||
@@ -580,10 +581,7 @@ calendars, equations, and other features as extensions of Markdown syntax.")
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke #$(cc-for-target)
|
||||
"-O2" "-g"
|
||||
;; XXX: Relax gcc 14 strictness.
|
||||
"-Wno-int-conversion"
|
||||
"-o" "stddoc" "stddoc.c")
|
||||
"-O2" "-g" "-o" "stddoc" "stddoc.c")
|
||||
(with-input-from-file "stddoc.c"
|
||||
(lambda _
|
||||
(with-output-to-file "stddoc.c.html"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2023, 2024 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2023, 2025, 2026 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2023, 2025 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2024 Felix Gruber <felgru@posteo.net>
|
||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2024, 2025 Ekaitz Zarraga <ekaitz@elenq.tech>
|
||||
@@ -148,13 +148,13 @@ system.")
|
||||
(define-public r-duckdb
|
||||
(package
|
||||
(name "r-duckdb")
|
||||
(version "1.4.3")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "duckdb" version))
|
||||
(sha256
|
||||
(base32 "0br7d7gadi0gbpd45syvig6zs1b0sl3vpn8wa272hs8jv4d73ar3"))
|
||||
(base32 "1k2ks40mw7qviwwa53jv76bb48jxk9cfp6lrc06ripfifabd2pix"))
|
||||
;; This package bundles the duckdb sources and builds a custom variant
|
||||
;; of duckdb. I'd be happy to link it with our duckdb library instead,
|
||||
;; but it does not seem possible to do that.
|
||||
|
||||
+21
-47
@@ -45,7 +45,6 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cmake)
|
||||
@@ -121,36 +120,31 @@
|
||||
(version "0.8.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dottedmag/pychm")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pychm" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zf2vnrby2m31nvi6p3isspbrjmzjw1vwfx3xl7bkvjs7sli1wbw"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools))
|
||||
"0wpn9ijlsmrpyiwg3drmgz4dms1i1i347adgqw37bkrh3vn6yq16"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
(list chmlib))
|
||||
(home-page "https://github.com/dottedmag/pychm")
|
||||
(synopsis "Handle CHM files")
|
||||
(description "This package provides a Python module for interacting
|
||||
with Microsoft Compiled HTML (CHM) files.")
|
||||
with Microsoft Compiled HTML (CHM) files")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public calibre
|
||||
(package
|
||||
(name "calibre")
|
||||
(version "8.16.2")
|
||||
(version "8.15.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://download.calibre-ebook.com/" version
|
||||
"/calibre-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0v0w5hi8h1fykf1v2dqcz9zafc7ffxlh5nj125sc0g7mai1x11q1"))
|
||||
(base32 "1d2ygxf5srzdxc3jpngmq3zbz9plxnbzm4dzygpfd38szr5zwyss"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@@ -168,18 +162,15 @@ with Microsoft Compiled HTML (CHM) files.")
|
||||
"calibre-remove-test-unrar.patch"
|
||||
"calibre-remove-test-import-modules.patch" ; TODO: fix test
|
||||
))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
(list bash-minimal
|
||||
cmake
|
||||
pkg-config
|
||||
python-flake8
|
||||
python-pyqt-builder
|
||||
qtbase ; for qmake
|
||||
xdg-utils
|
||||
python-setuptools
|
||||
python-tzdata
|
||||
python-tzlocal))
|
||||
qtbase ; for qmake
|
||||
xdg-utils))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
espeak-ng
|
||||
@@ -240,6 +231,9 @@ with Microsoft Compiled HTML (CHM) files.")
|
||||
uchardet))
|
||||
(arguments
|
||||
(list
|
||||
;; Calibre is using setuptools by itself, but the setup.py is not
|
||||
;; compatible with the shim wrapper (taken from pip) we are using.
|
||||
#:use-setuptools? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-source
|
||||
@@ -346,19 +340,6 @@ sip-include-dirs = [\""
|
||||
(lambda _
|
||||
(copy-recursively "man-pages"
|
||||
(string-append #$output "/share/man"))))
|
||||
;; Calibre is using setuptools but the setup.py is not
|
||||
;; compatible with the shim wrapper (taken from pip) we are using.
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "python" "setup.py" "build")))
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(invoke "python" "setup.py" "install"
|
||||
(string-append "--prefix=" #$output))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "python" "setup.py" "test"))))
|
||||
;; The font TTF files are used in some miscellaneous tests, so we
|
||||
;; unbundle them here to avoid patching the tests.
|
||||
(add-after 'install 'unbundle-font-liberation
|
||||
@@ -454,8 +435,6 @@ accessing and converting various ebook file formats.")
|
||||
(replace 'install (assoc-ref gnu:%standard-phases 'install)))))
|
||||
(native-inputs
|
||||
(list qtbase-5))
|
||||
(inputs
|
||||
(list qtwayland-5))
|
||||
(synopsis "EBook reader")
|
||||
(description "This package provides InkBox eBook reader.")
|
||||
(license license:gpl3)))
|
||||
@@ -748,18 +727,13 @@ format documents, with the following features:
|
||||
(package
|
||||
(name "shirah")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hallicopter/shirah-reader")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0df59bq71b9i78cws5z4cdgjdxj59dvz0x4wpnjpxz0g4wvvc55d"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments (list #:tests? #f)) ; No tests.
|
||||
(native-inputs (list python-setuptools))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "shirah_reader" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0j15v435lz68c1mj5clfx5dmfyjc6jvvz2q8hqvv799mb2faj42y"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs (list python-beautifulsoup4 python-ebooklib
|
||||
python-syllables python-termcolor))
|
||||
(home-page "https://github.com/hallicopter/shirah-reader")
|
||||
@@ -769,4 +743,4 @@ format documents, with the following features:
|
||||
display ebooks in the usual way or with Rapid Serial Visual Presentation, a
|
||||
method to enable speedreading by showing the text word by word at configurable
|
||||
speeds.")
|
||||
(license license:gpl2+)))
|
||||
(license license:gpl2+)))
|
||||
|
||||
+313
-85
@@ -66,7 +66,6 @@
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages qt)
|
||||
@@ -89,7 +88,6 @@
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system qt)
|
||||
#:use-module (guix build-system trivial)
|
||||
@@ -295,7 +293,7 @@ frequently used words in American English.")
|
||||
(build-system qt-build-system)
|
||||
(arguments (list #:qtbase qtbase ;qtbase 6
|
||||
#:tests? #f)) ;packages has no tests
|
||||
(inputs (list qtbase qtmultimedia qtwayland))
|
||||
(inputs (list qtbase qtmultimedia))
|
||||
(home-page "https://www.tipp10.com/en/")
|
||||
(synopsis "Touch typing tutor")
|
||||
(description "Tipp10 is a touch typing tutor. The ingenious thing about
|
||||
@@ -378,48 +376,47 @@ to open the application in a web browser, for offline usage.")
|
||||
(uri (list
|
||||
;; XXX: Upstream does not exist anymore.
|
||||
;; (string-append "http://www.bipede.fr/downloads/logiciels/"
|
||||
;; "ToutEnClic-" version "-src.zip")
|
||||
(string-append "https://archive.org/download/tout-en-clic-"
|
||||
version "-src/ToutEnClic-" version "-src.zip")))
|
||||
;; "ToutEnClic-" version "-src.zip")
|
||||
(string-append "https://archive.org/download/tout-en-clic-" version
|
||||
"-src/ToutEnClic-" version "-src.zip")))
|
||||
(sha256
|
||||
(base32 "0xg24p925rl5bfqsq3jb2lrkidb0f3kbmay5iyxxmjsn3ra0blyh"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'build)
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(let ((share (string-append #$output "/share/toutenclic"))
|
||||
(bin (string-append #$output "/bin"))
|
||||
`(#:tests? #f ; no tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(share (string-append out "/share/toutenclic"))
|
||||
(pixmaps (string-append out "/share/pixmaps"))
|
||||
(doc (string-append out "share/doc/" ,name "-" ,version))
|
||||
(bin (string-append out "/bin"))
|
||||
(executable "toutenclic"))
|
||||
;; Install icon.
|
||||
(install-file "toutenclic.png"
|
||||
(string-append #$output "/share/pixmaps"))
|
||||
;; Move files into "share/" directory.
|
||||
(for-each (lambda (f)
|
||||
(install-file f share))
|
||||
(find-files "." "\\.py$"))
|
||||
;; Install documentation.
|
||||
(install-file "ToutEnClic.pdf"
|
||||
(string-append #$output "share/doc/"
|
||||
#$name "-" #$version))
|
||||
;; Create executable in "bin/".
|
||||
(mkdir-p bin)
|
||||
(with-directory-excursion bin
|
||||
(symlink (string-append share "/" executable ".py")
|
||||
executable)))))
|
||||
(add-after 'install 'create-desktop-file
|
||||
(lambda _
|
||||
(let ((applications (string-append #$output "/share/applications")))
|
||||
(mkdir-p applications)
|
||||
(call-with-output-file (string-append applications
|
||||
"/toutenclic.desktop")
|
||||
(lambda (file)
|
||||
(format file
|
||||
"[Desktop Entry]~@
|
||||
;; Install icon.
|
||||
(install-file "toutenclic.png" pixmaps)
|
||||
;; Move files into "share/" directory.
|
||||
(for-each (lambda (f) (install-file f share))
|
||||
(find-files "." "\\.py$"))
|
||||
;; Install documentation.
|
||||
(install-file "ToutEnClic.pdf" doc)
|
||||
;; Create executable in "bin/".
|
||||
(mkdir-p bin)
|
||||
(with-directory-excursion bin
|
||||
(symlink (string-append share "/" executable ".py")
|
||||
executable)))))
|
||||
(add-after 'install 'create-desktop-file
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(applications (string-append out "/share/applications")))
|
||||
(mkdir-p applications)
|
||||
(call-with-output-file
|
||||
(string-append applications "/toutenclic.desktop")
|
||||
(lambda (file)
|
||||
(format file
|
||||
"[Desktop Entry]~@
|
||||
Name=ToutEnClic~@
|
||||
Comment=For schooling without difference~@
|
||||
Exec=~a/bin/toutenclic~@
|
||||
@@ -427,16 +424,18 @@ to open the application in a web browser, for offline usage.")
|
||||
Terminal=false~@
|
||||
Icon=toutenclic~@
|
||||
Type=Application~%"
|
||||
#$output)))))))))
|
||||
(native-inputs (list unzip python-setuptools))
|
||||
(inputs (list python-pyqt))
|
||||
out)))))))))
|
||||
(native-inputs
|
||||
(list unzip))
|
||||
(inputs
|
||||
(list python-pyqt))
|
||||
(synopsis "School tools for physically disabled children")
|
||||
(description
|
||||
"ToutEnClic is intended to facilitate the schooling of physically
|
||||
disabled children in ordinary schools. It is both a multi-page virtual
|
||||
exercise book and a kit including pencil, scissors, glue, ruler, compass,
|
||||
protractor and square. A virtual keyboard is also available if the child does
|
||||
not have any other specialized device.")
|
||||
(description "ToutEnClic is intended to facilitate the schooling
|
||||
of physically disabled children in ordinary schools. It is both
|
||||
a multi-page virtual exercise book and a kit including pencil,
|
||||
scissors, glue, ruler, compass, protractor and square. A virtual
|
||||
keyboard is also available if the child does not have any other
|
||||
specialized device.")
|
||||
(home-page "https://bipede.fr/contrib/")
|
||||
(license license:gpl3)))
|
||||
|
||||
@@ -603,6 +602,231 @@ about drilling time and correctness ratio is displayed. The results are
|
||||
stored and user can review his performance in any time.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public anki
|
||||
(package
|
||||
(name "anki")
|
||||
;; Later versions have dependencies on npm packages not yet in Guix.
|
||||
(version "2.1.16")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://apps.ankiweb.net/downloads/archive/anki-"
|
||||
version "-source.tgz"))
|
||||
(sha256
|
||||
(base32 "1gfr51rnllkyzli73p4r51h5ypzfa3m7lic3m3rzpywmqwrxs07k"))
|
||||
(modules '((guix build utils)))
|
||||
;; Fix preferences error: <https://issues.guix.gnu.org/65506>.
|
||||
(snippet '(substitute* "aqt/preferences.py"
|
||||
(("qc\\['collapseTime']/60\\.0" x)
|
||||
(format #f "int(~a)" x))
|
||||
(("qc\\['timeLim']/60\\.0" x)
|
||||
(format #f "int(~a)" x))))
|
||||
(patches (search-patches "anki-mpv-args.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags (list (string-append "PREFIX=" %output))
|
||||
#:tests? #f ;no check target
|
||||
#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 match))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-update-check
|
||||
;; Don't ‘phone home’ unasked to check for updates.
|
||||
(lambda _
|
||||
(substitute* "aqt/update.py"
|
||||
(("requests\\.post")
|
||||
"throw.an.exception.instead"))
|
||||
#t))
|
||||
(delete 'configure) ;no configure script
|
||||
(add-after 'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin"))
|
||||
;; List of paths to the site-packages directories of Python
|
||||
;; library inputs.
|
||||
(site-packages
|
||||
(map (lambda (pyinput)
|
||||
(string-append
|
||||
(cdr pyinput)
|
||||
"/lib/python"
|
||||
;; Calculate the python version to avoid breaking
|
||||
;; with future 3.X releases.
|
||||
,(version-major+minor
|
||||
(package-version python-wrapper))
|
||||
"/site-packages"))
|
||||
(filter (match-lambda
|
||||
((label . _)
|
||||
(string-prefix? "python-" label)))
|
||||
inputs))))
|
||||
;; PYTHONPATH is wrapped to avoid declaring Python libraries as
|
||||
;; propagated inputs.
|
||||
(for-each (lambda (program)
|
||||
(wrap-program program
|
||||
`("PATH" prefix (,(string-append
|
||||
(assoc-ref inputs "mpv")
|
||||
"/bin")))
|
||||
`("GUIX_PYTHONPATH" = ,site-packages)))
|
||||
(find-files bin ".")))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
(list xdg-utils))
|
||||
(inputs
|
||||
`(("lame" ,lame)
|
||||
("mpv" ,mpv)
|
||||
("python" ,python-wrapper)
|
||||
("python-beautifulsoup4" ,python-beautifulsoup4)
|
||||
("python-decorator" ,python-decorator)
|
||||
("python-distro" ,python-distro)
|
||||
("python-jsonschema" ,python-jsonschema)
|
||||
("python-markdown" ,python-markdown)
|
||||
("python-pyaudio" ,python-pyaudio)
|
||||
;; `python-pyqtwebengine' must precede `python-pyqt' in PYTHONPATH.
|
||||
("python-pyqtwebengine" ,python-pyqtwebengine)
|
||||
("python-pyqt" ,python-pyqt)
|
||||
("python-requests" ,python-requests)
|
||||
("python-send2trash" ,python-send2trash)
|
||||
("python-sip" ,python-sip)
|
||||
;; `qtwebengine-5' is included in `pyqtwebengine', included here for easy
|
||||
;; wrapping.
|
||||
("qtwebengine-5" ,qtwebengine-5)))
|
||||
(home-page "https://apps.ankiweb.net/")
|
||||
(synopsis "Powerful, intelligent flash cards")
|
||||
(description "Anki is a program which makes remembering things
|
||||
easy. Because it's a lot more efficient than traditional study
|
||||
methods, you can either greatly decrease your time spent studying, or
|
||||
greatly increase the amount you learn.
|
||||
|
||||
Anyone who needs to remember things in their daily life can benefit
|
||||
from Anki. Since it is content-agnostic and supports images, audio,
|
||||
videos and scientific markup (via LaTeX), the possibilities are
|
||||
endless. For example:
|
||||
@itemize
|
||||
@item Learning a language
|
||||
@item Studying for medical and law exams
|
||||
@item Memorizing people's names and faces
|
||||
@item Brushing up on geography
|
||||
@item Mastering long poems
|
||||
@item Even practicing guitar chords!
|
||||
@end itemize")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public t4k-common
|
||||
(package
|
||||
(name "t4k-common")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tux4kids/t4kcommon")
|
||||
(commit (string-append "upstream/" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13q02xpmps9qg8zrzzy2gzv4a6afgi28lxk4z242j780v0gphchp"))
|
||||
(patches (search-patches "t4k-common-libpng16.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
`(begin
|
||||
(substitute* "src/t4k_common.h"
|
||||
(("char wrapped_lines") "extern char wrapped_lines"))
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXME: cannot find how to run tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'set-paths 'set-sdl-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "CPATH"
|
||||
(string-append
|
||||
(search-input-directory inputs "/include/SDL")
|
||||
":" (or (getenv "CPATH") "")))))
|
||||
(add-after 'unpack 'fix-andika-font-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/t4k_sdl.c"
|
||||
(("(/usr/share/.*?)/AndikaDesRevG\\.ttf")
|
||||
(string-append (assoc-ref inputs "font-andika")
|
||||
"/share/fonts/truetype")))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
`(("font-andika" ,font-sil-andika)
|
||||
("libpng" ,libpng)
|
||||
("librsvg" ,(librsvg-for-system))
|
||||
("libxml2" ,libxml2)
|
||||
("sdl" ,(sdl-union (list sdl sdl-image sdl-mixer sdl-net sdl-pango)))))
|
||||
(home-page "https://github.com/tux4kids/t4kcommon")
|
||||
(synopsis "Library of code shared between TuxMath and TuxType")
|
||||
(description "Tux4Kids-Common is a library of code shared between
|
||||
TuxMath and TuxType.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public tuxmath
|
||||
(package
|
||||
(name "tuxmath")
|
||||
(version "2.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tux4kids/tuxmath")
|
||||
(commit (string-append "upstream/" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1f1pz83w6d3mbik2h6xavfxmk5apxlngxbkh80x0m55lhniwkdxv"))
|
||||
(modules '((guix build utils)))
|
||||
;; Unbundle fonts.
|
||||
(snippet
|
||||
`(begin
|
||||
;; Remove duplicate definition.
|
||||
(substitute* "src/menu_lan.c"
|
||||
(("lan_player_type.*MAX_CLIENTS\\];") ""))
|
||||
(for-each delete-file (find-files "data/fonts" "\\.ttf$"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no test
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'set-paths 'set-sdl-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "CPATH"
|
||||
(string-append
|
||||
(search-input-directory inputs "/include/SDL")
|
||||
":"
|
||||
(or (getenv "CPATH") "")))))
|
||||
(add-after 'install 'install-desktop-file
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(apps (string-append out "/share/applications"))
|
||||
(pixmaps (string-append out "/share/pixmaps")))
|
||||
(install-file "tuxmath.desktop" apps)
|
||||
(for-each (lambda (f) (install-file f pixmaps))
|
||||
(find-files "data/images/icons/"
|
||||
"tuxmath\\.(png|ico|svg)$"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
`(("librsvg" ,(librsvg-for-system))
|
||||
("libxml2" ,libxml2)
|
||||
("sdl" ,(sdl-union (list sdl sdl-image sdl-mixer sdl-net sdl-pango)))
|
||||
("t4k-common" ,t4k-common)))
|
||||
(home-page "https://github.com/tux4kids/tuxmath")
|
||||
(synopsis "Educational math tutorial game")
|
||||
(description "@emph{Tux, of Math Command} is an educational math
|
||||
tutorial game starring Tux, the Linux penguin, in which you play the
|
||||
part of Commander Tux, as he defends his friends from an attack of
|
||||
math equations. Comets are crashing towards the friendly penguins in
|
||||
their igloos, and you must destroy the comets by solving their
|
||||
equations.
|
||||
|
||||
TuxMath also includes Factoroids, a game that gives practice in
|
||||
factoring numbers and simplifying fractions, as well as zapping rocks
|
||||
floating through space.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libeb
|
||||
(package
|
||||
(name "libeb")
|
||||
@@ -655,7 +879,6 @@ formats.")
|
||||
qtmultimedia-5
|
||||
qtquickcontrols2-5
|
||||
qtdeclarative-5
|
||||
qtwayland-5
|
||||
qtwebchannel-5
|
||||
qtwebengine-5
|
||||
zlib))
|
||||
@@ -781,7 +1004,7 @@ learning for programming languages.")
|
||||
(define-public mazo
|
||||
(package
|
||||
(name "mazo")
|
||||
(version "1.2.1")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -790,37 +1013,43 @@ learning for programming languages.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mwhd8y3xs57rbaarpi1ams5i0kndizdpns4ym7dmnnn7s9g1xq8"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32 "14nk3qsj6lg7wp2ws8lxhb4hyjnczvw1cn9f3m466dkkfimp7ygf"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'build)
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "HOME" (getcwd))
|
||||
(invoke "python3" "manage.py" "test"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((bin (string-append #$output "/bin"))
|
||||
(script (string-append bin "/mazo"))
|
||||
(share (string-append #$output "/share"))
|
||||
(help (string-append share "/help/C/mazo")))
|
||||
(mkdir-p help)
|
||||
(mkdir-p bin)
|
||||
(copy-file "mazo.py" script)
|
||||
(chmod script #o555)
|
||||
(install-file "icons/mazo.svg"
|
||||
(string-append share
|
||||
"/icons/hicolor/scalable/apps"))
|
||||
(install-file "lugare.ulkeva.Mazo.desktop"
|
||||
(string-append share "/applications"))
|
||||
(copy-recursively "help/C/mazo" help)
|
||||
(copy-recursively "mazo"
|
||||
(string-append (site-packages inputs outputs)
|
||||
"/mazo"))))))))
|
||||
`(#:use-setuptools? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build)
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
|
||||
(when tests?
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(home (string-append out "/tmp")))
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(setenv "HOME" home)
|
||||
(invoke "python3" "manage.py" "test")))))
|
||||
(replace 'install
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(script (string-append bin "/mazo"))
|
||||
(share (string-append out "/share"))
|
||||
(help (string-append share "/help/C/mazo"))
|
||||
(icons (string-append
|
||||
share
|
||||
"/icons/hicolor/scalable/apps"))
|
||||
(apps (string-append share "/applications"))
|
||||
(site (string-append
|
||||
(site-packages inputs outputs)
|
||||
"/mazo")))
|
||||
(mkdir-p help)
|
||||
(mkdir-p bin)
|
||||
(copy-file "mazo.py" script)
|
||||
(chmod script #o555)
|
||||
(install-file "icons/mazo.svg" icons)
|
||||
(install-file "lugare.ulkeva.Mazo.desktop" apps)
|
||||
(copy-recursively "help/C/mazo" help)
|
||||
(copy-recursively "mazo" site)))))))
|
||||
(native-inputs
|
||||
(list python-django
|
||||
python-django-cleanup
|
||||
@@ -842,9 +1071,8 @@ learning for programming languages.")
|
||||
yelp))
|
||||
(home-page "https://luis-felipe.gitlab.io/mazo/")
|
||||
(synopsis "Memorize concepts using multimedia flash cards")
|
||||
(description
|
||||
"Mazo is a learning application that helps you memorize simple concepts
|
||||
using multimedia flash cards and spaced reviews.")
|
||||
(description "Mazo is a learning application that helps you memorize
|
||||
simple concepts using multimedia flash cards and spaced reviews.")
|
||||
(license license:public-domain)))
|
||||
|
||||
(define-public hardv
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user