forked from tribes/guix
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
|
||||
|
||||
@@ -47,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
-8
@@ -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
|
||||
@@ -170,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
|
||||
@@ -196,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
|
||||
@@ -218,7 +215,6 @@ tests/home-services\.scm @guix/home
|
||||
|
||||
gnu/packages/mpi\.scm @guix/hpc
|
||||
gnu/packages/oneapi\.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
|
||||
@@ -273,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
|
||||
@@ -327,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
|
||||
|
||||
+45
-38
@@ -746,14 +746,6 @@ dist_fishcompletion_DATA = etc/completion/fish/guix.fish
|
||||
# SELinux policy
|
||||
nodist_selinux_policy_DATA = etc/guix-daemon.cil
|
||||
|
||||
# AppArmor profiles.
|
||||
nodist_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 \
|
||||
@@ -789,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 \
|
||||
@@ -1142,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 ; \
|
||||
@@ -1171,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 --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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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])
|
||||
@@ -317,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])
|
||||
|
||||
+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
|
||||
|
||||
+41
-321
@@ -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,25 +769,34 @@ This section only applies to systems without Guix. Following it for
|
||||
existing Guix installations will overwrite important system files.
|
||||
@end quotation
|
||||
|
||||
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
|
||||
@samp{guix pull}.
|
||||
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}.
|
||||
|
||||
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
|
||||
sudo apt install guix
|
||||
@end example
|
||||
|
||||
Likewise, on openSUSE:
|
||||
|
||||
@example
|
||||
sudo zypper install guix
|
||||
@end example
|
||||
|
||||
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
|
||||
|
||||
For other package managers with a @var{guix} package, you should be able
|
||||
to install it like any other package.
|
||||
|
||||
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
|
||||
@@ -920,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
|
||||
@@ -1030,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.
|
||||
|
||||
@@ -1099,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:
|
||||
@@ -1530,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}
|
||||
@@ -8737,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
|
||||
@@ -13304,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
|
||||
@@ -13582,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
|
||||
@@ -18943,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
|
||||
@@ -18974,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
|
||||
@@ -19897,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
|
||||
@@ -24877,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
|
||||
@@ -26389,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}
|
||||
@@ -28375,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
|
||||
|
||||
@@ -43200,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
|
||||
@@ -45622,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
|
||||
@@ -46283,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
|
||||
|
||||
@@ -48038,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.
|
||||
@@ -49481,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
|
||||
@@ -54964,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
|
||||
|
||||
@@ -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
|
||||
# explicitely 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
-101
@@ -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,11 +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
|
||||
PUBLIC_KEYSERVERS="keys.openpgp.org pgpkeys.eu keyserver.ubuntu.com"
|
||||
GPG_SIGNING_KEYS[15145]=3CE464558A84FDC69DB40CFB090B11993D9AEBB5 # ludo
|
||||
GPG_SIGNING_KEYS[127547]=27D586A4F8900854329FF09F1260E46482E63562 # maxim
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
#+UTILITIES
|
||||
@@ -205,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
|
||||
@@ -214,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
|
||||
@@ -777,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}"
|
||||
@@ -793,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"
|
||||
@@ -816,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
|
||||
@@ -915,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"
|
||||
@@ -1050,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
|
||||
@@ -1060,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
|
||||
@@ -1075,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
|
||||
@@ -1109,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,55 +42,10 @@
|
||||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(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
|
||||
@@ -99,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
|
||||
内核系列现已成为默认版本。")))
|
||||
|
||||
|
||||
+31
-37
@@ -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 '())
|
||||
@@ -666,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
|
||||
@@ -704,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")))
|
||||
@@ -741,7 +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/parallel.scm"
|
||||
"gnu/packages/rocm.scm"
|
||||
"gnu/packages/sycl.scm"
|
||||
"gnu/packages/tbb.scm"
|
||||
@@ -846,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"
|
||||
@@ -961,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"
|
||||
@@ -986,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
|
||||
@@ -1207,6 +1198,10 @@ the \"texlive\" importer."
|
||||
"jpoiret")
|
||||
installer)
|
||||
|
||||
(define-member (person "("
|
||||
"paren@disroot.org")
|
||||
)
|
||||
|
||||
(define-member (person "Simon Tournier"
|
||||
"zimon.toutoune@gmail.com"
|
||||
"zimoun")
|
||||
@@ -1267,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"
|
||||
@@ -1324,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"
|
||||
@@ -1336,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")
|
||||
@@ -1384,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"
|
||||
@@ -1401,20 +1409,6 @@ the \"texlive\" importer."
|
||||
"delitrem")
|
||||
beam)
|
||||
|
||||
(define-member (person "Nguyễn Gia Phong"
|
||||
"cnx@loang.net"
|
||||
"cnx")
|
||||
python)
|
||||
|
||||
(define-member (person "Lilah Tascheter"
|
||||
"lilah@lunabee.space"
|
||||
"tinystar")
|
||||
hare)
|
||||
|
||||
(define-member (person "FuncProgLinux"
|
||||
"softwarelibre@urutau-ltd.org"
|
||||
"FuncProgLinux")
|
||||
mate)
|
||||
|
||||
(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,412 +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
|
||||
;; overriden 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)
|
||||
(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)
|
||||
@@ -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"
|
||||
"--")
|
||||
|
||||
@@ -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,7 +27,7 @@
|
||||
str)
|
||||
|
||||
(define (kernel->configuration kernel dry-run?)
|
||||
(if (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,46 +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
|
||||
#: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))
|
||||
|
||||
+24
-38
@@ -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.
|
||||
#
|
||||
@@ -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 \
|
||||
@@ -376,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 \
|
||||
@@ -696,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 \
|
||||
@@ -758,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 \
|
||||
@@ -803,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 \
|
||||
@@ -994,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 \
|
||||
@@ -1087,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 \
|
||||
@@ -1141,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 \
|
||||
@@ -1202,7 +1199,6 @@ 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 \
|
||||
@@ -1217,7 +1213,6 @@ dist_patch_DATA = \
|
||||
%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 \
|
||||
@@ -1325,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 \
|
||||
@@ -1544,6 +1540,7 @@ dist_patch_DATA = \
|
||||
%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 \
|
||||
@@ -1595,7 +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-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 \
|
||||
@@ -1611,19 +1607,12 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-pointer-comparison.patch \
|
||||
%D%/packages/patches/icu4c-icu-22132-fix-vtimezone.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-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-wasi-workaround.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 \
|
||||
@@ -1633,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 \
|
||||
@@ -1645,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 \
|
||||
@@ -1681,8 +1673,6 @@ 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/libretro-dolphin-emu-data.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-gc-font-tool.patch \
|
||||
%D%/packages/patches/libretro-dolphin-emu-libusb-assert.patch \
|
||||
@@ -1886,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 \
|
||||
@@ -1975,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 \
|
||||
@@ -2017,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 \
|
||||
@@ -2056,7 +2048,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-clarabel-blas.patch \
|
||||
%D%/packages/patches/python-docrepr-fix-tests.patch \
|
||||
%D%/packages/patches/python-feedparser-missing-import.patch \
|
||||
%D%/packages/patches/python-gpg-setup-72.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 \
|
||||
@@ -2081,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 \
|
||||
@@ -2220,22 +2210,19 @@ dist_patch_DATA = \
|
||||
%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 \
|
||||
@@ -2263,7 +2250,6 @@ 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 \
|
||||
@@ -2290,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,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 \
|
||||
@@ -2414,7 +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/ungoogled-chromium-extension-search-path.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
|
||||
@@ -2489,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 \
|
||||
|
||||
@@ -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
|
||||
|
||||
+31
-99
@@ -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>
|
||||
@@ -78,7 +78,6 @@
|
||||
;;; 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>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -138,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)
|
||||
@@ -607,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"
|
||||
@@ -1075,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
|
||||
@@ -1084,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
|
||||
@@ -2526,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")
|
||||
@@ -3375,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
|
||||
@@ -3414,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)
|
||||
@@ -3423,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
|
||||
@@ -4499,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)
|
||||
@@ -4508,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")
|
||||
@@ -4718,7 +4686,7 @@ information tool.")
|
||||
(define-public fastfetch-minimal
|
||||
(package
|
||||
(name "fastfetch-minimal")
|
||||
(version "2.56.1")
|
||||
(version "2.55.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4727,7 +4695,7 @@ information tool.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "065hqlw9vjs12vb4rqnwmjg8llpqw5ian0jnxldlv16gs5lw914n"))
|
||||
(base32 "0a2a8rp75nx16gvq0918999hifr2lph8dagpfipmyflaa5awlw54"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
(delete-file-recursively "src/3rdparty")))))
|
||||
@@ -4774,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
|
||||
@@ -4981,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
|
||||
@@ -5203,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)
|
||||
@@ -5212,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
|
||||
@@ -5589,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)
|
||||
@@ -5598,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
|
||||
@@ -6953,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)
|
||||
@@ -6999,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))
|
||||
|
||||
@@ -300,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
|
||||
|
||||
+11
-18
@@ -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
|
||||
|
||||
+118
-128
@@ -983,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)
|
||||
@@ -992,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.")
|
||||
@@ -1308,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
|
||||
|
||||
+168
-320
File diff suppressed because it is too large
Load Diff
+32
-76
@@ -1224,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)
|
||||
@@ -1233,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
|
||||
@@ -3635,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.
|
||||
@@ -3824,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
|
||||
@@ -4663,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
|
||||
@@ -6203,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"))
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
+32
-91
@@ -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>
|
||||
@@ -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
|
||||
|
||||
+138
-102
@@ -8,7 +8,7 @@
|
||||
;;; Copyright © 2016, 2020, 2022 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2016, 2018 Raoul Bonnal <ilpuccio.febo@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2021, 2022, 2024–2026 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2017, 2021, 2022, 2024, 2025 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2018-2024 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
|
||||
@@ -6104,7 +6104,7 @@ UCSC genome browser.")
|
||||
(define-public tetoolkit
|
||||
(package
|
||||
(name "tetoolkit")
|
||||
(version "2.2.3")
|
||||
(version "2.2.1b")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -6113,11 +6113,10 @@ UCSC genome browser.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1jgwnm1kmj2mgvc3gib6d73rvyy3l54icjcj2gw0p1ay6kqkzs0p"))))
|
||||
(base32 "1m3xsydakhdan9gp9mfdz7llka5g6ak91d0mbl1cmmxq9qs6an4y"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no tests
|
||||
#:phases (modify-phases %standard-phases
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'adjust-requirements
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
@@ -6164,7 +6163,7 @@ UCSC genome browser.")
|
||||
python-pysam
|
||||
r-minimal
|
||||
r-deseq2))
|
||||
(native-inputs (list python-setuptools))
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(home-page "https://github.com/mhammell-laboratory/TEtranscripts")
|
||||
(synopsis "Transposable elements in differential enrichment analysis")
|
||||
(description
|
||||
@@ -8448,7 +8447,7 @@ FLASH is used to merge RNA-seq data.")
|
||||
(define-public flexbar
|
||||
(package
|
||||
(name "flexbar")
|
||||
(version "3.5.0")
|
||||
(version "3.4.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -8457,24 +8456,25 @@ FLASH is used to merge RNA-seq data.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1w0c592wmi3xin2wlb9vmxp7f8f3s9nhl3y9ih4djrlfqyim70h9"))))
|
||||
"1pq9sxvdnldl14libk234m72dqhwgzs3acgl943wchwdqlcsi5r2"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-tune-to-CPU
|
||||
(lambda _
|
||||
(substitute* "src/CMakeLists.txt"
|
||||
((" -march=native") ""))))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "PATH" (string-append (getcwd) ":" (getenv "PATH")))
|
||||
(with-directory-excursion "../source/test"
|
||||
(invoke "bash" "flexbar_test.sh"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "flexbar" (string-append #$output "/bin/")))))))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-tune-to-CPU
|
||||
(lambda _
|
||||
(substitute* "src/CMakeLists.txt"
|
||||
((" -march=native") ""))))
|
||||
(replace 'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(setenv "PATH" (string-append (getcwd) ":" (getenv "PATH")))
|
||||
(with-directory-excursion "../source/test"
|
||||
(invoke "bash" "flexbar_test.sh"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (string-append (assoc-ref outputs "out")))
|
||||
(bin (string-append out "/bin/")))
|
||||
(install-file "flexbar" bin)))))))
|
||||
(inputs
|
||||
(list tbb-2020 zlib))
|
||||
(native-inputs
|
||||
@@ -9741,6 +9741,86 @@ command, or queried for specific k-mers with @code{jellyfish query}.")
|
||||
;; One of these licenses may be picked
|
||||
(license (list license:gpl3+ license:bsd-3))))
|
||||
|
||||
(define-public khmer
|
||||
(package
|
||||
(name "khmer")
|
||||
(version "3.0.0a3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dib-lab/khmer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01l4jczglkl7yfhgvzx8j0df7k54bk1r8sli9ll16i1mis0d8f37"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Delete bundled libraries. We do not replace the bundled seqan
|
||||
;; as it is a modified subset of the old version 1.4.1.
|
||||
;;
|
||||
;; We do not replace the bundled MurmurHash as the canonical
|
||||
;; repository for this code 'SMHasher' is unsuitable for providing
|
||||
;; a library. See
|
||||
;; https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00977.html
|
||||
(delete-file-recursively "third-party/zlib")
|
||||
(delete-file-recursively "third-party/bzip2")
|
||||
(delete-file-recursively "third-party/seqan")
|
||||
(substitute* "setup.cfg"
|
||||
(("# libraries = z,bz2")
|
||||
"libraries = z,bz2")
|
||||
(("include:third-party/zlib:third-party/bzip2")
|
||||
"include:"))
|
||||
;; Delete generated Cython CPP files.
|
||||
(for-each delete-file (find-files "khmer/_oxli/" "\\.cpp$"))))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-cc
|
||||
(lambda _ (setenv "CC" "gcc")))
|
||||
(add-after 'unpack 'python-3.8-compatibility
|
||||
(lambda _
|
||||
;; Python 3.8 removed time.clock().
|
||||
(substitute* "sandbox/sweep-reads.py"
|
||||
(("time\\.clock")
|
||||
"time.process_time"))))
|
||||
(add-after 'unpack 'do-use-cython
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("from setuptools import Extension as CyExtension")
|
||||
"from Cython.Distutils import Extension as CyExtension")
|
||||
(("from setuptools.command.build_ext import build_ext as _build_ext")
|
||||
"from Cython.Distutils import build_ext as _build_ext")
|
||||
(("HAS_CYTHON = False") "HAS_CYTHON = True")
|
||||
(("cy_ext = 'cpp'") "cy_ext = 'pyx'"))))
|
||||
(add-before 'build 'build-extensions
|
||||
(lambda _
|
||||
;; Cython extensions have to be built before running the tests.
|
||||
(invoke "python" "setup.py" "build_ext" "--inplace")))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
|
||||
(when tests?
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "pytest" "-v")))))))
|
||||
(native-inputs
|
||||
(list python-cython python-pytest python-pytest-runner))
|
||||
(inputs
|
||||
(list zlib bzip2 seqan-1 python-screed python-bz2file))
|
||||
(home-page "https://khmer.readthedocs.org/")
|
||||
(synopsis "K-mer counting, filtering and graph traversal library")
|
||||
(description "The khmer software is a set of command-line tools for
|
||||
working with DNA shotgun sequencing data from genomes, transcriptomes,
|
||||
metagenomes and single cells. Khmer can make de novo assemblies faster, and
|
||||
sometimes better. Khmer can also identify and fix problems with shotgun
|
||||
data.")
|
||||
;; When building on i686, armhf and mips64el, we get the following error:
|
||||
;; error: ['khmer', 'khmer.tests', 'oxli'] require 64-bit operating system
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux"))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public kaiju
|
||||
(package
|
||||
(name "kaiju")
|
||||
@@ -16037,7 +16117,6 @@ programs for inferring phylogenies (evolutionary trees).")
|
||||
"DEFAULT_VECTOR_FLAG=\"-march=athlon64-sse3\"\n"))))
|
||||
(add-after 'build 'build-manual
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp/")
|
||||
(with-directory-excursion "doc"
|
||||
(invoke "make" "phyml-manual.pdf"))))
|
||||
(add-after 'build-manual 'install-manual
|
||||
@@ -16059,7 +16138,6 @@ programs for inferring phylogenies (evolutionary trees).")
|
||||
(texlive-local-tree
|
||||
(list texlive-caption
|
||||
texlive-cite
|
||||
texlive-ec
|
||||
texlive-fancyvrb
|
||||
texlive-infwarerr
|
||||
texlive-kvoptions
|
||||
@@ -16163,11 +16241,9 @@ applications for tackling some common problems in a user-friendly way.")
|
||||
(sha256
|
||||
(base32
|
||||
"07q0alxah6xl1hibaj1kj7pdzq3pg6csyapsihbwlbmqyfmllbgz"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'custom
|
||||
#:test-flags #~(list "test/test_all.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Scipy 1.12 no longer has binom_test or polyfit
|
||||
@@ -16196,12 +16272,15 @@ applications for tackling some common problems in a user-friendly way.")
|
||||
(string-append "(\"" #$output
|
||||
"/etc/bash_completion.d\""))
|
||||
(("extras/\\.bash_completion")
|
||||
"extras/tadbit")))))))
|
||||
"extras/tadbit"))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "python3" "test/test_all.py")))))))
|
||||
(native-inputs
|
||||
(list `(,glib "bin") ;for gtester
|
||||
glib
|
||||
pkg-config
|
||||
python-setuptools))
|
||||
pkg-config))
|
||||
(inputs
|
||||
;; TODO: add Chimera for visualization
|
||||
(list imp
|
||||
@@ -18607,36 +18686,25 @@ cases include:
|
||||
|
||||
(define-public python-mappy
|
||||
(package
|
||||
(name "python-mappy")
|
||||
(version "2.24")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lh3/minimap2")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0k658659ivxk2xnyawrfqdhcji6a3xcqdr5a9r5myzb2ivypnjmh"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'custom
|
||||
#:test-flags
|
||||
#~(list "-c" (string-append "import mappy;"
|
||||
" print(mappy.revcomp("
|
||||
"mappy.Aligner('test/MT-human.fa')"
|
||||
".seq('MT_human', 100, 200)))"))))
|
||||
(native-inputs
|
||||
(list python-cython python-setuptools))
|
||||
(inputs
|
||||
(list zlib))
|
||||
(home-page "https://github.com/lh3/minimap2")
|
||||
(synopsis "Python binding for minimap2")
|
||||
(description "This package provides a convenient interface to minimap2,
|
||||
(name "python-mappy")
|
||||
(version "2.24")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mappy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ycszza87p9qvx8mis9v1hry0ac465x1xcxbsn1k45qlxxrzp8im"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
(list python-cython))
|
||||
(inputs
|
||||
(list zlib))
|
||||
(home-page "https://github.com/lh3/minimap2")
|
||||
(synopsis "Python binding for minimap2")
|
||||
(description "This package provides a convenient interface to minimap2,
|
||||
a fast and accurate C program to align genomic and transcribe nucleotide
|
||||
sequences.")
|
||||
(license license:expat)))
|
||||
(license license:expat)))
|
||||
|
||||
(define-public miniasm
|
||||
(package
|
||||
@@ -20032,7 +20100,7 @@ allowing the insertion of arbitrary types into the tree.")
|
||||
(define-public python-pypairix
|
||||
(package
|
||||
(name "python-pypairix")
|
||||
(version "0.3.9")
|
||||
(version "0.3.8")
|
||||
;; The tarball on pypi does not include the makefile to build the
|
||||
;; programs.
|
||||
(source
|
||||
@@ -20045,7 +20113,7 @@ allowing the insertion of arbitrary types into the tree.")
|
||||
(sha256
|
||||
(base32
|
||||
"1jlxj3xa67q1i58pmbi6imhvl6f5w9m5qxv0xd45ba86mp8mnmvz"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
@@ -20061,9 +20129,6 @@ allowing the insertion of arbitrary types into the tree.")
|
||||
(add-after 'install 'install-programs
|
||||
(lambda _
|
||||
(copy-recursively "bin" (string-append #$output "/bin")))))))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list zlib))
|
||||
(home-page "https://github.com/4dn-dcic/pairix")
|
||||
@@ -20981,24 +21046,15 @@ polymorphisms) and indels with respect to a reference genome and more.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/etal/cnvkit")
|
||||
(commit (string-append "v" version))))
|
||||
(url "https://github.com/etal/cnvkit")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "090yh17symcahddx399kcx0mcw4gdrcc2jil3p8lb92r8c8kglb5"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 70 passed, 1 warning
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-pytest-config
|
||||
(lambda _
|
||||
(substitute* "pyproject.toml"
|
||||
(("filterwarnings =.*")
|
||||
"")))))))
|
||||
(propagated-inputs
|
||||
(list python-biopython
|
||||
python-future
|
||||
python-matplotlib
|
||||
python-numpy
|
||||
python-pandas
|
||||
@@ -21144,8 +21200,7 @@ to an artifact/contaminant file.")
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags #~(list "OPENMP=t"
|
||||
"CFLAGS=-Wall -Wno-error=incompatible-pointer-types")
|
||||
#:make-flags #~(list "OPENMP=t")
|
||||
#:test-target "test"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
@@ -21154,11 +21209,6 @@ to an artifact/contaminant file.")
|
||||
(lambda _
|
||||
(substitute* "src/binarySequences.c"
|
||||
(("../third-party/zlib-1.2.3/zlib.h") "zlib.h"))))
|
||||
(add-before 'build 'set-home-env
|
||||
(lambda _
|
||||
;; TeXLive requires HOME to be set.
|
||||
;; Permission denied: '/homeless-shelter'
|
||||
(setenv "HOME" "/tmp")))
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(let ((bin (string-append #$output "/bin"))
|
||||
@@ -21173,8 +21223,7 @@ to an artifact/contaminant file.")
|
||||
(list openmpi zlib))
|
||||
(native-inputs
|
||||
(list (texlive-local-tree
|
||||
(list texlive-ec
|
||||
texlive-infwarerr
|
||||
(list texlive-infwarerr
|
||||
texlive-kvoptions
|
||||
texlive-pdftexcmds))))
|
||||
(home-page "https://www.ebi.ac.uk/~zerbino/velvet/")
|
||||
@@ -23853,9 +23902,7 @@ instruments, or Pacific Biosciences RSII or Sequel sequencers.")
|
||||
(sha256
|
||||
(base32
|
||||
"1z1gy8n56lhriy6hdkh9r82ndikndipq2cy2wh8q185qig4rimr6"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools))
|
||||
(arguments (list #:tests? #f)) ;No tests on either PyPI or Git.
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
(list curl zlib))
|
||||
(propagated-inputs
|
||||
@@ -24735,7 +24782,7 @@ single-cell data named @url{https://github.com/PMBio/cardelino, cardelino}.")
|
||||
(define-public ccwl
|
||||
(package
|
||||
(name "ccwl")
|
||||
(version "0.5.0")
|
||||
(version "0.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -24743,7 +24790,7 @@ single-cell data named @url{https://github.com/PMBio/cardelino, cardelino}.")
|
||||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pna61cqhhg69qpa682x911x85nlin1wpp29naqzq3r0s951qxi6"))))
|
||||
"1vnkj34400kj77xavdr0cry0vm2fmk40vf7cwca61q3jl3h7hl2c"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ; to prevent guild warnings
|
||||
@@ -24778,7 +24825,6 @@ single-cell data named @url{https://github.com/PMBio/cardelino, cardelino}.")
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
lzip
|
||||
guile-run64
|
||||
;; To build documentation
|
||||
cwltool
|
||||
graphviz
|
||||
@@ -24810,17 +24856,7 @@ language.")
|
||||
(snippet
|
||||
'(delete-file-recursively "lib/simde"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #false ;no test target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-gcc-14
|
||||
(lambda _
|
||||
(substitute* "src/a3m_compress.h"
|
||||
(("#include <climits>")
|
||||
"#include <climits>
|
||||
#include <cstdint>")))))))
|
||||
(arguments '(#:tests? #false)) ;no test target
|
||||
(inputs
|
||||
(list openmpi simde))
|
||||
(native-inputs
|
||||
|
||||
+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")
|
||||
|
||||
@@ -159,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")
|
||||
@@ -335,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)
|
||||
@@ -344,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
|
||||
@@ -358,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.
|
||||
|
||||
+1
-16
@@ -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")
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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>
|
||||
@@ -100,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")
|
||||
|
||||
+20
-24
@@ -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>
|
||||
@@ -51,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,7 +72,6 @@
|
||||
#:use-module (gnu packages ncurses)
|
||||
#: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)
|
||||
@@ -468,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
|
||||
@@ -1466,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))
|
||||
@@ -1479,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))
|
||||
@@ -1706,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)
|
||||
@@ -1715,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,
|
||||
|
||||
+92
-64
@@ -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)
|
||||
@@ -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")
|
||||
@@ -3153,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")
|
||||
@@ -3433,50 +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"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-Dsupport_double=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")
|
||||
@@ -3768,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")
|
||||
|
||||
@@ -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="
|
||||
|
||||
+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")
|
||||
|
||||
@@ -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
|
||||
|
||||
+9
-113
@@ -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)
|
||||
@@ -127,7 +125,6 @@
|
||||
#: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)
|
||||
@@ -950,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
|
||||
@@ -961,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
|
||||
@@ -985,7 +982,7 @@ utilities used across the hypr* ecosystem.")
|
||||
(define-public hyprlang
|
||||
(package
|
||||
(name "hyprlang")
|
||||
(version "0.6.7")
|
||||
(version "0.6.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -994,7 +991,7 @@ utilities used across the hypr* ecosystem.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0n64jq9jdabyx76sax0fb45jg92708488733c2m6zsf84r6nv2g7"))))
|
||||
"13lqlwrpcd3gs5xw51sj1zx2w7kvsywvgdal81dp841rpph91z00"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1019,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
|
||||
@@ -1028,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
|
||||
@@ -1051,102 +1048,6 @@ language used in Hyprland.")
|
||||
ecosystem.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hyprtoolkit
|
||||
(package
|
||||
(name "hyprtoolkit")
|
||||
(version "0.5.2")
|
||||
(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
|
||||
"1lyc5mmk7i83q3rq11yyggwxpcx3kmav3hg3ss1xl723v27cnj80"))))
|
||||
(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)
|
||||
@@ -2572,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
|
||||
|
||||
+27
-92
@@ -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>
|
||||
@@ -50,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)
|
||||
@@ -521,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
|
||||
@@ -795,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++")
|
||||
@@ -1581,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)
|
||||
@@ -1589,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.
|
||||
@@ -1644,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
|
||||
@@ -1714,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")
|
||||
|
||||
+209
-262
@@ -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)
|
||||
@@ -2159,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")
|
||||
@@ -3736,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
|
||||
@@ -4366,53 +4338,26 @@ framework.")
|
||||
(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
|
||||
@@ -4514,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
|
||||
@@ -4680,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
|
||||
@@ -4723,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/")
|
||||
@@ -4779,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
|
||||
@@ -4899,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/")
|
||||
@@ -5224,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
|
||||
@@ -5498,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
|
||||
@@ -5512,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
|
||||
@@ -5555,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")
|
||||
@@ -5642,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
|
||||
@@ -5861,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")
|
||||
@@ -5985,7 +5933,6 @@ a Gtk.Grid Widget.")
|
||||
qhexedit
|
||||
qscintilla
|
||||
qtbase-5
|
||||
qtwayland-5
|
||||
sqlite))
|
||||
(native-inputs (list qttools-5))
|
||||
(home-page "https://sqlitebrowser.org/")
|
||||
@@ -6000,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)
|
||||
@@ -6009,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
|
||||
|
||||
+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.
|
||||
|
||||
@@ -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,
|
||||
|
||||
+19
-26
@@ -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
|
||||
|
||||
+6
-12
@@ -302,13 +302,13 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
|
||||
(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,16 +695,16 @@ them do this.")
|
||||
(define-public python-django-allauth
|
||||
(package
|
||||
(name "python-django-allauth")
|
||||
(version "65.9.0")
|
||||
(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 "03a7175748533rw6h3grfpv86i3qb31ixw0kb2kj90gc77sh1sw2"))))
|
||||
(base32 "1k5b3x7pdysb21vbqx7pxi9cm72yj057mm1clg19ymiqj4kq8yfl"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -740,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,
|
||||
@@ -2061,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))
|
||||
|
||||
+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
|
||||
|
||||
@@ -581,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"
|
||||
|
||||
+5
-13
@@ -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,23 +120,18 @@
|
||||
(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
|
||||
@@ -441,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)))
|
||||
|
||||
+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
|
||||
|
||||
+95
-595
@@ -2,12 +2,11 @@
|
||||
;;; Copyright © 2016, 2017, 2018 Theodoros Foradis <theodoros@foradis.org>
|
||||
;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2021, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2024 Juliana Sims <juli@incana.org>
|
||||
;;; Copyright © 2025, 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com>
|
||||
;;; Copyright © 2015-2025 Ricardo Wurmus <rekado@elephly.net>
|
||||
@@ -27,8 +26,6 @@
|
||||
;;; Copyright © 2020, 2023 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2025, 2026 Gabriel Wicki <gabriel@erlikon.ch>
|
||||
;;; Copyright © 2026 Thomas Kramer <thomas@f-si.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -73,7 +70,6 @@
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages engineering)
|
||||
@@ -93,8 +89,6 @@
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages libedit)
|
||||
#:use-module (gnu packages libffi)
|
||||
#:use-module (gnu packages libftdi)
|
||||
@@ -213,8 +207,8 @@ are also taken from the original.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public abc
|
||||
(let ((commit "c18b9a24de46d3b0209afa416511b7a1127344f9")
|
||||
(revision "9"))
|
||||
(let ((commit "c8eac7595d094dd45402133497d645fb74e545f0")
|
||||
(revision "7"))
|
||||
(package
|
||||
(name "abc")
|
||||
(version (git-version "0.0" revision commit))
|
||||
@@ -226,7 +220,7 @@ are also taken from the original.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"12fjhlr9r34l6kw2jyaalh53fs783r1h2zx0ldzaxxrbcslb0bxh"))))
|
||||
"14k2j54fwr2a3nmb637fclzdf22a16jw5fsmhr3cf42yd924yn71"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list readline))
|
||||
@@ -251,7 +245,7 @@ formal verification.")
|
||||
(package
|
||||
(inherit abc)
|
||||
(name "abc-yosyshq")
|
||||
(version "0.61")
|
||||
(version "0.60")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -260,7 +254,7 @@ formal verification.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x6662719qdybkd46vh9aq3p20xngwn9g81155j96a4r6jdqm1js"))))
|
||||
"0yays5yznwm1mngda78w465l9djw4128hgn24lf76gzripkpsz92"))))
|
||||
(home-page "https://github.com/YosysHQ/abc/")
|
||||
(description "ABC is a program for sequential logic synthesis and
|
||||
formal verification. This is the Yosyshq fork of ABC.")
|
||||
@@ -523,62 +517,6 @@ as well as pick-place files.")
|
||||
(properties '((lint-hidden-cve . ("CVE-2023-4508"))))
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gnucap
|
||||
(package
|
||||
(name "gnucap")
|
||||
(version "20171003")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://git.savannah.gnu.org/cgit/gnucap.git/snapshot/gnucap-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16m09xa685qhj5fqq3bcgakrwnb74xhf5f7rpqkkf9fg8plzbb1g"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
;; Set correct rpath so that gnucap finds libgnucap.so.
|
||||
(substitute* (list "apps/configure" "lib/configure"
|
||||
"main/configure" "modelgen/configure")
|
||||
(("LDFLAGS =")
|
||||
(string-append "LDFLAGS = -Wl,-rpath=" #$output "/lib")))
|
||||
;; gnucap uses a hand-written configure script that expects the
|
||||
;; --prefix argument to be the first argument passed to it.
|
||||
(invoke "./configure" (string-append "--prefix=" #$output))))
|
||||
(replace 'check
|
||||
;; Attention: As discussed, a failing test in gnucap does not mean
|
||||
;; the build process has failed. Therefor we ignore, but still
|
||||
;; display the result of gnucap's test evaluation.
|
||||
;; https://codeberg.org/guix/guix/issues/5469#issuecomment-9695825
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((libpath "../lib/O:../apps/O"))
|
||||
(with-directory-excursion "tests"
|
||||
;; Fix expected plugin search path for test c_attach.1.gc
|
||||
(substitute* "==out/c_attach.1.gc.out"
|
||||
(("/usr/local/lib/gnucap")
|
||||
(string-append libpath ":" #$output "/lib/gnucap")))
|
||||
;; Set library path so that gnucap can find libgnucap.so
|
||||
;; while running the tests.
|
||||
(setenv "LD_LIBRARY_PATH" libpath)
|
||||
(invoke "./test"
|
||||
"../main/O/gnucap" "" "test-output"
|
||||
"==out")))))))))
|
||||
(inputs (list readline))
|
||||
(home-page "https://www.gnu.org/software/gnucap/")
|
||||
(synopsis "Mixed analog and digital circuit simulator")
|
||||
(description "GNUcap is a circuit analysis package used for @acronym{EDA,
|
||||
Electronic Design Automation}. It offers a general purpose circuit simulator
|
||||
and can perform DC and transient analyses, fourier analysis and AC analysis.
|
||||
The engine is designed to do true mixed-mode simulation.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gtkwave
|
||||
;; The last release is more than 2 years old, and there are improvements in
|
||||
;; the master branch, such as GTK 4 support: pick the latest commit that
|
||||
@@ -799,158 +737,6 @@ used in the declarative section of design units.")
|
||||
(native-inputs
|
||||
'()))))
|
||||
|
||||
(define-public klayout
|
||||
(package
|
||||
(name "klayout")
|
||||
(version "0.30.5")
|
||||
(source
|
||||
(origin (method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/KLayout/klayout")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ixl8wzpiaw6frb28x9y9jy3fvhjclmn4xl77i72rs37rf4i2a2s"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-plan
|
||||
#~'(("output/klayout" "bin/")
|
||||
("output/" "bin/" #:include-regexp ("strm.*"))
|
||||
("output/" "lib/" #:include-regexp ("lib.*\\.so.*"))
|
||||
("output/pymod" "lib/"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'install 'patch-build-script ;; ensure reproducibility
|
||||
(lambda _
|
||||
(substitute* "build.sh"
|
||||
(("KLAYOUT_VERSION_DATE=\"\\$KLAYOUT_VERSION_DATE\"")
|
||||
"KLAYOUT_VERSION_DATE=1970-01-01"))))
|
||||
(add-after 'patch-build-script 'disable-failing-tests
|
||||
(lambda _
|
||||
(substitute* "src/tl/unit_tests/unit_tests.pro"
|
||||
;; These need internet connection.
|
||||
((" tlWebDAVTests\\.cc")
|
||||
"# tlWebDAVTests.cc \\")
|
||||
((" tlGitTests\\.cc")
|
||||
"# tlGitTests.cc \\")
|
||||
((" tlHttpStreamTests\\.cc")
|
||||
"# tlHttpStreamTests.cc \\")
|
||||
;; The threaded tests are reportedly flaky.
|
||||
((" tlThreadedWorkersTests\\.cc")
|
||||
"# tlThreadedWorkersTests\\.cc \\"))
|
||||
(substitute* "src/rba/rba.pro"
|
||||
;; There are issues of non-detereminism involved with Ruby's GC
|
||||
;; implementation. https://github.com/KLayout/klayout/issues/2251
|
||||
(("SUBDIRS = rba unit_tests")
|
||||
"SUBDIRS = rba")
|
||||
(("unit_tests.depends += rba")
|
||||
""))))
|
||||
(add-after 'disable-failing-tests 'build
|
||||
(lambda _
|
||||
(invoke "bash" "build.sh"
|
||||
"-prefix" "output"
|
||||
"-option"
|
||||
(string-append "-j" (number->string (parallel-job-count))))))
|
||||
(add-after 'install 'patch-elfs
|
||||
(lambda _
|
||||
(let* ((lib (string-append #$output "/lib"))
|
||||
(layout-lib (string-append lib "/lay_plugins"))
|
||||
(db-lib (string-append lib "/db_plugins"))
|
||||
(bin (string-append #$output "/bin"))
|
||||
(executables (filter executable-file? (find-files #$output)))
|
||||
(ut-runner "build-release/ut_runner")
|
||||
(unit-tests (cons* ut-runner
|
||||
(find-files "build-release" "\\.ut")))
|
||||
(patchem (lambda (elf)
|
||||
(when (not (string-suffix? ".py" elf))
|
||||
(invoke "patchelf" "--add-rpath" lib elf)
|
||||
(invoke "patchelf" "--add-rpath" layout-lib elf)
|
||||
(invoke "patchelf" "--add-rpath" db-lib elf)))))
|
||||
(map patchem executables)
|
||||
(map patchem unit-tests)
|
||||
(patchem ut-runner))))
|
||||
(add-after 'patch-elfs 'check-after-install
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "build-release"
|
||||
(mkdir "testtmp")
|
||||
(setenv "TESTTMP" "testtmp")
|
||||
(setenv "TESTSRC" "..")
|
||||
(setenv "LD_LIBRARY_PATH" ".")
|
||||
(setenv "QT_QPA_PLATFORM" "offscreen")
|
||||
(setenv "HOME" "/tmp/home") ;; Fontconfig needs a writable cache.
|
||||
(invoke "./ut_runner"))))))))
|
||||
(native-inputs (list perl python qtsvg ruby tcl))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
libgit2
|
||||
patchelf
|
||||
qt5compat
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtsvg
|
||||
qttools))
|
||||
(home-page "https://www.klayout.de")
|
||||
(synopsis "Mask layout editor")
|
||||
(description "KLayout is @acronym{EDA, Electronic Design Automation}
|
||||
software. It is a scriptable @acronym{VLSI, Very Large Scale Integration}
|
||||
layout editor used for visualizing and editing mask data, transcoding between
|
||||
different file formats (GDSII and OASIS), executing @acronym{DRC, Design rule
|
||||
checking}, @acronym{LVS, Layout Versus Schematic} verification, and drawing of
|
||||
chip cross-sections basked on mask data.")
|
||||
;; The license version will be clarified with the next version bump.
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public lctime
|
||||
(package
|
||||
(name "lctime")
|
||||
(version "0.0.28")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/librecell/lctime")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "18s7by4ndxxha1yr6sns389smgrz9df5sgqwvvxcw8wwv8v7mpjd"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-ngspice-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/lctime/characterization/ngspice_subprocess.py"
|
||||
(("= 'ngspice'")
|
||||
(format #f "= ~s"
|
||||
(search-input-file inputs "bin/ngspice"))))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "bash" "./run_tests.sh")))))))
|
||||
(inputs (list ngspice
|
||||
pyspice
|
||||
python-joblib
|
||||
python-klayout
|
||||
python-liberty-parser
|
||||
python-networkx
|
||||
python-numpy
|
||||
python-ply
|
||||
python-requests
|
||||
python-scipy
|
||||
python-sympy))
|
||||
(native-inputs (list bash-minimal python-pytest python-setuptools))
|
||||
(home-page "https://codeberg.org/librecell/lctime")
|
||||
(synopsis "CMOS standard-cell characterization tool")
|
||||
(description
|
||||
"lctime extracts timing and power characteristics of CMOS standard-cells.
|
||||
It simulates the netlists of the cells with ngspice and writes the
|
||||
characterization result in a liberty library file.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public libngspice
|
||||
;; Note: The ngspice's build system does not allow us to build both the
|
||||
;; library and the executables in one go. Thus, we have two packages.
|
||||
@@ -1604,7 +1390,7 @@ understand and improve testbench coverage.")
|
||||
(define-public openboardview
|
||||
(package
|
||||
(name "openboardview")
|
||||
(version "9.95.2")
|
||||
(version "9.95.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1626,7 +1412,7 @@ understand and improve testbench coverage.")
|
||||
"openboardview-use-system-mpc.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gkl91rcbwiapllxw5chwgzjq2p076h9bpp3nbh13mb2v3wc6qwa"))))
|
||||
"1safjd729a7591rigkiy3c678bivrj5q1qwg1f18sijhlsfkf5b3"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1665,14 +1451,16 @@ understand and improve testbench coverage.")
|
||||
(assoc-ref gtk:%standard-phases 'glib-or-gtk-wrap)))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
python-minimal-wrapper
|
||||
python
|
||||
glad-0.1
|
||||
stb-image
|
||||
utf8-h))
|
||||
(inputs
|
||||
(list fontconfig
|
||||
gtk+
|
||||
imgui
|
||||
;; OpenBoardView can build with Dear ImGui 1.88, but there are some
|
||||
;; usability problems such as the difficulty to register clicks.
|
||||
imgui-1.87
|
||||
orangeduck-mpc
|
||||
sdl2
|
||||
sqlite
|
||||
@@ -1963,40 +1751,33 @@ GUI for sigrok.")
|
||||
(sha256
|
||||
(base32 "1dq56h51ydfpffd00qz9qkcg6sddlqixiixls9vvxczfkp9l21ws"))))
|
||||
(outputs
|
||||
'("out" "osvvm"))
|
||||
'("out" "common" "scripts" "uart" "axi4"))
|
||||
(properties
|
||||
`((output-synopsis "out" "Instance this design library as work")
|
||||
(output-synopsis "osvvm" "Instance this design library as osvvm")))
|
||||
`((output-synopsis "out" "Verification Utility Library")
|
||||
(output-synopsis "common" "Common library")
|
||||
(output-synopsis "scripts" "Simulator script library")
|
||||
(output-synopsis "uart" "UART Verification Component Library")
|
||||
(output-synopsis "axi4" "AXI4 Verification Component Library")))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-plan
|
||||
#~'(;; Library work.
|
||||
("osvvm" "share/osvvm/work/osvvm/"
|
||||
#:include ("vhd" "pro" "md"))
|
||||
("Common" "share/osvvm/work/Common/"
|
||||
#:include ("vhd" "pro" "md"))
|
||||
("Scripts" "share/osvvm/work/Scripts/"
|
||||
#:include ("tcl" "md"))
|
||||
("UART" "share/osvvm/work/UART"
|
||||
#~'(("osvvm" "share/osvvm/osvvm/"
|
||||
#:include ("vhd" "pro" "md")
|
||||
#:exclude-regexp ("GHDL_Debug"))
|
||||
("AXI4" "share/osvvm/work/AXI4"
|
||||
#:include ("vhd" "pro" "md"))
|
||||
;; Library osvvm.
|
||||
("osvvm" "share/osvvm/osvvm/osvvm/"
|
||||
#:include ("vhd" "pro" "md") #:output "osvvm")
|
||||
("Common" "share/osvvm/osvvm/Common/"
|
||||
#:include ("vhd" "pro" "md") #:output "osvvm")
|
||||
("Scripts" "share/osvvm/osvvm/Scripts/"
|
||||
#:include ("tcl" "md") #:output "osvvm")
|
||||
("UART" "share/osvvm/osvvm/UART"
|
||||
#:output "out")
|
||||
("Common" "share/osvvm/Common/"
|
||||
#:include ("vhd" "pro" "md")
|
||||
#:output "common")
|
||||
("Scripts" "share/osvvm/Scripts/"
|
||||
#:include ("tcl" "md")
|
||||
#:output "scripts")
|
||||
("UART" "share/osvvm/UART"
|
||||
#:include ("vhd" "pro" "md")
|
||||
#:exclude-regexp ("GHDL_Debug")
|
||||
#:output "osvvm")
|
||||
("AXI4" "share/osvvm/osvvm/AXI4"
|
||||
#:output "uart")
|
||||
("AXI4" "share/osvvm/AXI4"
|
||||
#:include ("vhd" "pro" "md")
|
||||
#:output "osvvm"))
|
||||
#:output "axi4"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'install 'fix-scripts
|
||||
@@ -2017,7 +1798,7 @@ GUI for sigrok.")
|
||||
(list nvc tcl tcllib which))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "FW_OSVVM")
|
||||
(variable "OSVVM")
|
||||
(separator #f)
|
||||
(files (list "share/osvvm")))))
|
||||
(home-page "https://osvvm.github.io/Overview/Osvvm1About.html/")
|
||||
@@ -2031,7 +1812,7 @@ verification.")
|
||||
(define-public open-logic
|
||||
(package
|
||||
(name "open-logic")
|
||||
(version "4.2.0")
|
||||
(version "4.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2043,24 +1824,20 @@ verification.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1792a6i9jq2yawipmk0nr01z092kx3kkav9v5sjf34khk3biav6q"))))
|
||||
"0azapw9dyr5l5qal7qd409lyq0w6pw2wyjwvxfl44sykpbfxdl2x"))))
|
||||
(outputs
|
||||
'("out" "olo"))
|
||||
'("out" "test"))
|
||||
(properties
|
||||
`((output-synopsis "out" "Instance this design library as work")
|
||||
(output-synopsis "olo" "Instance this design library as olo")))
|
||||
`((output-synopsis "test" "Testing code")
|
||||
(output-synopsis "out" "Source code")))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key tests? inputs #:allow-other-keys)
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "3rdParty/en_cl_fix/sim"
|
||||
(invoke "python3" "run.py" "--simulator" "nvc"
|
||||
"--simulator-path"
|
||||
(dirname (search-input-file inputs "bin/nvc"))))
|
||||
(with-directory-excursion "sim"
|
||||
(substitute* "run.py"
|
||||
;; This is required to comply with current VUnit, see:
|
||||
@@ -2069,21 +1846,14 @@ verification.")
|
||||
""))
|
||||
(invoke "python3" "run.py" "--nvc" "-v"))))))
|
||||
#:install-plan
|
||||
#~'(;; Library work.
|
||||
("src" "share/open-logic/work/src"
|
||||
#:include ("vhd"))
|
||||
("3rdParty" "share/open-logic/work/3rdParty"
|
||||
#:include ("vhd"))
|
||||
;; Library olo.
|
||||
("src" "share/open-logic/olo/src"
|
||||
#:include ("vhd") #:output "olo")
|
||||
("3rdParty" "share/open-logic/olo/3rdParty"
|
||||
#:include ("vhd") #:output "olo"))))
|
||||
#~'(("src" "share/open-logic/src" #:exclude-regexp ("core"))
|
||||
("3rdParty" "share/open-logic/3rdParty")
|
||||
("test" "share/open-logic/test" #:output "test"))))
|
||||
(native-inputs
|
||||
(list nvc python-matplotlib python-minimal python-vunit))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "FW_OPEN_LOGIC")
|
||||
(variable "OPEN_LOGIC")
|
||||
(separator #f)
|
||||
(files (list "share/open-logic")))))
|
||||
(home-page "https://github.com/open-logic/open-logic/")
|
||||
@@ -2151,6 +1921,7 @@ reusable and vendor/tool-independent way. It is written following the VHDL
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list libngspice
|
||||
ngspice
|
||||
python-invoke
|
||||
python-matplotlib
|
||||
python-ply
|
||||
@@ -2203,228 +1974,6 @@ programming language, as well as evaluation board definitions and a System on
|
||||
Chip toolkit.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-klayout
|
||||
(package
|
||||
(name "python-klayout")
|
||||
(version "0.30.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/klayout/klayout")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "1ixl8wzpiaw6frb28x9y9jy3fvhjclmn4xl77i72rs37rf4i2a2s"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f))
|
||||
(native-inputs (list curl expat libpng python-setuptools python-tomli))
|
||||
(home-page "https://klayout.de")
|
||||
(synopsis "Mask layout library for Python")
|
||||
(description
|
||||
"python-klayout is a standalone Python API of KLayout.
|
||||
This library supports OASIS and GDS2 file formats,
|
||||
editing of mask layouts, and verification such as
|
||||
@acronym{DRC, Design rule checking} and @acronym{LVS, Layout Versus Schematic}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-liberty-parser
|
||||
(package
|
||||
(name "python-liberty-parser")
|
||||
(version "0.0.27")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/tok/liberty-parser")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "0x8spiy4sxjma3dxvynax8hbzyxl90bgws00cqxazy95wyfbngar"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-lark python-numpy python-sympy))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(home-page "https://codeberg.org/tok/liberty-parser")
|
||||
(synopsis "Parser for Liberty timing libraries")
|
||||
(description
|
||||
"The @code{liberty-parser} Python library provides a parser
|
||||
and data structures for the Liberty format,
|
||||
a standard file format used in @acronym{EDA, Electronic Design Automation}
|
||||
for example for timing information of digital circuits.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-hdlconvertorast
|
||||
(package
|
||||
(name "python-hdlconvertorast")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Nic30/hdlConvertorAst")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1zv067imbdihyqwy7f0j80x9a2857vifhky60vc91dffjl1zjg1i"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(home-page "https://github.com/Nic30/hdlConvertorAst")
|
||||
(synopsis "@acronym{AST, Abstract Syntax Tree} library for VHDL and
|
||||
SystemVerilog")
|
||||
(description
|
||||
"This package provides a library of @acronym{AST, Abstract Syntax Tree} nodes
|
||||
for @acronym{VHDL, Very high speed integrated circuit Hardware Description Language},
|
||||
SystemVerilog, and SystemC, with conversion between languages and to JSON.")
|
||||
(license license:expat)))
|
||||
|
||||
;; Yosys source pinned to hdlConvertor v2.3 submodule commit for parsing tests.
|
||||
(define yosys-src-for-hdlconvertor-tests
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/YosysHQ/yosys")
|
||||
(commit "a299e606f864942c7edf90c4ad3998f4f4a346cf")))
|
||||
(file-name "yosys-src-for-hdlconvertor-tests")
|
||||
(sha256
|
||||
(base32 "106bzlljn6843740r8rbaqf5ivkyfcgp25dgzds97j48ypmv6fih"))))
|
||||
|
||||
(define-public python-hdlconvertor
|
||||
(package
|
||||
(name "python-hdlconvertor")
|
||||
(version "2.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Nic30/hdlConvertor")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0xa7wm324dwp4wks8l9njpd2bz4gn7dfygdc3a78lxy1prvzbyyz"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; Ignore tests inside yosys source tree (they're unrelated yosys tests).
|
||||
#~(list "--ignore=tests/yosys")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'setup-antlr
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Build classpath from input jars.
|
||||
(let* ((st4 (search-input-file inputs
|
||||
"share/java/java-stringtemplate-4.0.8.jar"))
|
||||
(antlr4 (search-input-file inputs
|
||||
"share/java/antlr4.jar"))
|
||||
(antlr4-rt (search-input-file inputs
|
||||
"share/java/java-antlr4-runtime.jar"))
|
||||
(antlr3 (search-input-file inputs
|
||||
"share/java/antlr3-3.5.2.jar"))
|
||||
(treelayout (search-input-file inputs
|
||||
"share/java/java-treelayout-1.0.3.jar"))
|
||||
(classpath (string-join (list st4 antlr4 antlr4-rt
|
||||
antlr3 treelayout)
|
||||
":"))
|
||||
(antlr4cpp-include (search-input-directory
|
||||
inputs "include/antlr4-runtime"))
|
||||
(antlr4cpp-lib (search-input-file
|
||||
inputs "lib/libantlr4-runtime.so"))
|
||||
(python-include (search-input-directory
|
||||
inputs "include/python3.11")))
|
||||
;; Patch CMake to use our paths directly.
|
||||
(substitute* "src/CMake_antlr4.txt"
|
||||
(("set\\(ANTLR_CLASSPATH \"\"\\)")
|
||||
(string-append "set(ANTLR_CLASSPATH \"" classpath "\")"))
|
||||
;; Skip the jar search loop.
|
||||
(("FOREACH\\(antlr_jar \\$\\{ANTLR_JARS\\}\\)")
|
||||
"FOREACH(antlr_jar )")
|
||||
;; Set C++ runtime paths before find commands.
|
||||
(("# search for antlr4 include dir and library")
|
||||
(string-append
|
||||
"# search for antlr4 include dir and library\n"
|
||||
"set(ANTLR4CPP_INCLUDE_DIRS \"" antlr4cpp-include "\")\n"
|
||||
"set(ANTLR4CPP_LIBRARIES \"" antlr4cpp-lib "\")\n")))
|
||||
;; hdlConvertor/CMakeLists.txt is a sibling subdirectory to src/
|
||||
;; so variables set in src/CMake_antlr4.txt aren't visible here;
|
||||
;; inject both ANTLR and Python include paths before
|
||||
;; include_directories.
|
||||
(substitute* "hdlConvertor/CMakeLists.txt"
|
||||
(("include_directories\\(")
|
||||
(string-append
|
||||
"set(ANTLR4CPP_INCLUDE_DIRS \"" antlr4cpp-include "\")\n"
|
||||
"set(PYTHON_INCLUDE_DIRS \"" python-include "\")\n"
|
||||
"include_directories(")))
|
||||
;; ANTLR4 4.10+ changed from .as<T>() to std::any_cast<T>().
|
||||
;; Upstream fixed this in commit 8b07c10 using preprocessor
|
||||
;; conditionals to support both old and new APIs, but that
|
||||
;; commit also includes unrelated changes (Block statement
|
||||
;; support). We apply a simplified fix for ANTLR 4.10+
|
||||
;; only.
|
||||
(substitute* "src/verilogPreproc/verilogPreproc.cpp"
|
||||
(("visitMacro_call\\(mc, false\\)\\.as<string>\\(\\)")
|
||||
"std::any_cast<string>(visitMacro_call(mc, false))")
|
||||
(("params = visitDefine_args\\(da\\);")
|
||||
(string-append "params = std::any_cast<"
|
||||
"vector<MacroDefVerilog::param_info_t>*"
|
||||
">(visitDefine_args(da));"))))))
|
||||
(add-before 'check 'prepare-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Symlink yosys source for yosys testsuite.
|
||||
(delete-file-recursively "tests/yosys")
|
||||
(symlink (assoc-ref inputs "yosys-src-for-hdlconvertor-tests")
|
||||
"tests/yosys")
|
||||
;; Remove source hdlConvertor/ which shadows the installed package.
|
||||
(delete-file-recursively "hdlConvertor")
|
||||
;; Replace tests/__init__.py which imports all.py that requires
|
||||
;; git submodules; also delete tests requiring external tools.
|
||||
(call-with-output-file "tests/__init__.py"
|
||||
(lambda (port)
|
||||
(display "" port)))
|
||||
(delete-file "tests/all.py")
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_ghdl"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_icarus"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_verilator"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_uvvm"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_vunit"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_notebook"))
|
||||
(for-each delete-file
|
||||
(find-files "tests" "test_basic_hdl_sim")))))))
|
||||
(native-inputs
|
||||
(list antlr4 ; parser generator tool (antlr4.jar)
|
||||
antlr3 ; antlr3-runtime.jar required by hdlConvertor build
|
||||
java-antlr4-runtime ; antlr4-runtime.jar required by hdlConvertor build
|
||||
java-stringtemplate ; stringtemplate4.jar required by hdlConvertor build
|
||||
java-treelayout ; treelayout.jar required by hdlConvertor build
|
||||
(list openjdk "jdk") ; Java runtime to execute ANTLR4
|
||||
;;; Python build dependencies:
|
||||
python-cython ; compiles .pyx extension files to C++
|
||||
python-scikit-build ; CMake-based Python build system
|
||||
python-setuptools
|
||||
python-wrapper ; Python interpreter for build scripts
|
||||
python ; Python headers for C extension building
|
||||
python-pytest
|
||||
;; Yosys source for parsing tests.
|
||||
yosys-src-for-hdlconvertor-tests))
|
||||
(inputs
|
||||
(list java-antlr4-runtime-cpp))
|
||||
(propagated-inputs
|
||||
(list python-hdlconvertorast))
|
||||
(home-page "https://github.com/Nic30/hdlConvertor")
|
||||
(synopsis "VHDL and System Verilog parser")
|
||||
(description "This package provides a @acronym{VHDL, Very high speed
|
||||
integrated circuit Hardware Description Language} and SystemVerilog
|
||||
parser library for Python.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pyucis
|
||||
(package
|
||||
(name "python-pyucis")
|
||||
@@ -2493,13 +2042,7 @@ files as specified in IEEE 1364-2005.")
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "-k" "not test_toplevel_library") ;requires questasim simulator
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'check 'run-examples
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "make" "-k" "-C" "examples")))))))
|
||||
#~(list "-k" "not test_toplevel_library")));requires questasim simulator
|
||||
(native-inputs
|
||||
(list iverilog
|
||||
nvc
|
||||
@@ -2515,96 +2058,53 @@ and Verilog RTL using Python.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cocotb-bus
|
||||
(package
|
||||
(name "python-cocotb-bus")
|
||||
;; Version from src/cocotb_bus/_version.py
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cocotb/cocotb-bus/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0aqk78w5gg23rwf93gidw8yazmidwgmahqcmm3x0qx380mbdxjl4"))))
|
||||
(build-system pyproject-build-system)
|
||||
;; TODO: Build documentation from <docs>.
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "make" "-k" "-C" "tests")
|
||||
(invoke "make" "-k" "-C" "examples")))))))
|
||||
(native-inputs
|
||||
(list iverilog
|
||||
nvc
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-cocotb
|
||||
python-scapy))
|
||||
(home-page "https://github.com/cocotb/cocotb-bus/")
|
||||
(synopsis "Cocotb reusable tools")
|
||||
(description "@code{Cocotb-bus} provides a set of utilities, test benches
|
||||
;; XXX: The latest tagged release (2.6.1) was placed on <2023-07-01>, switch
|
||||
;; to tag when the fresh release is available.
|
||||
(let ((commit "f5578a4d451ef6bc1efdd4919de5facdb381b781")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "python-cocotb-bus")
|
||||
;; Version from src/cocotb_bus/_version.py
|
||||
(version (git-version "0.2.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cocotb/cocotb-bus/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13zdqalzhzrfv1lcn6l71zhi4hns89y093hvz9swkcr2kzwfn08r"))))
|
||||
(build-system pyproject-build-system)
|
||||
;; TODO: Build documentation from <docs>.
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "make" "-k" "-C" "tests")
|
||||
(invoke "make" "-k" "-C" "examples")))))))
|
||||
(native-inputs
|
||||
(list iverilog
|
||||
nvc
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-cocotb
|
||||
python-packaging
|
||||
python-scapy))
|
||||
(home-page "https://github.com/cocotb/cocotb-bus/")
|
||||
(synopsis "Cocotb reusable tools")
|
||||
(description "@code{Cocotb-bus} provides a set of utilities, test benches
|
||||
and reusable bus interfaces to be used with @code{cocotb}.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cocotb-test
|
||||
(package
|
||||
(name "python-cocotb-test")
|
||||
(version "0.2.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cocotb_test" version))
|
||||
(sha256
|
||||
(base32 "14h62sr2prxd0iy1axq68b9zdfggnms230xgrimywphlr941jrm4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments (list #:tests? #f)) ;requires examples folder from python-cocotb
|
||||
(propagated-inputs
|
||||
(list python-cocotb))
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools))
|
||||
(home-page "https://pypi.org/project/cocotb-test/")
|
||||
(synopsis
|
||||
"Standard python unit testing cababilities for @code{python-cocotb}")
|
||||
(description "This package provides the look and feel of Python unit
|
||||
testing to @code{cocotb}, removing the need of manipulating Makefiles.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cocotbext-axi
|
||||
(package
|
||||
(name "python-cocotbext-axi")
|
||||
(version "0.1.26")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alexforencich/cocotbext-axi/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0xgfvvpff9r7g7fiswv1m0dklyw6c8v2r3qpd6qq3rzvnvrhsrin"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs
|
||||
(list python-cocotb python-cocotb-bus))
|
||||
(native-inputs
|
||||
(list iverilog python-cocotb-test python-pytest python-setuptools))
|
||||
(home-page "https://github.com/alexforencich/cocotbext-axi/")
|
||||
(synopsis
|
||||
"Extra @acronym{AXI, Advanced Extensible Interface} modules for cocotb")
|
||||
(description "This package provides an extension to @code{cocotb} in the
|
||||
form of AXI, AXI lite, and AXI stream modules.")
|
||||
(license license:expat)))
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public python-edalize
|
||||
(package
|
||||
(name "python-edalize")
|
||||
(version "0.6.3")
|
||||
(version "0.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2613,7 +2113,7 @@ form of AXI, AXI lite, and AXI stream modules.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ml6b17jp4vwjaw16v0agajzksig92q5qmk2psm51ck4q076lm3m"))))
|
||||
(base32 "03mkzkmi96jkrpgcnawixvy832p3b8li8lrirdjhfp9dmp7d5kg5"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2799,7 +2299,6 @@ languages.")
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-deps
|
||||
@@ -2810,8 +2309,8 @@ languages.")
|
||||
(("rawVer .*")
|
||||
(string-append "rawVer = \"v"
|
||||
#$version "\""))))))))
|
||||
(native-inputs
|
||||
(list python-setuptools python-gitpython git-minimal/pinned))
|
||||
(native-inputs (list python-setuptools python-wheel python-gitpython
|
||||
git-minimal/pinned))
|
||||
(home-page "https://slaclab.github.io/surf/")
|
||||
(synopsis "SLAC Ultimate RTL Framework")
|
||||
(description
|
||||
@@ -2867,7 +2366,7 @@ to enforce it.")
|
||||
(define-public python-vunit
|
||||
(package
|
||||
(name "python-vunit")
|
||||
(version "5.0.0-dev.7") ;v4.7.0 dates back from 2 years ago.
|
||||
(version "5.0.0-dev.6") ;v4.7.0 dates back from 2 years ago.
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2876,7 +2375,7 @@ to enforce it.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "12xkjc98913zyb271k9qfl86wdj2fsbcjl0lv1lb4492j5iqfcgj"))))
|
||||
(base32 "1si542jrrvibiigaridg2vds5smbiass7g5pdfk5z26xqgbh0fxc"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2905,7 +2404,7 @@ to enforce it.")
|
||||
(search-input-directory inputs "share/json-for-vhdl")
|
||||
(string-append site-packages "JSON-for-VHDL/src"))
|
||||
(symlink
|
||||
(search-input-directory inputs "share/osvvm/work/osvvm")
|
||||
(search-input-directory inputs "share/osvvm/osvvm")
|
||||
(string-append site-packages "osvvm")))))
|
||||
(add-after 'check 'run-examples
|
||||
;; Run examples as an extra check.
|
||||
@@ -2943,7 +2442,8 @@ to enforce it.")
|
||||
(list nvc
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-setuptools-scm))
|
||||
python-setuptools-scm
|
||||
python-wheel))
|
||||
(inputs
|
||||
(list json-for-vhdl-for-vunit osvvm-2023.04))
|
||||
(propagated-inputs
|
||||
@@ -3707,7 +3207,7 @@ parallel computing platforms. It also supports serial execution.")
|
||||
(define-public yosys
|
||||
(package
|
||||
(name "yosys")
|
||||
(version "0.61")
|
||||
(version "0.60")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3715,7 +3215,7 @@ parallel computing platforms. It also supports serial execution.")
|
||||
(url "https://github.com/YosysHQ/yosys")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "1z96wvgm12vcsp88xkdljvhrrx9b8wc9y2gwjsff83jsp2q0q2wp"))
|
||||
(base32 "13ygzsx81a32nmqqs5rn8w419dcx7s822bh9l2zc82jphy54nc3s"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
+506
-916
File diff suppressed because it is too large
Load Diff
+10
-9
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013-2017, 2019, 2021-2022, 2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013-2017, 2019, 2021-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
|
||||
@@ -464,22 +464,19 @@ editor (console only)")
|
||||
(string-append (getenv "LIBRARY_PATH")
|
||||
":" libgccjit-libdir)))))
|
||||
(add-after 'unpack 'patch-compilation-driver
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(lambda _
|
||||
(substitute* "lisp/emacs-lisp/comp.el"
|
||||
(("\\(defcustom native-comp-driver-options nil")
|
||||
(format
|
||||
#f "(defcustom native-comp-driver-options '(~@{~s~^ ~})"
|
||||
(string-append
|
||||
"-B" (dirname (search-input-file inputs "/bin/nm")))
|
||||
"-B" #$(this-package-input "binutils") "/bin/")
|
||||
(string-append
|
||||
"-B" (dirname (search-input-file inputs "/lib/libc.so")))
|
||||
"-B" #$(this-package-input "glibc") "/lib/")
|
||||
(string-append
|
||||
"-B" (dirname (search-input-file inputs "/lib/libgccjit.so")))
|
||||
"-B" #$(this-package-input "libgccjit") "/lib/")
|
||||
(string-append
|
||||
"-B" (string-append
|
||||
(dirname
|
||||
(search-input-file inputs "/lib/libgccjit.so"))
|
||||
"/gcc")))))))
|
||||
"-B" #$(this-package-input "libgccjit") "/lib/gcc/"))))))
|
||||
(add-after 'build 'build-trampolines
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke "make" "trampolines" make-flags)))
|
||||
@@ -501,7 +498,11 @@ editor (console only)")
|
||||
(inputs
|
||||
(modify-inputs (package-inputs emacs-minimal)
|
||||
(prepend gnutls
|
||||
;; To "unshadow" ld-wrapper in native builds
|
||||
(make-ld-wrapper "ld-wrapper" #:binutils binutils)
|
||||
;; For native compilation
|
||||
binutils
|
||||
(libc-for-target)
|
||||
libgccjit
|
||||
|
||||
;; Avoid Emacs's limited movemail substitute that retrieves POP3
|
||||
|
||||
+16
-12
@@ -1757,20 +1757,24 @@ these identified regions.
|
||||
(package
|
||||
(name "stcgal")
|
||||
(version "1.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/grigorig/stcgal")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04hsj49sw5mb6swhd3sdsm7dzwp1frnzpmq70wgsn5vmjavb1ka8"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-pyserial python-pyusb python-tqdm))
|
||||
(source (origin
|
||||
;; The "doc" subdirectory referred to by stcgal's setup.py is
|
||||
;; missing from the source distribution on PyPI so we fetch
|
||||
;; directly from the project's git repository instead.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/grigorig/stcgal")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04hsj49sw5mb6swhd3sdsm7dzwp1frnzpmq70wgsn5vmjavb1ka8"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-pyserial python-pyusb python-tqdm))
|
||||
(native-inputs
|
||||
;; For tests.
|
||||
(list python-pytest python-pyyaml python-setuptools))
|
||||
(list python-pyyaml))
|
||||
(home-page "https://github.com/grigorig/stcgal")
|
||||
(synopsis "Programmer for STC 8051-compatible microcontrollers")
|
||||
(description "stcgal is a command-line flash-programming tool for STC
|
||||
|
||||
+75
-317
@@ -14,7 +14,7 @@
|
||||
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
|
||||
;;; Copyright © 2020 Christopher Howard <christopher@librehacker.com>
|
||||
;;; Copyright © 2021 Felipe Balbi <balbi@kernel.org>
|
||||
;;; Copyright © 2021, 2024, 2025 Felix Gruber <felgru@posteo.net>
|
||||
;;; Copyright © 2021, 2024 Felix Gruber <felgru@posteo.net>
|
||||
;;; Copyright © 2021, 2024-2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2023 c4droid <c4droid@foxmail.com>
|
||||
@@ -91,7 +91,6 @@
|
||||
#:use-module (gnu packages graphics)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages image-processing)
|
||||
#:use-module (gnu packages kde-frameworks)
|
||||
#:use-module (gnu packages libedit)
|
||||
#:use-module (gnu packages libusb)
|
||||
@@ -104,19 +103,15 @@
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages ninja)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages pulseaudio)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages serialization)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages robotics)
|
||||
#:use-module (gnu packages sdl)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages stb)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages textutils)
|
||||
@@ -1111,7 +1106,6 @@ The following systems are supported:
|
||||
ncurses
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtwayland
|
||||
sdl2
|
||||
sqlite
|
||||
zlib))
|
||||
@@ -1160,7 +1154,7 @@ The following systems are supported:
|
||||
(define-public sameboy
|
||||
(package
|
||||
(name "sameboy")
|
||||
(version "1.0.2")
|
||||
(version "0.16.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1169,7 +1163,7 @@ The following systems are supported:
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0pwnik37c3sgvib5xbadwbq2mjjvgxilhig09rjb3xp5i1d7ykja"))))
|
||||
(base32 "1jdjg59vzzkbi3c3qaxpsxqx955sb86cd3kcypb0nhjxbnwac1di"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list rgbds pkg-config))
|
||||
@@ -1245,7 +1239,7 @@ Enjoy all of your favorite Atari 2600 games on your PC thanks to Stella!")
|
||||
(define-public mupen64plus-core
|
||||
(package
|
||||
(name "mupen64plus-core")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1254,7 +1248,7 @@ Enjoy all of your favorite Atari 2600 games on your PC thanks to Stella!")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xf15b6c3i0vv92b420a92pfvfaxhji56ivin8pn5r7fajkqyfb7"))))
|
||||
(base32 "1iav8r3f0r44sq9pz4zjqrdzyspk412c117ywxz02qpjkhkf91a3"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config nasm which))
|
||||
@@ -1264,7 +1258,6 @@ Enjoy all of your favorite Atari 2600 games on your PC thanks to Stella!")
|
||||
libpng
|
||||
mesa
|
||||
sdl2
|
||||
vulkan-loader
|
||||
zlib))
|
||||
(arguments
|
||||
'(#:phases
|
||||
@@ -1295,7 +1288,7 @@ core library.")
|
||||
(define-public mupen64plus-audio-sdl
|
||||
(package
|
||||
(name "mupen64plus-audio-sdl")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1304,7 +1297,7 @@ core library.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08sp70kjjbqg8mhxdm6yphfwn6bnf2i7yvzrzygnnn2cwd0qw42j"))))
|
||||
(base32 "0j78xk78fj7lhi6jk6npr7wm9ix7qyr5cbaaqsmk6pqw6gfx81kz"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1339,7 +1332,7 @@ SDL audio plugin.")
|
||||
(define-public mupen64plus-input-sdl
|
||||
(package
|
||||
(name "mupen64plus-input-sdl")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1348,7 +1341,7 @@ SDL audio plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1x07bc3pcfy11k1kp7q0bwz1z9wppxyi3f5pr72wsk1s8szzvck0"))))
|
||||
(base32 "1nnniyiy0wpg4m9918va31xxnz8r5qvj0z08vyq2is0b47ld3kq0"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list which))
|
||||
@@ -1383,7 +1376,7 @@ SDL input plugin.")
|
||||
(define-public mupen64plus-rsp-hle
|
||||
(package
|
||||
(name "mupen64plus-rsp-hle")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1392,7 +1385,7 @@ SDL input plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wdnf9y5b61hxkv7jkz67m1bcqyxykzc24bg9k77ny7jc2q42v93"))))
|
||||
(base32 "0sblabl3dp1jy9izbwyhx90690xdj96yfmwi47kpka8axzj93naq"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list mupen64plus-core))
|
||||
@@ -1425,7 +1418,7 @@ high-level emulation (HLE) RSP processor plugin.")
|
||||
(define-public mupen64plus-rsp-z64
|
||||
(package
|
||||
(name "mupen64plus-rsp-z64")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1434,7 +1427,7 @@ high-level emulation (HLE) RSP processor plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0hpd402a00kmqsq45hrmgjfd1nchkjgjj5hc3fzb4fbvac5pacsz"))))
|
||||
(base32 "02w7c6b7fc6q5rrvawxv48xp64crfs5jbs06f2fqqj4smysyjfcc"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list mupen64plus-core))
|
||||
@@ -1467,7 +1460,7 @@ Z64 RSP processor plugin.")
|
||||
(define-public mupen64plus-video-arachnoid
|
||||
(package
|
||||
(name "mupen64plus-video-arachnoid")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1476,7 +1469,7 @@ Z64 RSP processor plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dvjn3dnpsdzgjpvn4la05bcan2hs2hvzhqhfq43z1bqyxw7qb2d"))))
|
||||
(base32 "1bkzbmg53qiwvza9h45d76rbyn0isbb31cfp5qqza0fzmgjxhv1d"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1511,7 +1504,7 @@ Arachnoid video plugin.")
|
||||
(define-public mupen64plus-video-glide64
|
||||
(package
|
||||
(name "mupen64plus-video-glide64")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1520,7 +1513,7 @@ Arachnoid video plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "15hlbamw2iw5r7l2234a986gikgmkypdzhvl3r7px0rs0pi816pl"))))
|
||||
(base32 "0jscvr2imm9wj9jsgsp5815pv27f97w8g19ix0n39y9yy851qvrg"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1554,7 +1547,7 @@ Glide64 video plugin.")
|
||||
(define-public mupen64plus-video-glide64mk2
|
||||
(package
|
||||
(name "mupen64plus-video-glide64mk2")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1563,7 +1556,7 @@ Glide64 video plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1w0cp448i3rnr8c6rq8ivqvjmfkcawpr4b798xqhryhbxnlr3s35"))))
|
||||
(base32 "1hr0mv6y7v72101iff3zf6rd0wpqah936234m3hcb4cgna6zj9xy"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1603,7 +1596,7 @@ Glide64MK2 video plugin.")
|
||||
(define-public mupen64plus-video-rice
|
||||
(package
|
||||
(name "mupen64plus-video-rice")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1612,7 +1605,7 @@ Glide64MK2 video plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "16bzcjawyzy3wmxaq1chjfnljspm1sgzv7swylr9lkf3kpaijcw2"))))
|
||||
(base32 "1vn24g7ahyv70jd06f5sq0j4bjs4axl2c0kfz4qdkpqsamsgxng8"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1647,7 +1640,7 @@ Rice Video plugin.")
|
||||
(define-public mupen64plus-video-z64
|
||||
(package
|
||||
(name "mupen64plus-video-z64")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1656,7 +1649,7 @@ Rice Video plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "17h5xh5ms7xv53wcsmagapg08qzybmc1qmch5h6i7dirp5hpa411"))))
|
||||
(base32 "1i8dxa0lhcsm5ss1bf74dqnzaa2bw5naj6f56ixw2qjvybrnsmk2"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config which))
|
||||
@@ -1698,7 +1691,7 @@ Z64 video plugin.")
|
||||
(define-public mupen64plus-ui-console
|
||||
(package
|
||||
(name "mupen64plus-ui-console")
|
||||
(version "2.6.0")
|
||||
(version "2.5.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1707,7 +1700,7 @@ Z64 video plugin.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0lir5clzqp2al7dcw9p6xg0kpz5wrgb4s3ar56siqg8nafslrqp3"))
|
||||
(base32 "1dyrqdfs2jkalfd86bqidgd9y1hy03qgrgwk46d3xf3kyfmaa1cq"))
|
||||
(patches (search-patches "mupen64plus-ui-console-notice.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
@@ -2006,7 +1999,7 @@ libretro API, based on Mupen64Plus. It incorporates the following projects:
|
||||
(define-public retroarch-assets
|
||||
(package
|
||||
(name "retroarch-assets")
|
||||
(version "1.22.0")
|
||||
(version "1.20.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2015,7 +2008,7 @@ libretro API, based on Mupen64Plus. It incorporates the following projects:
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04gbsn5lwc9ampyssl898v4p9myhwfqy3x7hyx9si8l1x9z60k6j"))))
|
||||
"0ngbc2wmqgz5davan7rnvqapai5wc8j9afylff1yzlk3lgsjlv1x"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no test suite
|
||||
@@ -2031,7 +2024,7 @@ generate the various User Experience (UX) environments.")
|
||||
(define-public libretro-core-info
|
||||
(package
|
||||
(name "libretro-core-info")
|
||||
(version "1.22.2")
|
||||
(version "1.21.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2040,7 +2033,7 @@ generate the various User Experience (UX) environments.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1csx200ajl6ncrhi20l9f9qjv73402w28lyi88lsly0j65rknz4v"))))
|
||||
"12yramra6hd33g094krygq2a5h7mjkh0nh5d8qny4b6f61fxaxwk"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list #:install-plan #~'(("." "lib/libretro/"
|
||||
@@ -2058,7 +2051,7 @@ metadata about each known libretro core. The snapshot is taken from the
|
||||
(define-public libretro-database
|
||||
(package
|
||||
(name "libretro-database")
|
||||
(version "1.22.1")
|
||||
(version "1.21.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2067,7 +2060,7 @@ metadata about each known libretro core. The snapshot is taken from the
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"03jb9gr11xiphnnwdqqk8k5g8s9s026k46dv94h67cshlbl59n52"))))
|
||||
"1grkdg6k6dclwrh286dins4k50mp0wf3bvddikaspl309dldjrgw"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments (list #:tests? #f
|
||||
#:make-flags #~(list (string-append "PREFIX=" #$output))))
|
||||
@@ -2096,7 +2089,7 @@ Various scripts that are used to maintain the database files.
|
||||
(define-public retroarch-joypad-autoconfig
|
||||
(package
|
||||
(name "retroarch-joypad-autoconfig")
|
||||
(version "1.22.0")
|
||||
(version "1.21.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2106,7 +2099,7 @@ Various scripts that are used to maintain the database files.
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0fcc15j6lblngkx0n85x68x01c4qc24xc0pw05gc5pg2xgg4m3wg"))))
|
||||
"06mii4zpkrwxiw9qhfvjzri8q8fps1b96nkxp7px2w7cgdl4kg68"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no meaningful test suite
|
||||
@@ -2826,7 +2819,7 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
(define-public retroarch-minimal
|
||||
(package
|
||||
(name "retroarch-minimal")
|
||||
(version "1.22.2")
|
||||
(version "1.21.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2857,7 +2850,7 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
(patches (search-patches "retroarch-unbundle-spirv-cross.patch"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xbipxg5g53f68cbki61qj86096l87x0mrwzbgrv6mcf3sif0y7v"))))
|
||||
(base32 "17l3x77vd52g7zq62g3j1jxr51ksmdnxif1qh671qi19fsd19v1r"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2866,8 +2859,6 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "input/bsv/uint32s_index.c"
|
||||
(("#include <xxHash/xxhash\\.h>") "#include <xxhash.h>"))
|
||||
;; Hard-code some store file names.
|
||||
(substitute* "gfx/common/vulkan_common.c"
|
||||
(("libvulkan.so")
|
||||
@@ -2908,7 +2899,6 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
;; These are disabled to avoid requiring the bundled
|
||||
;; dependencies.
|
||||
"--disable-7zip"
|
||||
"--disable-chd"
|
||||
"--disable-cheevos"
|
||||
"--disable-crtswitchres"
|
||||
"--disable-discord"
|
||||
@@ -2917,8 +2907,7 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
"--disable-stb_font"
|
||||
"--disable-stb_image"
|
||||
"--disable-stb_vorbis"
|
||||
"--disable-xdelta"
|
||||
"--disable-zstd"))))))
|
||||
"--disable-xdelta"))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
wayland-protocols
|
||||
@@ -2951,7 +2940,6 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
|
||||
v4l-utils
|
||||
vulkan-loader
|
||||
wayland
|
||||
xxhash
|
||||
zlib))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
@@ -3606,11 +3594,11 @@ improvements.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public pcsx2-patches
|
||||
(let ((commit "10239de1539668c347e8e9478a3b13913808c0b2")
|
||||
(let ((commit "2fdc835f0725b318efcdaae84db1c73a9139b6f6")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "pcsx2-patches")
|
||||
(version (git-version "2025.12.11" revision commit))
|
||||
(version (git-version "2025.10.24" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3619,7 +3607,7 @@ improvements.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "07f18xrn60sizgjhq99rq1q69ay9pss00y8b4c3ky9i94xjfxq5x"))))
|
||||
(base32 "0qn9jwk983hxzrf2x550wcb9l782618lm662w5fb6cw81bbrv5is"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3651,88 +3639,27 @@ de-interlacing patches for use with PCSX2.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0nr53cjifqwnz3icxsj01yd3aw1vfsfxga4zz5zi8aqr175mvq27"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-26)))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(substitute* "cmake/Pcsx2Utils.cmake"
|
||||
(("(PCSX2_GIT_REV \")Unknown" _ prefix)
|
||||
(string-append prefix #$version "-guix")))
|
||||
(delete-file "3rdparty/include/Packet32.h") ;"not open source"
|
||||
;; XXX: 'delete-all-but' is copied from the turbovnc package.
|
||||
(define (delete-all-but directory . preserve)
|
||||
(with-directory-excursion directory
|
||||
(let* ((pred (negate (cut member <>
|
||||
(cons* "." ".." preserve))))
|
||||
(items (scandir "." pred)))
|
||||
(for-each (cut delete-file-recursively <>) items))))
|
||||
(delete-all-but
|
||||
"3rdparty"
|
||||
;; asl2.0 and cc0
|
||||
"glad" ;Is tailored.
|
||||
;; bsd-3
|
||||
"libchdr" ;Not packaged in guix.
|
||||
"vixl" ;Not packaged in guix.
|
||||
"xbyak" ;Just includes.
|
||||
;; bsd-4 (pcap) and bsd-2 (xxhash)
|
||||
"include" ;Just includes.
|
||||
;; expat
|
||||
"ccc" ;Is tailored.
|
||||
"cubeb" ;Is tailored.
|
||||
"discord-rpc" ;Not packaged in guix.
|
||||
"imgui" ;Is tailored.
|
||||
"rapidyaml" ;Not packaged in guix.
|
||||
"rcheevos" ;Does not have a linkable binary.
|
||||
"simpleini" ;Is tailored (GetKeyCount).
|
||||
"zydis" ;Could not link.
|
||||
;; gpl2+
|
||||
"freesurround" ;Unclear what upstream is.
|
||||
;; lgpl2.0+
|
||||
"demangler" ;Is tailored.
|
||||
;; public-domain
|
||||
"lzma" ;Does not have a linkable library.
|
||||
;; silofl1.1
|
||||
"promptfont") ;Unclear what upstream is.
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\(3rdparty/googletest)")
|
||||
"find_package(GTest REQUIRED)"))
|
||||
(substitute* "cmake/SearchForStuff.cmake"
|
||||
(("add_subdirectory\\(3rdparty/cpuinfo EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(cpuinfo REQUIRED)")
|
||||
(("disable_compiler_warnings_for_target\\(cpuinfo\\)") "")
|
||||
(("add_subdirectory\\(3rdparty/fast_float EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(FastFloat REQUIRED)")
|
||||
(("add_subdirectory\\(3rdparty/fmt EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(fmt REQUIRED)")
|
||||
(("disable_compiler_warnings_for_target\\(fmt\\)") "")
|
||||
(("add_subdirectory\\(3rdparty/libzip EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(libzip REQUIRED)")
|
||||
(("add_subdirectory\\(3rdparty/rapidjson EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(RapidJSON REQUIRED)")
|
||||
(("add_subdirectory\\(3rdparty/soundtouch EXCLUDE_FROM_ALL\\)")
|
||||
"pkg_check_modules(SoundTouch REQUIRED soundtouch)")
|
||||
(("add_subdirectory\\(3rdparty/vulkan EXCLUDE_FROM_ALL\\)")
|
||||
"find_package(VulkanMemoryAllocator REQUIRED)
|
||||
find_package(VulkanHeaders REQUIRED)"))
|
||||
;Specifically, line 213.
|
||||
(substitute* "common/CMakeLists.txt"
|
||||
(("fast_float") ""))
|
||||
(substitute* "pcsx2/CMakeLists.txt"
|
||||
(("SoundTouch::SoundTouch") "SoundTouch")
|
||||
(("\
|
||||
target_link_libraries\\(PCSX2_FLAGS INTERFACE vulkan-headers\\)") ""))
|
||||
(substitute* "pcsx2/Host/AudioStream.cpp"
|
||||
(("SoundTouch.h") "soundtouch/SoundTouch.h"))))))
|
||||
(substitute* "pcsx2/Pcsx2Config.cpp"
|
||||
(("Path::Canonicalize\\(Path::GetDirectory\\(program_path\\)\\);")
|
||||
"Path::Canonicalize(
|
||||
((std::string)Path::GetDirectory(program_path)).append(\"/../share/\"));"))
|
||||
(delete-file-recursively "3rdparty/d3d12memalloc")
|
||||
(delete-file-recursively "3rdparty/winpixeventruntime")
|
||||
(delete-file-recursively "3rdparty/winwil")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:parallel-build? #t
|
||||
#:configure-flags
|
||||
#~(list "-DCMAKE_C_COMPILER=clang"
|
||||
"-DCMAKE_CXX_COMPILER=clang++"
|
||||
"-GNinja"
|
||||
"-DPACKAGE_MODE=ON"
|
||||
"-DUSE_LINKED_FFMPEG=ON")
|
||||
"-DCMAKE_PREFIX_PATH=\"$PWD/deps\""
|
||||
"-GNinja")
|
||||
#:imported-modules `((guix build copy-build-system)
|
||||
,@%cmake-build-system-modules)
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'build
|
||||
@@ -3741,52 +3668,52 @@ target_link_libraries\\(PCSX2_FLAGS INTERFACE vulkan-headers\\)") ""))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests? (invoke "ninja" "unittests"))))
|
||||
(replace 'install
|
||||
(lambda* args
|
||||
(apply
|
||||
(assoc-ref (@ (guix build copy-build-system) %standard-phases)
|
||||
'install)
|
||||
#:install-plan
|
||||
'(("bin/pcsx2-qt" "bin/")
|
||||
("bin/resources" "share/")
|
||||
("bin/translations" "share/")
|
||||
("../source/.github/workflows/scripts/linux/pcsx2-qt.desktop"
|
||||
"share/applications/"))
|
||||
args)))
|
||||
(add-after 'install 'install-patches
|
||||
(lambda _
|
||||
(symlink
|
||||
(search-input-file %build-inputs "/patches.zip")
|
||||
(string-append
|
||||
#$output "/share/PCSX2/resources/patches.zip")))))))
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(install-file (search-input-file %build-inputs "/patches.zip")
|
||||
(string-append #$output "/share/resources")))))))
|
||||
(inputs (list (module-ref
|
||||
(resolve-interface '(gnu packages debug)) 'libbacktrace)
|
||||
`(,zstd-1.5.7 "lib")
|
||||
cpuinfo
|
||||
curl
|
||||
dbus
|
||||
eudev
|
||||
fast-float
|
||||
ffmpeg
|
||||
freetype
|
||||
fmt-11
|
||||
kddockwidgets
|
||||
libaio
|
||||
libjpeg-turbo
|
||||
libpcap
|
||||
libpng-next
|
||||
libpng-for-pcsx2
|
||||
libwebp
|
||||
libxi
|
||||
libxrandr
|
||||
libzip
|
||||
lz4
|
||||
pcsx2-patches
|
||||
plutosvg
|
||||
plutovg
|
||||
plutosvg
|
||||
qtbase
|
||||
qtdeclarative
|
||||
qtsvg
|
||||
qttools
|
||||
rapidjson
|
||||
qtwayland
|
||||
sdl3
|
||||
shaderc
|
||||
soundtouch
|
||||
vulkan-headers
|
||||
wayland))
|
||||
(native-inputs
|
||||
(list clang-17
|
||||
extra-cmake-modules
|
||||
googletest
|
||||
ninja
|
||||
pkg-config
|
||||
vulkan-memory-allocator))
|
||||
wayland
|
||||
libxi))
|
||||
(native-inputs (list clang-17 extra-cmake-modules ninja pkg-config))
|
||||
(home-page "https://pcsx2.net")
|
||||
(synopsis "PlayStation 2 (PS2) emulator")
|
||||
(description
|
||||
@@ -3795,176 +3722,7 @@ emulator. Its purpose is to emulate the PS2's hardware, using a combination
|
||||
of MIPS CPU interpreters, recompilers and a virtual machine which manages
|
||||
hardware states and PS2 system memory. This allows you to play PS2 games on
|
||||
your PC, with many additional features and benefits.")
|
||||
(license (list license:gpl3+ ;main code
|
||||
;; code in 3rdparty/
|
||||
license:asl2.0
|
||||
license:bsd-2
|
||||
license:bsd-3
|
||||
license:bsd-4
|
||||
license:cc0
|
||||
license:expat
|
||||
license:lgpl2.0+
|
||||
license:public-domain
|
||||
license:silofl1.1))))
|
||||
|
||||
(define-public rpcs3
|
||||
;; NB: When updating to a new release, don't forget to check if any more
|
||||
;; libraries can be linked dynamically, and to update the commits for any
|
||||
;; specialized sources included in native-inputs so that they match the
|
||||
;; sub-modules in ./3rdparty.
|
||||
(package
|
||||
(name "rpcs3")
|
||||
(version "0.0.38")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/RPCS3/rpcs3")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dwrfjs9b3ldwyn68nmyf0qip4hm1w8c3picdl3zk7z76j7rrhal"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list
|
||||
;; -fexceptions is needed to compile part of yaml-cpp.
|
||||
"-DCMAKE_CXX_FLAGS=-fexceptions"
|
||||
;; "USE_NATIVE_INSTRUCTIONS makes rpcs3 compile with -march=native,
|
||||
;; which is useful for local builds, but not good for packages."
|
||||
"-DUSE_NATIVE_INSTRUCTIONS=OFF"
|
||||
"-DWITH_LLVM=ON"
|
||||
"-DBUILD_LLVM=OFF"
|
||||
"-DSTATIC_LINK_LLVM=OFF"
|
||||
"-DUSE_FAUDIO=ON"
|
||||
"-DUSE_LIBEVDEV=ON"
|
||||
"-DUSE_DISCORD_RPC=OFF"
|
||||
"-DUSE_VULKAN=ON"
|
||||
"-DUSE_PRECOMPILED_HEADERS=OFF"
|
||||
"-DUSE_SDL=ON"
|
||||
"-DUSE_SYSTEM_CUBEB=ON"
|
||||
"-DUSE_SYSTEM_CURL=ON"
|
||||
"-DUSE_SYSTEM_FAUDIO=ON"
|
||||
"-DUSE_SYSTEM_FFMPEG=ON"
|
||||
"-DUSE_SYSTEM_FLATBUFFERS=ON"
|
||||
"-DUSE_SYSTEM_GLSLANG=ON"
|
||||
"-DUSE_SYSTEM_HIDAPI=ON"
|
||||
"-DUSE_SYSTEM_LIBPNG=ON"
|
||||
"-DUSE_SYSTEM_LIBUSB=ON"
|
||||
"-DUSE_SYSTEM_MINIUPNPC=ON"
|
||||
"-DUSE_SYSTEM_OPENAL=ON"
|
||||
"-DUSE_SYSTEM_OPENCV=ON"
|
||||
"-DUSE_SYSTEM_PUGIXML=ON"
|
||||
"-DUSE_SYSTEM_RTMIDI=ON"
|
||||
"-DUSE_SYSTEM_SDL=ON"
|
||||
"-DUSE_SYSTEM_VULKAN_MEMORY_ALLOCATOR=ON"
|
||||
"-DUSE_SYSTEM_WOLFSSL=ON"
|
||||
"-DUSE_SYSTEM_ZLIB=ON"
|
||||
"-DUSE_SYSTEM_ZSTD=ON"
|
||||
"-DBUILD_RPCS3_TESTS=ON"
|
||||
"-DRUN_RPCS3_TESTS=ON"
|
||||
;; "Choose whether to enable GameMode features or not."
|
||||
;; Off, for now, because GameMode requires systemd to work.
|
||||
"-DUSE_GAMEMODE=OFF")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'add-some-submodules
|
||||
;; TODO: Remove as many of these as possible.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(with-directory-excursion "3rdparty"
|
||||
(rmdir "fusion/fusion")
|
||||
(symlink (string-append
|
||||
(search-input-directory inputs "Fusion") "/../")
|
||||
"fusion/fusion")
|
||||
(rmdir "SoundTouch/soundtouch")
|
||||
(symlink (dirname
|
||||
(search-input-file inputs "soundtouch.pc.in"))
|
||||
"SoundTouch/soundtouch")
|
||||
(rmdir "asmjit/asmjit")
|
||||
(symlink (string-append
|
||||
(search-input-directory inputs "src/asmjit")
|
||||
"/../../")
|
||||
"asmjit/asmjit")
|
||||
(rmdir "yaml-cpp/yaml-cpp")
|
||||
(symlink (dirname
|
||||
(search-input-file inputs "yaml-cpp.pc.in"))
|
||||
"yaml-cpp/yaml-cpp")
|
||||
(rmdir "stblib/stb")
|
||||
(symlink (dirname
|
||||
(search-input-file inputs "stb_c_lexer.h"))
|
||||
"stblib/stb")))))))
|
||||
(inputs
|
||||
(append
|
||||
(list cubeb
|
||||
curl
|
||||
eudev
|
||||
faudio
|
||||
;; RPCS3 v0.0.38 uses symbols that are deprecated in ffmpeg 8.
|
||||
;; See https://github.com/RPCS3/rpcs3/issues/17461
|
||||
ffmpeg-6
|
||||
flatbuffers
|
||||
glew
|
||||
glslang
|
||||
glu
|
||||
hidapi
|
||||
jack-2
|
||||
libevdev
|
||||
libglvnd
|
||||
libpng
|
||||
libusb-next
|
||||
llvm-18
|
||||
mesa
|
||||
miniupnpc-next
|
||||
openal
|
||||
opencv
|
||||
pugixml-next
|
||||
pulseaudio
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtsvg
|
||||
rtmidi
|
||||
sdl3
|
||||
spirv-tools
|
||||
vulkan-loader
|
||||
wayland
|
||||
wolfssl-for-rpcs3
|
||||
zlib
|
||||
`(,zstd "lib"))))
|
||||
(native-inputs
|
||||
(list
|
||||
googletest
|
||||
pkg-config
|
||||
vulkan-memory-allocator
|
||||
(package-source asmjit)
|
||||
(package-source fusion)
|
||||
(package-source stb)
|
||||
(origin
|
||||
(file-name "rpcs3-soundtouch-source")
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/RPCS3/soundtouch")
|
||||
(commit "3982730833b6daefe77dcfb32b5c282851640c17")))
|
||||
(sha256
|
||||
(base32 "07q514mx69jkrz7i58c45iwj3zql88vdsa1sah7immwr1005i91y")))
|
||||
(origin
|
||||
(file-name "rpcs3-yaml-cpp-source")
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/RPCS3/yaml-cpp")
|
||||
(commit "456c68f452da09d8ca84b375faa2b1397713eaba")))
|
||||
(sha256
|
||||
(base32 "0spp91yz1bvr9dljc7zgjf2sqw49d8b9yinlncykjwzxm7ap7jys")))))
|
||||
(home-page "https://rpcs3.net/")
|
||||
(synopsis "PlayStation 3 emulator")
|
||||
(description "RPCS3 is an emulator and debugger for the Sony
|
||||
@acronym{PS3,PlayStation 3}.")
|
||||
(license
|
||||
(list license:gpl2 ;core, pine_server.h
|
||||
license:bsd-3 ;FindWayland.cmake, FindFFMPEG.cmake
|
||||
;;flow_layout.h, sse2neon.h, unordered_dense.h, ffx_fsr1.h,
|
||||
;;ffx_a.h, bcdec.hpp, LUrlParser.h, khrplatform.h
|
||||
license:expat))))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gens-gs
|
||||
(package
|
||||
|
||||
+100
-142
@@ -40,13 +40,12 @@
|
||||
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2023 pinoaffe <pinoaffe@gmail.com>
|
||||
;;; Copyright © 2024 Juliana Sims <juli@incana.org>
|
||||
;;; Copyright © 2024 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||
;;; Copyright © 2025 Frederick Muriuki Muriithi <fredmanglis@gmail.com>
|
||||
;;; Copyright © 2025 nomike Postmann <nomike@nomike.com>
|
||||
;;; Copyright © 2025 Matthew Elwin <elwin@northwestern.edu>
|
||||
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
|
||||
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -130,7 +129,6 @@
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages image-processing)
|
||||
#:use-module (gnu packages imagemagick)
|
||||
#:use-module (gnu packages javascript)
|
||||
#:use-module (gnu packages jupyter)
|
||||
#:use-module (gnu packages kde-frameworks)
|
||||
#:use-module (gnu packages libcanberra)
|
||||
@@ -147,7 +145,6 @@
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages nettle)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages node)
|
||||
#:use-module (gnu packages openkinect)
|
||||
#:use-module (gnu packages parallel)
|
||||
#:use-module (gnu packages pcre)
|
||||
@@ -865,7 +862,7 @@ required for Fritzing app.")
|
||||
(native-inputs
|
||||
(list pkg-config qttools-5))
|
||||
(inputs
|
||||
(list kcoreaddons-5 kwidgetsaddons-5 qtbase-5 qtsvg-5 qtwayland-5 sqlite))
|
||||
(list kcoreaddons-5 kwidgetsaddons-5 qtbase-5 qtsvg-5 sqlite))
|
||||
(home-page "https://qelectrotech.org/")
|
||||
(synopsis "CAD/CAE editor focusing on schematics drawing features")
|
||||
(description "QElectroTech, or QET in short, is a desktop application to
|
||||
@@ -1034,62 +1031,6 @@ user-level language.")
|
||||
;; Mark as tunable to take advantage of SIMD code in Eigen.
|
||||
(properties '((tunable? . #t))))))
|
||||
|
||||
(define-public iaito
|
||||
;; Release versions are currently out of sync with radare2,
|
||||
;; use most recent commit.
|
||||
(let ((commit "27cdc1793c2f5bf71c6f2ef5116f0bfb91edd730")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "iaito")
|
||||
(version (git-version "6.0.4" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/radareorg/iaito")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"0bwjxv73nsd06al2a40r5gvm99kzlq7f7q7ial9189awlnsbnwlw"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; The build system assumes the sdb lib is installed alongside
|
||||
;; radare2. We already patch the radare2 package to use a
|
||||
;; system-installed sdb rather than install its own, so we must
|
||||
;; propagate those changes here.
|
||||
(add-before 'configure 'add-sdb-libs
|
||||
(lambda _
|
||||
(substitute* '("./src/lib_radare2.pri")
|
||||
(("pkg-config --libs r_core" all)
|
||||
(string-append all " sdb")))))
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
;; Does not recognize "--enable-fast-install".
|
||||
(invoke "./configure"
|
||||
(string-append "--prefix=" #$output)))))))
|
||||
(inputs
|
||||
(list capstone
|
||||
libuv
|
||||
libzip
|
||||
lz4
|
||||
openssl
|
||||
qtbase
|
||||
qtsvg
|
||||
radare2
|
||||
sdb))
|
||||
(native-inputs
|
||||
(list pkg-config python-minimal-wrapper))
|
||||
(home-page "https://github.com/radareorg/iaito")
|
||||
(synopsis "Official radare2 GUI")
|
||||
(description "Iaito is the official graphical interface for radare2, a
|
||||
libre reverse engineering framework. Iaito focuses on simplicity, parity with
|
||||
commands, features, and keybindings.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public inspekt3d
|
||||
(let ((commit "703f52ccbfedad2bf5240bf8183d1b573c9d54ef")
|
||||
(revision "0"))
|
||||
@@ -2154,7 +2095,7 @@ bootloader in Espressif ESP8266 & ESP32 series chips.")
|
||||
(define-public radare2
|
||||
(package
|
||||
(name "radare2")
|
||||
(version "6.0.7")
|
||||
(version "5.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2162,59 +2103,29 @@ bootloader in Espressif ESP8266 & ESP32 series chips.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1nkqa8mkmvmbc3812gf5ayfmzyf0krjgc1695rpkphw3fsl76rgx"))
|
||||
(file-name (git-file-name name version))
|
||||
(patches
|
||||
(search-patches "radare2-fix-meson-build-to-use-sys-sdb.patch"
|
||||
"radare2-fix-meson-build-to-use-sys-qjs.patch"))))
|
||||
(build-system meson-build-system)
|
||||
"0hv9x31iabasj12g8f04incr1rbcdkxi3xnqn3ggp8gl4h6pf2f3"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-Duse_libuv=true"
|
||||
"-Duse_ssl=true"
|
||||
"-Duse_sys_capstone=true"
|
||||
"-Duse_sys_lz4=true"
|
||||
"-Duse_sys_magic=true"
|
||||
"-Duse_sys_openssl=true"
|
||||
"-Duse_sys_xxhash=true"
|
||||
"-Duse_sys_zip=true"
|
||||
"-Duse_sys_zlib=true")
|
||||
#:tests? #f ; tests require git and network access
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; CHECK LATER: This patches an incorrect relative include.
|
||||
(add-before 'build 'fix-relative-include
|
||||
(lambda _
|
||||
(substitute* "../source/libr/arch/p/java/plugin.c"
|
||||
(("include \".." all)
|
||||
(string-append all "/..")))))
|
||||
;; These tests require sample binaries from an external repository.
|
||||
(add-before 'check 'skip-tests
|
||||
(lambda _
|
||||
(substitute* '("../source/test/unit/test_bin.c"
|
||||
"../source/test/unit/test_dwarf.c"
|
||||
"../source/test/unit/test_dwarf_info.c"
|
||||
"../source/test/unit/test_dwarf_integration.c"
|
||||
"../source/test/unit/test_pdb.c"
|
||||
;; TODO: add r2pipe and enable this test.
|
||||
"../source/test/unit/test_r2pipe.c")
|
||||
(("(^| )main *\\(.*" all)
|
||||
(string-append all " exit (77);\n"))))))))
|
||||
(add-before 'configure 'mklibdir
|
||||
(lambda _ (mkdir-p (string-append #$output "/lib")))))
|
||||
#:configure-flags
|
||||
#~(list "--with-openssl"
|
||||
"--with-rpath"
|
||||
"--with-syscapstone"
|
||||
"--with-sysmagic"
|
||||
"--with-syszip"
|
||||
"--with-sysxxhash")
|
||||
#:make-flags #~(list (string-append "CC=" #$(cc-for-target)))))
|
||||
;; TODO: Add gmp and libzip and make the build system actually find them.
|
||||
(inputs
|
||||
(list capstone
|
||||
gmp
|
||||
libuv
|
||||
libzip
|
||||
lz4
|
||||
openssl
|
||||
quickjs-ng
|
||||
sdb
|
||||
zlib))
|
||||
(list capstone libuv openssl zip))
|
||||
(native-inputs
|
||||
(list node
|
||||
perl
|
||||
pkg-config
|
||||
python-minimal-wrapper))
|
||||
(list pkg-config))
|
||||
(propagated-inputs
|
||||
;; In the Libs: section of r_hash.pc.
|
||||
(list xxhash))
|
||||
@@ -2484,6 +2395,60 @@ slicing software to x3g files for standalone 3D printing on common 3D
|
||||
printers.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gnucap
|
||||
(package
|
||||
(name "gnucap")
|
||||
(version "20171003")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://git.savannah.gnu.org/cgit/gnucap.git/snapshot/gnucap-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16m09xa685qhj5fqq3bcgakrwnb74xhf5f7rpqkkf9fg8plzbb1g"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list readline))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
;; Set correct rpath so that gnucap finds libgnucap.so.
|
||||
(substitute* (list "apps/configure" "lib/configure"
|
||||
"main/configure" "modelgen/configure")
|
||||
(("LDFLAGS =")
|
||||
(string-append "LDFLAGS = -Wl,-rpath=" out "/lib")))
|
||||
;; gnucap uses a hand-written configure script that expects the
|
||||
;; --prefix argument to be the first argument passed to it.
|
||||
(invoke "./configure" (string-append "--prefix=" out)))))
|
||||
(replace 'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(libpath "../lib/O:../apps/O"))
|
||||
(with-directory-excursion "tests"
|
||||
;; Make test return non-zero exit code when a test fails.
|
||||
(substitute* "test"
|
||||
(("/bin/sh") "/bin/sh -e")
|
||||
(("\\|\\| echo \"\\*\\*\\*\\* \\$ii fails \\*\\*\\*\\*\"") ""))
|
||||
;; Fix expected plugin search path for test c_attach.1.gc
|
||||
(substitute* "==out/c_attach.1.gc.out"
|
||||
(("/usr/local/lib/gnucap")
|
||||
(string-append libpath ":" out "/lib/gnucap")))
|
||||
;; Set library path so that gnucap can find libgnucap.so
|
||||
;; while running the tests.
|
||||
(setenv "LD_LIBRARY_PATH" libpath)
|
||||
(invoke "./test" "../main/O/gnucap" "" "test-output" "==out"))))))))
|
||||
(home-page "https://www.gnu.org/software/gnucap/")
|
||||
(synopsis "Mixed analog and digital circuit simulator")
|
||||
(description "GNUcap is a circuit analysis package. It offers a general
|
||||
purpose circuit simulator and can perform DC and transient analyses, fourier
|
||||
analysis and AC analysis. The engine is designed to do true mixed-mode
|
||||
simulation.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public cutter
|
||||
(package
|
||||
(name "cutter")
|
||||
@@ -4366,19 +4331,11 @@ G-codes to binary and vice versa.")
|
||||
(lambda _
|
||||
(substitute* "tests/libslic3r/test_quadric_edge_collapse.cpp"
|
||||
(("#include <libigl/igl/qslim.h>")
|
||||
"#include <igl/qslim.h>"))))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda _
|
||||
(wrap-program (string-append #$output "/bin/prusa-slicer")
|
||||
;; For GtkFileChooserDialog.
|
||||
`("GSETTINGS_SCHEMA_DIR" =
|
||||
(,(string-append #$(this-package-input "gtk+")
|
||||
"/share/glib-2.0/schemas")))))))))
|
||||
"#include <igl/qslim.h>")))))))
|
||||
(native-inputs
|
||||
(list pkg-config catch2-3.8))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
boost-1.83
|
||||
(list boost-1.83
|
||||
cereal
|
||||
cgal
|
||||
curl
|
||||
@@ -5314,36 +5271,37 @@ forward kinematics solvers.")
|
||||
(name "python-orocos-kinematics-dynamics")
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source orocos-kinematics-dynamics))))
|
||||
(inherit (package-source orocos-kinematics-dynamics))
|
||||
(snippet '(begin
|
||||
(substitute* "python_orocos_kdl/CMakeLists.txt"
|
||||
;; Use the system pybind11 instead of the bundled version
|
||||
(("add_subdirectory\\(pybind11\\)")
|
||||
"find_package(pybind11)")
|
||||
;; change debian-specific python install directory
|
||||
(("dist-packages")
|
||||
"site-packages"))
|
||||
;; ROS 1 uses some dynamic attributes, which are
|
||||
;; disabled by default in pybind11. No harm in enabling them
|
||||
;; See "https://github.com/ros2/geometry2/issues/624
|
||||
;; and https://pybind11.readthedocs.io/en/stable/classes.html
|
||||
;; #dynamic-attributes <Both accessed June 1 2025>
|
||||
(substitute* "python_orocos_kdl/PyKDL/frames.cpp"
|
||||
(("m, \"Vector\"")
|
||||
"m, \"Vector\", py::dynamic_attr()")
|
||||
(("m, \"Frame\"")
|
||||
"m, \"Frame\", py::dynamic_attr()")
|
||||
(("m, \"Twist\"")
|
||||
"m, \"Twist\", py::dynamic_attr()")
|
||||
(("m, \"Wrench\"")
|
||||
"m, \"Wrench\", py::dynamic_attr()"))))))
|
||||
(native-inputs (list python pybind11 python-psutil))
|
||||
(inputs (list orocos-kinematics-dynamics))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(substitute* "python_orocos_kdl/CMakeLists.txt"
|
||||
;; Use the system pybind11 instead of the bundled version
|
||||
(("add_subdirectory\\(pybind11\\)")
|
||||
"find_package(pybind11)")
|
||||
;; change debian-specific python install directory
|
||||
(("dist-packages")
|
||||
"site-packages"))
|
||||
;; ROS 1 uses some dynamic attributes, which are
|
||||
;; disabled by default in pybind11. No harm in enabling them
|
||||
;; See "https://github.com/ros2/geometry2/issues/624
|
||||
;; and https://pybind11.readthedocs.io/en/stable/classes.html
|
||||
;; #dynamic-attributes <Both accessed June 1 2025>
|
||||
(substitute* "python_orocos_kdl/PyKDL/frames.cpp"
|
||||
(("m, \"Vector\"")
|
||||
"m, \"Vector\", py::dynamic_attr()")
|
||||
(("m, \"Frame\"")
|
||||
"m, \"Frame\", py::dynamic_attr()")
|
||||
(("m, \"Twist\"")
|
||||
"m, \"Twist\", py::dynamic_attr()")
|
||||
(("m, \"Wrench\"")
|
||||
"m, \"Wrench\", py::dynamic_attr()"))
|
||||
(chdir "python_orocos_kdl")))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
|
||||
@@ -392,56 +392,50 @@ embedded systems.")
|
||||
(define-public python-efl
|
||||
(package
|
||||
(name "python-efl")
|
||||
(version "1.26.1")
|
||||
(version "1.26.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.enlightenment.org/rel/bindings/"
|
||||
"python/python-efl-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1mr80vgbcs03rs5lbmg8pxj8hifkrzrwdrw01plik2h729z3knyw"))
|
||||
(modules '((guix build utils)))
|
||||
;; Remove files generated by Cython
|
||||
(snippet
|
||||
'(begin
|
||||
(for-each (lambda (file)
|
||||
(let ((generated-file
|
||||
(string-append (string-drop-right file 3) "c")))
|
||||
(when (file-exists? generated-file)
|
||||
(delete-file generated-file))))
|
||||
(find-files "efl" "\\.pyx$"))
|
||||
(delete-file "efl/eo/efl.eo_api.h")))))
|
||||
(build-system pyproject-build-system)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.enlightenment.org/rel/bindings/"
|
||||
"python/python-efl-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dj6f24n33hkpy0bkdclnzpxhvs8vpaxqaf7hkw0di19pjwrq25h"))
|
||||
(modules '((guix build utils)))
|
||||
;; Remove files generated by Cython
|
||||
(snippet
|
||||
'(begin
|
||||
(for-each (lambda (file)
|
||||
(let ((generated-file
|
||||
(string-append (string-drop-right file 3) "c")))
|
||||
(when (file-exists? generated-file)
|
||||
(delete-file generated-file))))
|
||||
(find-files "efl" "\\.pyx$"))
|
||||
(delete-file "efl/eo/efl.eo_api.h")))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "tests"
|
||||
;; These tests try to connect to the internet.
|
||||
"--ignore=tests/ecore/test_09_file_download.py"
|
||||
"--ignore=tests/ecore/test_11_con.py"
|
||||
;; The above test ignorance probably breaks this one.
|
||||
"--deselect=tests/ecore/test_08_exe.py::TestExe::testInit"
|
||||
;; This test requires access to a running Xorg server,
|
||||
;; /var/lib/dbus and /etc.
|
||||
"--ignore=tests/dbus/test_01_basics.py"
|
||||
;; XXX: RuntimeWarning: Setting standard icon failed
|
||||
"--ignore=tests/elementary/test_02_image_icon.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-flags
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((include-dir (search-input-directory inputs
|
||||
"include/dbus-1.0")))
|
||||
(setenv "CFLAGS" (string-append "-I" include-dir)))))
|
||||
(add-before 'check 'configure-tests
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")))))) ;needed by tests
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(setenv "ENABLE_CYTHON" "1")
|
||||
(invoke "python" "setup.py" "build")))
|
||||
(add-before 'build 'set-flags
|
||||
(lambda _
|
||||
(setenv "CFLAGS"
|
||||
(string-append "-I" (assoc-ref %build-inputs "python-dbus")
|
||||
"/include/dbus-1.0"))))
|
||||
(add-before 'check 'set-environment
|
||||
(lambda _
|
||||
;; Some tests require write access to HOME.
|
||||
(setenv "HOME" "/tmp")
|
||||
;; These tests try to connect to the internet.
|
||||
(delete-file "tests/ecore/test_09_file_download.py")
|
||||
(delete-file "tests/ecore/test_11_con.py"))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
python-cython-0
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(inputs (list efl python-dbus python-packaging))
|
||||
(list pkg-config python-cython-0))
|
||||
(inputs
|
||||
(list efl python-dbus python-packaging))
|
||||
(home-page "https://www.enlightenment.org/")
|
||||
(synopsis "Python bindings for EFL")
|
||||
(description
|
||||
|
||||
@@ -185,7 +185,7 @@ testing InfiniBand networks.")
|
||||
(define-public ucx
|
||||
(package
|
||||
(name "ucx")
|
||||
(version "1.19.0")
|
||||
(version "1.17.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -195,7 +195,7 @@ testing InfiniBand networks.")
|
||||
(patches (search-patches "ucx-tcp-iface-ioctl.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"12j9200iyg6d0yr84r25hcpq8qqzfaa08klbhvgrqpflpfcljz4z"))
|
||||
"09182kx60kq7iyjyz3mpcrgp1mm0lnpc0f4hd4hlw5yyabkxrpa1"))
|
||||
(snippet
|
||||
;; As seen in commit b0a275a5492125a13020cd095fe9934e0b5e7c6a.
|
||||
#~(begin (use-modules (guix build utils))
|
||||
|
||||
@@ -692,25 +692,3 @@ as well as those for Chinese dialects. It has the ability to compose phrases
|
||||
and sentences intelligently and provide very accurate traditional Chinese
|
||||
output.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public fcitx5-hangul
|
||||
(package
|
||||
(name "fcitx5-hangul")
|
||||
(version "5.1.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fcitx/fcitx5-hangul")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "02lkbwg25jr4hazjyxcy69midfsmxc0ksbdrfwbmqcfa3kz5d9gb"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list extra-cmake-modules pkg-config gettext-minimal))
|
||||
(inputs (list fcitx5 libhangul))
|
||||
(home-page "https://github.com/fcitx/fcitx5-hangul")
|
||||
(synopsis "Hangul support for Fcitx5")
|
||||
(description
|
||||
"This package provides the Hangul (Korean) input method engine for Fcitx5.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
@@ -719,34 +719,34 @@ from a mounted file system.")
|
||||
(home-page "http://www.gphoto.org/proj/gphotofs/")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define (bcachefs-tools-rust-target)
|
||||
(define bcachefs-tools-rust-target
|
||||
(platform-rust-target (lookup-platform-by-target-or-system
|
||||
(or (%current-target-system)
|
||||
(%current-system)))))
|
||||
|
||||
(define (bcachefs-tools-target/release)
|
||||
(string-append "target/" (bcachefs-tools-rust-target) "/release"))
|
||||
(define bcachefs-tools-target/release
|
||||
(string-append "target/" bcachefs-tools-rust-target "/release"))
|
||||
|
||||
(define (bcachefs-tools-cargo-args)
|
||||
(define bcachefs-tools-cargo-args
|
||||
;; Distinct from -MAKE-FLAGS for use with ‘cargo test’ in 'check.
|
||||
#~(list "--release"
|
||||
(string-append "--target=" #$(bcachefs-tools-rust-target))))
|
||||
(string-append "--target=" #$bcachefs-tools-rust-target)))
|
||||
|
||||
;; XXX We want to share common make flags across different packages & phases,
|
||||
;; but the cargo-build-system doesn't allow #:make-flags.
|
||||
(define (bcachefs-tools-make-flags)
|
||||
(define bcachefs-tools-make-flags
|
||||
;; These result of these flags should be as minimal as possible.
|
||||
;; Enable any optional features in the bcachefs-tools package instead.
|
||||
#~(list (string-append "CARGO_BUILD_ARGS="
|
||||
(string-join #$(bcachefs-tools-cargo-args) " "))
|
||||
(string-join #$bcachefs-tools-cargo-args " "))
|
||||
(string-append "CC=" #$(cc-for-target))
|
||||
(string-append "PKG_CONFIG=" #$(pkg-config-for-target))))
|
||||
|
||||
(define (bcachefs-tools-make-install-flags)
|
||||
(define bcachefs-tools-make-install-flags
|
||||
#~(cons* (string-append "PREFIX=" #$output)
|
||||
"INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools"
|
||||
"PKGCONFIG_UDEVRULESDIR=$(PREFIX)/lib/udev/rules.d"
|
||||
#$(bcachefs-tools-make-flags)))
|
||||
#$bcachefs-tools-make-flags))
|
||||
|
||||
(define bcachefs-tools-minimal
|
||||
;; This ‘minimal’ package is not *that* minimal, and not different enough to
|
||||
@@ -782,7 +782,7 @@ from a mounted file system.")
|
||||
(number->string (parallel-job-count))
|
||||
"1")
|
||||
(string-append "VERSION=" #$version)
|
||||
#$(bcachefs-tools-make-flags))))
|
||||
#$bcachefs-tools-make-flags)))
|
||||
(add-before 'install 'patch-install
|
||||
;; ‘make install’ hard-codes target/release/bcachefs, which is
|
||||
;; incorrect when passing --target, as required to cross-compile or
|
||||
@@ -790,11 +790,11 @@ from a mounted file system.")
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("target/release")
|
||||
#$(bcachefs-tools-target/release)))))
|
||||
#$bcachefs-tools-target/release))))
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(apply invoke "make" "install"
|
||||
#$(bcachefs-tools-make-install-flags)))))))
|
||||
#$bcachefs-tools-make-install-flags))))))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
@@ -851,7 +851,7 @@ performance and other characteristics.")
|
||||
(define bcachefs
|
||||
(or (false-if-exception (search-input-file native-inputs
|
||||
"sbin/bcachefs"))
|
||||
(string-append #$(bcachefs-tools-target/release)
|
||||
(string-append #$bcachefs-tools-target/release
|
||||
"/bcachefs")))
|
||||
|
||||
(define (output-completions shell file)
|
||||
@@ -905,16 +905,16 @@ performance and other characteristics.")
|
||||
"1")
|
||||
(string-append "VERSION="
|
||||
#$(package-version this-package))
|
||||
#$(bcachefs-tools-make-flags))))
|
||||
#$bcachefs-tools-make-flags)))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(apply invoke "cargo" "test" #$(bcachefs-tools-cargo-args)))))
|
||||
(apply invoke "cargo" "test" #$bcachefs-tools-cargo-args))))
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(apply invoke "make" "install"
|
||||
(string-append "PREFIX=" #$output)
|
||||
#$(bcachefs-tools-make-install-flags))))))))
|
||||
#$bcachefs-tools-make-install-flags)))))))
|
||||
(inputs (modify-inputs (package-inputs bcachefs-tools-minimal)
|
||||
(prepend `(,eudev "static")
|
||||
`(,keyutils "static")
|
||||
@@ -952,7 +952,7 @@ minimal bcachefs-tools package. It is meant to be used in initrds.")
|
||||
(define-public bcachefs-linux-module
|
||||
(package
|
||||
(name "bcachefs-linux-module")
|
||||
(version "1.33.0")
|
||||
(version "1.32.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -961,7 +961,7 @@ minimal bcachefs-tools package. It is meant to be used in initrds.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05lqw3mxi73nm1q4qv43p9hyiwi2hdx4nc9fzm7rxwip6ys1kqkd"))))
|
||||
(base32 "0m85s00i1xfb9lr73j41f80akkhcijh9m0b602r76b15a0l5v3a9"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+81
-63
@@ -39,7 +39,7 @@
|
||||
;;; Copyright © 2023 Attila Lendvai <attila@lendvai.name>
|
||||
;;; Copyright © 2024 Saku Laesvuori <saku@laesvuori.fi>
|
||||
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025-2026 Hennadii Stepanov <hebasto@gmail.com>
|
||||
;;; Copyright © 2025 Hennadii Stepanov <hebasto@gmail.com>
|
||||
;;; Copyright © 2025 James Smith <jsubuntuxp@disroot.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -158,7 +158,7 @@
|
||||
;; <https://bitcoincore.org/en/lifecycle/#schedule>.
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "30.2")
|
||||
(version "30.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -166,16 +166,14 @@
|
||||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jw4djh22v0nih0n7irdbknfbqavlc4l3b8176b5qgc88a60pl3g"))))
|
||||
"0x39bqd9ql7b6s7sj8ws8gw6g4nbgf6cplnys2lrmvfza56jliwv"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:qtbase qtbase
|
||||
#:configure-flags
|
||||
(list #:configure-flags
|
||||
#~(list
|
||||
"-DBUILD_GUI=ON"
|
||||
"-DBUILD_BENCH=ON"
|
||||
"-DWITH_ZMQ=ON")
|
||||
#:qtbase qtbase
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-no-git-flag
|
||||
@@ -201,7 +199,7 @@
|
||||
capnproto
|
||||
libevent
|
||||
qrencode
|
||||
qtwayland
|
||||
qtbase
|
||||
sqlite
|
||||
zeromq))
|
||||
(home-page "https://bitcoincore.org/")
|
||||
@@ -356,14 +354,14 @@ Accounting.")
|
||||
(define-public homebank
|
||||
(package
|
||||
(name "homebank")
|
||||
(version "5.9.6")
|
||||
(version "5.9.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.gethomebank.org/public/sources"
|
||||
"/homebank-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ymp7qj6im1cl66lbf9q2r8dgav3dagbhbipskg8zcgj0kz0ncph"))))
|
||||
"1gwzj3x3rnd3f5z1fzvrl740zhpnxjcsbxlmabwgkw22l6226i4c"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config intltool))
|
||||
@@ -834,7 +832,7 @@ blockchain.")
|
||||
;; the system's dynamically linked library.
|
||||
(package
|
||||
(name "monero")
|
||||
(version "0.18.4.5")
|
||||
(version "0.18.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -852,7 +850,7 @@ blockchain.")
|
||||
delete-file-recursively
|
||||
'("external/miniupnp" "external/rapidjson"))))
|
||||
(sha256
|
||||
(base32 "1lf3rss9y34g51hxqny8vcp8hayv0r3lsndxl85gciqxgb0ls7dz"))))
|
||||
(base32 "0f5b8yvrfhxc86ws3nfz0v6prl9n2nq9hvwlc2wcgspp8lbl26j8"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list doxygen
|
||||
@@ -939,7 +937,7 @@ the Monero command line client and daemon.")
|
||||
(define-public monero-gui
|
||||
(package
|
||||
(name "monero-gui")
|
||||
(version "0.18.4.5")
|
||||
(version "0.18.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -955,7 +953,7 @@ the Monero command line client and daemon.")
|
||||
;; See the 'extract-monero-sources' phase.
|
||||
(delete-file-recursively "monero")))
|
||||
(sha256
|
||||
(base32 "02qlm0caqscq5ms4gd3ckipsq90gvhjprqdcnpcxwdp3fa16749i"))))
|
||||
(base32 "0bvd3mv0ahkfx2k2n6z5n7mnksd75h859ji32a4d74vaizc04igm"))))
|
||||
(build-system qt-build-system)
|
||||
(native-inputs
|
||||
`(,@(package-native-inputs monero)
|
||||
@@ -1151,10 +1149,11 @@ Ledger Nano as a hardware SSH/GPG agent.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1mblx4favmw4nf7k9rfl00ivv77kgdiwghyz4xv5cp0v410kjaqc"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments (list #:tests? #f)) ; No test suite.
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list (list python "tk")))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; No test suite.
|
||||
(inputs
|
||||
`(("python-tkinter" ,python "tk")))
|
||||
(home-page "https://github.com/rendaw/trezor-gpg-pinentry-tk")
|
||||
(synopsis "GPG pinentry program for use with @code{trezor-agent}")
|
||||
(description
|
||||
@@ -1167,19 +1166,14 @@ settings.")
|
||||
(define-public python-mnemonic
|
||||
(package
|
||||
(name "python-mnemonic")
|
||||
(version "0.21")
|
||||
(version "0.20")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/trezor/python-mnemonic")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mnemonic" version))
|
||||
(sha256
|
||||
(base32 "1r8cdlgqpmj71ap3kyhc2nq8dn29gmj7v8dlq8kgcy91jky94n8g"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-poetry-core python-pytest))
|
||||
(base32 "1xi5qvj2rvi5almf9c89rl7hz1z4ms04d53pg818i4vpkmivavvw"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-pbkdf2))
|
||||
(home-page "https://github.com/trezor/python-mnemonic")
|
||||
@@ -1258,6 +1252,29 @@ of Bitcoin BIP-0039.")
|
||||
Ledger Blue/Nano S.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-btchip-python
|
||||
(package
|
||||
(name "python-btchip-python")
|
||||
(version "0.1.32")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "btchip-python" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mcg3gfd0qk8lhral3vy9cfd4pii9kzs42q71pf6b3y0c70y1x9l"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; those require PyQt4
|
||||
(propagated-inputs
|
||||
(list python-ecdsa python-hidapi))
|
||||
(home-page "https://github.com/LedgerHQ/btchip-python")
|
||||
(synopsis "Python library to communicate with Ledger Nano dongle")
|
||||
(description
|
||||
"This package provides a Python library to communicate with Ledger
|
||||
Nano dongle.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-trezor
|
||||
(package
|
||||
(name "python-trezor")
|
||||
@@ -1337,22 +1354,23 @@ TREZOR Hardware Wallet.")
|
||||
(define-public python-keepkey
|
||||
(package
|
||||
(name "python-keepkey")
|
||||
(version "7.2.1")
|
||||
(version "6.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/keepkey/python-keepkey")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "00hqppdj3s9y25x4ad59y8axq94dd4chhw9zixq32sdrd9v8z55a"))))
|
||||
(build-system pyproject-build-system)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "keepkey" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0z3d0m6364v9dv0njs4cd5m5ai6j6v35xaaxfxl90m9vmyxy81vd"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'custom
|
||||
#:test-flags #~(find-files "tests/unit" "\\.py$")))
|
||||
(native-inputs (list python-setuptools))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(apply invoke "python" (find-files "tests/unit" "\\.py$")))))))
|
||||
(propagated-inputs
|
||||
(list python-ecdsa python-hidapi python-libusb1 python-mnemonic
|
||||
python-protobuf))
|
||||
@@ -1463,18 +1481,12 @@ the KeepKey Hardware Wallet.")
|
||||
(version "0.9.0")
|
||||
(source
|
||||
(origin
|
||||
;; TODO: Figure out how to build from
|
||||
;; https://github.com/romanz/trezor-agent
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "keepkey_agent" version))
|
||||
(sha256
|
||||
(base32
|
||||
"03779gvlx70i0nnry98i4pl1d92604ix5x6jgdfkrdgzqbh5vj27"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no tests in PyPI package
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
(list python-keepkey python-packaging python-trezor-agent))
|
||||
(home-page "https://github.com/romanz/trezor-agent")
|
||||
@@ -2463,23 +2475,29 @@ analysis of financial market data.")
|
||||
(define-public python-mt-940
|
||||
(package
|
||||
(name "python-mt-940")
|
||||
(version "4.30.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/WoLpH/mt940.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13g5338aa8vgkx8g94vz5d8ynfq3jndvyh1nz6dlhw4axwr4x8dp"))))
|
||||
(version "4.23.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/WoLpH/mt940.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0z9w1qalcphsck3j6vkrs7k47ah9zq2rv0lm9nmcsgwpyp59qkyf"))))
|
||||
(properties '(("upstream-name" #{.}# "mt-940")))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "-c" "/dev/null"))) ; Remove custom --cov flags.
|
||||
(native-inputs (list python-pytest python-pyyaml python-setuptools))
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
|
||||
(when tests?
|
||||
;; Remove custom --cov flags.
|
||||
(delete-file "pytest.ini")
|
||||
(invoke "pytest" "-vv")))))))
|
||||
(native-inputs (list python-flake8
|
||||
python-pytest
|
||||
python-pyyaml))
|
||||
(home-page "https://mt940.readthedocs.io/")
|
||||
(synopsis "Python parser for MT940-encoded SWIFT data")
|
||||
(description
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system qt)
|
||||
#:use-module (guix download)
|
||||
@@ -79,7 +78,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 qt)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages swig)
|
||||
@@ -492,31 +490,29 @@ Management Engine (ME). You need to @code{sudo rmmod mei_me} and
|
||||
(package
|
||||
(name "me-cleaner")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/corna/me_cleaner")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "1bdj2clm13ir441vn7sv860xsc5gh71ja5lc2wn0gggnff0adxj4"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system pyproject-build-system)
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/corna/me_cleaner")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"1bdj2clm13ir441vn7sv860xsc5gh71ja5lc2wn0gggnff0adxj4"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda _
|
||||
(install-file "man/me_cleaner.1"
|
||||
(string-append #$output "/share/man/man1")))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(man (string-append out "/share/man/man1")))
|
||||
(install-file "man/me_cleaner.1" man)
|
||||
#t))))))
|
||||
(home-page "https://github.com/corna/me_cleaner")
|
||||
(synopsis "Intel ME cleaner")
|
||||
(description
|
||||
"This package provides tools for disabling Intel ME as far as possible
|
||||
(it only edits ME firmware image files).")
|
||||
(description "This package provides tools for disabling Intel
|
||||
ME as far as possible (it only edits ME firmware image files).")
|
||||
(license license:gpl3+)
|
||||
|
||||
;; This is an Intel thing.
|
||||
|
||||
+11
-157
@@ -51,7 +51,7 @@
|
||||
;;; Copyright © 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
|
||||
;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
|
||||
;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
|
||||
;;; Copyright © 2022 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2022 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2023 Ahmad Draidi <a.r.draidi@redscript.org>
|
||||
;;; Copyright © 2023 Arnaud Lechevallier <arnaud.lechevallier@free.fr>
|
||||
@@ -69,7 +69,6 @@
|
||||
;;; Copyright © 2025 Liam Hupfer <liam@hpfr.net>
|
||||
;;; Copyright © 2025 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;; Copyright © 2025 Lee Thompson <lee.p.thomp@gmail.com>
|
||||
;;; Copyright © 2025 Alexandre Hannud Abdo <abdo@member.fsf.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -488,7 +487,7 @@ provide serif, sans and monospaced variants.")
|
||||
package provides the TrueType (TTF) files.")
|
||||
(license
|
||||
(license:fsdg-compatible
|
||||
"https://spdx.org/licenses/Bitstream-Vera.html"
|
||||
"https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"
|
||||
"The Font Software may be sold as part of a larger software package but
|
||||
no copy of one or more of the Font Software typefaces may be sold by
|
||||
itself."))))
|
||||
@@ -576,61 +575,6 @@ intended to be optimally legible for readers who are partially visually impaired
|
||||
all characters maximally distinguishable from one another.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-atkinson-hyperlegible-next
|
||||
(let ((commit "7925f50f649b3813257faf2f4c0b381011f434f1")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "font-atkinson-hyperlegible-next")
|
||||
(version (git-version "2.001" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url
|
||||
"https://github.com/googlefonts/atkinson-hyperlegible-next/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01m59xl35xvjv07d0qwli1czgfjg2wfgv676xi71is2rirh1y71f"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://www.brailleinstitute.org/freefont/")
|
||||
(synopsis
|
||||
"Typeface designed to increase legibility for low vision readers")
|
||||
(description
|
||||
"Atkinson Hyperlegible Next is an improvement of the typeface Atkinson
|
||||
Hyperlegible, including new characters, improved glyphs, and improved kerning.
|
||||
Additionally, the two previous weights has increased to six, all in upright
|
||||
and italic, allowing for greater flexibility in use.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-atkinson-hyperlegible-mono
|
||||
(let ((commit "154d50362016cc3e873eb21d242cd0772384c8f9")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "font-atkinson-hyperlegible-mono")
|
||||
(version (git-version "2.001" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url
|
||||
"https://github.com/googlefonts/atkinson-hyperlegible-next-mono/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0bdhp70zniqnj14raw9krb034zrvvxhzimzqys713p8ksrndck2p"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://www.brailleinstitute.org/freefont/")
|
||||
(synopsis
|
||||
"Monospace typeface designed to increase legibility for low vision readers")
|
||||
(description
|
||||
"Atkinson Hyperlegible Mono is an entirely new typeface inspired by
|
||||
Atkinson Hyperlegible. The characters in a monospace typeface all occupy the
|
||||
same width, allowing for them to be scanned quickly in table-based and coding
|
||||
environments. The glyphs in Atkinson Hyperlegible Mono are newly created for
|
||||
this variation, and unique to the typeface.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-lato
|
||||
(package
|
||||
(name "font-lato")
|
||||
@@ -767,25 +711,6 @@ font is provided in the OpenType font (OTF) format.")
|
||||
(properties '((upstream-name . "freefont")
|
||||
(ftp-directory . "/gnu/freefont")))))
|
||||
|
||||
(define-public font-great-vibes
|
||||
(package
|
||||
(name "font-great-vibes")
|
||||
(version "1.103")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/googlefonts/great-vibes/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1bxjr41spgf0l1w2fhs6743gvp0id2hv0vsivqcflb8f631rkkq1"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://fonts.google.com/specimen/Great+Vibes")
|
||||
(synopsis "Flowing script font")
|
||||
(description "Great Vibes is a flowing script font with casual uppercase
|
||||
letters and more formal lowercase letters.")
|
||||
(license license:silofl1.1)))
|
||||
|
||||
(define-public font-liberation
|
||||
(package
|
||||
(name "font-liberation")
|
||||
@@ -926,26 +851,6 @@ The unified Libertinus family consists of:
|
||||
expansion of Franklin Gothic, a classic font. It covers 105 Latin Languages.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-playwrite
|
||||
(package
|
||||
(name "font-playwrite")
|
||||
(version "1.003")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/TypeTogether/Playwrite/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vjll0jdmy5liw68k1p0pry5hzjjxna9a2sccifvwckwxngg84zc"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://github.com/TypeTogether/Playwrite/")
|
||||
(synopsis "Family of primary school cursive fonts")
|
||||
(description "Playwrite is a typeface engine for the creation of primary
|
||||
school cursive fonts. It sports several variations of lowercase and uppercase
|
||||
letters to account for regional differences.")
|
||||
(license license:silofl1.1)))
|
||||
|
||||
(define-public font-terminus
|
||||
(package
|
||||
(name "font-terminus")
|
||||
@@ -1591,7 +1496,7 @@ noncharacters are also represented.")
|
||||
(define-public font-google-noto
|
||||
(package
|
||||
(name "font-google-noto")
|
||||
(version "2026.01.01")
|
||||
(version "2025.07.01")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1600,7 +1505,7 @@ noncharacters are also represented.")
|
||||
(commit (string-append "noto-monthly-release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rrwxr7g1gwbp0gb2kjxi0s42hijhs82fc4dbqa6spkj4d9c9qq9"))))
|
||||
(base32 "0p27wbxdwi99r5yj33z9jadlv4rbhp5vw5c0ir15bymvdwdr8s8z"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -4634,7 +4539,7 @@ Mainland China.")
|
||||
(define-public font-chiron-sung-hk
|
||||
(package
|
||||
(name "font-chiron-sung-hk")
|
||||
(version "1.022")
|
||||
(version "1.017")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -4643,7 +4548,7 @@ Mainland China.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bndyr8bi9ngrba3c3n9k9k26s0irk62jhly7fj6g62k87b82z75"))))
|
||||
"1pg0zh4gajn699am26j4ldpsa51bafn7n0jc5s4v6sslixj3ccwg"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
@@ -4651,12 +4556,12 @@ Mainland China.")
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(let ((install (assoc-ref %standard-phases 'install)))
|
||||
(with-directory-excursion "VAR_OTF"
|
||||
(with-directory-excursion "VAR"
|
||||
(for-each delete-file (find-files "." "\\.ttf$"))
|
||||
(install #:outputs `(("out" . ,#$output))))
|
||||
(with-directory-excursion "STATIC_OTF"
|
||||
(with-directory-excursion "OTF"
|
||||
(install #:outputs `(("out" . ,#$output:otf))))
|
||||
(with-directory-excursion "STATIC_TTF"
|
||||
(with-directory-excursion "TTF"
|
||||
(install #:outputs `(("out" . ,#$output:ttf))))))))))
|
||||
(outputs '("out" "otf" "ttf"))
|
||||
(home-page "https://chiron-fonts.github.io/")
|
||||
@@ -4672,7 +4577,7 @@ prevalent typefaces in Traditional Chinese regions.")
|
||||
(package
|
||||
(inherit font-chiron-sung-hk)
|
||||
(name "font-chiron-hei-hk")
|
||||
(version "2.605")
|
||||
(version "2.524")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -4681,7 +4586,7 @@ prevalent typefaces in Traditional Chinese regions.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1g06vcrav4bd57ka4b6wrjas04rnhb35n7c7447lv2yp26z10ypp"))))
|
||||
"077f50yjcf5slr2jzrdampwcrlaswvdnin5iwnirzsms3x9vsm69"))))
|
||||
(synopsis "Traditional Chinese Gothic typeface")
|
||||
(description
|
||||
"Chiron Hei HK is a Traditional Chinese Gothic typeface based on the Hong
|
||||
@@ -5126,54 +5031,3 @@ is necessary, such as when composing tabular data using text.")
|
||||
technical and idiosyncratic feel—perfect for headers and pull-quotes. Made to
|
||||
work well together with Mona Sans.")
|
||||
(license license:silofl1.1)))
|
||||
|
||||
|
||||
(define-public font-peppercarrot
|
||||
(package
|
||||
(name "font-peppercarrot")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://framagit.org/peppercarrot/fonts")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1yw5wjd6rydgllf0c3g5nh9zqbnhc1wbbhsx36c08isr28sy59mm"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:license-file-regexp ".*\\.(COPYRIGHT|LICENSE)$"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; License files are spread in subdirectories, gotta catch 'em all!
|
||||
(replace 'install-license-files
|
||||
(let ((install-license-files (assoc-ref %standard-phases
|
||||
'install-license-files))
|
||||
(package-directories (find-files "."
|
||||
(lambda (file stat)
|
||||
(eq? 'directory
|
||||
(stat:type stat)))
|
||||
#:directories? #t)))
|
||||
(lambda args
|
||||
(for-each (lambda (directory)
|
||||
(with-directory-excursion directory
|
||||
(apply install-license-files args)))
|
||||
package-directories)))))))
|
||||
(home-page "https://www.peppercarrot.com/en/fonts/")
|
||||
(synopsis "Fonts used by the comic strip Pepper&Carrot")
|
||||
(description
|
||||
"This package provides a collection of open fonts compiled and adapted by David
|
||||
Revoy and collaborators for use in the comic strip Pepper&Carrot.")
|
||||
;; We list all licenses used for any of the many fonts in the collection
|
||||
(license (list license:silofl1.1
|
||||
license:silofl1.0
|
||||
(license:non-copyleft
|
||||
"http://jikasei.me/info/license.html#M_FONT_LICENSE_1")
|
||||
license:gpl3
|
||||
license:gpl3+
|
||||
license:gpl2
|
||||
license:gpl2+
|
||||
license:asl2.0
|
||||
license:cc-by3.0))))
|
||||
|
||||
@@ -2211,7 +2211,6 @@ work well with other GTK desktop environments.")
|
||||
("freetype" ,freetype)
|
||||
("glib" ,glib)
|
||||
("pango" ,pango)
|
||||
("perl" ,perl) ;needed for pdfoutline
|
||||
("perl-pdf-api2" ,perl-pdf-api2)
|
||||
("perl-libintl-perl" ,perl-libintl-perl)
|
||||
("unicode-blocks"
|
||||
@@ -2228,10 +2227,7 @@ work well with other GTK desktop environments.")
|
||||
(synopsis "PDF and PostScript font samples generator")
|
||||
(description "This package provides a tool that can be used to make font
|
||||
samples that show coverage of the font and are similar in appearance to
|
||||
Unicode Charts. It was developed for use with DejaVu Fonts project.
|
||||
|
||||
This package also includes the @command{pdfoutline} script, which can be used
|
||||
to modify outlines (machine-readable tables of contents) in PDF files.")
|
||||
Unicode Charts. It was developed for use with DejaVu Fonts project.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libraqm
|
||||
|
||||
@@ -2820,57 +2820,35 @@ to the C library @code{uchardet} to increase performance.")
|
||||
(version "2.5.8")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/coldfix/udiskie")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "udiskie" version))
|
||||
(sha256
|
||||
(base32 "0ccp55fgmcc4fsd7jsqla6k1m6v8zkn03i4axw446zh2nzxpanhl"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'custom
|
||||
#:test-flags #~(list "test/test_match.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'check 'fix-entry-points
|
||||
;; FIXME: See: <https://codeberg.org/guix/guix/issues/4509>.
|
||||
(lambda _
|
||||
(substitute* (string-append #$output "/bin/.udiskie-real")
|
||||
(("from udiskie.cli import Daemon.main")
|
||||
"from udiskie.cli import Daemon"))
|
||||
(substitute* (string-append #$output "/bin/.udiskie-info-real")
|
||||
(("from udiskie.cli import Info.main")
|
||||
"from udiskie.cli import Info"))
|
||||
(substitute* (string-append #$output "/bin/.udiskie-mount-real")
|
||||
(("from udiskie.cli import Mount.main")
|
||||
"from udiskie.cli import Mount"))
|
||||
(substitute* (string-append #$output "/bin/.udiskie-umount-real")
|
||||
(("from udiskie.cli import Umount.main")
|
||||
"from udiskie.cli import Umount"))))
|
||||
(add-after 'wrap 'wrap-gi-typelib
|
||||
(lambda _
|
||||
(wrap-program (string-append #$output "/bin/udiskie")
|
||||
`("GI_TYPELIB_PATH" ":" prefix
|
||||
(,(getenv "GI_TYPELIB_PATH")))))))))
|
||||
(base32
|
||||
"0c6i7i7yb0lqrfxjrh63y6amw2npkp1n3dxdfjf9zh4pgbnaivd3"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
(list asciidoc
|
||||
gettext-minimal
|
||||
gobject-introspection
|
||||
python-setuptools))
|
||||
gobject-introspection))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
gobject-introspection
|
||||
gtk+
|
||||
libappindicator
|
||||
libnotify
|
||||
python-docopt
|
||||
python-keyutils
|
||||
python-pygobject
|
||||
python-pyxdg
|
||||
python-pyyaml
|
||||
udisks))
|
||||
(propagated-inputs
|
||||
(list python-docopt python-pygobject python-keyutils python-pyxdg
|
||||
python-pyyaml))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-gi-typelib
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gi-typelib-path (getenv "GI_TYPELIB_PATH")))
|
||||
(wrap-program (string-append out "/bin/udiskie")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))))))))
|
||||
(home-page "https://github.com/coldfix/udiskie")
|
||||
(synopsis "Automounter for removable media")
|
||||
(description
|
||||
@@ -3251,41 +3229,6 @@ The portal interfaces include APIs for file access, opening URIs, printing
|
||||
and others.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public xdg-desktop-portal-next
|
||||
(let ((base xdg-desktop-portal))
|
||||
(package
|
||||
(inherit base)
|
||||
(version "1.20.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/flatpak/xdg-desktop-portal/releases/download/"
|
||||
version "/xdg-desktop-portal-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p4yvbhqr8yf231gm69vdz3h7na8m6x1mhiw3bmhg4gm6x4idysb"))
|
||||
(patches (search-patches
|
||||
"xdg-desktop-portal-1.20.3-disable-configuration-search-exit.patch"))
|
||||
(modules '((guix build utils)))
|
||||
;; Disable failing tests.
|
||||
(snippet #~(substitute* "tests/meson.build"
|
||||
((".*test_dynamiclauncher.*") "")
|
||||
((".*test_notification.*") "")
|
||||
((".*test_usb.*") "")))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:configure-flags flags #~'())
|
||||
;; Requires python-furo, which isn't packaged for guix, and depends
|
||||
;; on node.js.
|
||||
#~(append '("-Ddocumentation=disabled")
|
||||
#$flags))))
|
||||
(inputs (modify-inputs (package-inputs base)
|
||||
(append gstreamer
|
||||
gst-plugins-base
|
||||
gst-plugins-good
|
||||
umockdev))))))
|
||||
|
||||
(define-public xdg-desktop-portal-gtk
|
||||
(package
|
||||
(name "xdg-desktop-portal-gtk")
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
(define-public gambas
|
||||
(package
|
||||
(name "gambas")
|
||||
(version "3.21.1")
|
||||
(version "3.21.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -64,7 +64,7 @@
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mscfpm9ldnk8dfg7ripxyqg77j8q3bliwkacqwih37151mrc07s"))))
|
||||
(base32 "0lkm4fbxqmkqpk2f2z660m77xshhmvj4pnlv0z43zrarsij8l6gf"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
@@ -38,7 +38,6 @@
|
||||
;;; Copyright © 2025 Arnaud Lechevallier <arnaud.lechevallier@free.fr>
|
||||
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
|
||||
;;; Copyright © 2025 gemmaro <gemmaro.dev@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -511,19 +510,13 @@ PCM data.")
|
||||
(define-public nml
|
||||
(package
|
||||
(name "nml")
|
||||
(version "0.8.1")
|
||||
(version "0.7.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "nml" version))
|
||||
(sha256
|
||||
(base32 "0krs3jac9jc0zqr59ivfl5vibqc15b4yhww73j3c01dla1shvlcj"))))
|
||||
(arguments
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "make" "-C" "regression"))))))
|
||||
(base32 "0if99hk9dsiw33iabkrbrpwybv8vl3hpim1cf07sklkshigwxryr"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-pillow python-ply))
|
||||
@@ -570,78 +563,38 @@ types (revolute, prismatic, wheel, etc.).")
|
||||
(license license:zlib)))
|
||||
|
||||
(define-public python-anvil-parser
|
||||
;; Github project does not have tags.
|
||||
(let ((commit "91a7eda55f0fb55a948d1072896430c29d906809")
|
||||
(let ((commit "27544bb41f035617be130a209a84371cbaf837cc")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "python-anvil-parser")
|
||||
(version (git-version "0.10.6" revision commit))
|
||||
(version (git-version "0.9.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/0xTiger/anvil-parser2")
|
||||
(url "https://github.com/0xTiger/anvil-parser")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "16j7kv6v782nz1fafkxkb7v2vpwfhpi1a66ak04xawg9h1fz7vkc"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools))
|
||||
(base32 "196nli36pz4sllx1m8jlys661hgbxhcxr2c4545fqb4nd27hhwy7"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs (list python-frozendict python-nbt))
|
||||
(home-page "https://github.com/0xTiger/anvil-parser2")
|
||||
(home-page "https://github.com/0xTiger/anvil-parser")
|
||||
(synopsis "Anvil file format parser")
|
||||
(description "This package provides an Anvil file format parser.")
|
||||
(license license:expat))))
|
||||
|
||||
;;~4MiB of test files.
|
||||
(define python-nbt-testdata
|
||||
(file-union
|
||||
"python-nbt-testdata"
|
||||
(list
|
||||
(let ((file "Sample_World.tar.gz"))
|
||||
`(,file
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/twoolie/NBT/files/13199373/"
|
||||
file))
|
||||
(sha256
|
||||
(base32
|
||||
"1s58g5zicx8ghdai2qix2aqq0fc675vfajica4h78c397crwjrl9"))))))))
|
||||
|
||||
(define-public python-nbt
|
||||
(package
|
||||
(name "python-nbt")
|
||||
(version "1.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/twoolie/NBT")
|
||||
(commit (string-append "version-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1a3mj7c18m1n5iqzwwvvlk7n65kxp3xbmccsqyap36apwpbbxyd9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "tests/regiontests.py" "tests/nbttests.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'fake-download
|
||||
;; Fake the download of the test tarball.
|
||||
(lambda _
|
||||
(substitute*
|
||||
"tests/downloadsample.py"
|
||||
(("tar_file = .*")
|
||||
(string-append
|
||||
"tar_file = '"
|
||||
#+python-nbt-testdata
|
||||
"/Sample_World.tar.gz'"))))))))
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "NBT" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1i9ncrzy5zcfnxzkh2j31n9ayzxfncckzwa6fkz9vjq5fq9v4fys"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/twoolie/NBT")
|
||||
(synopsis "Named Binary Tag reader and writer")
|
||||
(description
|
||||
@@ -677,31 +630,22 @@ possible, and it also makes the SGE easy to learn.")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public python-pyscroll
|
||||
;; No tags, no releases, not clear which commit corresponds to which PyPI
|
||||
;; release. But PyPI has no tests, so need to use git.
|
||||
(let ((commit "31e1c282d09542ec89c6c1ac3ee6a1ff991ff5c2")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "python-pyscroll")
|
||||
(version (git-version "2.31" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bitcraft/pyscroll")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mqi8ccxi7vk63hw7klxjzd8jp6lnnw5q70nvrzmgq0jxpp61h7y"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(propagated-inputs (list python-pygame))
|
||||
(home-page "https://github.com/bitcraft/pyscroll")
|
||||
(synopsis "Fast scrolling maps library for pygame")
|
||||
(description "@code{pyscroll} is a simple and fast module
|
||||
(package
|
||||
(name "python-pyscroll")
|
||||
(version "2.31")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyscroll" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0w3c58mkkbsyvx9w9hwdizk20pbds800m7v9vg49ydw440dha0hr"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs (list python-pygame))
|
||||
(home-page "https://github.com/bitcraft/pyscroll")
|
||||
(synopsis "Fast scrolling maps library for pygame")
|
||||
(description "@code{pyscroll} is a simple and fast module
|
||||
for animated scrolling maps for your new or existing game.")
|
||||
(license license:lgpl3+))))
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public python-pytmx
|
||||
(package
|
||||
@@ -804,11 +748,7 @@ support.")
|
||||
(uri (pypi-uri "neteria" version))
|
||||
(sha256
|
||||
(base32 "1azlix80a6vns2i3z0bdbqk32kx8s2gjh2nvshab235fd9h85yv7"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;No tests, also not on github
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-rsa))
|
||||
(home-page "https://pypi.org/project/neteria/")
|
||||
@@ -2003,43 +1943,6 @@ programming languages.")
|
||||
visual novel engine, explaining all of its features.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rpatool
|
||||
;; XXX: No releases or version tags, see:
|
||||
;; <https://codeberg.org/shiz/rpatool/issues/28>.
|
||||
(let ((revision "0")
|
||||
(commit "74f26d5dfdd645483e02552aa766ca447ad6b191"))
|
||||
(package
|
||||
(name "rpatool")
|
||||
(version (git-version "0.8" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/shiz/rpatool")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "10dm8bak0dm84d1ciwzw6jd5y64invddlmcdnawnpp7jn3wrg1jb"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'build)
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(install-file "rpatool"
|
||||
(string-append #$output "/bin")))))))
|
||||
(home-page "https://codeberg.org/shiz/rpatool")
|
||||
(synopsis "Tool to work with Ren'Py archives")
|
||||
(description
|
||||
"@samp{rpatool} is a simple tool allowing you to create, modify and
|
||||
extract @url{https://www.renpy.org/,Ren'Py} Archive files
|
||||
(@code{.rpa}/@code{.rpi}). Currently, only writing RPAv2/RPAv3 archives is
|
||||
supported.")
|
||||
(license license:wtfpl2))))
|
||||
|
||||
(define-public python-pyxel
|
||||
;; Note to updaters: Use commit and revision even if you're bumping
|
||||
;; to a release, as upstream is known to "reuse" tags.
|
||||
@@ -2185,40 +2088,36 @@ robust and compatible with many systems and operating systems.")
|
||||
(license license:zlib)))
|
||||
|
||||
(define-public mc2mt
|
||||
;; No tags in the repository.
|
||||
(let ((commit "039dbc26466a430e03c646dc5a9bd0822637a87a")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "mc2mt")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/listia/mc2mt")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vnaznwgm87x0n5dp14363p2h54lpzalynrrd6lbs6wgrqq7fq9i"))
|
||||
(patches (search-patches "mc2mt-add-packaging-support.patch"))
|
||||
(modules '((guix build utils)))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-code
|
||||
(lambda* _
|
||||
(substitute* "mc2mtlib/argument_parser.py"
|
||||
(("mineclone2") "mineclone")))))))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(propagated-inputs (list python-anvil-parser))
|
||||
(synopsis "Minecraft to Minetest world converter")
|
||||
(description "@code{mc2mt} is a Minecraft to Minetest world converter.
|
||||
(package
|
||||
(name "mc2mt")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/listia/mc2mt")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vnaznwgm87x0n5dp14363p2h54lpzalynrrd6lbs6wgrqq7fq9i"))
|
||||
(patches (search-patches "mc2mt-add-packaging-support.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(substitute* "mc2mtlib/argument_parser.py"
|
||||
(("mineclone2") "mineclone"))))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools))
|
||||
(propagated-inputs (list python-anvil-parser))
|
||||
(arguments
|
||||
(list #:tests? #f)) ; no tests
|
||||
(synopsis "Minecraft to Minetest world converter")
|
||||
(description "@code{mc2mt} is a Minecraft to Minetest world converter.
|
||||
It can convert worlds from Minecraft 1.9 and later.")
|
||||
(home-page "https://github.com/listia/mc2mt")
|
||||
(license license:expat))))
|
||||
(home-page "https://github.com/listia/mc2mt")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public mygui
|
||||
(package
|
||||
@@ -2837,7 +2736,7 @@ scripted in a Python-like language.")
|
||||
(define-public ericw-tools
|
||||
(package
|
||||
(name "ericw-tools")
|
||||
(version "0.18.2-rc1")
|
||||
(version "0.18.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2845,7 +2744,7 @@ scripted in a Python-like language.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0903fn4a5mc4sdx8q36j57fp15f7z246h8jm78x9jfz7sx9xrc3m"))
|
||||
(base32 "11sap7qv0rlhw8q25azvhgjcwiql3zam09q0gim3i04cg6fkh0vp"))
|
||||
(patches
|
||||
(search-patches "ericw-tools-add-check-for-sse2-in-light.cc.patch"
|
||||
"ericw-tools-gcc-11-pass-const-to-offsetof.patch"))))
|
||||
@@ -2890,7 +2789,7 @@ scripted in a Python-like language.")
|
||||
#$(package-version this-package)
|
||||
"/README.md")))))
|
||||
#:tests? #f)) ; No tests
|
||||
(inputs (list embree))
|
||||
(inputs (list embree-2))
|
||||
(home-page "https://ericwa.github.io/ericw-tools/")
|
||||
(synopsis "Map compiling tools for Quake/Hexen 2")
|
||||
(description
|
||||
|
||||
+41
-58
@@ -1544,7 +1544,7 @@ practise.")
|
||||
(define-public doom-runner
|
||||
(package
|
||||
(name "doom-runner")
|
||||
(version "1.9.1")
|
||||
(version "1.8.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1553,13 +1553,10 @@ practise.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "19jq5cj6rc8d5ghd9321a2f3v0b7z928990d7dj6ynyhkpcj769p"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet #~(delete-file-recursively "Screenshots")))) ;Save 1.4MiB.
|
||||
(base32 "0rpywq95zy9w0wj1262x4rf84c52wg1rgf0by549qph6fybn34rn"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:qtbase qtbase
|
||||
#:tests? #f ;no tests
|
||||
#:modules '((guix build qt-build-system)
|
||||
((guix build gnu-build-system) #:prefix gnu:)
|
||||
@@ -1568,37 +1565,37 @@ practise.")
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
(substitute* "DoomRunner.pro"
|
||||
(("/usr")
|
||||
#$output))
|
||||
(invoke "qmake" "DoomRunner.pro" "-spec" "linux-g++"
|
||||
"\"CONFIG+=release\""
|
||||
(string-append "INSTALL_DIR=" #$output))))
|
||||
"\"CONFIG+=release\"")))
|
||||
(replace 'build (assoc-ref gnu:%standard-phases 'build))
|
||||
(replace 'install (assoc-ref gnu:%standard-phases 'install))
|
||||
(add-after 'install 'install-xdg
|
||||
(lambda _
|
||||
(with-directory-excursion #$output
|
||||
(install-file "DoomRunner" "bin/")
|
||||
(delete-file "DoomRunner"))
|
||||
(with-directory-excursion "Install/XDG"
|
||||
(install-file "DoomRunner.desktop"
|
||||
(string-append #$output "/share/applications"))
|
||||
(install-file "io.github.Youda008.DoomRunner.appdata.xml"
|
||||
(string-append #$output "/share/metainfo"))
|
||||
(for-each
|
||||
(lambda (size)
|
||||
(let ((filename (simple-format #f "DoomRunner.~sx~s.png"
|
||||
size size)))
|
||||
(chmod filename #o444)
|
||||
(install-file
|
||||
filename
|
||||
(simple-format #f "~a/share/icons/hicolor/~sx~s/apps"
|
||||
#$output size size))))
|
||||
'(16 24 32 48 64 128))))))))
|
||||
(string-append #$output
|
||||
"/share/applications"))
|
||||
(let ((install-icon
|
||||
(lambda (size)
|
||||
(install-file (simple-format
|
||||
#f "DoomRunner.~sx~s.png"
|
||||
size size)
|
||||
(simple-format
|
||||
#f "~a/share/icons/hicolor/~sx~s/apps"
|
||||
#$output size size)))))
|
||||
(for-each install-icon
|
||||
'(16 24 32 48 64 128)))))))))
|
||||
(home-page "https://github.com/Youda008/DoomRunner")
|
||||
(synopsis "Launcher for Doom engine games")
|
||||
(description "Doom Runner is yet another launcher of common Doom source
|
||||
ports (e.g. GZDoom, Zandronum, PrBoom) with a graphical user interface. It
|
||||
is written in C++ and Qt, and it is designed around the idea of presets for
|
||||
various multi-file modifications to allow one-click switching between them.")
|
||||
(description
|
||||
"Doom Runner is yet another launcher of common Doom source ports (like
|
||||
GZDoom, Zandronum, PrBoom, ...) with graphical user interface. It is
|
||||
written in C++ and Qt, and it is designed around the idea of presets
|
||||
for various multi-file modifications to allow one-click switching
|
||||
between them and minimize any repetitive work.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public falltergeist
|
||||
@@ -3159,7 +3156,7 @@ exec -a ~s ~s \"$@\"
|
||||
(string-append lib "/main.py"))))
|
||||
(chmod bin #o555)))))))
|
||||
(native-inputs (list unzip python-setuptools))
|
||||
(inputs (list python python-pygame))
|
||||
(inputs (list python python-pygame python-tmx))
|
||||
(home-page "https://rogueboxadventures.tuxfamily.org")
|
||||
(synopsis "Classical roguelike/sandbox game")
|
||||
(description
|
||||
@@ -9238,7 +9235,7 @@ original.")
|
||||
(define-public woof-doom
|
||||
(package
|
||||
(name "woof-doom")
|
||||
(version "15.3.0")
|
||||
(version "15.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -9247,29 +9244,22 @@ original.")
|
||||
(commit (string-append "woof_" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0ki7wqjhqhjxci04aksh9m8m35gi2db89475v79rjzdgk00b3mqv"))
|
||||
(base32 "04c7hm4jnr9aiz6w4520zww6b7j86qv9xaf87hdv48cjc9sp2ljk"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
(with-directory-excursion "third-party"
|
||||
(delete-file-recursively "miniz")
|
||||
(delete-file-recursively "yyjson")
|
||||
(delete-file-recursively "spng")
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_library\\(miniz.+")
|
||||
"find_package(miniz REQUIRED)")
|
||||
(("target_.+\\(miniz.+$") "")
|
||||
(("add_library\\(spng.+")
|
||||
"find_package(PkgConfig)
|
||||
pkg_search_module(spng REQUIRED spng)")
|
||||
(("target_.+\\(spng.+$") "")))
|
||||
(delete-file-recursively "spng"))
|
||||
(delete-file-recursively "win32")
|
||||
(substitute* (find-files "src" ".")
|
||||
(("miniz.h") "miniz/miniz.h"))))))
|
||||
(("miniz.h") "miniz/miniz.h"))))
|
||||
(patches (search-patches "woof-doom-unbundle-spng-miniz.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;'demotest' requires internet access.
|
||||
(native-inputs (list pkg-config python))
|
||||
(native-inputs (list python))
|
||||
(inputs (list libebur128
|
||||
libsndfile
|
||||
libxmp
|
||||
@@ -9280,8 +9270,8 @@ pkg_search_module(spng REQUIRED spng)")
|
||||
spng
|
||||
yyjson
|
||||
fluidsynth))
|
||||
(home-page "https://fabiangreffrath.github.io/woof/")
|
||||
(synopsis "MBF-lineage Doom source port")
|
||||
(home-page "https://github.com/fabiangreffrath/woof")
|
||||
(synopsis "MBF-style Doom source port targeted at modern systems")
|
||||
(description
|
||||
"Woof! is a continuation of the MBF lineage of Doom source ports, with
|
||||
modern features such as dynamic resolution scaling, uncapped framerates,
|
||||
@@ -9294,6 +9284,7 @@ UMAPINFO, DEHEXTRA, and DSDHacked specifictions.")
|
||||
(list (license:non-copyleft
|
||||
"https://bitbucket.org/jpommier/pffft/src/master/pffft.h"
|
||||
"FFTPACK license")
|
||||
license:bsd-2
|
||||
license:bsd-3
|
||||
license:cc-by3.0
|
||||
license:cc0
|
||||
@@ -10191,7 +10182,7 @@ via the in-game download manager.")
|
||||
(inputs
|
||||
(list alsa-lib
|
||||
eudev
|
||||
ffmpeg
|
||||
ffmpeg-6
|
||||
glib
|
||||
glew
|
||||
gtk+-2
|
||||
@@ -10224,7 +10215,7 @@ to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
|
||||
(define-public oshu
|
||||
(package
|
||||
(name "oshu")
|
||||
(version "2.0.3")
|
||||
(version "2.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -10234,7 +10225,7 @@ to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hk0yidmkrqj0mg6pjmwdzkaz8vvdsxxxvprj1qxjblslj2h8lvd"))))
|
||||
"1g598incc6zlls876slgwqblwiwiszkmqa4xpzw0z7mbjmmzsizz"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
@@ -10245,7 +10236,7 @@ to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
(list cairo ffmpeg-6 pango sdl2 sdl2-image))
|
||||
(list cairo ffmpeg-4 pango sdl2 sdl2-image))
|
||||
(home-page "https://github.com/fmang/oshu/")
|
||||
(synopsis "Rhythm game in which you click on circles")
|
||||
(description "@i{oshu!} is a minimalist variant of the @i{osu!} rhythm game,
|
||||
@@ -11560,7 +11551,7 @@ can be downloaded from @url{https://zero.sjeng.org/best-network}.")
|
||||
(string-append "PREFIX=" #$output))))
|
||||
(replace 'build (assoc-ref gnu:%standard-phases 'build))
|
||||
(replace 'install (assoc-ref gnu:%standard-phases 'install)))))
|
||||
(inputs (list qtbase-5 qtsvg-5 qtwayland-5))
|
||||
(inputs (list qtbase-5 qtsvg-5))
|
||||
(home-page "https://portnov.github.io/qcheckers/")
|
||||
(synopsis "Qt-based checkers boardgame")
|
||||
(description "QCheckers, formerly known as KCheckers, is a is a Qt version
|
||||
@@ -11744,7 +11735,7 @@ and chess engines.")
|
||||
(native-inputs
|
||||
(list qttools-5))
|
||||
(inputs
|
||||
(list qtbase-5 qtmultimedia-5 qtspeech-5 qtsvg-5 qtwayland-5 zlib))
|
||||
(list qtbase-5 qtmultimedia-5 qtspeech-5 qtsvg-5 zlib))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f
|
||||
@@ -11758,14 +11749,7 @@ and chess engines.")
|
||||
(substitute* "chessx.pro"
|
||||
(("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease")
|
||||
(search-input-file inputs "/bin/lrelease")))))
|
||||
(add-after 'fix-paths 'fix-library-paths
|
||||
(lambda _
|
||||
;; Otherwise it won't find the wayland shell integration
|
||||
;; or qt plugin for wayland-egl.
|
||||
(substitute* "src/gui/main.cpp"
|
||||
(("QApplication::setLibraryPaths\\(l\\);")
|
||||
"/* QApplication::setLibraryPaths(l); */"))))
|
||||
(add-after 'fix-library-paths 'make-qt-deterministic
|
||||
(add-after 'fix-paths 'make-qt-deterministic
|
||||
(lambda _
|
||||
(setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")))
|
||||
(add-after 'make-qt-deterministic 'disable-versioncheck
|
||||
@@ -12182,7 +12166,6 @@ game.") ;thanks to Debian for description
|
||||
libircclient
|
||||
protobuf-2 ;remove package when no longer needed
|
||||
qtbase-5
|
||||
qtwayland-5
|
||||
(sdl-union (list sdl sdl-mixer))
|
||||
sqlite
|
||||
tinyxml
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
;;; Copyright © 2024, 2025 Zheng Junjie <z572@z572.online>
|
||||
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
||||
;;; Copyright © 2023 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2024 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Leo Nikkilä <hello@lnikki.la>
|
||||
;;;
|
||||
|
||||
@@ -200,18 +200,6 @@ written in C, C++, Ada, Objective-C, Pascal and more.")
|
||||
(base32
|
||||
"1i940b04404xr44xc66c4r4nk091czqz7zzrmhbpk64aaaax1z5w"))))))
|
||||
|
||||
(define-public gdb-17
|
||||
(package
|
||||
(inherit gdb-14)
|
||||
(version "17.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gdb/gdb-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xnqqv3j463r5rnfmblj3zwhf0l0lyy4bp1zaid8zxn9fignz68l"))))))
|
||||
|
||||
(define-public gdb
|
||||
;; The "default" version.
|
||||
gdb-14)
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
;;; Copyright © 2025 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2025 Lars Bilke <lars.bilke@ufz.de>
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2025 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||
;;; Copyright © 2025 Brice Waegeneire <brice@waegenei.re>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
||||
@@ -34,11 +34,10 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages docbook)
|
||||
@@ -49,7 +48,6 @@
|
||||
#:use-module (gnu packages perl-check)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (guix utils))
|
||||
@@ -234,37 +232,17 @@ color, font attributes (weight, posture), or underlining.")
|
||||
(define-public mdpo
|
||||
(package
|
||||
(name "mdpo")
|
||||
(version "0.3.86") ;the last version without Rust
|
||||
(version "0.3.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mondeja/mdpo")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mdpo" version))
|
||||
(sha256
|
||||
(base32 "130g8ggy0xgk5jmlx23569wmv9fz7fhm8qi46cjj7n4fxr0vnmyx"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 91 passed
|
||||
#:test-flags
|
||||
;; XXX: The Most of the tests fail because 0.3.86 was released in 2022
|
||||
;; and depends on python-pytest@6.2.4.
|
||||
;;
|
||||
;; OSError: pytest: reading from stdin while output is captured!
|
||||
;; Consider using `-s`.
|
||||
#~(list "--ignore=test/test_integration/"
|
||||
"--ignore=test/test_unit/test_md2po/"
|
||||
"--ignore=test/test_unit/test_md2po2md/"
|
||||
"--ignore=test/test_unit/test_mdpo2html/"
|
||||
"--ignore=test/test_unit/test_po2md/")))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list python-polib
|
||||
python-pymd4c))
|
||||
(base32 "0kgbm0af7jwpfspa2xxiy9nc2l1r2s1rhbhz4r229zcqv49ak6sq"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs (list python-bump2version python-pytest python-yamllint))
|
||||
(propagated-inputs
|
||||
(list python-polib python-pymd4c))
|
||||
(home-page "https://github.com/mondeja/mdpo")
|
||||
(synopsis "Markdown file translation utilities using pofiles")
|
||||
(description
|
||||
|
||||
+14
-14
@@ -212,26 +212,26 @@ Polygon meshes, and Extruded polygon meshes.")
|
||||
(version "0.1.36")
|
||||
(source
|
||||
(origin
|
||||
;; We fetch the sources from the repository since the PyPI archive
|
||||
;; doesn't contain the CMakeLists.txt file which is useful for
|
||||
;; integration with other software, such as the openboardview package.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Dav1dde/glad")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m55ya1zrmg6n2cljkajy80ilmi5sblln8742fm0k1sw9k7hzn8n"))))
|
||||
(build-system pyproject-build-system)
|
||||
(base32
|
||||
"0m55ya1zrmg6n2cljkajy80ilmi5sblln8742fm0k1sw9k7hzn8n"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: testing seems complex, see utility/compiletest.sh
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-cmakelists.txt
|
||||
(lambda _
|
||||
(let ((share (string-append #$output "/share/"
|
||||
#$(package-name this-package))))
|
||||
(install-file "CMakeLists.txt" share)))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-cmakelists.txt
|
||||
(lambda _
|
||||
(let ((share (string-append #$output "/share/"
|
||||
#$(package-name this-package))))
|
||||
(install-file "CMakeLists.txt" share)))))))
|
||||
(home-page "https://github.com/Dav1dde/glad")
|
||||
(synopsis "Multi-language GL/GLES/EGL/GLX/WGL loader generator")
|
||||
(description "Glad uses the official Khronos XML specifications to
|
||||
@@ -266,7 +266,7 @@ generate a GL/GLES/EGL/GLX/WGL loader tailored for specific requirements.")
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "xvfb-run" "utility/test.sh"))))))))
|
||||
(native-inputs (list python-setuptools python-wheel xvfb-run-for-tests))
|
||||
(native-inputs (list python-setuptools python-wheel xvfb-run))
|
||||
(propagated-inputs (list python-jinja2))))
|
||||
|
||||
(define-public s2tc
|
||||
|
||||
+22
-35
@@ -2733,43 +2733,30 @@ schemas for settings shared by various components of the GNOME desktop.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public python-liblarch
|
||||
;; The merge request replacing nose with pytest has not been released yet.
|
||||
;; Temporarily use a git snapshot.
|
||||
(let ((commit "fe06860ea6f1cd339b5b38485879ec5d9512698c")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "python-liblarch")
|
||||
(version (git-version "3.2.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/getting-things-gnome/liblarch")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hvwhqhanwkmavnqxbl276nncvnrhgz92pa8z417d8bk3cirmj0b"))))
|
||||
(build-system pyproject-build-system)
|
||||
(version "3.2.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/getting-things-gnome/liblarch")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"125rmrdbc84lapfh8c77zxnmwas20xdfamqmilhv1smkxn2q4sh3"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'start-xserver
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xorg-display ":1"))
|
||||
(system (string-join
|
||||
(list (search-input-file inputs "/bin/Xvfb")
|
||||
xorg-display "&")
|
||||
" "))
|
||||
(setenv "DISPLAY" xorg-display))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "./run-tests")))))))
|
||||
(native-inputs (list python-pytest python-setuptools xorg-server-for-tests))
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-before 'check 'start-xserver
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(system (format #f "~a/bin/Xvfb :1 &"
|
||||
(assoc-ref inputs "xorg-server")))
|
||||
(setenv "DISPLAY" ":1"))))))
|
||||
(native-inputs (list xorg-server-for-tests))
|
||||
(inputs (list gtk+))
|
||||
(propagated-inputs (list python-pygobject))
|
||||
(home-page "https://getting-things-gnome.github.io/liblarch")
|
||||
(home-page "https://wiki.gnome.org/Projects/liblarch")
|
||||
(synopsis "Library to easily handle complex data structures")
|
||||
(description
|
||||
"Liblarch is a Python library built to easily handle data structures such
|
||||
@@ -2779,7 +2766,7 @@ allow you to use your data structure in a @code{Gtk.Treeview}.
|
||||
Liblarch support multiple views of one data structure and complex filtering.
|
||||
That way, you have a clear separation between your data themselves (Model)
|
||||
and how they are displayed (View).")
|
||||
(license license:lgpl3+))))
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public gtg
|
||||
(package
|
||||
@@ -8874,7 +8861,7 @@ the available networks and allows users to easily switch between them.")
|
||||
(define-public libxml++
|
||||
(package
|
||||
(name "libxml++")
|
||||
(version "5.6.0")
|
||||
(version "5.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -8883,7 +8870,7 @@ the available networks and allows users to easily switch between them.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ckgllfgnfszri57ay41jykwblcilsyldkhiq0x5h50c5av118pj"))))
|
||||
(base32 "0gp8irc5ny9i6bw9fp21p8djgksi1s8l5flbn5blisgfpcb2w820"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
(list libxml2)) ;required by .pc file
|
||||
|
||||
+67
-87
@@ -9,7 +9,6 @@
|
||||
;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
|
||||
;;; Copyright © 2020 Christopher Lam <christopher.lck@gmail.com>
|
||||
;;; Copyright © 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
|
||||
;;; Copyright © 2025 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -58,7 +57,6 @@
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils))
|
||||
@@ -259,95 +257,77 @@ to be read using the GNOME Yelp program.")
|
||||
(license (list license:fdl1.1+ license:gpl3+)))))
|
||||
|
||||
(define-public gwenhywfar
|
||||
(package
|
||||
(name "gwenhywfar")
|
||||
(version "5.14.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.aquamaniac.de/git/gwenhywfar")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"0p0fzi69jsr3flpr10s8gbl9i265x5j5k1q2i5yva2vsdx2j2878"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "--disable-network-checks"
|
||||
;; GTK+3, GTK+2, Qt4, Qt5 and Qt6 are supported.
|
||||
"--with-guis=gtk3"
|
||||
"--enable-system-certs"
|
||||
"--with-libxml2-code=yes"
|
||||
"--disable-binreloc")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'make-cvs
|
||||
(lambda _
|
||||
(invoke "make" "-fMakefile.cvs"))))))
|
||||
(inputs
|
||||
(list libgcrypt gnutls openssl gtk+ libxml2))
|
||||
(native-inputs
|
||||
(list autoconf automake gettext-minimal libtool pkg-config))
|
||||
(home-page "https://www.aquamaniac.de")
|
||||
(synopsis "Utility library for networking and security applications")
|
||||
(description
|
||||
"This package provides a helper library for networking and security
|
||||
(let ((attachid "529")) ;; file attachid changes for each version
|
||||
(package
|
||||
(name "gwenhywfar")
|
||||
(version "5.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.aquamaniac.de/rdm/attachments/"
|
||||
"download/" attachid "/gwenhywfar-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "09nnjn1i8nzlkk62wai2lbnvqap8w6y98fh520b1y883fx2g3m8a"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--disable-network-checks"
|
||||
;; GTK+3, GTK+2 and QT4 are supported.
|
||||
"--with-guis=gtk3"
|
||||
"--enable-system-certs"
|
||||
"--with-libxml2-code=yes"
|
||||
"--disable-binreloc")))
|
||||
(inputs
|
||||
(list libgcrypt gnutls openssl gtk+ libxml2))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(home-page "https://www.aquamaniac.de")
|
||||
(synopsis "Utility library for networking and security applications")
|
||||
(description
|
||||
"This package provides a helper library for networking and security
|
||||
applications and libraries. It is used by AqBanking.")
|
||||
;; The license includes an explicit additional permission to compile and
|
||||
;; distribute this library with the OpenSSL Toolkit.
|
||||
(license license:lgpl2.1+)))
|
||||
;; The license includes an explicit additional permission to compile and
|
||||
;; distribute this library with the OpenSSL Toolkit.
|
||||
(license license:lgpl2.1+))))
|
||||
|
||||
(define-public aqbanking
|
||||
(package
|
||||
(name "aqbanking")
|
||||
(version "6.8.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.aquamaniac.de/git/aqbanking")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1xqhhxhr1azqvdn47389h469d3srl5l3n1nx82jx2djbx9sdzdq9"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Parallel building fails because aqhbci is required before it's
|
||||
;; built.
|
||||
#:parallel-build? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'make-cvs
|
||||
(lambda _
|
||||
(invoke "make" "-fMakefile.cvs")))
|
||||
;; Embed the package version instead of the build date
|
||||
(add-after 'make-cvs 'use-version-instead-of-date
|
||||
(lambda _
|
||||
(substitute*
|
||||
"src/libs/plugins/backends/aqhbci/header.xml.in"
|
||||
(("@DATETIME@") #$version))))
|
||||
(add-before 'build 'build-types
|
||||
(lambda _
|
||||
(invoke "make" "typedefs")
|
||||
(invoke "make" "typefiles"))))))
|
||||
(propagated-inputs
|
||||
(list gwenhywfar))
|
||||
(inputs
|
||||
(list gmp xmlsec gnutls))
|
||||
(native-inputs
|
||||
(list autoconf automake gettext-minimal libltdl libtool pkg-config))
|
||||
(home-page "https://www.aquamaniac.de")
|
||||
(synopsis "Interface for online banking tasks")
|
||||
(description
|
||||
"AqBanking is a modular and generic interface to online banking tasks,
|
||||
(let ((attachid "531")) ;; file attachid changes for each version
|
||||
(package
|
||||
(name "aqbanking")
|
||||
(version "6.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.aquamaniac.de/rdm/attachments/"
|
||||
"download/" attachid "/aqbanking-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1yqbwh91gwwqgiv8cf15rc9mxcdlikhbr5qknaqp5bavp63l8qrp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(;; Parallel building fails because aqhbci is required before it's
|
||||
;; built.
|
||||
#:parallel-build? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Embed the package version instead of the build date
|
||||
(add-after 'unpack 'use-version-instead-of-date
|
||||
(lambda _
|
||||
(substitute*
|
||||
"src/libs/plugins/backends/aqhbci/header.xml.in"
|
||||
(("@DATETIME@") ,version)))))))
|
||||
(propagated-inputs
|
||||
(list gwenhywfar))
|
||||
(inputs
|
||||
(list gmp xmlsec gnutls))
|
||||
(native-inputs
|
||||
(list pkg-config gettext-minimal libltdl))
|
||||
(home-page "https://www.aquamaniac.de")
|
||||
(synopsis "Interface for online banking tasks")
|
||||
(description
|
||||
"AqBanking is a modular and generic interface to online banking tasks,
|
||||
financial file formats (import/export) and bank/country/currency information.
|
||||
AqBanking uses backend plugins to actually perform the online tasks. HBCI,
|
||||
OFX DirectConnect, YellowNet, GeldKarte, and DTAUS discs are currently
|
||||
supported. AqBanking is used by GnuCash, KMyMoney, and QBankManager.")
|
||||
;; AqBanking is licensed under the GPLv2 or GPLv3
|
||||
(license (list license:gpl2 license:gpl3))))
|
||||
;; AqBanking is licensed under the GPLv2 or GPLv3
|
||||
(license (list license:gpl2 license:gpl3)))))
|
||||
|
||||
+17
-27
@@ -584,14 +584,12 @@ interface (FFI) of Guile.")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "gpg" version))
|
||||
(patches (search-patches "python-gpg-setup-72.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ji3ynhp36m1ccx7bmaq75dhij9frpn19v9mpi4aajn8csl194il"))))
|
||||
(build-system pyproject-build-system)
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No test suite.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-environment
|
||||
@@ -604,11 +602,12 @@ interface (FFI) of Guile.")
|
||||
"extra_macros = { \"_FILE_OFFSET_BITS\": 64 }")))
|
||||
#~())
|
||||
(substitute* "setup.py"
|
||||
(("cc") (which "gcc"))))))))
|
||||
(("cc") (which "gcc"))))))
|
||||
#:tests? #f)) ; No test suite.
|
||||
(inputs
|
||||
(list gpgme))
|
||||
(native-inputs
|
||||
(list swig python-setuptools))
|
||||
(list swig))
|
||||
(home-page (package-home-page gpgme))
|
||||
(synopsis "Python bindings for GPGME GnuPG cryptography library")
|
||||
(description "This package provides Python bindings to the GPGME GnuPG
|
||||
@@ -710,22 +709,18 @@ signing, decryption, verification, and key-listing parsing.")
|
||||
(license license:perl-license)))
|
||||
|
||||
(define-public pius
|
||||
;; The last release was from 2019, the latest commit is from 2025
|
||||
(let ((commit "5f7c10bd3b058c864b128a3b0e0c0efa1f1befa2")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "pius")
|
||||
(version (git-version "3.0.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jaymzh/pius")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0qf1fxwdrnfkia0c1iz752mb9flbjl9jgh75dls51j1k8fzbl758"))))
|
||||
(build-system pyproject-build-system)
|
||||
(version "3.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/jaymzh/pius/releases/download/v"
|
||||
version "/pius-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"11fhmfvr0avxl222rv43wjd2xjbpxrsmcl8xwmn0nvf1rw95v9fn"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
@@ -734,13 +729,8 @@ signing, decryption, verification, and key-listing parsing.")
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "libpius/constants.py"
|
||||
(("/usr/bin/gpg2")
|
||||
(search-input-file inputs "bin/gpg")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "./run_tests")))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list perl ;for 'pius-party-worksheet'
|
||||
(search-input-file inputs "bin/gpg"))))))))
|
||||
(inputs (list perl ;for 'pius-party-worksheet'
|
||||
gnupg))
|
||||
(synopsis "Programs to simplify GnuPG key signing")
|
||||
(description
|
||||
@@ -752,7 +742,7 @@ the process. The @command{pius-keyring-mgr} and
|
||||
@command{pius-party-worksheet} commands help organizers of PGP key signing
|
||||
parties.")
|
||||
(license license:gpl2)
|
||||
(home-page "https://github.com/jaymzh/pius"))))
|
||||
(home-page "https://www.phildev.net/pius/index.shtml")))
|
||||
|
||||
(define-public signing-party
|
||||
(package
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014-2026 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014-2025 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2016-2019, 2021, 2024, 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
@@ -604,9 +604,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"zh-CN"
|
||||
"zh-TW"))
|
||||
|
||||
(define %icecat-base-version "140.7.0")
|
||||
(define %icecat-base-version "140.5.0")
|
||||
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
|
||||
(define %icecat-build-id "20260113000000") ;must be of the form YYYYMMDDhhmmss
|
||||
(define %icecat-build-id "20251111000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
@@ -626,9 +626,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0a8mrc4pja4cjhayg4af5lsfrf7161gfq03idwik0vvjf68772k0"))))
|
||||
"1qhhsgk1dvdrxvvvry6gpijqzpbgmc6h1fd01c7478ppwprpwaw3"))))
|
||||
|
||||
(gnuzilla-commit "c211e9c18a24310266543cb3c90256ef2660815c")
|
||||
(gnuzilla-commit "5897aee761cc6d179bd8632f085c3c14ccf7db6c")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -639,7 +639,7 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"1grs891b5hq3xssid33jm7vzmjr23gk3f4qv1ngdlhkgs82r4s8s"))))
|
||||
"1yk3bpsa01gy5s5dwavsr089qp5dznzb8za5k3ab3fs79i9vdg6z"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
@@ -1646,7 +1646,9 @@ ca495991b7852b855"))
|
||||
"ac_add_options --with-libclang-path="
|
||||
#$(this-package-native-input "clang") "/lib\n"
|
||||
"ac_add_options --with-system-bz2\n"
|
||||
"ac_add_options --with-system-icu\n"
|
||||
;; FIXME: Causes breakage (see:
|
||||
;; <https://codeberg.org/guix/guix/issues/3166>)
|
||||
;; "ac_add_options --with-system-icu\n"
|
||||
"ac_add_options --with-system-jpeg\n"
|
||||
"ac_add_options --with-system-libevent\n"
|
||||
"ac_add_options --with-system-nspr\n"
|
||||
@@ -1744,7 +1746,9 @@ ca495991b7852b855"))
|
||||
gpgme
|
||||
gtk+
|
||||
hunspell
|
||||
icu4c-77
|
||||
;; FIXME: Causes breakage (see:
|
||||
;; <https://codeberg.org/guix/guix/issues/3166>).
|
||||
;;icu4c-77
|
||||
libcanberra
|
||||
libevent
|
||||
libffi
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025 Arthur Rodrigues <arthurhdrodrigues@proton.me>
|
||||
;;; Copyright © 2025 Patrick Norton <patrick.147.norton@gmail.com>
|
||||
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -3517,7 +3516,7 @@ traffic.")))
|
||||
(define-public ssh-to-pgp
|
||||
(package
|
||||
(name "ssh-to-pgp")
|
||||
(version "1.1.6")
|
||||
(version "1.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3526,7 +3525,7 @@ traffic.")))
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "10n4xggambw3b9nw0qsz36v7xzyvg31s8xqj66j179f78rdclpw7"))))
|
||||
(base32 "1xaj6pnk5y2flnxm57j9bpdpll9vhg1rbjj4v3a7hn1gginxpprx"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user