Merge branch 'master' into gnome-team

This commit is contained in:
Liliana Marie Prikler 2023-07-23 10:11:29 +02:00
commit 4c204d01d5
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87
220 changed files with 82506 additions and 15955 deletions

View file

@ -410,6 +410,8 @@ AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \ gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \ gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/guix.vim \ gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/linux-libre/6.4-i686.conf \
gnu/packages/aux-files/linux-libre/6.4-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.3-arm.conf \ gnu/packages/aux-files/linux-libre/6.3-arm.conf \
gnu/packages/aux-files/linux-libre/6.3-arm64.conf \ gnu/packages/aux-files/linux-libre/6.3-arm64.conf \
gnu/packages/aux-files/linux-libre/6.3-i686.conf \ gnu/packages/aux-files/linux-libre/6.3-i686.conf \
@ -556,6 +558,7 @@ SCM_TESTS = \
tests/services/lightdm.scm \ tests/services/lightdm.scm \
tests/services/linux.scm \ tests/services/linux.scm \
tests/services/telephony.scm \ tests/services/telephony.scm \
tests/services/vpn.scm \
tests/sets.scm \ tests/sets.scm \
tests/size.scm \ tests/size.scm \
tests/status.scm \ tests/status.scm \

View file

@ -912,11 +912,8 @@ makeinfo OPTIONS."
sed sed
tar tar
texinfo texinfo
texlive-base (texlive-updmap.cfg
texlive-bin ;for GUIX_TEXMF (list texlive-epsf texlive-texinfo)))))))
texlive-epsf
texlive-fonts-ec
texlive-tex-texinfo)))))
(define build (define build
(with-imported-modules '((guix build utils)) (with-imported-modules '((guix build utils))

View file

@ -1252,9 +1252,9 @@ Take a look at the profile reported by @command{guix size}
(@pxref{Invoking guix size}). This will allow you to notice references (@pxref{Invoking guix size}). This will allow you to notice references
to other packages unwillingly retained. It may also help determine to other packages unwillingly retained. It may also help determine
whether to split the package (@pxref{Packages with Multiple Outputs}), whether to split the package (@pxref{Packages with Multiple Outputs}),
and which optional dependencies should be used. In particular, avoid adding and which optional dependencies should be used. In particular, avoid
@code{texlive} as a dependency: because of its extreme size, use adding @code{texlive} as a dependency: because of its extreme size, use
the @code{texlive-tiny} package or @code{texlive-union} procedure instead. @code{texlive-updmap.cfg} procedure instead.
@item @item
Check that dependent packages (if applicable) are not affected by the Check that dependent packages (if applicable) are not affected by the

View file

@ -9,4 +9,4 @@
(package (package
(inherit gdb) (inherit gdb)
(native-inputs (modify-inputs (package-native-inputs gdb) (native-inputs (modify-inputs (package-native-inputs gdb)
(prepend autoconf-2.64 automake texinfo)))) (prepend autoconf-2.69 automake texinfo))))

View file

@ -234,10 +234,11 @@ A list structure can be created with the @code{list} procedure:
@end lisp @end lisp
@item @item
The @dfn{quote} disables evaluation of a parenthesized expression: the @cindex S-expression
first term is not called over the other terms (@pxref{Expression Syntax, The @dfn{quote} disables evaluation of a parenthesized expression, also
quote,, guile, GNU Guile Reference Manual}). Thus it effectively called an S-expression or ``s-exp'': the first term is not called over
returns a list of terms. the other terms (@pxref{Expression Syntax, quote,, guile, GNU Guile
Reference Manual}). Thus it effectively returns a list of terms.
@lisp @lisp
'(display (string-append "Hello " "Guix" "\n")) '(display (string-append "Hello " "Guix" "\n"))
@ -248,9 +249,10 @@ returns a list of terms.
@end lisp @end lisp
@item @item
The @dfn{quasiquote} disables evaluation of a parenthesized expression The @code{quasiquote} (@code{`}, a backquote) disables evaluation of a
until @dfn{unquote} (a comma) re-enables it. Thus it provides us with parenthesized expression until @code{unquote} (@code{,}, a comma)
fine-grained control over what is evaluated and what is not. re-enables it. Thus it provides us with fine-grained control over what
is evaluated and what is not.
@lisp @lisp
`(2 a 5 7 (2 ,a 5 ,(+ a 4))) `(2 a 5 7 (2 ,a 5 ,(+ a 4)))
@ -260,6 +262,37 @@ fine-grained control over what is evaluated and what is not.
Note that the above result is a list of mixed elements: numbers, symbols (here Note that the above result is a list of mixed elements: numbers, symbols (here
@code{a}) and the last element is a list itself. @code{a}) and the last element is a list itself.
@item
@cindex G-expressions, syntax
@cindex gexps, syntax
@findex #~
@findex #$
@findex gexp
@findex ungexp
Guix defines a variant of S-expressions on steroids called
@dfn{G-expressions} or ``gexps'', which come with a variant of
@code{quasiquote} and @code{unquote}: @code{#~} (or @code{gexp}) and
@code{#$} (or @code{ungexp}). They let you @emph{stage code for later
execution}.
For example, you'll encounter gexps in some package definitions where
they provide code to be executed during the package build process. They
look like this:
@lisp
;; Below is a G-expression representing staged code.
#~(begin
;; Invoke 'ls' from the package defined by the 'coreutils'
;; variable.
(system* #$(file-append coreutils "/bin/ls") "-l")
;; Create this package's output directory.
(mkdir #$output))
@end lisp
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for more on
gexps.
@item @item
Multiple variables can be named locally with @code{let} (@pxref{Local Multiple variables can be named locally with @code{let} (@pxref{Local
Bindings,,, guile, GNU Guile Reference Manual}): Bindings,,, guile, GNU Guile Reference Manual}):

View file

@ -5776,7 +5776,7 @@ a package collection. This involves the following steps:
@enumerate @enumerate
@item @item
Channels live in a Git repository so the first step, when creating a A channel lives in a Git repository so the first step, when creating a
channel, is to create its repository: channel, is to create its repository:
@example @example
@ -5790,7 +5790,7 @@ The next step is to create files containing package modules
(@pxref{Package Modules}), each of which will contain one or more (@pxref{Package Modules}), each of which will contain one or more
package definitions (@pxref{Defining Packages}). A channel can provide package definitions (@pxref{Defining Packages}). A channel can provide
things other than packages, such as build systems or services; we're things other than packages, such as build systems or services; we're
using packages as most common use case. using packages as it's the most common use case.
For example, Alice might want to provide a module called @code{(alice For example, Alice might want to provide a module called @code{(alice
packages greetings)} that will provide her favorite ``hello world'' packages greetings)} that will provide her favorite ``hello world''
@ -5815,7 +5815,7 @@ that.
@item @item
With this first module in place, the next step is to test the packages With this first module in place, the next step is to test the packages
it provides. This can be done with @command{guix build}, which needs to it provides. This can be done with @command{guix build}, which needs to
be fold to look for modules in the Git checkout. For example, assuming be told to look for modules in the Git checkout. For example, assuming
@code{(alice packages greetings)} provides a package called @code{(alice packages greetings)} provides a package called
@code{hi-from-alice}, Alice will run this command from the Git checkout: @code{hi-from-alice}, Alice will run this command from the Git checkout:
@ -10001,17 +10001,30 @@ used to build TeX packages in batch mode with a specified engine. The
build system sets the @env{TEXINPUTS} variable to find all TeX source build system sets the @env{TEXINPUTS} variable to find all TeX source
files in the inputs. files in the inputs.
By default it runs @code{luatex} on all files ending on @code{ins}. A By default it tries to run @code{luatex} on all @file{.ins} files, and
different engine and format can be specified with the if it fails to find any, on all @file{.dtx} files. A different engine
@code{#:tex-format} argument. Different build targets can be specified and format can be specified with, respectively, the @code{#:tex-engine}
with the @code{#:build-targets} argument, which expects a list of file and @code{#:tex-format} arguments. Different build targets can be
names. The build system adds only @code{texlive-bin} and specified with the @code{#:build-targets} argument, which expects a list
@code{texlive-latex-base} (both from @code{(gnu packages tex}) to the of file names.
inputs. Both can be overridden with the arguments @code{#:texlive-bin}
and @code{#:texlive-latex-base}, respectively.
The @code{#:tex-directory} parameter tells the build system where to It also generates font metrics (i.e., @file{.tfm} files) out of Metafont
install the built files under the texmf tree. files whenever possible. Likewise, it can also create TeX formats
(i.e., @file{.fmt} files) listed in the @code{#:create-formats}
argument, and generate a symbolic link from @file{bin/} directory to any
script located in located in @file{texmf-dist/scripts/}, provided its
file name is listed in @code{#:link-scripts} argument.
The build system adds @code{texlive-bin} from @code{(gnu packages tex)}
to the native inputs. It can be overridden with the
@code{#:texlive-bin} argument.
The package @code{texlive-latex-bin}, from the same module, contains
most of the tools for building TeX Live packages; for convenience, it is
also added by default to the native inputs. However, this can be
troublesome when building a dependency of @code{texlive-latex-bin}
itself. In this particular situation, the @code{#:texlive-latex-bin?}
argument should be set to @code{#f}.
@end defvar @end defvar
@defvar ruby-build-system @defvar ruby-build-system
@ -14075,9 +14088,10 @@ TeX packages that are part of the @uref{https://www.tug.org/texlive/,
TeX Live distribution}. TeX Live distribution}.
Information about the package is obtained from the TeX Live package Information about the package is obtained from the TeX Live package
database, a plain text file that is included in the @code{texlive-bin} database, a plain text file that is included in the
package. The source code is downloaded from possibly multiple locations @code{texlive-scripts} package. The source code is downloaded from
in the SVN repository of the Tex Live project. possibly multiple locations in the SVN repository of the Tex Live
project.
The command command below imports metadata for the @code{fontspec} The command command below imports metadata for the @code{fontspec}
TeX package: TeX package:
@ -32938,12 +32952,25 @@ The IP addresses to be assigned to the above interface.
@item @code{port} (default: @code{51820}) @item @code{port} (default: @code{51820})
The port on which to listen for incoming connections. The port on which to listen for incoming connections.
@item @code{dns} (default: @code{#f}) @item @code{dns} (default: @code{'())})
The DNS server(s) to announce to VPN clients via DHCP. The DNS server(s) to announce to VPN clients via DHCP.
@item @code{monitor-ips?} (default: @code{#f})
@cindex Dynamic IP, with Wireguard
@cindex dyndns, usage with Wireguard
Whether to monitor the resolved Internet addresses (IPs) of the
endpoints of the configured peers, resetting the peer endpoints using an
IP address that no longer correspond to their freshly resolved host
name. Set this to @code{#t} if one or more endpoints use host names
provided by a dynamic DNS service to keep the sessions alive.
@item @code{monitor-ips-internal} (default: @code{'(next-minute (range 0 60 5))})
The time interval at which the IP monitoring job should run, provided as
an mcron time specification (@pxref{Guile Syntax,,,mcron}).
@item @code{private-key} (default: @code{"/etc/wireguard/private.key"}) @item @code{private-key} (default: @code{"/etc/wireguard/private.key"})
The private key file for the interface. It is automatically generated if The private key file for the interface. It is automatically generated
the file does not exist. if the file does not exist.
@item @code{peers} (default: @code{'()}) @item @code{peers} (default: @code{'()})
The authorized peers on this interface. This is a list of The authorized peers on this interface. This is a list of
@ -35159,9 +35186,9 @@ Its value must be a @code{virtlog-configuration}.
@end lisp @end lisp
@end defvar @end defvar
@deftypevar {@code{libvirt} parameter} package libvirt @deftypevr {@code{libvirt} parameter} package libvirt
Libvirt package. Libvirt package.
@end deftypevar @end deftypevr
@deftypevr {@code{virtlog-configuration} parameter} integer log-level @deftypevr {@code{virtlog-configuration} parameter} integer log-level
Logging level. 4 errors, 3 warnings, 2 information, 1 debug. Logging level. 4 errors, 3 warnings, 2 information, 1 debug.
@ -40078,7 +40105,29 @@ For example:
@item @code{multiboot-arguments} (default: @code{'()}) @item @code{multiboot-arguments} (default: @code{'()})
The list of extra command-line arguments for the multiboot-kernel. The list of extra command-line arguments for the multiboot-kernel.
@item @code{multiboot-modules} (default: @code{'()}) For example, when running in QEMU it can be useful to use a text-based
console (use options @option{--nographic} @option{--serial mon:stdio}):
@lisp
'("console=com0")
@end lisp
To use the new and still experimental
@uref{https://darnassus.sceen.net/~hurd-web/rump_kernel/, rumpdisk
user-level disk driver} instead of GNU@tie{}Mach's in-kernel IDE driver,
set @code{kernel-arguments} to:
@lisp
'("noide")
@end lisp
Of course, these options can be combined:
@lisp
'("console=com0" "noide")
@end lisp
+@item @code{multiboot-modules} (default: @code{'()})
The list of commands for loading Multiboot modules. For example: The list of commands for loading Multiboot modules. For example:
@lisp @lisp
@ -45371,14 +45420,19 @@ single @TeX{} Live package} (more than 7,000 of them), but it is huge
(more than 4@tie{}GiB for a single package!). (more than 4@tie{}GiB for a single package!).
@item @item
The ``modular'' @code{texlive-} packages: you install The ``modular'' @samp{texlive-} packages: you start off with
@code{texlive-base}, which provides core functionality and the main a combination of @TeX{} Live @dfn{collections} and
@dfn{schemes}---``meta-packages'' such as
@code{texlive-collection-fontsrecommended}, or
@code{texlive-collection-context}, that provide the set of packages
needed in this particular domain, schemes being the name for collections
of such collections. This grants you core functionality and the main
commands---@command{pdflatex}, @command{dvips}, @command{luatex}, commands---@command{pdflatex}, @command{dvips}, @command{luatex},
@command{mf}, etc.---together with individual packages that provide just @command{mf}, etc. You can then complete your selection with additional
the features you need---@code{texlive-listings} for the collections or individual packages that provide just the features you
@code{listings} package, @code{texlive-hyperref} for @code{hyperref}, need---@code{texlive-listings} for the @code{listings} package,
@code{texlive-beamer} for Beamer, @code{texlive-pgf} for PGF/TikZ, @code{texlive-beamer} for Beamer, @code{texlive-pgf} for PGF/TikZ, and
and so on. so on.
@end itemize @end itemize
We recommend using the modular package set because it is much less We recommend using the modular package set because it is much less
@ -45386,29 +45440,29 @@ resource-hungry. To build your documents, you would use commands such
as: as:
@example @example
guix shell texlive-base texlive-wrapfig \ guix shell texlive-scheme-basic texlive-cm-super -- pdflatex doc.tex
texlive-hyperref texlive-cm-super -- pdflatex doc.tex
@end example @end example
You can quickly end up with unreasonably long command lines though. The You can quickly end up with unreasonably long command lines though. The
solution is to instead write a manifest, for example like this one: solution is to instead write a manifest, for example like this one,
which would probably be a reasonable starting point for a French
@LaTeX{} user:
@lisp @lisp
(specifications->manifest (specifications->manifest
'("rubber" '("rubber"
"texlive-base" "texlive-scheme-basic"
"texlive-wrapfig" "texlive-collection-latexrecommended"
"texlive-collection-fontsrecommended"
"texlive-microtype" "texlive-babel-french"
"texlive-listings" "texlive-hyperref"
;; PGF/TikZ ;; PGF/TikZ
"texlive-pgf" "texlive-pgf"
;; Additional fonts. ;; Additional font.
"texlive-cm-super" "texlive-amsfonts" "texlive-kpfonts"))
"texlive-times" "texlive-helvetic" "texlive-courier"))
@end lisp @end lisp
You can then pass it to any command with the @option{-m} option: You can then pass it to any command with the @option{-m} option:
@ -45417,12 +45471,9 @@ You can then pass it to any command with the @option{-m} option:
guix shell -m manifest.scm -- pdflatex doc.tex guix shell -m manifest.scm -- pdflatex doc.tex
@end example @end example
@xref{Writing Manifests}, for more on @xref{Writing Manifests}, for more on manifests. In the future, we plan
manifests. In the future, we plan to provide packages for @TeX{} Live to provide more collections and schemes. That will allow you to list
@dfn{collections}---``meta-packages'' such as @code{fontsrecommended}, fewer packages.
@code{humanities}, or @code{langarabic} that provide the set of packages
needed in this particular domain. That will allow you to list fewer
packages.
The main difficulty here is that using the modular package set forces The main difficulty here is that using the modular package set forces
you to select precisely the packages that you need. You can use you to select precisely the packages that you need. You can use
@ -45458,7 +45509,7 @@ you can search the @TeX{} Live package database using the @command{tlmgr}
command: command:
@example @example
$ guix shell texlive-base -- tlmgr info phvr7t $ guix shell texlive-bin -- tlmgr info phvr7t
tlmgr: cannot find package phvr7t, searching for other matches: tlmgr: cannot find package phvr7t, searching for other matches:
Packages containing `phvr7t' in their title/description: Packages containing `phvr7t' in their title/description:

View file

@ -434,36 +434,27 @@ sys_enable_guix_daemon()
_msg "${PAS}enabled Guix daemon via upstart" _msg "${PAS}enabled Guix daemon via upstart"
;; ;;
systemd) systemd)
{ # systemd .mount units must be named after the target directory. { install_unit()
# Here we assume a hard-coded name of /gnu/store. {
# XXX Work around <https://issues.guix.gnu.org/41356> until next release. local dest="/etc/systemd/system/$1"
if [ -f ~root/.config/guix/current/lib/systemd/system/gnu-store.mount ]; then rm -f "$dest"
cp ~root/.config/guix/current/lib/systemd/system/gnu-store.mount \ cp ~root/.config/guix/current/lib/systemd/system/"$1" "$dest"
/etc/systemd/system/; chmod 664 "$dest"
chmod 664 /etc/systemd/system/gnu-store.mount; systemctl daemon-reload
systemctl daemon-reload && systemctl enable "$1"
systemctl enable gnu-store.mount; }
fi
cp ~root/.config/guix/current/lib/systemd/system/guix-daemon.service \ install_unit guix-daemon.service
/etc/systemd/system/;
chmod 664 /etc/systemd/system/guix-daemon.service;
# Work around <https://bugs.gnu.org/36074>, present in 1.0.1.
sed -i /etc/systemd/system/guix-daemon.service \
-e "s/GUIX_LOCPATH='/'GUIX_LOCPATH=/";
# Work around <https://bugs.gnu.org/35671>, present in 1.0.1.
if ! grep en_US /etc/systemd/system/guix-daemon.service >/dev/null;
then sed -i /etc/systemd/system/guix-daemon.service \
-e 's/^Environment=\(.*\)$/Environment=\1 LC_ALL=en_US.UTF-8';
fi;
configure_substitute_discovery \ configure_substitute_discovery \
/etc/systemd/system/guix-daemon.service /etc/systemd/system/guix-daemon.service
# Install after guix-daemon.service to avoid a harmless warning.
# systemd .mount units must be named after the target directory.
# Here we assume a hard-coded name of /gnu/store.
install_unit gnu-store.mount
systemctl daemon-reload && systemctl daemon-reload &&
systemctl enable guix-daemon &&
systemctl start guix-daemon; } && systemctl start guix-daemon; } &&
_msg "${PAS}enabled Guix daemon via systemd" _msg "${PAS}enabled Guix daemon via systemd"
;; ;;

View file

@ -542,7 +542,7 @@ GLib/GIO, GTK, GStreamer and Webkit."
r core mentors tex) r core mentors tex)
(define-member (person "Christopher Baines" (define-member (person "Christopher Baines"
"mail@cbaines.net") "guix@cbaines.net")
core mentors ruby) core mentors ruby)
(define-member (person "Andrew Tropin" (define-member (person "Andrew Tropin"

View file

@ -3,7 +3,7 @@
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2019, 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com> ;;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de> ;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de>
@ -404,17 +404,23 @@ when booting a root file system on a Btrfs subvolume."
#$linux (string-join (list #$@arguments)) #$linux (string-join (list #$@arguments))
#$initrd))) #$initrd)))
(multiboot-kernel (multiboot-kernel
(let ((kernel (menu-entry-multiboot-kernel entry)) (let* ((kernel (menu-entry-multiboot-kernel entry))
(arguments (menu-entry-multiboot-arguments entry)) (arguments (menu-entry-multiboot-arguments entry))
;; Choose between device names as understood by Mach's built-in
;; IDE driver ("hdX") and those understood by rumpdisk ("wdX"
;; in the "noide" case).
(disk (if (member "noide" arguments) "w" "h"))
(modules (menu-entry-multiboot-modules entry)) (modules (menu-entry-multiboot-modules entry))
(root-index 1)) ; XXX EFI will need root-index 2 (root-index 1)) ; XXX EFI will need root-index 2
#~(format port " #~(format port "
menuentry ~s { menuentry ~s {
multiboot ~a root=device:hd0s~a~a~a multiboot ~a root=part:~a:device:~ad0~a~a
}~%" }~%"
#$label #$label
#$kernel #$kernel
#$root-index (string-join (list #$@arguments) " " 'prefix) #$root-index
#$disk
(string-join (list #$@arguments) " " 'prefix)
(string-join (map string-join '#$modules) (string-join (map string-join '#$modules)
"\n module " 'prefix)))) "\n module " 'prefix))))
(chain-loader (chain-loader

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -105,7 +105,7 @@ Return the value associated with OPTION, or #f on failure."
;; TODO: Set the 'gnu.translator' extended attribute for passive translator ;; TODO: Set the 'gnu.translator' extended attribute for passive translator
;; settings? ;; settings?
) (mkdir-p (scope "servers/bus/pci")))
(define (passive-translator-xattr? file-name) (define (passive-translator-xattr? file-name)
"Return true if FILE-NAME has an extended @code{gnu.translator} attribute "Return true if FILE-NAME has an extended @code{gnu.translator} attribute
@ -183,7 +183,8 @@ set."
(mkdir-p dir)))) (mkdir-p dir))))
(define servers (define servers
'(("servers/crash-dump-core" ("/hurd/crash" "--dump-core")) '(("servers/bus/pci" ("/hurd/pci-arbiter"))
("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
("servers/crash-kill" ("/hurd/crash" "--kill")) ("servers/crash-kill" ("/hurd/crash" "--kill"))
("servers/crash-suspend" ("/hurd/crash" "--suspend")) ("servers/crash-suspend" ("/hurd/crash" "--suspend"))
("servers/password" ("/hurd/password")) ("servers/password" ("/hurd/password"))
@ -213,6 +214,15 @@ set."
;; 'fd_to_filename' in libc expects it. ;; 'fd_to_filename' in libc expects it.
("dev/fd" ("/hurd/magic" "--directory" "fd") #o555) ("dev/fd" ("/hurd/magic" "--directory" "fd") #o555)
("dev/rumpdisk" ("/hurd/rumpdisk") #o660)
("dev/netdde" ("/hurd/netdde") #o660)
("dev/eth0" ("/hurd/devnode" "--master-device=/dev/net"
"eth0")
#o660)
("dev/eth1" ("/hurd/devnode" "--master-device=/dev/net"
"eth1")
#o660)
;; Create a number of ttys; syslogd writes to tty12 by default. ;; Create a number of ttys; syslogd writes to tty12 by default.
;; FIXME: Creating /dev/tty12 leads the console client to switch to ;; FIXME: Creating /dev/tty12 leads the console client to switch to
;; tty12 when syslogd starts, which is confusing for users. Thus, do ;; tty12 when syslogd starts, which is confusing for users. Thus, do
@ -236,7 +246,22 @@ set."
("/hurd/term" ,(string-append "/dev/ttyp" n) ("/hurd/term" ,(string-append "/dev/ttyp" n)
"pty-slave" ,(string-append "/dev/ptyp" n)) "pty-slave" ,(string-append "/dev/ptyp" n))
#o666)))) #o666))))
(iota 10 0)))) (iota 10 0))
,@(append-map (lambda (n)
(let* ((n (number->string n))
(drive (string-append "dev/wd" n))
(disk (string-append "@/dev/disk:wd" n)))
`((,drive ("/hurd/storeio" ,disk) #o600)
,@(map (lambda (p)
(let ((p (number->string p)))
`(,(string-append drive "s" p)
("/hurd/storeio"
"--store-type=typed"
,(string-append
"part:" p ":device:" disk))
#o660)))
(iota 4 1)))))
(iota 4 0))))
(for-each scope-set-translator servers) (for-each scope-set-translator servers)
(mkdir* "dev/vcs/1") (mkdir* "dev/vcs/1")
@ -249,6 +274,10 @@ set."
(false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout"))) (false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr"))) (false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
(false-if-EEXIST (symlink "crash-dump-core" (scope "servers/crash"))) (false-if-EEXIST (symlink "crash-dump-core" (scope "servers/crash")))
(false-if-EEXIST (symlink "/dev/rumpdisk" (scope "dev/disk")))
(false-if-EEXIST (symlink "/dev/netdde" (scope "dev/net")))
(false-if-EEXIST (symlink "/servers/socket/2" (scope "servers/socket/inet")))
(false-if-EEXIST (symlink "/servers/socket/26" (scope "servers/socket/inet6")))
;; Make sure /etc/mtab is a symlink to /proc/mounts. ;; Make sure /etc/mtab is a symlink to /proc/mounts.
(false-if-exception (delete-file (scope "etc/mtab"))) (false-if-exception (delete-file (scope "etc/mtab")))

View file

@ -1,7 +1,8 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016-2022 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -36,6 +37,7 @@
wait-for-unix-socket wait-for-unix-socket
marionette-control marionette-control
wait-for-screen-text wait-for-screen-text
%default-ocrad-arguments
%qwerty-us-keystrokes %qwerty-us-keystrokes
marionette-type marionette-type
@ -287,23 +289,30 @@ Monitor\")."
;; The "quit" command terminates QEMU immediately, with no output. ;; The "quit" command terminates QEMU immediately, with no output.
(unless (string=? command "quit") (wait-for-monitor-prompt monitor))))) (unless (string=? command "quit") (wait-for-monitor-prompt monitor)))))
(define* (invoke-ocrad-ocr image #:key (ocrad "ocrad")) (define %default-ocrad-arguments
'("--invert" "--scale=10"))
(define* (invoke-ocrad-ocr image #:key (ocrad "ocrad")
(ocr-arguments %default-ocrad-arguments))
"Invoke the OCRAD command on image, and return the recognized text." "Invoke the OCRAD command on image, and return the recognized text."
(let* ((pipe (open-pipe* OPEN_READ ocrad "-i" "-s" "10" image)) (let* ((command (string-join `(,ocrad ,@ocr-arguments ,image)))
(pipe (open-input-pipe command))
(text (get-string-all pipe))) (text (get-string-all pipe)))
(unless (zero? (close-pipe pipe)) (unless (zero? (close-pipe pipe))
(error "'ocrad' failed" ocrad)) (error "'ocrad' failed" ocrad))
text)) text))
(define* (invoke-tesseract-ocr image #:key (tesseract "tesseract")) (define* (invoke-tesseract-ocr image #:key (tesseract "tesseract")
(ocr-arguments '()))
"Invoke the TESSERACT command on IMAGE, and return the recognized text." "Invoke the TESSERACT command on IMAGE, and return the recognized text."
(let* ((output-basename (tmpnam)) (let* ((output-basename (tmpnam))
(output-basename* (string-append output-basename ".txt"))) (output-basename* (string-append output-basename ".txt"))
(arguments (cons* image output-basename ocr-arguments)))
(dynamic-wind (dynamic-wind
(const #t) (const #t)
(lambda () (lambda ()
(let ((exit-val (status:exit-val (let ((exit-val (status:exit-val
(system* tesseract image output-basename)))) (apply system* tesseract arguments))))
(unless (zero? exit-val) (unless (zero? exit-val)
(error "'tesseract' failed" tesseract)) (error "'tesseract' failed" tesseract))
(call-with-input-file output-basename* get-string-all))) (call-with-input-file output-basename* get-string-all)))
@ -311,7 +320,8 @@ Monitor\")."
(false-if-exception (delete-file output-basename)) (false-if-exception (delete-file output-basename))
(false-if-exception (delete-file output-basename*)))))) (false-if-exception (delete-file output-basename*))))))
(define* (marionette-screen-text marionette #:key (ocr "ocrad")) (define* (marionette-screen-text marionette #:key (ocr "ocrad")
ocr-arguments)
"Take a screenshot of MARIONETTE, perform optical character "Take a screenshot of MARIONETTE, perform optical character
recognition (OCR), and return the text read from the screen as a string, along recognition (OCR), and return the text read from the screen as a string, along
the screen dump image used. Do this by invoking OCR, which should be the file the screen dump image used. Do this by invoking OCR, which should be the file
@ -324,14 +334,22 @@ if it is not needed."
;; Process it via the OCR. ;; Process it via the OCR.
(cond (cond
((string-contains ocr "ocrad") ((string-contains ocr "ocrad")
(values (invoke-ocrad-ocr image #:ocrad ocr) image)) (values (invoke-ocrad-ocr image
#:ocrad ocr
#:ocr-arguments
(or ocr-arguments %default-ocrad-arguments))
image))
((string-contains ocr "tesseract") ((string-contains ocr "tesseract")
(values (invoke-tesseract-ocr image #:tesseract ocr) image)) (values (invoke-tesseract-ocr image
#:tesseract ocr
#:ocr-arguments (or ocr-arguments '()))
image))
(else (error "unsupported ocr command")))) (else (error "unsupported ocr command"))))
(define* (wait-for-screen-text marionette predicate (define* (wait-for-screen-text marionette predicate
#:key #:key
(ocr "ocrad") (ocr "ocrad")
ocr-arguments
(timeout 30) (timeout 30)
pre-action pre-action
post-action) post-action)
@ -359,7 +377,10 @@ Likewise for POST-ACTION, except it runs at the end of a successful OCR."
'ocr-text: last-text 'ocr-text: last-text
'screendump: screendump-backup)) 'screendump: screendump-backup))
(let* ((_ (and (procedure? pre-action) (pre-action))) (let* ((_ (and (procedure? pre-action) (pre-action)))
(text screendump (marionette-screen-text marionette #:ocr ocr)) (text screendump
(marionette-screen-text marionette
#:ocr ocr
#:ocr-arguments ocr-arguments))
(_ (and (procedure? post-action) (post-action))) (_ (and (procedure? post-action) (post-action)))
(result (predicate text))) (result (predicate text)))
(cond (result (cond (result

View file

@ -906,6 +906,7 @@ dist_patch_DATA = \
%D%/packages/patches/aoflagger-use-system-provided-pybind11.patch \ %D%/packages/patches/aoflagger-use-system-provided-pybind11.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \ %D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/ark-skip-xar-test.patch \ %D%/packages/patches/ark-skip-xar-test.patch \
%D%/packages/patches/arpack-ng-propagate-rng-state.patch \
%D%/packages/patches/aspell-CVE-2019-25051.patch \ %D%/packages/patches/aspell-CVE-2019-25051.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \ %D%/packages/patches/aspell-default-dict-dir.patch \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \ %D%/packages/patches/ath9k-htc-firmware-binutils.patch \
@ -957,7 +958,6 @@ dist_patch_DATA = \
%D%/packages/patches/bsd-games-stdio.h.patch \ %D%/packages/patches/bsd-games-stdio.h.patch \
%D%/packages/patches/beancount-disable-googleapis-fonts.patch \ %D%/packages/patches/beancount-disable-googleapis-fonts.patch \
%D%/packages/patches/beignet-correct-file-names.patch \ %D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/biber-adapt-perl-5.36.patch \
%D%/packages/patches/bidiv-update-fribidi.patch \ %D%/packages/patches/bidiv-update-fribidi.patch \
%D%/packages/patches/binutils-boot-2.20.1a.patch \ %D%/packages/patches/binutils-boot-2.20.1a.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \
@ -1066,6 +1066,7 @@ dist_patch_DATA = \
%D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/doc++-segfault-fix.patch \
%D%/packages/patches/dovecot-opensslv3.patch \ %D%/packages/patches/dovecot-opensslv3.patch \
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
%D%/packages/patches/doxygen-hurd.patch \
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \ %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
%D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dstat-skip-devices-without-io.patch \
%D%/packages/patches/dune-common-skip-failing-tests.patch \ %D%/packages/patches/dune-common-skip-failing-tests.patch \
@ -1146,6 +1147,7 @@ dist_patch_DATA = \
%D%/packages/patches/flatpak-unset-gdk-pixbuf-for-sandbox.patch \ %D%/packages/patches/flatpak-unset-gdk-pixbuf-for-sandbox.patch \
%D%/packages/patches/fluxbox-1.3.7-no-dynamic-cursor.patch \ %D%/packages/patches/fluxbox-1.3.7-no-dynamic-cursor.patch \
%D%/packages/patches/fontconfig-cache-ignore-mtime.patch \ %D%/packages/patches/fontconfig-cache-ignore-mtime.patch \
%D%/packages/patches/fontforge-hurd.patch \
%D%/packages/patches/foobillard++-pkg-config.patch \ %D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
@ -1237,6 +1239,9 @@ dist_patch_DATA = \
%D%/packages/patches/ghc-bloomfilter-ghc9.2.patch \ %D%/packages/patches/ghc-bloomfilter-ghc9.2.patch \
%D%/packages/patches/ghc-bytestring-handle-ghc9.patch \ %D%/packages/patches/ghc-bytestring-handle-ghc9.patch \
%D%/packages/patches/ghc-language-haskell-extract-ghc-8.10.patch \ %D%/packages/patches/ghc-language-haskell-extract-ghc-8.10.patch \
%D%/packages/patches/ghostscript-CVE-2023-36664.patch \
%D%/packages/patches/ghostscript-CVE-2023-36664-fixup.patch \
%D%/packages/patches/ghostscript-leptonica-hurd.patch \
%D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \
@ -1260,6 +1265,9 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \ %D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \
%D%/packages/patches/glibc-hurd-clock_gettime_monotonic.patch \ %D%/packages/patches/glibc-hurd-clock_gettime_monotonic.patch \
%D%/packages/patches/glibc-2.31-hurd-clock_gettime_monotonic.patch \ %D%/packages/patches/glibc-2.31-hurd-clock_gettime_monotonic.patch \
%D%/packages/patches/glibc-2.37-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch \
%D%/packages/patches/glibc-2.37-versioned-locpath.patch \
%D%/packages/patches/glibc-hurd-clock_t_centiseconds.patch \ %D%/packages/patches/glibc-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-hurd-gettyent.patch \ %D%/packages/patches/glibc-hurd-gettyent.patch \
%D%/packages/patches/glibc-hurd-mach-print.patch \ %D%/packages/patches/glibc-hurd-mach-print.patch \
@ -1284,7 +1292,7 @@ dist_patch_DATA = \
%D%/packages/patches/gnome-settings-daemon-gc.patch \ %D%/packages/patches/gnome-settings-daemon-gc.patch \
%D%/packages/patches/gnome-session-support-elogind.patch \ %D%/packages/patches/gnome-session-support-elogind.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \ %D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnumach-add-missing-const_mach_port_name_array_t-type.patch \ %D%/packages/patches/gnumach-support-noide.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \ %D%/packages/patches/gnupg-default-pinentry.patch \
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \ %D%/packages/patches/gnupg-1-build-with-gcc10.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \ %D%/packages/patches/gnutls-skip-trust-store-test.patch \
@ -1365,6 +1373,8 @@ dist_patch_DATA = \
%D%/packages/patches/hubbub-maybe-uninitialized.patch \ %D%/packages/patches/hubbub-maybe-uninitialized.patch \
%D%/packages/patches/hueplusplus-mbedtls.patch \ %D%/packages/patches/hueplusplus-mbedtls.patch \
%D%/packages/patches/hurd-add-without-rump-configure-option.patch \ %D%/packages/patches/hurd-add-without-rump-configure-option.patch \
%D%/packages/patches/hurd-fix-rumpdisk-build.patch \
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
%D%/packages/patches/hurd-fix-types-of-read-write-and-readables-methods-2.patch \ %D%/packages/patches/hurd-fix-types-of-read-write-and-readables-methods-2.patch \
%D%/packages/patches/hurd-fix-types-of-read-write-and-readables-methods.patch \ %D%/packages/patches/hurd-fix-types-of-read-write-and-readables-methods.patch \
%D%/packages/patches/hwloc-1-test-btrfs.patch \ %D%/packages/patches/hwloc-1-test-btrfs.patch \
@ -1495,6 +1505,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-length-check.patch \ %D%/packages/patches/libmad-length-check.patch \
%D%/packages/patches/libmad-md_size.patch \ %D%/packages/patches/libmad-md_size.patch \
%D%/packages/patches/libmad-mips-newgcc.patch \ %D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libmateweather-use-TZDIR.patch \
%D%/packages/patches/libmp4v2-c++11.patch \ %D%/packages/patches/libmp4v2-c++11.patch \
%D%/packages/patches/libmpeg2-arm-private-symbols.patch \ %D%/packages/patches/libmpeg2-arm-private-symbols.patch \
%D%/packages/patches/libmpeg2-global-symbol-test.patch \ %D%/packages/patches/libmpeg2-global-symbol-test.patch \
@ -1536,6 +1547,7 @@ dist_patch_DATA = \
%D%/packages/patches/linphone-desktop-without-sdk.patch \ %D%/packages/patches/linphone-desktop-without-sdk.patch \
%D%/packages/patches/linux-libre-infodocs-target.patch \ %D%/packages/patches/linux-libre-infodocs-target.patch \
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \ %D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
%D%/packages/patches/linux-libre-wireguard-postup-privkey.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \ %D%/packages/patches/linux-pam-no-setfsuid.patch \
%D%/packages/patches/linux-pam-unix_chkpwd.patch \ %D%/packages/patches/linux-pam-unix_chkpwd.patch \
%D%/packages/patches/linuxdcpp-openssl-1.1.patch \ %D%/packages/patches/linuxdcpp-openssl-1.1.patch \
@ -1561,6 +1573,7 @@ dist_patch_DATA = \
%D%/packages/patches/lua-5.4-liblua-so.patch \ %D%/packages/patches/lua-5.4-liblua-so.patch \
%D%/packages/patches/luit-posix.patch \ %D%/packages/patches/luit-posix.patch \
%D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/mactelnet-remove-init.patch \
%D%/packages/patches/mailutils-variable-lookup.patch \ %D%/packages/patches/mailutils-variable-lookup.patch \
%D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/mariadb-rocksdb-atomic-linking.patch \ %D%/packages/patches/mariadb-rocksdb-atomic-linking.patch \
@ -1587,7 +1600,6 @@ dist_patch_DATA = \
%D%/packages/patches/mia-vtk9.patch \ %D%/packages/patches/mia-vtk9.patch \
%D%/packages/patches/mia-vtk92.patch \ %D%/packages/patches/mia-vtk92.patch \
%D%/packages/patches/mia-vtk-version.patch \ %D%/packages/patches/mia-vtk-version.patch \
%D%/packages/patches/mig-cpu.h-generation.patch \
%D%/packages/patches/mingw-w64-6.0.0-gcc.patch \ %D%/packages/patches/mingw-w64-6.0.0-gcc.patch \
%D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \ %D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \
%D%/packages/patches/mingw-w64-reproducible-gendef.patch \ %D%/packages/patches/mingw-w64-reproducible-gendef.patch \
@ -1614,6 +1626,7 @@ dist_patch_DATA = \
%D%/packages/patches/ncompress-fix-softlinks.patch \ %D%/packages/patches/ncompress-fix-softlinks.patch \
%D%/packages/patches/ncftp-reproducible.patch \ %D%/packages/patches/ncftp-reproducible.patch \
%D%/packages/patches/netcdf-date-time.patch \ %D%/packages/patches/netcdf-date-time.patch \
%D%/packages/patches/netdde-build-fix.patch \
%D%/packages/patches/netpbm-CVE-2017-2586.patch \ %D%/packages/patches/netpbm-CVE-2017-2586.patch \
%D%/packages/patches/netpbm-CVE-2017-2587.patch \ %D%/packages/patches/netpbm-CVE-2017-2587.patch \
%D%/packages/patches/netsurf-message-timestamp.patch \ %D%/packages/patches/netsurf-message-timestamp.patch \
@ -1636,7 +1649,6 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \ %D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyacc-binary-literals.patch \ %D%/packages/patches/nyacc-binary-literals.patch \
%D%/packages/patches/oath-toolkit-xmlsec-compat.patch \
%D%/packages/patches/obs-modules-location.patch \ %D%/packages/patches/obs-modules-location.patch \
%D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \ %D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \
%D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \ %D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \
@ -1715,6 +1727,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-wxwidgets-type-errors.patch \ %D%/packages/patches/python-wxwidgets-type-errors.patch \
%D%/packages/patches/quodlibet-fix-invalid-glob.patch \ %D%/packages/patches/quodlibet-fix-invalid-glob.patch \
%D%/packages/patches/quodlibet-fix-mtime-tests.patch \ %D%/packages/patches/quodlibet-fix-mtime-tests.patch \
%D%/packages/patches/qxlsx-fix-include-directory.patch \
%D%/packages/patches/scribus-1.5.8-poppler-22.03.0.patch \ %D%/packages/patches/scribus-1.5.8-poppler-22.03.0.patch \
%D%/packages/patches/scribus-1.5.8-poppler-22.04.0.patch \ %D%/packages/patches/scribus-1.5.8-poppler-22.04.0.patch \
%D%/packages/patches/scribus-1.5.8-poppler-22.09.0.patch \ %D%/packages/patches/scribus-1.5.8-poppler-22.09.0.patch \
@ -1875,6 +1888,7 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.patch \ %D%/packages/patches/rtags-separate-rct.patch \
%D%/packages/patches/racket-chez-scheme-bin-sh.patch \ %D%/packages/patches/racket-chez-scheme-bin-sh.patch \
%D%/packages/patches/racket-rktboot-riscv64-support.patch \
%D%/packages/patches/racket-rktio-bin-sh.patch \ %D%/packages/patches/racket-rktio-bin-sh.patch \
%D%/packages/patches/racket-zuo-bin-sh.patch \ %D%/packages/patches/racket-zuo-bin-sh.patch \
%D%/packages/patches/remake-impure-dirs.patch \ %D%/packages/patches/remake-impure-dirs.patch \
@ -1975,7 +1989,6 @@ dist_patch_DATA = \
%D%/packages/patches/telegram-purple-adjust-test.patch \ %D%/packages/patches/telegram-purple-adjust-test.patch \
%D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/texi2html-i18n.patch \
%D%/packages/patches/texlive-hyph-utf8-no-byebug.patch \
%D%/packages/patches/thefuck-test-environ.patch \ %D%/packages/patches/thefuck-test-environ.patch \
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \ %D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
%D%/packages/patches/timewarrior-time-sensitive-tests.patch \ %D%/packages/patches/timewarrior-time-sensitive-tests.patch \
@ -2002,8 +2015,7 @@ dist_patch_DATA = \
%D%/packages/patches/twinkle-bcg729.patch \ %D%/packages/patches/twinkle-bcg729.patch \
%D%/packages/patches/u-boot-allow-disabling-openssl.patch \ %D%/packages/patches/u-boot-allow-disabling-openssl.patch \
%D%/packages/patches/u-boot-fix-build-python-3.10.patch \ %D%/packages/patches/u-boot-fix-build-python-3.10.patch \
%D%/packages/patches/u-boot-infodocs-target.patch \ %D%/packages/patches/u-boot-fix-u-boot-lib-build.patch \
%D%/packages/patches/u-boot-patman-guix-integration.patch \
%D%/packages/patches/u-boot-nintendo-nes-serial.patch \ %D%/packages/patches/u-boot-nintendo-nes-serial.patch \
%D%/packages/patches/u-boot-rockchip-inno-usb.patch \ %D%/packages/patches/u-boot-rockchip-inno-usb.patch \
%D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \ %D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \
@ -2105,6 +2117,7 @@ dist_patch_DATA = \
%D%/packages/patches/xygrib-fix-finding-data.patch \ %D%/packages/patches/xygrib-fix-finding-data.patch \
%D%/packages/patches/xygrib-newer-proj.patch \ %D%/packages/patches/xygrib-newer-proj.patch \
%D%/packages/patches/yggdrasil-extra-config.patch \ %D%/packages/patches/yggdrasil-extra-config.patch \
%D%/packages/patches/zig-0.9-riscv-support.patch \
%D%/packages/patches/zig-do-not-link-against-librt.patch \ %D%/packages/patches/zig-do-not-link-against-librt.patch \
%D%/packages/patches/zig-use-system-paths.patch \ %D%/packages/patches/zig-use-system-paths.patch \
%D%/packages/patches/zsh-egrep-failing-test.patch %D%/packages/patches/zsh-egrep-failing-test.patch

View file

@ -93,56 +93,46 @@ terminals.")
(define-public brltty (define-public brltty
(package (package
(name "brltty") (name "brltty")
(version "6.5") (version "6.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://brltty.app/archive/brltty-" version ".tar.gz")) (string-append "https://brltty.app/archive/brltty-" version ".tar.gz"))
(sha256 (sha256
(base32 "1h62xzd5k0aaq2k4v3w93rizxnb8psvkxrlx62wr08ybwpspgp7z")))) (base32 "1z54rin4zhg3294pq47gamzjy2c56zfkl07rx2qy2khlpyczds0k"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:tests? #f ; No target (list
#:tests? #f ; no target
;; High parallelism may cause errors such as: ;; High parallelism may cause errors such as:
;; ranlib: ./libbrlapi_stubs.a: error reading brlapi_stubs.o: file truncated ;; ranlib: ./libbrlapi_stubs.a: error reading brlapi_stubs.o: file truncated
#:parallel-build? #f #:parallel-build? #f
#:configure-flags #:configure-flags
(list #~(list
(string-append "--with-libbraille=" (string-append "--with-libbraille="
(assoc-ref %build-inputs "libbraille")) #$(this-package-input "libbraille"))
(string-append "--with-espeak_ng=" (string-append "--with-espeak_ng="
(assoc-ref %build-inputs "espeak-ng")) #$(this-package-input "espeak-ng"))
(string-append "--with-espeak=" (string-append "--with-espeak="
(assoc-ref %build-inputs "espeak")) #$(this-package-input "espeak"))
(string-append "--with-flite=" (string-append "--with-flite="
(assoc-ref %build-inputs "flite")) #$(this-package-input "flite"))
;; Required for RUNPATH validation. ;; Required for RUNPATH validation.
(string-append "LDFLAGS=-Wl,-rpath=" (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib"))
(assoc-ref %outputs "out")
"/lib"))
#:make-flags #:make-flags
(list #~(list
(string-append "JAVA_JAR_DIR=" (string-append "JAVA_JAR_DIR=" #$output)
(assoc-ref %outputs "out")) (string-append "JAVA_JNI_DIR=" #$output)
(string-append "JAVA_JNI_DIR=" (string-append "OCAML_DESTDIR=" #$output "/lib")
(assoc-ref %outputs "out")) (string-append "PYTHON_PREFIX=" #$output)
(string-append "OCAML_DESTDIR="
(assoc-ref %outputs "out")
"/lib")
(string-append "PYTHON_PREFIX="
(assoc-ref %outputs "out"))
"PYTHON_ROOT=/" "PYTHON_ROOT=/"
(string-append "TCL_DIR=" (string-append "TCL_DIR=" #$output "/lib")
(assoc-ref %outputs "out")
"/lib")
"INSTALL_WRITABLE_DIRECTORY=no-thanks") "INSTALL_WRITABLE_DIRECTORY=no-thanks")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-errors (add-after 'unpack 'fix-errors
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(substitute* "configure" (substitute* "configure"
(("/sbin/ldconfig") (("/sbin/ldconfig")
(which "true"))) (which "true")))
@ -150,7 +140,7 @@ terminals.")
(substitute* "Bindings/Python/setup.py.in" (substitute* "Bindings/Python/setup.py.in"
(("extra_compile_args =") (("extra_compile_args =")
(string-append "extra_link_args = ['-Wl,-rpath=" (string-append "extra_link_args = ['-Wl,-rpath="
(assoc-ref outputs "out") #$output
"/lib'], " "/lib'], "
"extra_compile_args = ")))))))) "extra_compile_args = "))))))))
(native-inputs (native-inputs

View file

@ -59,6 +59,7 @@
;;; Copyright © 2023 Lu Hui <luhux76@gmail.com> ;;; Copyright © 2023 Lu Hui <luhux76@gmail.com>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream> ;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Alexey Abramov <levenson@mmer.org> ;;; Copyright © 2023 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -113,6 +114,7 @@
#:use-module (gnu packages cryptsetup) #:use-module (gnu packages cryptsetup)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages dns) #:use-module (gnu packages dns)
#:use-module (gnu packages elf) #:use-module (gnu packages elf)
#:use-module (gnu packages file) #:use-module (gnu packages file)
@ -370,14 +372,14 @@ interface and is based on GNU Guile.")
(define-public shepherd-0.10 (define-public shepherd-0.10
(package (package
(inherit shepherd-0.9) (inherit shepherd-0.9)
(version "0.10.1") (version "0.10.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/shepherd/shepherd-" (uri (string-append "mirror://gnu/shepherd/shepherd-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1720czfchg4pzw44v0zj3rc3k6jhl3ixwnpw4v4v9bqx98ad49yw")))) "0v9ld9gbqdp5ya380fbkdsxa0iqr90gi6yk004ccz3n792nq6wlj"))))
(native-inputs (modify-inputs (package-native-inputs shepherd-0.9) (native-inputs (modify-inputs (package-native-inputs shepherd-0.9)
(replace "guile-fibers" guile-fibers-1.3))) (replace "guile-fibers" guile-fibers-1.3)))
(inputs (modify-inputs (package-inputs shepherd-0.9) (inputs (modify-inputs (package-inputs shepherd-0.9)
@ -1958,7 +1960,7 @@ system administrator.")
(define-public sudo (define-public sudo
(package (package
(name "sudo") (name "sudo")
(version "1.9.13p2") (version "1.9.14p1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -1968,7 +1970,7 @@ system administrator.")
version ".tar.gz"))) version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"0kapjhgyzaqk2nfzzz04ss9x6cy61s79afd3vhgkn0y1wkyh886z")) "1bwg2bn1sbc6l2gx2r9vfqyf8dyvgp7nad0wj3p5gn095vpza6z9"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -1987,9 +1989,9 @@ system administrator.")
;; 'visudo.c' expects _PATH_MV to be defined, but glibc doesn't ;; 'visudo.c' expects _PATH_MV to be defined, but glibc doesn't
;; provide it. ;; provide it.
(string-append "CPPFLAGS=-D_PATH_MV='\"" (string-append "CPPFLAGS=-D_PATH_MV=\\\""
(assoc-ref %build-inputs "coreutils") (assoc-ref %build-inputs "coreutils")
"/bin/mv\"'")) "/bin/mv\\\""))
;; Avoid non-determinism; see <http://bugs.gnu.org/21918>. ;; Avoid non-determinism; see <http://bugs.gnu.org/21918>.
#:parallel-build? #f #:parallel-build? #f
@ -2452,13 +2454,13 @@ development, not the kernel implementation of ACPI.")
(define-public s-tui (define-public s-tui
(package (package
(name "s-tui") (name "s-tui")
(version "1.1.3") (version "1.1.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "s-tui" version)) (uri (pypi-uri "s-tui" version))
(sha256 (sha256
(base32 "1l2ik5iwmb8vxa2aqdy62zfy3zfzbpq5a0pgpka2vvlw9ivpqy5p")))) (base32 "1vf9gpfk9x6sqpz7n420ijkn3ykws8g9b77kmbmlrjsm76dnp1dj"))))
(build-system python-build-system) (build-system python-build-system)
(inputs (inputs
(list python-psutil python-urwid)) (list python-psutil python-urwid))
@ -2472,14 +2474,14 @@ utilization, temperature and power.")
(define-public stress (define-public stress
(package (package
(name "stress") (name "stress")
(version "1.0.5") (version "1.0.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://debian/pool/main/s/stress/stress_" (uri (string-append "mirror://debian/pool/main/s/stress/stress_"
version ".orig.tar.gz")) version ".orig.tar.gz"))
(sha256 (sha256
(base32 (base32
"09shpd85g8dvpiw0mnwykss676g0s7lbi8ab37xjinb5lfff960p")))) "1cg0mklfrwfyzwqkzidd0151r8n2jgbiiqz1v0p3w4q62mkmdand"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf automake)) (list autoconf automake))
@ -4217,7 +4219,7 @@ hard-coded.")
(define-public thermald (define-public thermald
(package (package
(name "thermald") (name "thermald")
(version "2.5.2") (version "2.5.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4226,7 +4228,7 @@ hard-coded.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "08w0lanhk2rncvshrvxrpm84y9f9x7aa63vxi7fg6329c94cf78k")))) (base32 "0hpk7pjlrnj62m5zdmih7gf3nihhyphyslh5xakdjb64cvx5z25d"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -4406,7 +4408,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi")) (let ((real-name "inxi"))
(package (package
(name "inxi-minimal") (name "inxi-minimal")
(version "3.3.25-1") (version "3.3.28-1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4415,7 +4417,7 @@ Python loading in HPC environments.")
(commit version))) (commit version)))
(file-name (git-file-name real-name version)) (file-name (git-file-name real-name version))
(sha256 (sha256
(base32 "0mak2f06xzalccgaij9fsi20600sg05v0pmg0blvy6hvq5kh97k3")))) (base32 "0h00dasmw3crci8kwpa503jljy3c5r2fsdhpbbczhsgznhlr8pbi"))))
(build-system trivial-build-system) (build-system trivial-build-system)
(inputs (inputs
(list bash-minimal (list bash-minimal
@ -4826,7 +4828,7 @@ LUKS volumes encrypted with the user's log-in password.")
(define-public jc (define-public jc
(package (package
(name "jc") (name "jc")
(version "1.23.2") (version "1.23.3")
(source (source
(origin (origin
;; The PyPI tarball lacks the test suite. ;; The PyPI tarball lacks the test suite.
@ -4836,7 +4838,7 @@ LUKS volumes encrypted with the user's log-in password.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "17g2q0h3jwzfm80ldl8inpyh5y0qzzmgvyg10gkk1rp8i34wfgly")))) (base32 "02rylrh2dr593xf2l865lvvxnsb9337nd4fiqbahfyz4cbqgzq3x"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list #:phases (list #:phases
@ -5852,3 +5854,49 @@ file or files to several hosts.")
(description "This package provides a graphical disk usage analyzer in (description "This package provides a graphical disk usage analyzer in
text mode.") text mode.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public mactelnet
(package
(name "mactelnet")
(version "0.4.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/haakonnessjoen/MAC-Telnet")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1z63dz22crrvrm0sh2cwpyqb7wqd9m45m6f2641mwmyp6hcpf4k4"))
(patches (search-patches "mactelnet-remove-init.patch"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file "src/utlist.h")
(substitute* (find-files "src/" "\\.c$")
(("\"utlist\\.h\"") "<utlist.h>"))))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f)) ; no tests
(native-inputs (list autoconf automake gettext-minimal))
(inputs (list uthash))
(synopsis "MAC-Telnet utilities for communicating with RouterOS devices")
(description "This package provides an implementation of the MAC-Telnet protocol
used by RouterOS devices. It provides the following commands:
@table @command
@item{macping}
Ping RouterOS devices or @command{mactelnetd} hosts.
@item{mactelnetd}
MAC-Telnet daemon.
@item{mactelnet}
MAC-Telnet client.
@item{mndp}
Discover other RouterOS devices or @command{mactelnetd} hosts.
@end table")
(home-page "https://lunatic.no/2010/10/routeros-mac-telnet-application-for-linux-users/")
(license
(list license:gpl2+
;; Note: applies to src/md5.{c,h}
;; This file is likely to be gone in the next release.
license:zlib))))

View file

@ -3,6 +3,7 @@
;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -20,9 +21,11 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages adns) (define-module (gnu packages adns)
#:use-module (guix gexp)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages m4) #:use-module (gnu packages m4)
@ -76,12 +79,63 @@ scripts.")
"1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))) "1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (list
(modify-phases %standard-phases #:phases
#~(modify-phases %standard-phases
(add-before 'check 'filter-live-tests (add-before 'check 'filter-live-tests
(lambda _ (lambda _
;; Filter tests that require internet access. ;; Filter tests that require internet access.
(setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))))) (setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(substitute* "test/ares-test-main.cc"
(("(^| )main *\\(.*" all)
(string-append all " exit (77);\n")))))
(add-after 'filter-live-tests 'filter-hurd-tests
(lambda _
(setenv "GTEST_FILTER"
(string-append
(getenv "GTEST_FILTER")
":.*Basic/2"
":.*CancelImmediate/2"
":.*CancelImmediateGetHostByAddr/2"
":.*CancelLater/1"
":.*FamilyUnspecified/2"
":.*FamilyV6/2"
":.*GetAddrInfoParallelLookups/1"
":.*GetHostByAddrDestroy/2"
":.*GetHostByNameCNAMENoData/2"
":.*GetHostByNameDestroyAbsolute/2"
":.*GetHostByNameDestroyRelative/2"
":.*GetHostByNameParallelLookups/1"
":.*HostAlias/2"
":.*HostAliasMissing/2"
":.*HostAliasMissingFile/2"
":.*NotImplResponse/2"
":.*RefusedResponse/2"
":.*Resend/1"
":.*RetryWithoutEDNS/2"
":.*SearchDomains/2"
":.*SearchDomainsBare/2"
":.*SearchDomainsServFailOnAAAA/2"
":.*SearchDomainsWithResentReply/1"
":.*SearchHighNdots/2"
":.*SearchNoDataThenFail/2"
":.*SearchNoDataThenNoDataBare/2"
":.*SearchNoDataThenSuccess/2"
":.*ServFailResponse/2"
":.*SimpleQuery/2"
":.*SockCallback/2"
":.*SockConfigureCallback/2"
":.*SortListV4/2"
":.*SortListV6/2"
":.*ThirdServer/2"
":.*TruncationRetry/1"
":.*UnspecifiedFamilyCname6A4/2"
":.*UnspecifiedFamilyV4/2"
":.*UnspecifiedFamilyV6/2")))))
#~()))))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(home-page "https://c-ares.haxx.se/") (home-page "https://c-ares.haxx.se/")

View file

@ -262,20 +262,17 @@ try agda-prelude instead.")
;; Upstream's HEAD follows the latest Agda release, but they don't release ;; Upstream's HEAD follows the latest Agda release, but they don't release
;; until a newer Agda release comes up, so their releases are always one ;; until a newer Agda release comes up, so their releases are always one
;; version late. ;; version late.
(let* ((revision "1")
(commit "814d54b08b360b8e80828065f54b80e3a98a0092"))
(package (package
(name "agda-cubical") (name "agda-cubical")
(version (git-version "0.4" revision commit)) (version "0.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/agda/cubical.git") (url "https://github.com/agda/cubical.git")
(commit commit))) (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0d25gb1qzpx539k62qjsjq4xmzp34qk7n3hmd9y6v8slhrrxw312")))) "0yfg7gr55n08ly1qgzpcp16s15k1abycppbcdi9lzg1hjryqxcg3"))))
(build-system agda-build-system) (build-system agda-build-system)
(arguments (arguments
(list (list
@ -289,7 +286,7 @@ try agda-prelude instead.")
(description "A standard library for Cubical Agda, comparable to (description "A standard library for Cubical Agda, comparable to
agda-stdlib but using cubical methods.") agda-stdlib but using cubical methods.")
(home-page "https://github.com/agda/cubical") (home-page "https://github.com/agda/cubical")
(license license:expat)))) (license license:expat)))
(define-public agda-1lab (define-public agda-1lab
;; Upstream doesn't do releases (yet). Use a commit that builds with 2.6.3, ;; Upstream doesn't do releases (yet). Use a commit that builds with 2.6.3,

View file

@ -236,8 +236,7 @@ the real span of the lattice.")
(base32 (base32
"03swii601kxnphl6v7wv0rh2xn4rz6xbljzvfw5v9py6w3z5nm63")))) "03swii601kxnphl6v7wv0rh2xn4rz6xbljzvfw5v9py6w3z5nm63"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (list (texlive-updmap.cfg (native-inputs (list (texlive-updmap.cfg)))
(list texlive-amsfonts))))
(inputs (list gmp libx11 perl readline)) (inputs (list gmp libx11 perl readline))
(arguments (arguments
'(#:make-flags '("all") '(#:make-flags '("all")
@ -406,7 +405,7 @@ precision.")
hevea hevea
python-wrapper python-wrapper
readline readline
texlive-tiny)) (texlive-updmap.cfg)))
(home-page "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html") (home-page "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html")
(synopsis "Computer algebra system") (synopsis "Computer algebra system")
(description (description
@ -1190,7 +1189,7 @@ features, and more.")
(define-public xtensor (define-public xtensor
(package (package
(name "xtensor") (name "xtensor")
(version "0.24.0") (version "0.24.6")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1198,7 +1197,7 @@ features, and more.")
(commit version))) (commit version)))
(sha256 (sha256
(base32 (base32
"14fpzwdq26p2fqdrmc78hny9pp09k9c53jnwlh7f8x54ikzm23c2")) "0gf5m5p61981pv7yh5425lcv8dci948ri37hn1zlli7xg54x0g3i"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs

View file

@ -27,15 +27,17 @@
(package (package
(name "anthy") (name "anthy")
(version "9100h") (version "9100h")
(source (origin (source
(origin
(method url-fetch) (method url-fetch)
;; The URI does not appear to be easily guessable. For ;; The URI does not appear to be easily guessable. For
;; example, you cannot download version "9100g" simply ;; example, you cannot download version "9100g" simply
;; by replacing "9100h" in the URI. ;; by replacing "9100h" in the URI.
(uri "http://dl.osdn.jp/anthy/37536/anthy-9100h.tar.gz") (uri (list (string-append "https://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
"distfiles/31/anthy-9100h.tar.gz")
"https://osdn.dl.osdn.net/anthy/37536/anthy-9100h.tar.gz"))
(sha256 (sha256
(base32 (base32 "0ism4zibcsa5nl77wwi12vdsfjys3waxcphn1p5s7d0qy1sz0mnj"))))
"0ism4zibcsa5nl77wwi12vdsfjys3waxcphn1p5s7d0qy1sz0mnj"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; Anthy also contains elisp modules for using anthy within Emacs. ;; Anthy also contains elisp modules for using anthy within Emacs.
;; However, these modules are incompatible with the latest version ;; However, these modules are incompatible with the latest version
@ -55,7 +57,7 @@
hiragana text to mixed kana and kanji. It is written in the C hiragana text to mixed kana and kanji. It is written in the C
programming language. Anthy stores personal customizations (words it programming language. Anthy stores personal customizations (words it
has learned from the user's input, words the user has explicitly has learned from the user's input, words the user has explicitly
added, etc.) in the ~/.anthy/ directory. This package contains the added, etc.) in the @file{~/.anthy/} directory. This package contains the
anthy C libraries, the cannadic and alt-cannadic kana dictionaries, as anthy C libraries, the cannadic and alt-cannadic kana dictionaries, as
well as command-line tools for using anthy and managing well as command-line tools for using anthy and managing
dictionaries.") dictionaries.")

View file

@ -329,7 +329,7 @@ dictionaries, including personal ones.")
(define-public aspell-dict-nb (define-public aspell-dict-nb
(aspell-dictionary "nb" "Norwegian Bokmål" (aspell-dictionary "nb" "Norwegian Bokmål"
#:version "0.50.1-2" #:version "0.50-2"
#:prefix "aspell-" #:prefix "aspell-"
#:sha256 #:sha256
(base32 (base32

View file

@ -346,7 +346,7 @@ package for the Game Boy and Game Boy Color. It consists of:
(define-public wla-dx (define-public wla-dx
(package (package
(name "wla-dx") (name "wla-dx")
(version "10.1") (version "10.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -355,12 +355,13 @@ package for the Game Boy and Game Boy Color. It consists of:
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1nh2k2xn5fj389gq68f3fxgrxakgn8c6dw2ffqay86s3706hac9w")))) "1h6apmhaks4772s2cja34ck488p8yhb3nscbxjw5061ml2046zqq"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (list python-sphinx)) ; to generate man pages (native-inputs (list python-sphinx)) ; to generate man pages
(arguments (arguments
`(#:phases (list
(modify-phases %standard-phases #:phases
#~(modify-phases %standard-phases
(add-before 'check 'copy-tests-to-build-directory (add-before 'check 'copy-tests-to-build-directory
(lambda _ (lambda _
(copy-recursively "../source/tests" "tests"))) (copy-recursively "../source/tests" "tests")))
@ -395,21 +396,23 @@ Supported architectures are:
(define-public xa (define-public xa
(package (package
(name "xa") (name "xa")
(version "2.3.12") (version "2.3.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.floodgap.com/retrotech/xa" (uri (string-append "https://www.floodgap.com/retrotech/xa"
"/dists/xa-" version ".tar.gz")) "/dists/xa-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0107zdwc2rzlp26pyx7gns4lqmiyg68nmpgwrg36yrrd04v1bzgq")))) "0bph41aglxl07rnggrir2dl1x97f52hm0bl51d0vklyqvfyvm6qv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; TODO: custom test harness, not sure how it works (list
#:tests? #f ; TODO: custom test harness, not sure how it works
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure)) ; no "configure" script (delete 'configure)) ; no "configure" script
#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))))) #:make-flags
#~(list (string-append "DESTDIR=" #$output)))) ; no $prefix support
(native-inputs (list perl)) (native-inputs (list perl))
(home-page "https://www.floodgap.com/retrotech/xa/") (home-page "https://www.floodgap.com/retrotech/xa/")
(synopsis "Two-pass portable cross-assembler") (synopsis "Two-pass portable cross-assembler")

View file

@ -1058,7 +1058,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
(define-public stellarium (define-public stellarium
(package (package
(name "stellarium") (name "stellarium")
(version "23.1") (version "23.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1067,7 +1067,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "03gq7n15dsvb32pfq7j3a0vc5wf1y9xdxaq09q1gp534jkgd4g7f")))) (base32 "0fkiibc6m8kfmyf5my7ynfrpdlrcri14cl26swpgv3bhzxpmx27h"))))
(build-system cmake-build-system) (build-system cmake-build-system)
;; TODO: Complete documentation build and split into dedicated outputs. ;; TODO: Complete documentation build and split into dedicated outputs.
(arguments (arguments

View file

@ -147,8 +147,8 @@
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (guix build-system waf) #:use-module (guix build-system waf)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils) #:use-module (guix utils)
@ -721,25 +721,18 @@ streams from live audio.")
purposes developed at Queen Mary, University of London.") purposes developed at Queen Mary, University of London.")
(license license:gpl2+))) (license license:gpl2+)))
(define (ardour-rpath-phase major-version) (define ardour-bundled-media
`(lambda* (#:key outputs #:allow-other-keys) (origin
(let ((libdir (string-append (assoc-ref outputs "out") (method url-fetch)
"/lib/ardour" ,major-version))) (uri "http://stuff.ardour.org/loops/ArdourBundledMedia.zip")
(substitute* "wscript" (sha256
(("linker_flags = \\[\\]") (base32
(string-append "linker_flags = [\"" "0k135sm559yywfidrya7h5cddwqa2p2abhimrar2khydf43f03d0"))))
"-Wl,-rpath="
libdir ":"
libdir "/backends" ":"
libdir "/engines" ":"
libdir "/panners" ":"
libdir "/surfaces" ":"
libdir "/vamp" "\"]"))))))
(define-public ardour (define-public ardour
(package (package
(name "ardour") (name "ardour")
(version "7.4") (version "7.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -756,7 +749,7 @@ purposes developed at Queen Mary, University of London.")
namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }"))))) namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }")))))
(sha256 (sha256
(base32 (base32
"0v66h9fghjyjinldw9yfhhlfi3my235x6n4dpxx432z35lka2h89")) "18pgxnxfp0pqsy24cmf3hanr6vh0pnimsh48x5nfbflqy7ljsrkj"))
(file-name (string-append name "-" version)))) (file-name (string-append name "-" version))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
@ -769,7 +762,20 @@ namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'set-rpath-in-LDFLAGS (add-after 'unpack 'set-rpath-in-LDFLAGS
,(ardour-rpath-phase (version-major version))) (lambda* (#:key outputs #:allow-other-keys)
(let ((libdir (string-append (assoc-ref outputs "out")
"/lib/ardour"
,(version-major version))))
(substitute* "wscript"
(("linker_flags = \\[\\]")
(string-append "linker_flags = [\""
"-Wl,-rpath="
libdir ":"
libdir "/backends" ":"
libdir "/engines" ":"
libdir "/panners" ":"
libdir "/surfaces" ":"
libdir "/vamp" "\"]"))))))
(add-after 'install 'install-freedesktop-files (add-after 'install 'install-freedesktop-files
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
@ -794,7 +800,14 @@ namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \
(add-after 'install 'install-man-page (add-after 'install 'install-man-page
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(install-file "ardour.1" (string-append (assoc-ref outputs "out") (install-file "ardour.1" (string-append (assoc-ref outputs "out")
"/share/man/man1"))))) "/share/man/man1"))))
(add-after 'install 'install-bundled-media
(lambda* (#:key outputs #:allow-other-keys)
(invoke "unzip" "-d" (string-append (assoc-ref outputs "out")
"/share/ardour"
,(version-major version)
"/media/")
,ardour-bundled-media))))
#:test-target "test")) #:test-target "test"))
(inputs (inputs
(list alsa-lib (list alsa-lib
@ -849,14 +862,17 @@ namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \
gettext-minimal gettext-minimal
itstool itstool
perl perl
pkg-config)) pkg-config
unzip))
(home-page "https://ardour.org") (home-page "https://ardour.org")
(synopsis "Digital audio workstation") (synopsis "Digital audio workstation")
(description (description
"Ardour is a multi-channel digital audio workstation, allowing users to "Ardour is a multi-channel digital audio workstation, allowing users to
record, edit, mix and master audio and MIDI projects. It is targeted at audio record, edit, mix and master audio and MIDI projects. It is targeted at audio
engineers, musicians, soundtrack editors and composers.") engineers, musicians, soundtrack editors and composers.")
(license license:gpl2+))) (license (list license:gpl2+
license:cc0 ;used by MIDI Beats
license:expat)))) ;used by MIDI Chords and Progressions
(define-public audacity (define-public audacity
(package (package
@ -1400,7 +1416,7 @@ envelope follower, distortion effects, tape effects and more.")
(define-public snapcast (define-public snapcast
(package (package
(name "snapcast") (name "snapcast")
(version "0.26.0") (version "0.27.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1409,7 +1425,7 @@ envelope follower, distortion effects, tape effects and more.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"091gf3k1xv3k0m0kf2apr9bwiifw2czjcksd3vzwy544sfgrya08")))) "10l5hvmaqr9ykipsnzl95wqg19ff36rhpa1q88axxcia0k2valkn"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f)) ; no included tests '(#:tests? #f)) ; no included tests
@ -5194,7 +5210,7 @@ bluetooth profile.")
(define-public libopenshot-audio (define-public libopenshot-audio
(package (package
(name "libopenshot-audio") (name "libopenshot-audio")
(version "0.3.1") (version "0.3.2")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -5203,7 +5219,7 @@ bluetooth profile.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"164ibsp5g162cyjgpa0ap35h75igmfnmhxmwkkk1fvm1cpbf1jgj")))) "0g49akqhd0jsd0ar6sacdqz6cv8y0a4zclnyliifiidxrkv43fiw"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs (inputs
(list alsa-lib (list alsa-lib
@ -5214,10 +5230,11 @@ bluetooth profile.")
libxinerama libxinerama
libxcursor)) libxcursor))
(arguments (arguments
`(#:tests? #f ;there are no tests (list
#:tests? #f ; there are no tests
#:configure-flags #:configure-flags
(list (string-append "-DCMAKE_CXX_FLAGS=-I" #~(list (string-append "-DCMAKE_CXX_FLAGS=-I"
(assoc-ref %build-inputs "freetype") #$(this-package-input "freetype")
"/include/freetype2")))) "/include/freetype2"))))
(home-page "https://openshot.org") (home-page "https://openshot.org")
(synopsis "Audio editing and playback for OpenShot") (synopsis "Audio editing and playback for OpenShot")
@ -6236,7 +6253,7 @@ and DSD streams.")
(define-public qpwgraph (define-public qpwgraph
(package (package
(name "qpwgraph") (name "qpwgraph")
(version "0.4.4") (version "0.4.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -6245,7 +6262,7 @@ and DSD streams.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"05j98y8j3f0dybaal6qawq9nsrvr1hylsnig4yk6si16mhb32y7l")))) "06pgkma0i9dbir74cfhgnnkqjcq8z496by4lk1whqcj7j9ldbi2l"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (list #:tests? #f)) ;; no tests (arguments (list #:tests? #f)) ;; no tests
(inputs (list alsa-lib (inputs (list alsa-lib

View file

@ -62,15 +62,14 @@
(define-public oath-toolkit (define-public oath-toolkit
(package (package
(name "oath-toolkit") (name "oath-toolkit")
(version "2.6.7") (version "2.6.9")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.savannah.nongnu.org/releases/" (uri (string-append "https://download.savannah.nongnu.org/releases/"
name "/" name "-" version ".tar.gz")) name "/" name "-" version ".tar.gz"))
(patches (search-patches "oath-toolkit-xmlsec-compat.patch"))
(sha256 (sha256
(base32 "1aa620k05lsw3l3slkp2mzma40q3p9wginspn9zk8digiz7dzv9n")))) (base32 "11g9r1avl3d2nnkglk0g7d6z6gs5padk75xqzvbxp9pir0qwhfik"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; TODO --enable-pskc causes xmlsec-related test suite failures. ;; TODO --enable-pskc causes xmlsec-related test suite failures.
@ -93,16 +92,16 @@
(inputs (inputs
(list linux-pam openssl xmlsec-openssl)) (list linux-pam openssl xmlsec-openssl))
(home-page "https://www.nongnu.org/oath-toolkit/") (home-page "https://www.nongnu.org/oath-toolkit/")
(synopsis "One-time password (OTP) components") (synopsis "@acronym{OTP, one-time password} components")
(description (description
"The @dfn{OATH} (Open AuTHentication) Toolkit provides various components "The @acronym{OATH, Open AuTHentication} Toolkit provides various
for building one-time password (@dfn{OTP}) authentication systems: components for building @acronym{OTP, One-Time Password} authentication systems:
@itemize @itemize
@item @command{oathtool}, a command-line tool for generating & validating OTPs. @item @command{oathtool}, a command-line tool for generating & validating OTPs.
@item @code{liboath}, a C library for OATH handling. @item @code{liboath}, a C library for OATH handling.
@item @command{pskctool}, a command-line tool for manipulating secret key @item @command{pskctool}, a command-line tool for manipulating secret key
files in the Portable Symmetric Key Container (@dfn{PSKC}) format files in the @acronym{PSKC, Portable Symmetric Key Container} format
described in RFC6030. described in RFC6030.
@item @code{libpskc}, a shared and static C library for PSKC handling. @item @code{libpskc}, a shared and static C library for PSKC handling.
@item @code{pam_oath}, a PAM module for pluggable login authentication. @item @code{pam_oath}, a PAM module for pluggable login authentication.
@ -111,8 +110,7 @@ described in RFC6030.
Supported technologies include the event-based @acronym{HOTP, Hash-based Message Supported technologies include the event-based @acronym{HOTP, Hash-based Message
Authentication Code One-Time Password} algorithm (RFC4226), the time-based Authentication Code One-Time Password} algorithm (RFC4226), the time-based
@acronym{TOTP, Time-based One-Time Password} algorithm (RFC6238), and @acronym{TOTP, Time-based One-Time Password} algorithm (RFC6238), and
@acronym{PSKC, Portable Symmetric Key Container} (RFC6030) to manage secret key PSKC (RFC6030) to manage secret key data.")
data.")
(license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/) (license (list license:lgpl2.1+ ; the libraries (liboath/ & libpskc/)
license:gpl3+)))) ; the tools (everything else) license:gpl3+)))) ; the tools (everything else)

View file

@ -158,7 +158,6 @@ know anything about Autoconf or M4.")
"1fjm21k2na07f3vasf288a0zx66lbv0hd3l9bvv3q8p62s3pg569")))))) "1fjm21k2na07f3vasf288a0zx66lbv0hd3l9bvv3q8p62s3pg569"))))))
(define-public autoconf-2.64 (define-public autoconf-2.64
;; As of GDB 7.8, GDB is still developed using this version of Autoconf.
(package (inherit autoconf) (package (inherit autoconf)
(version "2.64") (version "2.64")
(source (source

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -391,7 +391,7 @@ list and implement the backup strategy.")
(define-public snapraid (define-public snapraid
(package (package
(name "snapraid") (name "snapraid")
(version "12.0") (version "12.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -400,7 +400,7 @@ list and implement the backup strategy.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0k8pynafkx8bhnqnjhc3jsds5p40sflz4drm88i6dg6ifv35mhh9")))) (base32 "0xgvyhyyl2v6azxwzqbpgyln4r2dw34xa8z09116vpkgdgivh36z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:configure-flags (list #:configure-flags
@ -480,14 +480,14 @@ errors.")
(define-public rdiff-backup (define-public rdiff-backup
(package (package
(name "rdiff-backup") (name "rdiff-backup")
(version "2.2.4") (version "2.2.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/rdiff-backup/rdiff-backup/releases/" (uri (string-append "https://github.com/rdiff-backup/rdiff-backup/releases/"
"download/v" version "/rdiff-backup-" version ".tar.gz")) "download/v" version "/rdiff-backup-" version ".tar.gz"))
(sha256 (sha256
(base32 "1xfvy1xql8zl7rprnaxwya8bp9g7rg8v5pwhr93svhj2594m30cl")))) (base32 "13m0kq9y6rzgaq0zlzh7qhi789qmbzp3dnc7y57fmhsfg1mq5ql6"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
(list python-setuptools-scm)) (list python-setuptools-scm))
@ -634,13 +634,13 @@ detection, and lossless compression.")
(define-public borg (define-public borg
(package (package
(name "borg") (name "borg")
(version "1.2.3") (version "1.2.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "borgbackup" version)) (uri (pypi-uri "borgbackup" version))
(sha256 (sha256
(base32 "11b7jqv9sw22a9512b270d12k3mrcgmmcaimh6bgm5iwcgw1h973")) (base32 "1a2d6z2ln476l0fcnkl4rpciij5b2lql44b71aivg0cy8vlm9gd4"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
#~(begin #~(begin
@ -768,19 +768,19 @@ backups on untrusted computers.")
(define-public wimlib (define-public wimlib
(package (package
(name "wimlib") (name "wimlib")
(version "1.13.5") (version "1.14.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://wimlib.net/downloads/" (uri (string-append "https://wimlib.net/downloads/"
"wimlib-" version ".tar.gz")) "wimlib-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"08z3xxm5hq1n4wmyhgz14p1cv0w2lx610vn8nhfwpds4n7lwkz1j")))) "0hkgcf3v3hmwck02s0623brdx1ijvk1la0h5mgly1whnaqviajj9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs
(list fuse libxml2 ntfs-3g openssl)) (list fuse-3 libxml2 ntfs-3g openssl))
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list "--disable-static" (list "--disable-static"

View file

@ -22,6 +22,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe> ;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com> ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -75,6 +76,7 @@
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-26) #:use-module (srfi srfi-26)
#:export (glibc #:export (glibc
libc-for-target
make-ld-wrapper make-ld-wrapper
libiconv-if-needed)) libiconv-if-needed))
@ -132,21 +134,17 @@ command-line arguments, multiple languages, and so on.")
(string-append bin "/fgrep")) (string-append bin "/fgrep"))
(("^exec grep") (("^exec grep")
(string-append "exec " bin "/grep")))))) (string-append "exec " bin "/grep"))))))
,@(if (target-hurd?) ,@(if (system-hurd?)
'((add-before 'check 'skip-triple-backref-test '((add-before 'check 'skip-test
(lambda _ (lambda _
;; This test is marked as malfunctioning on glibc systems (substitute*
;; due to ;; This test hangs
;; <https://sourceware.org/bugzilla/show_bug.cgi?id=11053> '("tests/hash-collision-perf"
;; and it triggers a segfault with glibc 2.33 on GNU/Hurd. ;; This test fails
;; Skip it. "tests/file")
(substitute* "tests/triple-backref" (("^#!.*" all)
(("^warn_" all) (string-append all "exit 77;\n"))))))
(string-append "exit 77\n" all)))))) '()))))
'()))
#:make-flags ,(if (target-hurd?)
''("XFAIL_TESTS=test-perror2 equiv-classes") ;XXX
''())))
(synopsis "Print lines matching a pattern") (synopsis "Print lines matching a pattern")
(description (description
"grep is a tool for finding text inside files. Text is found by "grep is a tool for finding text inside files. Text is found by
@ -185,10 +183,6 @@ including, for example, recursive directory searching.")
" CONFIG_HEADER='$(CONFIG_HEADER)'\t\t\\\n"))))) " CONFIG_HEADER='$(CONFIG_HEADER)'\t\t\\\n")))))
(modules '((guix build utils))))) (modules '((guix build utils)))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
`(#:make-flags ,(if (target-hurd?)
''("XFAIL_TESTS=test-perror2")
''())))
(synopsis "Stream editor") (synopsis "Stream editor")
(native-inputs (list perl)) ;for tests (native-inputs (list perl)) ;for tests
(description (description
@ -309,9 +303,15 @@ differences.")
(patches (search-patches "diffutils-fix-signal-processing.patch")))) (patches (search-patches "diffutils-fix-signal-processing.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags ,(if (target-hurd?) (list
''("XFAIL_TESTS=test-perror2 large-subopt") #:phases (if (system-hurd?)
''()))) #~(modify-phases %standard-phases
(add-after 'unpack 'skip-tests
(lambda _
(substitute* "tests/large-subopt"
(("^#!.*" all)
(string-append all "exit 77;\n"))))))
#~%standard-phases)))
(native-inputs (list perl)) (native-inputs (list perl))
(synopsis "Comparing and merging files") (synopsis "Comparing and merging files")
(description (description
@ -346,10 +346,16 @@ interactive means to merge two files.")
(substitute* '("tests/xargs/verbose-quote.sh" (substitute* '("tests/xargs/verbose-quote.sh"
"tests/find/exec-plus-last-file.sh") "tests/find/exec-plus-last-file.sh")
(("#!/bin/sh") (("#!/bin/sh")
(string-append "#!" (which "sh"))))))) (string-append "#!" (which "sh"))))))
#:make-flags ,(if (target-hurd?) ,@(if (system-hurd?)
''("XFAIL_TESTS=test-strerror_r") '((add-after 'unpack 'skip-tests
''()))) (lambda _
(substitute*
;; This test fails non-deterministically
"gnulib-tests/test-strerror_r.c"
(("(^| )main *\\(.*" all)
(string-append all "{\n exit (77);//"))))))
'()))))
(synopsis "Operating on files matching given criteria") (synopsis "Operating on files matching given criteria")
(description (description
"Findutils supplies the basic file directory searching utilities of the "Findutils supplies the basic file directory searching utilities of the
@ -395,23 +401,13 @@ used to apply commands with arbitrarily long arguments.")
(outputs '("out" "debug")) (outputs '("out" "debug"))
(arguments (arguments
`(#:parallel-build? #f ; help2man may be called too early `(#:parallel-build? #f ; help2man may be called too early
,@(if (target-hurd?) ,@(if (system-hurd?)
'(#:make-flags ; these tests fail deterministically '(#:make-flags ; these tests fail deterministically
(list (string-append "XFAIL_TESTS=tests/misc/env-S.pl" (list (string-append "XFAIL_TESTS="
" tests/misc/kill.sh"
" tests/misc/nice.sh"
" tests/misc/pwd-long.sh"
" tests/split/fail.sh"
;; /hurd/fifo issue:
;; <https://issues.guix.gnu.org/58803>.
" tests/df/unreadable.sh"
;; Gnulib tests. ;; Gnulib tests.
" test-fdutimensat" " test-fdutimensat"
" test-futimens" " test-futimens"
" test-linkat" " test-linkat"
" test-perror2"
" test-renameat" " test-renameat"
" test-renameatu" " test-renameatu"
" test-utimensat"))) " test-utimensat")))
@ -433,10 +429,35 @@ used to apply commands with arbitrarily long arguments.")
(("#!/bin/sh") (string-append "#!" (which "sh")))))) (("#!/bin/sh") (string-append "#!" (which "sh"))))))
(add-after 'unpack 'remove-tests (add-after 'unpack 'remove-tests
(lambda _ (lambda _
,@(if (target-hurd?) ,@(if (system-hurd?)
'((substitute* "Makefile.in" '((substitute*
;; this test hangs ;; These tests hang
(("^ *tests/misc/timeout-group.sh.*") "")) '("tests/cp/sparse-to-pipe.sh"
"tests/split/fail.sh"
;; These tests error
"tests/dd/nocache.sh"
;; These tests fail
"tests/cp/sparse.sh"
"tests/cp/special-f.sh"
"tests/dd/bytes.sh"
"tests/dd/stats.sh"
"tests/ls/dangle.sh"
"tests/ls/follow-slink.sh"
"tests/ls/hyperlink.sh"
"tests/ls/infloop.sh"
"tests/ls/inode.sh"
"tests/ls/selinux-segfault.sh"
"tests/misc/env-S.pl"
"tests/misc/factor-parallel.sh"
"tests/misc/ls-misc.pl"
"tests/misc/nice.sh"
"tests/misc/pwd-long.sh"
"tests/misc/shred-passes.sh"
"tests/misc/stat-slash.sh"
"tests/rm/fail-eperm.xpl"
"tests/split/filter.sh")
(("^#!.*" all)
(string-append all "exit 77;\n")))
(substitute* "gnulib-tests/Makefile.in" (substitute* "gnulib-tests/Makefile.in"
;; This test sometimes fails and sometimes ;; This test sometimes fails and sometimes
;; passes, but it does this consistently, so ;; passes, but it does this consistently, so
@ -1419,25 +1440,44 @@ variety of options. It is an alternative to the shell \"type\" built-in
command.") command.")
(license gpl3+))) ; some files are under GPLv2+ (license gpl3+))) ; some files are under GPLv2+
(define-public glibc/hurd
(package/inherit glibc
(name "glibc-hurd")
(version "2.37")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"0hqsp4dzrjx0iga6jv0magjw26dh82pxlmk8yis5v0d127qyymr2"))
(patches (search-patches "glibc-ldd-powerpc.patch"
"glibc-dl-cache.patch"
"glibc-2.37-versioned-locpath.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-supported-locales.patch"
"glibc-2.37-hurd-clock_t_centiseconds.patch"
"glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch"
"glibc-hurd-mach-print.patch"
"glibc-hurd-gettyent.patch"))))
(supported-systems %hurd-systems)))
(define-public glibc/hurd-headers (define-public glibc/hurd-headers
(package (inherit glibc) (package/inherit glibc/hurd
(name "glibc-hurd-headers") (name "glibc-hurd-headers")
(outputs '("out")) (outputs '("out"))
(propagated-inputs (list gnumach-headers hurd-headers)) (propagated-inputs (list gnumach-headers hurd-headers))
(native-inputs (native-inputs
(modify-inputs (package-native-inputs glibc) (modify-inputs (package-native-inputs glibc/hurd)
(prepend (if (%current-target-system) (prepend (if (%current-target-system)
;; XXX: When targeting i586-pc-gnu, we need a 32-bit MiG, (let* ((cross-base (resolve-interface '(gnu packages cross-base)))
;; hence this hack. (cross-mig (module-ref cross-base 'cross-mig)))
(package (inherit mig) (cross-mig (%current-target-system)))
(arguments `(#:system "i686-linux")))
mig)))) mig))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments glibc) (substitute-keyword-arguments (package-arguments glibc/hurd)
;; We just pass the flags really needed to build the headers. ;; We just pass the flags really needed to build the headers.
((#:configure-flags flags) ((#:configure-flags flags)
`(list "--enable-add-ons" `(list "--enable-add-ons"
"--host=i586-pc-gnu"
,@%glibc/hurd-configure-flags)) ,@%glibc/hurd-configure-flags))
((#:phases _) ((#:phases _)
'(modify-phases %standard-phases '(modify-phases %standard-phases
@ -1452,7 +1492,17 @@ command.")
(close-port (close-port
(open-output-file (open-output-file
(string-append out "/include/gnu/stubs.h")))))) (string-append out "/include/gnu/stubs.h"))))))
(delete 'build))))))) ; nothing to build (delete 'build))))) ; nothing to build
(supported-systems %hurd-systems)))
(define* (libc-for-target #:optional
(target (or (%current-target-system)
(%current-system))))
(match target
((? target-hurd?)
glibc/hurd)
(_
glibc)))
(define-public tzdata (define-public tzdata
(package (package
@ -1602,6 +1652,6 @@ package needs iconv ,@(libiconv-if-needed) should be added."
"Return the list of \"final inputs\"." "Return the list of \"final inputs\"."
;; Avoid circular dependency by lazily resolving 'commencement'. ;; Avoid circular dependency by lazily resolving 'commencement'.
(let ((iface (resolve-interface '(gnu packages commencement)))) (let ((iface (resolve-interface '(gnu packages commencement))))
(module-ref iface '%final-inputs))) ((module-ref iface '%final-inputs) (%current-system))))
;;; base.scm ends here ;;; base.scm ends here

File diff suppressed because it is too large Load diff

View file

@ -1254,7 +1254,9 @@ libblasr_gtest_dep = cpp.find_library('gtest_main', dirs : '~a')\n"
(list boost hdf5 htslib pbbam zlib)) (list boost hdf5 htslib pbbam zlib))
(native-inputs (native-inputs
(list googletest pkg-config)) (list googletest pkg-config))
(home-page "https://github.com/PacificBiosciences/blasr_libcpp") (home-page
(string-append "https://web.archive.org/web/20201106122415/"
"https://github.com/PacificBiosciences/blasr_libcpp"))
(synopsis "Library for analyzing PacBio genomic sequences") (synopsis "Library for analyzing PacBio genomic sequences")
(description (description
"This package provides three libraries used by applications for analyzing "This package provides three libraries used by applications for analyzing
@ -1296,7 +1298,8 @@ cpp.find_library('hdf5_cpp', dirs : '~a'), "
(list boost blasr-libcpp hdf5 pbbam zlib)) (list boost blasr-libcpp hdf5 pbbam zlib))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(home-page "https://github.com/PacificBiosciences/blasr") (home-page (string-append "https://web.archive.org/web/20210813124135/"
"https://github.com/PacificBiosciences/blasr"))
(synopsis "PacBio long read aligner") (synopsis "PacBio long read aligner")
(description (description
"Blasr is a genomic sequence aligner for processing PacBio long reads.") "Blasr is a genomic sequence aligner for processing PacBio long reads.")
@ -1408,11 +1411,12 @@ Format (GFF) with Biopython integration.")
(license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE")))) (license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE"))))
(define-public python-bcbio-gff/biopython-1.73 (define-public python-bcbio-gff/biopython-1.73
(hidden-package
(package (package
(inherit python-bcbio-gff) (inherit python-bcbio-gff)
(propagated-inputs (propagated-inputs
(modify-inputs (package-propagated-inputs python-bcbio-gff) (modify-inputs (package-propagated-inputs python-bcbio-gff)
(replace "python-biopython" python-biopython-1.73))))) (replace "python-biopython" python-biopython-1.73))))))
;; Note: the name on PyPi is "biofluff". ;; Note: the name on PyPi is "biofluff".
(define-public python-biofluff (define-public python-biofluff
@ -3347,7 +3351,9 @@ and more accurate. BWA-MEM also has better performance than BWA-backtrack for
(("inline int map") "int map")))))))) (("inline int map") "int map"))))))))
(inputs (inputs
(list gdsl zlib perl)) (list gdsl zlib perl))
(home-page "http://bwa-pssm.binf.ku.dk/") ;; https://bwa-pssm.binf.ku.dk is down, and all Web Archived copies are
;; blank (they actually have "display:none" for some nefarious reason).
(home-page "https://github.com/pkerpedjiev/bwa-pssm")
(synopsis "Burrows-Wheeler transform-based probabilistic short read mapper") (synopsis "Burrows-Wheeler transform-based probabilistic short read mapper")
(description (description
"BWA-PSSM is a probabilistic short genomic sequence read aligner based on "BWA-PSSM is a probabilistic short genomic sequence read aligner based on
@ -4759,17 +4765,15 @@ data and settings.")
(list boost cairo rmath-standalone)) (list boost cairo rmath-standalone))
(native-inputs (native-inputs
(list (texlive-updmap.cfg (list (texlive-updmap.cfg
(list texlive-cm (list texlive-doi
texlive-amsfonts texlive-examplep
texlive-doi texlive-forloop
texlive-fonts-ec texlive-listofitems
texlive-latex-examplep
texlive-hyperref
texlive-ms texlive-ms
texlive-latex-natbib texlive-natbib
texlive-bibtex ;style files used by natbib
texlive-pgf ;tikz texlive-pgf ;tikz
texlive-latex-verbatimbox)) texlive-readarray
texlive-verbatimbox))
imagemagick)) imagemagick))
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/") (home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
(synopsis "Discover discriminative nucleotide sequence motifs") (synopsis "Discover discriminative nucleotide sequence motifs")
@ -7273,7 +7277,9 @@ program for nucleotide and protein sequences.")
"1hkw21rq1mwf7xp0rmbb2gqc0i6p11108m69i7mr7xcjl268pxnb")))) "1hkw21rq1mwf7xp0rmbb2gqc0i6p11108m69i7mr7xcjl268pxnb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:make-flags (list "CFLAGS=-O2 -g -fcommon"))) `(#:tests? ,(not (or (target-riscv64?) ;XXX: stuck on riscv64-linux
(%current-target-system)))
#:make-flags (list "CFLAGS=-O2 -g -fcommon")))
(inputs (inputs
;; XXX: TODO: Enable Lua and Guile bindings. ;; XXX: TODO: Enable Lua and Guile bindings.
;; https://github.com/tjunier/newick_utils/issues/13 ;; https://github.com/tjunier/newick_utils/issues/13
@ -9826,6 +9832,14 @@ differently labelled data.")
(base32 "04kr1b28p5j7h48g32cldkg87xcmxnmd4kspygkfs7a4amihpi66")))) (base32 "04kr1b28p5j7h48g32cldkg87xcmxnmd4kspygkfs7a4amihpi66"))))
(properties `((upstream-name . "Pando"))) (properties `((upstream-name . "Pando")))
(build-system r-build-system) (build-system r-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'loosen-requirements
(lambda _
(substitute* "DESCRIPTION"
((" \\(==.*,") ",")))))))
(propagated-inputs (propagated-inputs
(list r-bayestestr (list r-bayestestr
r-foreach r-foreach
@ -12088,15 +12102,14 @@ programs for inferring phylogenies (evolutionary trees).")
(list automake (list automake
autoconf autoconf
openmpi openmpi
(texlive-updmap.cfg (list texlive-amsfonts (texlive-updmap.cfg
texlive-caption (list texlive-caption
texlive-cite texlive-cite
texlive-fancyvrb texlive-fancyvrb
texlive-fonts-ec texlive-infwarerr
texlive-graphics texlive-kvoptions
texlive-grfext texlive-pdftexcmds
texlive-hyperref texlive-psfrag
texlive-latex-psfrag
texlive-xcolor)))) texlive-xcolor))))
(home-page "https://github.com/stephaneguindon/phyml") (home-page "https://github.com/stephaneguindon/phyml")
(synopsis "Programs for working on SAM/BAM files") (synopsis "Programs for working on SAM/BAM files")
@ -17051,20 +17064,20 @@ to an artifact/contaminant file.")
(delete-file-recursively "third-party"))))) (delete-file-recursively "third-party")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags '("OPENMP=t") (list
#:make-flags #~(list "OPENMP=t")
#:test-target "test" #:test-target "test"
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure) (delete 'configure)
(add-after 'unpack 'fix-zlib-include (add-after 'unpack 'fix-zlib-include
(lambda _ (lambda _
(substitute* "src/binarySequences.c" (substitute* "src/binarySequences.c"
(("../third-party/zlib-1.2.3/zlib.h") "zlib.h")))) (("../third-party/zlib-1.2.3/zlib.h") "zlib.h"))))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let ((bin (string-append #$output "/bin"))
(bin (string-append out "/bin")) (doc (string-append #$output "/share/doc/velvet")))
(doc (string-append out "/share/doc/velvet")))
(mkdir-p bin) (mkdir-p bin)
(mkdir-p doc) (mkdir-p doc)
(install-file "velveth" bin) (install-file "velveth" bin)
@ -17074,9 +17087,10 @@ to an artifact/contaminant file.")
(inputs (inputs
(list openmpi zlib)) (list openmpi zlib))
(native-inputs (native-inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-graphics (list (texlive-updmap.cfg
texlive-fonts-ec (list texlive-infwarerr
texlive-hyperref))))) texlive-kvoptions
texlive-pdftexcmds))))
(home-page "https://www.ebi.ac.uk/~zerbino/velvet/") (home-page "https://www.ebi.ac.uk/~zerbino/velvet/")
(synopsis "Nucleic acid sequence assembler for very short reads") (synopsis "Nucleic acid sequence assembler for very short reads")
(description (description

View file

@ -503,7 +503,7 @@ features.")
(package (package
(inherit qbittorrent) (inherit qbittorrent)
(name "qbittorrent-enhanced") (name "qbittorrent-enhanced")
(version "4.5.2.10") (version "4.5.4.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -513,7 +513,7 @@ features.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"18z4panaqbmhbw5i1yn17wpqzslhy6w08zcc5bx2hhlg8slp1r9j")))) "0qwk69mgcyh7fij4nsi4ndd17aa61p2c6cxn9l402w4cf1dy6hfs"))))
(home-page "https://github.com/c0re100/qBittorrent-Enhanced-Edition") (home-page "https://github.com/c0re100/qBittorrent-Enhanced-Edition")
(description (description
"qBittorrent Enhanced is a bittorrent client based on qBittorrent with "qBittorrent Enhanced is a bittorrent client based on qBittorrent with

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013-2019, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name> ;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@ -648,7 +648,7 @@ tree binary files. These are board description files used by Linux and BSD.")
(define u-boot (define u-boot
(package (package
(name "u-boot") (name "u-boot")
(version "2022.10") (version "2023.07.02")
(source (origin (source (origin
(patches (patches
(list %u-boot-rockchip-inno-usb-patch (list %u-boot-rockchip-inno-usb-patch
@ -656,15 +656,14 @@ tree binary files. These are board description files used by Linux and BSD.")
%u-boot-sifive-prevent-relocating-initrd-fdt %u-boot-sifive-prevent-relocating-initrd-fdt
%u-boot-rk3399-enable-emmc-phy-patch %u-boot-rk3399-enable-emmc-phy-patch
(search-patch "u-boot-fix-build-python-3.10.patch") (search-patch "u-boot-fix-build-python-3.10.patch")
(search-patch "u-boot-infodocs-target.patch") (search-patch "u-boot-fix-u-boot-lib-build.patch")))
(search-patch "u-boot-patman-guix-integration.patch")))
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://ftp.denx.de/pub/u-boot/" "https://ftp.denx.de/pub/u-boot/"
"u-boot-" version ".tar.bz2")) "u-boot-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1y5x8vxdgsqdqlsvq01mn8lmw53fqairkhvhhjx83hjva0m4id2h")))) "1m91w3fpywllkwm000dqsw3294j0szs1lz6qbgwv1aql3ic4hskb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list bison (list bison
@ -676,6 +675,7 @@ tree binary files. These are board description files used by Linux and BSD.")
perl perl
pkg-config ;for 'make menuconfig' pkg-config ;for 'make menuconfig'
python python
python-pyelftools
swig swig
(list util-linux "lib"))) (list util-linux "lib")))
(home-page "https://www.denx.de/wiki/U-Boot/") (home-page "https://www.denx.de/wiki/U-Boot/")
@ -726,7 +726,12 @@ Info manual.")))
(name "u-boot-tools") (name "u-boot-tools")
(native-inputs (native-inputs
(modify-inputs (package-native-inputs u-boot) (modify-inputs (package-native-inputs u-boot)
(prepend python-coverage python-pycryptodomex python-pytest sdl2))) (prepend python-coverage
python-filelock
python-pycryptodomex
python-pytest
python-pytest-xdist
sdl2)))
(arguments (arguments
`(#:make-flags '("HOSTCC=gcc") `(#:make-flags '("HOSTCC=gcc")
#:test-target "tcheck" #:test-target "tcheck"
@ -739,7 +744,7 @@ Info manual.")))
(("/bin/false") (which "false"))) (("/bin/false") (which "false")))
(substitute* "tools/dtoc/fdt_util.py" (substitute* "tools/dtoc/fdt_util.py"
(("'cc'") "'gcc'")) (("'cc'") "'gcc'"))
(substitute* "tools/patman/test_util.py" (substitute* "tools/u_boot_pylib/test_util.py"
;; python3-coverage is simply called coverage in guix. ;; python3-coverage is simply called coverage in guix.
(("python3-coverage") "coverage") (("python3-coverage") "coverage")
@ -777,7 +782,16 @@ def test_ctrl_c"))
;; See https://bugs.gnu.org/34717 for ;; See https://bugs.gnu.org/34717 for
;; details. ;; details.
(("CONFIG_FIT_SIGNATURE=y") (("CONFIG_FIT_SIGNATURE=y")
"CONFIG_FIT_SIGNATURE=n\nCONFIG_UT_LIB_ASN1=n\nCONFIG_TOOLS_LIBCRYPTO=n") "CONFIG_FIT_SIGNATURE=n
CONFIG_UT_LIB_ASN1=n
CONFIG_TOOLS_LIBCRYPTO=n")
;; Catch instances of implied CONFIG_FIG_SIGNATURE
;; with VPL targets
(("CONFIG_SANDBOX_VPL=y")
"CONFIG_SANDBOX_VPL=y
CONFIG_FIT_SIGNATURE=n
CONFIG_VPL_FIT_SIGNATURE=n
CONFIG_TOOLS_LIBCRYPTO=n")
;; This test requires a sound system, which is un-used ;; This test requires a sound system, which is un-used
;; in u-boot-tools. ;; in u-boot-tools.
(("CONFIG_SOUND=y") "CONFIG_SOUND=n"))) (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@ -828,6 +842,26 @@ def test_ctrl_c"))
" This package provides board-independent tools " " This package provides board-independent tools "
"of U-Boot.")))) "of U-Boot."))))
(define-public python-u-boot-pylib
(package
(inherit u-boot)
(name "python-u-boot-pylib")
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "tools/u_boot_pylib")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./u_boot_pylib")))))))
(synopsis "U-Boot Python library")
(description "This package provides common Python code used by some of the
commands part of the U-Boot project, such as Patman.")))
;;; This is packaged separately, as it can be used in other contexts than for ;;; This is packaged separately, as it can be used in other contexts than for
;;; U-Boot development. ;;; U-Boot development.
(define-public patman (define-public patman
@ -842,10 +876,13 @@ def test_ctrl_c"))
#:tests? #f #:tests? #f
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
;; Patman fails to run during 'sanity-check phase, as it needs to be
;; run within a git directory.
(delete 'sanity-check)
(add-after 'unpack 'chdir (add-after 'unpack 'chdir
(lambda _ (lambda _
(chdir "tools/patman")))))) (chdir "tools/patman"))))))
(inputs (list python-pygit2 python-requests)) (inputs (list python-pygit2 python-requests python-u-boot-pylib))
(synopsis "Patch automation tool") (synopsis "Patch automation tool")
(description "Patman is a patch automation script which: (description "Patman is a patch automation script which:
@itemize @itemize
@ -997,7 +1034,7 @@ removed so that it fits within common partitioning schemes.")))
(define-public u-boot-am335x-evm (define-public u-boot-am335x-evm
(make-u-boot-package "am335x_evm" "arm-linux-gnueabihf")) (make-u-boot-package "am335x_evm" "arm-linux-gnueabihf"))
(define*-public (make-u-boot-sunxi64-package board triplet (define*-public (make-u-boot-sunxi64-package board triplet scp-firmware
#:key defconfig configs) #:key defconfig configs)
(let ((base (make-u-boot-package (let ((base (make-u-boot-package
board triplet #:defconfig defconfig #:configs configs))) board triplet #:defconfig defconfig #:configs configs)))
@ -1009,20 +1046,27 @@ removed so that it fits within common partitioning schemes.")))
#~(modify-phases #$phases #~(modify-phases #$phases
(add-after 'unpack 'set-environment (add-after 'unpack 'set-environment
(lambda* (#:key native-inputs inputs #:allow-other-keys) (lambda* (#:key native-inputs inputs #:allow-other-keys)
(setenv "SCP" (search-input-file
native-inputs "libexec/scp.bin"))
(setenv "BL31" (search-input-file inputs "bl31.bin")))))))) (setenv "BL31" (search-input-file inputs "bl31.bin"))))))))
(native-inputs
(modify-inputs (package-native-inputs base)
(append (force scp-firmware))))
(inputs (inputs
(modify-inputs (package-inputs base) (modify-inputs (package-inputs base)
(append arm-trusted-firmware-sun50i-a64)))))) (append arm-trusted-firmware-sun50i-a64))))))
(define-public u-boot-pine64-plus (define-public u-boot-pine64-plus
(make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu")) (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu"
(delay crust-pine64-plus)))
(define-public u-boot-pine64-lts (define-public u-boot-pine64-lts
(make-u-boot-sunxi64-package "pine64-lts" "aarch64-linux-gnu")) (make-u-boot-sunxi64-package "pine64-lts" "aarch64-linux-gnu"
(delay crust-pine64-plus)))
(define-public u-boot-pinebook (define-public u-boot-pinebook
(make-u-boot-sunxi64-package (make-u-boot-sunxi64-package
"pinebook" "aarch64-linux-gnu" "pinebook" "aarch64-linux-gnu" (delay crust-pinebook)
;; Fix regression with LCD video output introduced in 2020.01 ;; Fix regression with LCD video output introduced in 2020.01
;; https://patchwork.ozlabs.org/patch/1225130/ ;; https://patchwork.ozlabs.org/patch/1225130/
#:configs '("CONFIG_VIDEO_BPP32=y"))) #:configs '("CONFIG_VIDEO_BPP32=y")))
@ -1104,7 +1148,7 @@ partition."))
(delete 'strip) (delete 'strip)
(delete 'validate-runpath))))) (delete 'validate-runpath)))))
(inputs (inputs
(modify-inputs (package-native-inputs base) (modify-inputs (package-inputs base)
(append arm-trusted-firmware-rk3399)))))) (append arm-trusted-firmware-rk3399))))))
(define-public u-boot-qemu-arm (define-public u-boot-qemu-arm
@ -1170,7 +1214,20 @@ Documentation} for more information (for example by running @samp{info
(append sdl2)))))) (append sdl2))))))
(define-public u-boot-sifive-unleashed (define-public u-boot-sifive-unleashed
(make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu")) (let ((base (make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu")))
(package
(inherit base)
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'set-environment
(lambda* (#:key inputs #:allow-other-keys)
(setenv "OPENSBI" (search-input-file inputs
"fw_dynamic.bin"))))))))
(inputs
(modify-inputs (package-inputs base)
(append opensbi-generic))))))
(define-public u-boot-sifive-unmatched (define-public u-boot-sifive-unmatched
(let ((base (make-u-boot-package "sifive_unmatched" "riscv64-linux-gnu"))) (let ((base (make-u-boot-package "sifive_unmatched" "riscv64-linux-gnu")))
@ -1230,7 +1287,11 @@ Documentation} for more information (for example by running @samp{info
"CONFIG_SATA_SIL=y" "CONFIG_SATA_SIL=y"
"CONFIG_SCSI=y" "CONFIG_SCSI=y"
"CONFIG_SCSI_AHCI=y" "CONFIG_SCSI_AHCI=y"
"CONFIG_DM_SCSI=y")))) "CONFIG_DM_SCSI=y"
;; Disable SPL FIT signatures,
;; due to GPLv2 and Openssl
;; license incompatibilities
"# CONFIG_SPL_FIT_SIGNATURE is not set"))))
(package (package
(inherit base) (inherit base)
(arguments (arguments

View file

@ -171,14 +171,14 @@ generate such a compilation database.")
(define-public bmake (define-public bmake
(package (package
(name "bmake") (name "bmake")
(version "20230622") (version "20230711")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz")) "http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
(sha256 (sha256
(base32 "007ckj2381bmwpxy5zmy2m19p2hxaj7ld80b5lv7i798c2fwj15l")))) (base32 "1vrg6gclfn34lxyyqf0837hk89n5pf7ms0gmgg1fd87i0cn5908a"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list bash-minimal)) (list bash-minimal))

View file

@ -850,14 +850,14 @@ laid out on the image.")
(define-public libburn (define-public libburn
(package (package
(name "libburn") (name "libburn")
(version "1.5.4") (version "1.5.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://files.libburnia-project.org/releases/" (uri (string-append "http://files.libburnia-project.org/releases/"
"libburn-" version ".tar.gz")) "libburn-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0m1vyry6pi115nysfgb0cg313qqhnlxqdg7f920wpiar0z8mjl2j")))) "0jv447ixwvj68vslbgbbvkzmaabf4dz0dcizg9garvp59cdlk5bj"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
@ -872,14 +872,14 @@ DVD-RW, DVD-R, DVD-R/DL, BD-R, and BD-RE.")
(define-public libisofs (define-public libisofs
(package (package
(name "libisofs") (name "libisofs")
(version "1.5.4") (version "1.5.6.pl01")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://files.libburnia-project.org/releases/" (uri (string-append "http://files.libburnia-project.org/releases/"
"libisofs-" version ".tar.gz")) "libisofs-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"13m82l13cb5d7ca53dv3akma1jr9gw0hnnshdwqpj6ahly0fv85a")))) "09czddjriv2zi1bdsck8a31ci6xpi1qr2rqmzfhlqx21sqwd67xc"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list zlib acl)) (list zlib acl))

View file

@ -44,6 +44,7 @@
;;; Copyright © 2023 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com> ;;; Copyright © 2023 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com>
;;; Copyright © 2023 Timo Wilken <guix@twilken.net> ;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -812,6 +813,41 @@ and it supports a very flexible form of test discovery.")
has been designed to be fast, light and unintrusive.") has been designed to be fast, light and unintrusive.")
(license license:expat))) (license license:expat)))
(define-public python-gixy
;; The 0.1.20 release is missing some important fixes.
;; XXX: Commit 'e9008dcbd11f43ccac109b0cf2bf98a94e76b449' breaks tests
;; since it improperly removes an import.
(let ((commit "303eb6887ddecab18138b6e427b04ae77c41d2f1")
(revision "0")
(base-version "0.1.20"))
(package
(name "python-gixy")
(version (git-version base-version revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/yandex/gixy")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0gymjcnvjx9snyrzdbmjnk93ibb161q72xam29vnl3yyac4r1330"))))
(build-system pyproject-build-system)
(native-inputs (list python-nose))
(propagated-inputs
(list python-cached-property python-configargparse
python-jinja2 python-six
;; XXX: gixy is incompatible with pyparsing >= 3.x.
;; See <https://github.com/yandex/gixy/pull/132> and
;; <https://github.com/yandex/gixy/pull/122>.
python-pyparsing-2.4.7))
(home-page "https://github.com/yandex/gixy")
(synopsis "Static NGINX configuration analyzer")
(description "Gixy is a static analyzer whose main goal is to help
prevent common NGINX misconfigurations. It provides the @command{gixy}
command.")
(license license:mpl2.0))))
(define-public go-github.com-smartystreets-gunit (define-public go-github.com-smartystreets-gunit
(package (package
(name "go-github.com-smartystreets-gunit") (name "go-github.com-smartystreets-gunit")

View file

@ -899,9 +899,9 @@ emphasis on quality rather than speed.")
(inputs (list openblas)) (inputs (list openblas))
(native-inputs (native-inputs
(list gfortran (list gfortran
(texlive-updmap.cfg (list texlive-fonts-ec (texlive-updmap.cfg
texlive-graphics (list texlive-epstopdf
texlive-latex-geometry)))) texlive-latexmk))))
(home-page "https://github.com/greglandrum/yaehmop") (home-page "https://github.com/greglandrum/yaehmop")
(synopsis "Perform extended Hückel calculations") (synopsis "Perform extended Hückel calculations")
(description "@acronym{YAeHMOP, Yet Another extended Hueckel Molecular (description "@acronym{YAeHMOP, Yet Another extended Hueckel Molecular

View file

@ -466,7 +466,7 @@ and 32-bit PowerPC architectures.")
(package (package
(inherit chez-scheme) (inherit chez-scheme)
(name "chez-scheme-for-racket") (name "chez-scheme-for-racket")
(version "9.9.9-pre-release.14") (version "9.9.9-pre-release.16")
;; The version should match `scheme-version`. ;; The version should match `scheme-version`.
;; See racket/src/ChezScheme/s/cmacros.ss c. line 360. ;; See racket/src/ChezScheme/s/cmacros.ss c. line 360.
;; It will always be different than the upstream version! ;; It will always be different than the upstream version!
@ -759,13 +759,7 @@ Chez Scheme.")))
;; though it would probably be easy to add. ;; though it would probably be easy to add.
(propagated-inputs (propagated-inputs
(list xorg-rgb (list xorg-rgb
(texlive-updmap.cfg (texlive-updmap.cfg (list texlive-epsf))
(list texlive-dvips-l3backend
texlive-hyperref
texlive-bibtex
texlive-epsf
texlive-fonts-ec
texlive-oberdiek))
ghostscript ghostscript
netpbm)) netpbm))
;; Debian uses a versionless path for STEXLIB, ;; Debian uses a versionless path for STEXLIB,
@ -1014,18 +1008,11 @@ create compilers, making them easier to understand and maintain.")
(native-inputs (native-inputs
(list (chez-scheme-for-system) (list (chez-scheme-for-system)
ghostscript ghostscript
;; FIXME: This package fails to build with the error: (texlive-updmap.cfg
;; mktexpk: don't know how to create bitmap font for bchr8r (list texlive-charter
;; Replacing the following with `texlive` fixes it.
;; What is missing?
(texlive-updmap.cfg (list texlive-oberdiek
texlive-epsf
texlive-metapost
texlive-charter
texlive-pdftex
texlive-context texlive-context
texlive-cm texlive-cweb
texlive-tex-plain)))) texlive-metapost))))
(arguments (arguments
(list (list
#:make-flags #:make-flags
@ -1038,6 +1025,15 @@ create compilers, making them easier to understand and maintain.")
#:tests? #f ; no tests #:tests? #f ; no tests
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-tex-input
(lambda _
;; Fix "I can't find file `supp-pdf'." error.
(substitute* "chezweb.w"
(("supp-pdf") "supp-pdf.mkii"))
;; Recent cweb packages do not include "\acrofalse". Remove
;; it.
(substitute* "doc/cwebman.tex"
(("\\acrofalse.*") ""))))
;; This package has a custom "bootstrap" script that ;; This package has a custom "bootstrap" script that
;; is meant to be run from the Makefile. ;; is meant to be run from the Makefile.
(delete 'bootstrap) (delete 'bootstrap)
@ -1079,7 +1075,7 @@ programming in Scheme.")
(native-inputs (native-inputs
(list (chez-scheme-for-system) (list (chez-scheme-for-system)
chez-web chez-web
(texlive-updmap.cfg (list texlive-pdftex)))) (texlive-updmap.cfg)))
(arguments (arguments
(list (list
#:tests? #f ; no tests #:tests? #f ; no tests

View file

@ -10,7 +10,7 @@
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com> ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -136,6 +136,19 @@ using the CMake build system.")
;; This test fails for unknown reason. ;; This test fails for unknown reason.
"RunCMake.file-GET_RUNTIME_DEPENDENCIES")) "RunCMake.file-GET_RUNTIME_DEPENDENCIES"))
(define %common-disabled-tests/hurd
'("CTestTestTimeout"
"CTestTestRerunFailed"
"RunCMake.CompilerChange"
"RunCMake.ctest_test"
"RunCMake.file"
"RunCMake.BundleUtilities"
"RunCMake.configure_file"
"RunCMake.CTestTimeout"
"RunCMake.CTestTimeoutAfterMatch"
"RunCMake.CommandLine"
"RunCMake.CTestCommandLine"))
(define %preserved-third-party-files (define %preserved-third-party-files
'(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must '(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must
;; be available along with the required headers. ;; be available along with the required headers.
@ -190,7 +203,10 @@ using the CMake build system.")
"CTestTestSubdir" ; This test fails to build 2 of the 3 tests. "CTestTestSubdir" ; This test fails to build 2 of the 3 tests.
;; This test fails when ARGS (below) is in use, see ;; This test fails when ARGS (below) is in use, see
;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>. ;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>.
"CTestCoverageCollectGCOV"))) "CTestCoverageCollectGCOV"
#$@(if (target-hurd?)
%common-disabled-tests/hurd
#~()))))
(list (list
(string-append (string-append
;; These arguments apply for the tests only. ;; These arguments apply for the tests only.
@ -210,20 +226,17 @@ using the CMake build system.")
;; CMake uses its own configure script. ;; CMake uses its own configure script.
(replace 'configure (replace 'configure
(lambda* (#:key (configure-flags '()) #:allow-other-keys) (lambda* (#:key (configure-flags '()) #:allow-other-keys)
(apply invoke "./configure" configure-flags)))))) (apply invoke "./configure" configure-flags)))
#$@(if (target-hurd?)
#~((add-after 'unpack 'patch-hurd
(lambda _
;; Version 3.25.0 has a similar fix.
(substitute* "Utilities/cmlibuv/src/unix/udp.c"
(("!defined\\(__QNX__\\)")
"!defined(__GNU__)")))))
#~()))))
(inputs (inputs
(append (list libuv bzip2 curl expat file jsoncpp libarchive rhash zlib))
(if (target-hurd?)
'()
(list libuv)) ;not supported on the Hurd
(list bzip2
curl
expat
file
jsoncpp
libarchive
rhash
zlib)))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "CMAKE_PREFIX_PATH") (variable "CMAKE_PREFIX_PATH")
@ -311,7 +324,10 @@ and workspaces that can be used in the compiler environment of your choice.")
(lambda* (#:key tests? parallel-tests? #:allow-other-keys) (lambda* (#:key tests? parallel-tests? #:allow-other-keys)
(let ((skipped-tests (list #$@%common-disabled-tests (let ((skipped-tests (list #$@%common-disabled-tests
;; This test requires the bundled libuv. ;; This test requires the bundled libuv.
"BootstrapTest"))) "BootstrapTest"
#$@(if (system-hurd?)
%common-disabled-tests/hurd
#~()))))
(if tests? (if tests?
(begin (begin
(invoke "ctest" "-j" (if parallel-tests? (invoke "ctest" "-j" (if parallel-tests?

View file

@ -33,6 +33,7 @@
(define-module (gnu packages commencement) (define-module (gnu packages commencement)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages bootstrap) #:use-module (gnu packages bootstrap)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages c) #:use-module (gnu packages c)
@ -56,7 +57,10 @@
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module ((guix store) #:select (%store-monad))
#:use-module (guix monads)
#:use-module (guix download) #:use-module (guix download)
#:use-module ((guix git-download) #:select (git-reference git-file-name))
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
@ -89,6 +93,38 @@
;;; ;;;
;;; Code: ;;; Code:
(define* (git-fetch-from-tarball tarball)
"Return an <origin> method equivalent to 'git-fetch', except that it fetches
the checkout from TARBALL, a tarball containing said checkout.
The purpose of this procedure is to work around bootstrapping issues:
'git-fetch' depends on Git, which is much higher in the dependency graph."
(lambda* (url hash-algo hash
#:optional name
#:key (system (%current-system))
(guile %bootstrap-guile))
(mlet %store-monad ((guile (package->derivation guile system)))
(gexp->derivation
(or name "git-checkout")
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils)
(ice-9 ftw)
(ice-9 match))
(setenv "PATH"
#+(file-append %bootstrap-coreutils&co "/bin"))
(invoke "tar" "xf" #$tarball)
(match (scandir ".")
(("." ".." directory)
(copy-recursively directory #$output)))))
#:recursive? #t
#:hash-algo hash-algo
#:hash hash
#:system system
#:guile-for-build guile
#:graft? #f
#:local-build? #t))))
(define bootar (define bootar
(package (package
(name "bootar") (name "bootar")
@ -2602,64 +2638,123 @@ memoized as a function of '%current-system'."
(package-with-explicit-inputs %boot0-inputs (package-with-explicit-inputs %boot0-inputs
%bootstrap-guile)) %bootstrap-guile))
(define autoconf-boot0
(with-boot0
(package
(inherit autoconf)
(name "autoconf-boot0")
(native-inputs (list m4-boot0 perl-boot0))
(inputs '())
(arguments (list #:tests? #f)))))
(define automake-boot0
(with-boot0
(package
(inherit automake)
(name "automake-boot0")
(source (origin
(inherit (package-source automake))
(patches '()))) ;test are skipped anyway
(native-inputs (list autoconf-boot0 m4-boot0 perl-boot0))
(inputs '())
(arguments
(list #:tests? #f)))))
(define gnumach-headers-boot0 (define gnumach-headers-boot0
(with-boot0 (with-boot0
(package (package
(inherit gnumach-headers) (inherit gnumach-headers)
(version "1.8-116-g28b53508") (name "gnumach-headers-boot0")
(source (bootstrap-origin (version "1.8+git20221224")
(source
(origin
(inherit (package-source gnumach-headers))
(method
(git-fetch-from-tarball
(origin (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append "mirror://gnu/guix/mirror/gnumach-" (uri (string-append
version ".tar.gz") "https://git.savannah.gnu.org/cgit/hurd/gnumach.git/snapshot/"
(string-append "https://lilypond.org/janneke/hurd/" "gnumach-" version ".tar.gz"))
"gnumach-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"006i0zgwy81vxarpfm12vip4q6i5mgmi5mmy5ldvxp5hx9h3l0zg"))))) "0vb19ynvrxz302snqxkd0wgizwa5fw2x06a4zjsllqb9ijbq9mc8")))))))
(native-inputs '())))) (native-inputs (list autoconf-boot0 automake-boot0 texinfo-boot0))
(arguments
(substitute-keyword-arguments (package-arguments gnumach-headers)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'patch-compat
(lambda _
(substitute* '("include/device/device_types.h"
"include/mach_debug/slab_info.h"
"include/mach_debug/vm_info.h")
(("rpc_vm_size_t") "unsigned int")
(("rpc_vm_offset_t") "unsigned int")
(("rpc_long_natural_t") "unsigned long")
(("long_natural_t") "unsigned long")))))))))))
(define mig-boot0 (define mig-boot0
(let* ((mig (package (with-boot0
(inherit (package-with-bootstrap-guile mig)) (package
(native-inputs `(("bison" ,bison-boot0) (inherit mig)
("flex" ,flex-boot0))) (name "mig-boot0")
(inputs `(("flex" ,flex-boot0))) (version "1.8+git20230520")
(arguments (source
;; TODO: On next rebuild cycle, reuse phases from 'mig'. (origin
`(#:configure-flags (inherit (package-source mig))
`(,(string-append "LDFLAGS=-Wl,-rpath=" (method
(assoc-ref %build-inputs "flex") "/lib/"))))))) (git-fetch-from-tarball
(with-boot0 mig)))
(define hurd-version-boot0 "0.9-229-ga1efcee8")
(define hurd-source-boot0
(let ((version hurd-version-boot0))
(origin (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append "mirror://gnu/guix/mirror/hurd-v" (uri (string-append
version ".tar.gz") "https://git.savannah.gnu.org/cgit/hurd/mig.git/snapshot/"
(string-append "https://lilypond.org/janneke/hurd/" "mig-" version ".tar.gz"))
"hurd-v" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"0bq2q2jisxcy0kgcm6rz0z2fddwxxm7azsama7li28a2m08kdpzy"))))) "1l1vfm4wap5yxylv91wssgpy7fnq22wp3akgd5nv995kychfa9jy")))))))
(native-inputs (list autoconf-boot0 automake-boot0 bison-boot0 flex-boot0
gnumach-headers-boot0))
(inputs (list flex-boot0 gnumach-headers-boot0))
(arguments
(list
#:configure-flags
#~(list (string-append "LDFLAGS=-Wl,-rpath="
#$(this-package-native-input "flex")
"/lib/")))))))
(define hurd-headers-boot0 (define hurd-headers-boot0
(let ((hurd-headers (package (inherit hurd-headers) (with-boot0
(version hurd-version-boot0) (package
(source hurd-source-boot0) (inherit hurd-headers)
(native-inputs `(("mig" ,mig-boot0))) (name "hurd-headers-boot0")
(version "0.9.git20230216")
(source
(origin
(inherit (package-source hurd-headers))
(method
(git-fetch-from-tarball
(origin
(method url-fetch)
(uri (string-append
"https://git.savannah.gnu.org/cgit/hurd/hurd.git/snapshot/"
"hurd-v" version ".tar.gz"))
(sha256
(base32
"1f75nlkcl00dqnnrbrj1frvzs2qibfpygj3gwywqi85aldjl48y7")))))))
(native-inputs
(list autoconf-boot0 automake-boot0 mig-boot0))
(inputs '())))) (inputs '()))))
(with-boot0 (package-with-bootstrap-guile hurd-headers))))
(define hurd-minimal-boot0 (define hurd-minimal-boot0
(let ((hurd-minimal (package (inherit hurd-minimal) (with-boot0
(version hurd-version-boot0) (package
(source hurd-source-boot0) (inherit hurd-minimal)
(native-inputs `(("mig" ,mig-boot0))) (name "hurd-minimal-boot0")
(inputs '())))) (source (package-source hurd-headers-boot0))
(with-boot0 (package-with-bootstrap-guile hurd-minimal)))) (native-inputs
(list autoconf-boot0 automake-boot0 gnumach-headers-boot0 mig-boot0))
(inputs (list gnumach-headers-boot0)))))
(define/system-dependent hurd-core-headers-boot0 (define/system-dependent hurd-core-headers-boot0
;; Return the Hurd and Mach headers as well as initial Hurd libraries for ;; Return the Hurd and Mach headers as well as initial Hurd libraries for
@ -2822,21 +2917,22 @@ memoized as a function of '%current-system'."
("binutils-cross" ,binutils-boot0) ("binutils-cross" ,binutils-boot0)
,@(alist-delete "binutils" (%boot0-inputs)))) ,@(alist-delete "binutils" (%boot0-inputs))))
(define glibc-final-with-bootstrap-bash (define/system-dependent glibc-final-with-bootstrap-bash
;; The final libc, "cross-built". If everything went well, the resulting ;; The final libc, "cross-built". If everything went well, the resulting
;; store path has no dependencies. Actually, the really-final libc is ;; store path has no dependencies. Actually, the really-final libc is
;; built just below; the only difference is that this one uses the ;; built just below; the only difference is that this one uses the
;; bootstrap Bash. ;; bootstrap Bash.
(let ((libc (libc-for-target)))
(package (package
(inherit glibc) (inherit libc)
(name "glibc-intermediate") (name "glibc-intermediate")
(outputs (delete "debug" (package-outputs glibc))) (outputs (delete "debug" (package-outputs libc)))
(source (bootstrap-origin (package-source glibc))) (source (bootstrap-origin (package-source libc)))
(arguments (arguments
`(#:guile ,%bootstrap-guile `(#:guile ,%bootstrap-guile
#:implicit-inputs? #f #:implicit-inputs? #f
,@(substitute-keyword-arguments (package-arguments glibc) ,@(substitute-keyword-arguments (package-arguments libc)
((#:configure-flags flags) ((#:configure-flags flags)
`(append (list ,(string-append "--host=" (boot-triplet)) `(append (list ,(string-append "--host=" (boot-triplet))
,(string-append "--build=" ,(string-append "--build="
@ -2879,7 +2975,7 @@ memoized as a function of '%current-system'."
;; Here, we use the bootstrap Bash, which is not satisfactory ;; Here, we use the bootstrap Bash, which is not satisfactory
;; because we don't want to depend on bootstrap tools. ;; because we don't want to depend on bootstrap tools.
("static-bash" ,@(assoc-ref (%boot0-inputs) "bash")))))) ("static-bash" ,@(assoc-ref (%boot0-inputs) "bash")))))))
(define (cross-gcc-wrapper gcc binutils glibc bash) (define (cross-gcc-wrapper gcc binutils glibc bash)
"Return a wrapper for the pseudo-cross toolchain GCC/BINUTILS/GLIBC "Return a wrapper for the pseudo-cross toolchain GCC/BINUTILS/GLIBC
@ -2997,13 +3093,13 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(("^PROGRAMS =.*$") (("^PROGRAMS =.*$")
"PROGRAMS =\n"))))))))) "PROGRAMS =\n")))))))))
(define glibc-final (define/system-dependent glibc-final
;; The final glibc, which embeds the statically-linked Bash built above. ;; The final glibc, which embeds the statically-linked Bash built above.
;; Use 'package/inherit' so we get the 'replacement' of 'glibc', if any. ;; Use 'package/inherit' so we get the 'replacement' of 'glibc', if any.
(package/inherit (let ((libc (libc-for-target)))
glibc (package/inherit libc
(name "glibc") (name "glibc")
(source (bootstrap-origin (package-source glibc))) (source (bootstrap-origin (package-source libc)))
(inputs `(("static-bash" ,static-bash-for-glibc) (inputs `(("static-bash" ,static-bash-for-glibc)
,@(alist-delete ,@(alist-delete
"static-bash" "static-bash"
@ -3029,7 +3125,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
,hurd-headers-boot0) ,hurd-headers-boot0)
'()) '())
,@(package-outputs glibc-final-with-bootstrap-bash)) ,@(package-outputs glibc-final-with-bootstrap-bash))
,@(package-arguments glibc-final-with-bootstrap-bash))))) ,@(package-arguments glibc-final-with-bootstrap-bash))))))
(define/system-dependent gcc-boot0-wrapped (define/system-dependent gcc-boot0-wrapped
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the ;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
@ -3356,6 +3452,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(package/inherit sed (native-inputs `(("perl" ,perl-boot0)))))) (package/inherit sed (native-inputs `(("perl" ,perl-boot0))))))
(define-public %final-inputs (define-public %final-inputs
;; The 'glibc-final' package is not the same depending on what system is
;; targeted, so this whole list must be parameterized.
(mlambda (system)
;; Final derivations used as implicit inputs by 'gnu-build-system'. We ;; Final derivations used as implicit inputs by 'gnu-build-system'. We
;; still use 'package-with-bootstrap-guile' so that the bootstrap tools are ;; still use 'package-with-bootstrap-guile' so that the bootstrap tools are
;; used for origins that have patches, thereby avoiding circular ;; used for origins that have patches, thereby avoiding circular
@ -3384,17 +3483,18 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
("gcc" ,gcc-final) ("gcc" ,gcc-final)
("libc" ,glibc-final) ("libc" ,glibc-final)
("libc:static" ,glibc-final "static") ("libc:static" ,glibc-final "static")
("locales" ,glibc-utf8-locales-final)))) ("locales" ,glibc-utf8-locales-final)))))
(define-public canonical-package (define-public canonical-package
(let ((name->package (fold (lambda (input result) (let ((name->package (mlambda (system)
(fold (lambda (input result)
(match input (match input
((_ package . outputs) ((_ package . outputs)
(vhash-cons (package-full-name package) (vhash-cons (package-full-name package)
package result)))) package result))))
vlist-null vlist-null
`(("guile" ,guile-final) `(("guile" ,guile-final)
,@%final-inputs)))) ,@(%final-inputs system))))))
(lambda (package) (lambda (package)
"Return the 'canonical' variant of PACKAGE---i.e., if PACKAGE is one of "Return the 'canonical' variant of PACKAGE---i.e., if PACKAGE is one of
the implicit inputs of 'gnu-build-system', return that one, otherwise return the implicit inputs of 'gnu-build-system', return that one, otherwise return
@ -3404,7 +3504,8 @@ The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.2,
COREUTILS-FINAL vs. COREUTILS, etc." COREUTILS-FINAL vs. COREUTILS, etc."
;; XXX: This doesn't handle dependencies of the final inputs, such as ;; XXX: This doesn't handle dependencies of the final inputs, such as
;; libunistring, GMP, etc. ;; libunistring, GMP, etc.
(match (vhash-assoc (package-full-name package) name->package) (match (vhash-assoc (package-full-name package)
(name->package (%current-system)))
((_ . canon) ((_ . canon)
;; In general we want CANON, except if we're cross-compiling: CANON ;; In general we want CANON, except if we're cross-compiling: CANON
;; uses explicit inputs, so it is "anchored" in the bootstrapped ;; uses explicit inputs, so it is "anchored" in the bootstrapped
@ -3486,7 +3587,8 @@ is the GNU Compiler Collection.")
;; install everything that we need, and (2) to make sure ld-wrapper comes ;; install everything that we need, and (2) to make sure ld-wrapper comes
;; before Binutils' ld in the user's profile. ;; before Binutils' ld in the user's profile.
(inputs `(("gcc" ,gcc) (inputs `(("gcc" ,gcc)
("ld-wrapper" ,(car (assoc-ref %final-inputs "ld-wrapper"))) ("ld-wrapper" ,(car (assoc-ref (%final-inputs (%current-system))
"ld-wrapper")))
("binutils" ,binutils-final) ("binutils" ,binutils-final)
("libc" ,libc) ("libc" ,libc)
("libc-debug" ,libc "debug") ("libc-debug" ,libc "debug")

View file

@ -24,7 +24,7 @@
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2019, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020, 2021 Lars-Dominik Braun <lars@6xq.net> ;;; Copyright © 2020, 2021 Lars-Dominik Braun <lars@6xq.net>
@ -1660,7 +1660,9 @@ or junctions, and always follows hard links.")
"HAVE_LZMA=0" "HAVE_LZMA=0"
;; Not currently detected, but be explicit & avoid surprises later. ;; Not currently detected, but be explicit & avoid surprises later.
"HAVE_LZ4=0" "HAVE_LZ4=0"
"HAVE_ZLIB=0"))) "HAVE_ZLIB=0")
#:tests? ,(not (or (target-hurd?)
(%current-target-system)))))
(home-page "https://facebook.github.io/zstd/") (home-page "https://facebook.github.io/zstd/")
(synopsis "Zstandard real-time compression algorithm") (synopsis "Zstandard real-time compression algorithm")
(description "Zstandard (@command{zstd}) is a lossless compression algorithm (description "Zstandard (@command{zstd}) is a lossless compression algorithm
@ -2361,7 +2363,7 @@ reading from and writing to ZIP archives.")
(define-public zchunk (define-public zchunk
(package (package
(name "zchunk") (name "zchunk")
(version "1.2.2") (version "1.3.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -2370,22 +2372,23 @@ reading from and writing to ZIP archives.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0q0avb0397xkmidl8rxasfywp0r7w3awk6271pa2d9xl9p1n82zy")))) "19rw870150w1c730wzg2pn68ixmscq8cwa3vricqhwxs5l63r5wr"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases (list
(add-after 'unpack 'patch-paths #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-file-name
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/zck_gen_zdict.c" (substitute* "src/zck_gen_zdict.c"
(("/usr/bin/zstd") (("/usr/(bin/zstd)" _ file)
(string-append (assoc-ref inputs "zstd") (string-append (search-input-file inputs file)))))))))
"/bin/zstd"))))))))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs
(list curl zstd)) (list curl zstd))
(propagated-inputs (propagated-inputs
`(("zstd:lib" ,zstd "lib"))) ;in Requires.private of zck.pc (list `(,zstd "lib"))) ; in Requires.private of zck.pc
(home-page "https://github.com/zchunk/zchunk") (home-page "https://github.com/zchunk/zchunk")
(synopsis "Compressed file format for efficient deltas") (synopsis "Compressed file format for efficient deltas")
(description "The zchunk compressed file format allows splitting a file (description "The zchunk compressed file format allows splitting a file
@ -2412,31 +2415,24 @@ To download a zchunk file.
(define-public zutils (define-public zutils
(package (package
(name "zutils") (name "zutils")
(version "1.10") (version "1.12")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://savannah/zutils/zutils-" version ".tar.lz")) (uri (string-append "mirror://savannah/zutils/zutils-" version ".tar.lz"))
(sha256 (sha256
(base32 "15dimqp8zlqaaa2l46r22srp1py38mlmn69ph1j5fmrd54w43m0d")))) (base32 "1vl8mhvsl0zlh34hwhc05vj33a2xfr0w7i978hcwaw8wn1w59bkq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags (list
(list "--sysconfdir=/etc") #:configure-flags
#~(list "--sysconfdir=/etc")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-before 'check 'disable-failing-tests
;; XXX https://lists.nongnu.org/archive/html/zutils-bug/2020-07/msg00005.html
(lambda _
(substitute* "testsuite/check.sh"
(("\"\\$\\{ZGREP\\}\" -N -L \"GNU\"") "true")
(("\"\\$\\{ZGREP\\}\" -N -L \"nx_pattern\"") "false"))
#t))
(replace 'install (replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "install" (apply invoke "make" "install"
(string-append "sysconfdir=" (assoc-ref outputs "out") (string-append "sysconfdir=" #$output "/etc")
"/etc")
make-flags)))))) make-flags))))))
(native-inputs (native-inputs
;; Needed to extract the source tarball and run the test suite. ;; Needed to extract the source tarball and run the test suite.
@ -2539,7 +2535,7 @@ file compression algorithm.")
(define-public xarchiver (define-public xarchiver
(package (package
(name "xarchiver") (name "xarchiver")
(version "0.5.4.20") (version "0.5.4.21")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2548,7 +2544,7 @@ file compression algorithm.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1bgc8r2ii96ghslfscpjhswjgscvw65h2rjr0zvfqn8saqh1ydrv")))) (base32 "0m3vq1mh2vg5r7vhnwjkfhix6i2cm15z82xsi6zaqvc4zkswb2m5"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
(list gettext-minimal intltool libxslt pkg-config)) (list gettext-minimal intltool libxslt pkg-config))

View file

@ -451,7 +451,7 @@ operating on batches.")
(define-public google-highway (define-public google-highway
(package (package
(name "google-highway") (name "google-highway")
(version "1.0.3") (version "1.0.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -460,7 +460,7 @@ operating on batches.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1828rz9w9sr3zlyg25b6nm7j5j5m0xnic7hy36gpsbxvq358ibpf")))) (base32 "01ig4iqicm57nycl9q8mx1b22gvl4wj5j1vfp1jczhmrga4bca8v"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags (list "-DHWY_SYSTEM_GTEST=on"))) `(#:configure-flags (list "-DHWY_SYSTEM_GTEST=on")))
@ -677,7 +677,7 @@ intuitive syntax and trivial integration.")
(define-public xtl (define-public xtl
(package (package
(name "xtl") (name "xtl")
(version "0.7.4") (version "0.7.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (uri
@ -686,17 +686,18 @@ intuitive syntax and trivial integration.")
(commit version))) (commit version)))
(sha256 (sha256
(base32 (base32
"134pgvmf9cx5dxs0m0m3qhp3m3r1gl86ic3xax21zc4sdj8sdq46")) "1llfy6pkzqx2va74h9xafjylyvw6839a843mqc05n6x6wll5bkam"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(native-inputs (native-inputs
(list doctest googletest nlohmann-json)) (list doctest googletest nlohmann-json))
(arguments (arguments
'(#:configure-flags (list
'("-DBUILD_TESTS=ON") #:configure-flags
#~(list "-DBUILD_TESTS=ON")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(replace 'check (replace 'check
(lambda* _ (lambda _
(with-directory-excursion "test" (with-directory-excursion "test"
(invoke "./test_xtl"))))))) (invoke "./test_xtl")))))))
(home-page "https://github.com/QuantStack/xtl") (home-page "https://github.com/QuantStack/xtl")

View file

@ -926,6 +926,27 @@ differential abundance analysis of zero-inflated high-dimensional
compositional data.") compositional data.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-gwasexacthw
(package
(name "r-gwasexacthw")
(version "1.01")
(source (origin
(method url-fetch)
(uri (cran-uri "GWASExactHW" version))
(sha256
(base32
"19qmk8h7kxmn9kzw0x4xns5p3qqz27xkqq4q6zmh4jzizd0fsl78"))))
(properties `((upstream-name . "GWASExactHW")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/package=GWASExactHW")
(synopsis
"Exact Hardy-Weinburg testing for Genome Wide Association Studies")
(description
"This package contains a function to do exact Hardy-Weinburg
testing (using Fisher's test) for SNP genotypes as typically obtained in a
@dfn{Genome Wide Association Study} (GWAS).")
(license license:gpl3)))
(define-public r-gwidgets2 (define-public r-gwidgets2
(package (package
(name "r-gwidgets2") (name "r-gwidgets2")
@ -1255,13 +1276,13 @@ for authoring journal articles and conference submissions.")
(define-public r-babelwhale (define-public r-babelwhale
(package (package
(name "r-babelwhale") (name "r-babelwhale")
(version "1.1.0") (version "1.2.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "babelwhale" version)) (uri (cran-uri "babelwhale" version))
(sha256 (sha256
(base32 "01l8vwyz3bx0iks6cjs5y9ifdsnc1p1yqp4i0kzqd1gjhycizv6y")))) (base32 "0m5q83ykz5w1fsjsk2vyrnv21cg4n075kbvfvw4k22c61p78shdl"))))
(properties `((upstream-name . "babelwhale"))) (properties `((upstream-name . "babelwhale")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -1871,14 +1892,14 @@ variables.")
(define-public r-ggpp (define-public r-ggpp
(package (package
(name "r-ggpp") (name "r-ggpp")
(version "0.5.2") (version "0.5.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "ggpp" version)) (uri (cran-uri "ggpp" version))
(sha256 (sha256
(base32 (base32
"0w93427hyiihddsdr6q962gfl01b06yxchi3x3dinfb8mf1m5qmk")))) "1shcjplw2w8jbfbp0flpxhb7jfy7v79vhjv1qlh6lmam2fziydcc"))))
(properties `((upstream-name . "ggpp"))) (properties `((upstream-name . "ggpp")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -3997,14 +4018,14 @@ conditionals and comparisons, and more.")
(define-public r-sass (define-public r-sass
(package (package
(name "r-sass") (name "r-sass")
(version "0.4.6") (version "0.4.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "sass" version)) (uri (cran-uri "sass" version))
(sha256 (sha256
(base32 (base32
"06f0279ljg6mbcimmfx4rp18zxb9yc24sdp2yxwfxzdp17kjrs1f")))) "1vp9qnhkvz4shhvwrwbwcy1xnrgry0rmqxsg96ggv90m6sv0hyki"))))
(properties `((upstream-name . "sass"))) (properties `((upstream-name . "sass")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -5013,13 +5034,13 @@ coordinates.")
(define-public r-gensa (define-public r-gensa
(package (package
(name "r-gensa") (name "r-gensa")
(version "1.1.8") (version "1.1.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "GenSA" version)) (uri (cran-uri "GenSA" version))
(sha256 (sha256
(base32 (base32
"05m2xjaf4202jzzn5l7i7k80kzr8vihv7jpw99c9ic5n3ra8fpip")))) "10qm0467r2rbcck1w7dijng5j676314vsyxsr0p8l843xz7s66rq"))))
(properties `((upstream-name . "GenSA"))) (properties `((upstream-name . "GenSA")))
(build-system r-build-system) (build-system r-build-system)
(home-page "https://cran.r-project.org/package=GenSA") (home-page "https://cran.r-project.org/package=GenSA")
@ -5616,13 +5637,13 @@ factorization and divisive clustering for large sparse and dense matrices.")
(define-public r-rcppspdlog (define-public r-rcppspdlog
(package (package
(name "r-rcppspdlog") (name "r-rcppspdlog")
(version "0.0.13") (version "0.0.14")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "RcppSpdlog" version)) (uri (cran-uri "RcppSpdlog" version))
(sha256 (sha256
(base32 "1149kh047301hrp15479ikcmrix968pwqw3jza7mp7bsxhrjrp3k")))) (base32 "1n63mz2rr63kz3v7mg6n4cvw2lrw1ffk7xvln1j1005argvzvd4c"))))
(properties `((upstream-name . "RcppSpdlog"))) (properties `((upstream-name . "RcppSpdlog")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-rcpp)) (propagated-inputs (list r-rcpp))
@ -5881,18 +5902,19 @@ graphics packages that comes with the base installation.")
(define-public r-ctrdata (define-public r-ctrdata
(package (package
(name "r-ctrdata") (name "r-ctrdata")
(version "1.13.3") (version "1.14.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "ctrdata" version)) (uri (cran-uri "ctrdata" version))
(sha256 (sha256
(base32 (base32
"15vs8b2jxap5ya59n6pdby1p89hd0y0b4say72q6icxsjzzj979z")))) "0x5dpph62s7dwfs0y4gd73zzbil9cr1y5q8mpn9m7z2gdr67wk1c"))))
(properties `((upstream-name . "ctrdata"))) (properties `((upstream-name . "ctrdata")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-clipr (list r-clipr
r-curl r-curl
r-dplyr
r-httr r-httr
r-jqr r-jqr
r-jsonlite r-jsonlite
@ -7987,6 +8009,28 @@ can be computed between character vectors while taking proper care of encoding
or between integer vectors representing generic sequences.") or between integer vectors representing generic sequences.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public r-uchardet
(package
(name "r-uchardet")
(version "1.1.1")
(source (origin
(method url-fetch)
(uri (cran-uri "uchardet" version))
(sha256
(base32
"0m3xy807smqdxhkhd9cwrcf3ljlyvfmnkd7831qzpgcadam2jcdj"))))
(properties `((upstream-name . "uchardet")))
(build-system r-build-system)
(native-inputs (list r-knitr))
(home-page "https://artemklevtsov.gitlab.io/uchardet")
(synopsis "Universal character encoding detector")
(description
"This package provides R bindings to the uchardet encoding detector
library from Mozilla. It takes a sequence of bytes in an unknown character
encoding without any additional information, and attempts to get the encoding
of the text. All return names of the encodings are iconv-compatible.")
(license license:gpl2)))
(define-public r-ucminf (define-public r-ucminf
(package (package
(name "r-ucminf") (name "r-ucminf")
@ -11224,6 +11268,28 @@ package covers Models, Completions, Chat, Edits, Images, Embeddings, Audio,
Files, Fine-tunes, Moderations, and legacy Engines endpoints.") Files, Fine-tunes, Moderations, and legacy Engines endpoints.")
(license license:expat))) (license license:expat)))
(define-public r-operator-tools
(package
(name "r-operator-tools")
(version "1.6.3")
(source (origin
(method url-fetch)
(uri (cran-uri "operator.tools" version))
(sha256
(base32
"1v4dg7xhz24dnp0zxn815x1405ig64ibii6y40la1gvmzcc41dz5"))))
(properties `((upstream-name . "operator.tools")))
(build-system r-build-system)
(home-page "https://github.com/decisionpatterns/operator.tools")
(synopsis "Utilities for working with R's operators")
(description
"This package provides a collection of utilities that allow programming
with R's operators. Routines allow classifying operators, translating to and
from an operator and its underlying function, and inverting some
operators (e.g. comparison operators), etc. All methods can be extended to
custom infix operators.")
(license license:gpl2)))
(define-public r-openxlsx (define-public r-openxlsx
(package (package
(name "r-openxlsx") (name "r-openxlsx")
@ -13274,14 +13340,14 @@ the work.")
(define-public r-doby (define-public r-doby
(package (package
(name "r-doby") (name "r-doby")
(version "4.6.16") (version "4.6.17")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "doBy" version)) (uri (cran-uri "doBy" version))
(sha256 (sha256
(base32 (base32
"1rxvxhb572n29mbvkh6xmi7cnwc6c8g2xzw1wp10nfr9gnspx4ym")))) "02jb1z19rsmbvzwapgfx7m8lfnlcx9dqf6gkr9fmgcl77d5992n5"))))
(properties `((upstream-name . "doBy"))) (properties `((upstream-name . "doBy")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -16571,13 +16637,13 @@ address a bug.")
(define-public r-rcppalgos (define-public r-rcppalgos
(package (package
(name "r-rcppalgos") (name "r-rcppalgos")
(version "2.7.2") (version "2.8.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "RcppAlgos" version)) (uri (cran-uri "RcppAlgos" version))
(sha256 (sha256
(base32 (base32
"1wfwwbv9wrs2vbk0c36zcwcl9yyzz2h1mw36mpq7lz56xxhy0wf5")))) "1f9wxwqzv03bgr22s3hnj7mg9qlbap1dsg6vj1blgjl6xpfvz5bn"))))
(properties `((upstream-name . "RcppAlgos"))) (properties `((upstream-name . "RcppAlgos")))
(build-system r-build-system) (build-system r-build-system)
(inputs (list gmp)) (inputs (list gmp))
@ -17547,13 +17613,13 @@ maps.")
(define-public r-tidytree (define-public r-tidytree
(package (package
(name "r-tidytree") (name "r-tidytree")
(version "0.4.2") (version "0.4.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "tidytree" version)) (uri (cran-uri "tidytree" version))
(sha256 (sha256
(base32 "0phmvbpsxx85fvw4000d160qh8njrgmzpr3ja0gy59dgv1k1m0yb")))) (base32 "196c7j3pgapwh8j8jdhsz078wl24xcf5jkrbbsr2s7xg32j0lmi1"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-ape (list r-ape
@ -19377,16 +19443,47 @@ hierarchic loggers, multiple handlers per logger, level based filtering, space
handling in messages and custom formatting.") handling in messages and custom formatting.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-logistf
(package
(name "r-logistf")
(version "1.25.0")
(source (origin
(method url-fetch)
(uri (cran-uri "logistf" version))
(sha256
(base32
"0w78jsynw5jh3l9r3ssjs8rza6givgrxzwnb5jwazcm8637d6gix"))))
(properties `((upstream-name . "logistf")))
(build-system r-build-system)
(propagated-inputs (list r-formula-tools r-matrix r-mgcv r-mice))
(home-page
"https://cemsiis.meduniwien.ac.at/en/kb/science-research\
/software/statistical-software/firth-correction/")
(synopsis "Firth's bias-reduced logistic regression")
(description
"Fit a logistic regression model using Firth's bias reduction method,
equivalent to penalization of the log-likelihood by the Jeffreys prior.
Confidence intervals for regression coefficients can be computed by penalized
profile likelihood. Firth's method was proposed as ideal solution to the
problem of separation in logistic regression, see Heinze and Schemper (2002)
<doi:10.1002/sim.1047>. If needed, the bias reduction can be turned off such
that ordinary maximum likelihood logistic regression is obtained. Two new
modifications of Firth's method, FLIC and FLAC, lead to unbiased predictions
and are now available in the package as well, see Puhr et al (2017)
<doi:10.1002/sim.7273>.")
;; Any version of the GPL
(license license:gpl3+)))
(define-public r-longdat (define-public r-longdat
(package (package
(name "r-longdat") (name "r-longdat")
(version "1.1.1") (version "1.1.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "LongDat" version)) (uri (cran-uri "LongDat" version))
(sha256 (sha256
(base32 (base32
"1k8rl6jv4xzsm620wf373ds6l8fbb5ff07rgbp0bgqrymvwdf1jc")))) "1rzkb7byd32jqvhf75zyvy0dlkq79aicz8j0x7lk821qiq4dfv6l"))))
(properties `((upstream-name . "LongDat"))) (properties `((upstream-name . "LongDat")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-bestnormalize (propagated-inputs (list r-bestnormalize
@ -21606,17 +21703,25 @@ information about geometries.")
(define-public r-sf (define-public r-sf
(package (package
(name "r-sf") (name "r-sf")
(version "1.0-13") (version "1.0-14")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "sf" version)) (uri (cran-uri "sf" version))
(sha256 (sha256
(base32 (base32
"11lcc57vqip1zj8hi09mnisl9jiqqxwx6b06jl752dayxi2109br")))) "1xrrqd91601lcd83zzwksb4ampy1j8vf8f6941csk89psm45clwb"))))
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
(list gdal geos proj sqlite)) (list curl
gdal
geos
openssh
openssl
pcre2
proj
sqlite
zlib))
(propagated-inputs (propagated-inputs
(list r-classint (list r-classint
r-dbi r-dbi
@ -24044,13 +24149,13 @@ code edited with @code{RStudio IDE}, @code{Emacs} and @code{Vim}.")
(define-public r-sccore (define-public r-sccore
(package (package
(name "r-sccore") (name "r-sccore")
(version "1.0.3") (version "1.0.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "sccore" version)) (uri (cran-uri "sccore" version))
(sha256 (sha256
(base32 "1bvqbqh8pkiljy7s3mc67wsr1jlxb19rhd95160xparmrbffpxqb")))) (base32 "11l7xl1ylzmda4i2p1b08a43pvciin2i2sas2n3cj1gmamflkji3"))))
(properties `((upstream-name . "sccore"))) (properties `((upstream-name . "sccore")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -27288,14 +27393,14 @@ transcription, ...")
(define-public r-seewave (define-public r-seewave
(package (package
(name "r-seewave") (name "r-seewave")
(version "2.2.0") (version "2.2.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "seewave" version)) (uri (cran-uri "seewave" version))
(sha256 (sha256
(base32 (base32
"0bi1l47l3846c18k6h2vrv0xp9xh00n544a578jrndahzrj1hfwl")))) "0whfanh3949162575ddw5y6s5ydq9v24l929gwdd1jv16xzlnp9h"))))
(properties `((upstream-name . "seewave"))) (properties `((upstream-name . "seewave")))
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
@ -29551,6 +29656,30 @@ to improve the readability of data presented in tabular form rendered in web
pages.") pages.")
(license license:expat))) (license license:expat)))
(define-public r-formula-tools
(package
(name "r-formula-tools")
(version "1.7.1")
(source (origin
(method url-fetch)
(uri (cran-uri "formula.tools" version))
(sha256
(base32
"15d3ikfmsh9zszfgfkrxb3jkipl41inm7n6bhs73kwlnklnygq2g"))))
(properties `((upstream-name . "formula.tools")))
(build-system r-build-system)
(propagated-inputs (list r-operator-tools))
(home-page "https://github.com/decisionpatterns/formula.tools")
(synopsis
"Utilities for manipulating formulas, calls, assignments and other R objects")
(description
"These utilities facilitate the programmatic manipulations of formulas,
expressions, calls, assignments and other R language objects. These objects
all share the same structure: a left-hand side, operator and right-hand side.
This packages provides methods for accessing and modifying this structures as
well as extracting and replacing names and symbols from these objects.")
(license license:gpl2)))
(define-public r-xmisc (define-public r-xmisc
(package (package
(name "r-xmisc") (name "r-xmisc")
@ -36185,20 +36314,20 @@ package online.")
texlive-amsmath texlive-amsmath
texlive-booktabs texlive-booktabs
texlive-etoolbox texlive-etoolbox
texlive-iftex
texlive-fancyhdr texlive-fancyhdr
texlive-fancyvrb texlive-fancyvrb
texlive-latex-geometry texlive-geometry
texlive-graphics texlive-graphics
texlive-latex-threeparttable texlive-iftex
texlive-titlesec
texlive-latex-upquote
texlive-listings texlive-listings
texlive-polyglossia texlive-polyglossia
texlive-threeparttable
texlive-titlesec
texlive-titling texlive-titling
texlive-tools texlive-tools
texlive-ulem texlive-ulem
(texlive-updmap.cfg (list texlive-amsfonts texlive-lm)))) texlive-upquote
(texlive-updmap.cfg (list texlive-lm))))
(home-page "https://github.com/crsh/prereg") (home-page "https://github.com/crsh/prereg")
(synopsis (synopsis
"R Markdown Templates to preregister Scientific Studies") "R Markdown Templates to preregister Scientific Studies")
@ -36800,14 +36929,14 @@ light-weight geometry library used by @url{http://postgis.net/,PostGIS}.")
(define-public r-stars (define-public r-stars
(package (package
(name "r-stars") (name "r-stars")
(version "0.6-1") (version "0.6-2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "stars" version)) (uri (cran-uri "stars" version))
(sha256 (sha256
(base32 (base32
"19q44bs2w12lyim8gzfpgxfkp2cdf29cav4cv74vzsxrv8xdny0z")))) "0prip06c28d72wa7h8h8p2y7rw7jnh2h2yhnygbaipc8cbzlvi7x"))))
(properties `((upstream-name . "stars"))) (properties `((upstream-name . "stars")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -39211,14 +39340,14 @@ be efficient and easy to use.")
(define-public r-ggh4x (define-public r-ggh4x
(package (package
(name "r-ggh4x") (name "r-ggh4x")
(version "0.2.4") (version "0.2.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "ggh4x" version)) (uri (cran-uri "ggh4x" version))
(sha256 (sha256
(base32 (base32
"15b2agnk5dsinrxkbq5bmqgckssvlrkwarj2pi7xi8lxsqqrpw3w")))) "0xj4nlxrpmwzdlj4q3vnhwy7gd1634ff7yjsnaf609ap0q23mxb1"))))
(properties `((upstream-name . "ggh4x"))) (properties `((upstream-name . "ggh4x")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs

View file

@ -1,13 +1,14 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2018, 2020, 2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013-2018, 2020, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2019, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2019 Carl Dong <contact@carldong.me> ;;; Copyright © 2019 Carl Dong <contact@carldong.me>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -374,6 +375,24 @@ target that libc."
(inherit gnumach-headers) (inherit gnumach-headers)
(name (string-append (package-name gnumach-headers) (name (string-append (package-name gnumach-headers)
"-cross-" target)) "-cross-" target))
(arguments
(substitute-keyword-arguments (package-arguments gnumach-headers)
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
;; Cheat by setting the host_cpu variable manually, since using
;; --host= would require a working cross-compiler, which we don't
;; have yet.
(add-after 'unpack 'substitute-host-cpu
(lambda _
(substitute* "configure.ac"
(("AC_CANONICAL_HOST")
#$(string-append
"host_cpu="
(match target
((? target-x86-32?)
"i386")
((? target-x86-64?)
"x86_64")))))))))))
(native-inputs (native-inputs
(modify-inputs (package-native-inputs gnumach-headers) (modify-inputs (package-native-inputs gnumach-headers)
(prepend xgcc xbinutils))))) (prepend xgcc xbinutils)))))
@ -492,7 +511,11 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
hurd "/include"))) hurd "/include")))
(for-each (cut setenv <> cpath) (for-each (cut setenv <> cpath)
',%gcc-cross-include-paths) ',%gcc-cross-include-paths)
#t))))))) #t)))))
((#:configure-flags flags)
`(cons* ,(string-append "--build=" (%current-system))
,(string-append "--host=" target)
,flags))))
(propagated-inputs `(("gnumach-headers" ,xgnumach-headers) (propagated-inputs `(("gnumach-headers" ,xgnumach-headers)
("hurd-headers" ,xhurd-headers))) ("hurd-headers" ,xhurd-headers)))
@ -518,21 +541,35 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
,(string-append "--host=" target) ,(string-append "--host=" target)
,flags)) ,flags))
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases #~(modify-phases #$phases
(add-after 'unpack 'delete-shared-target
;; Cannot create shared libraries due to missing crt1.o
(lambda _
(substitute* "Makeconf"
(("(targets := \\$\\(libname\\)\\.a) \\$\\(libname\\)\\.so" all static)
static)
(("\\$\\(DESTDIR\\)\\$\\(libdir\\)/\\$\\(libname\\)\\.so\\.\\$\\(hurd-version\\)")
"")
(("^libs: .*\\.so\\..*" all)
(string-append "# " all)))))
(add-before 'configure 'set-cross-headers-path (add-before 'configure 'set-cross-headers-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let* ((glibc-headers (assoc-ref inputs "cross-glibc-hurd-headers")) (let* ((glibc-headers (assoc-ref inputs "cross-glibc-hurd-headers"))
(cpath (string-append glibc-headers "/include"))) (mach-headers (assoc-ref inputs "cross-gnumach-headers"))
(cpath (string-append glibc-headers "/include"
":" mach-headers "/include")))
(for-each (cut setenv <> cpath) (for-each (cut setenv <> cpath)
',%gcc-cross-include-paths) '#$%gcc-cross-include-paths)
#t))))))) #t)))))))
(inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers))) (inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)
("cross-gnumach-headers" ,xgnumach-headers)))
(native-inputs `(("cross-gcc" ,xgcc) (native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils) ("cross-binutils" ,xbinutils)
("cross-mig" ,xmig) ("cross-mig" ,xmig)
,@(alist-delete "mig"(package-native-inputs hurd-minimal)))))) ,@(alist-delete "mig"
(package-native-inputs hurd-minimal))))))
(define xhurd-core-headers (define xhurd-core-headers
(package (package
@ -555,7 +592,7 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
(define* (cross-libc/deprecated target (define* (cross-libc/deprecated target
#:optional #:optional
(libc glibc) (libc (libc-for-target target))
(xgcc (cross-gcc target)) (xgcc (cross-gcc target))
(xbinutils (cross-binutils target)) (xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target))) (xheaders (cross-kernel-headers target)))
@ -568,7 +605,7 @@ the base compiler. Use XBINUTILS as the associated cross-Binutils."
(define* (cross-libc* target (define* (cross-libc* target
#:key #:key
(libc glibc) (libc (libc-for-target target))
(xgcc (cross-gcc target)) (xgcc (cross-gcc target))
(xbinutils (cross-binutils target)) (xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target))) (xheaders (cross-kernel-headers target)))

View file

@ -216,7 +216,7 @@ communication, encryption, decryption, signatures, etc.")
(define-public signify (define-public signify
(package (package
(name "signify") (name "signify")
(version "30") (version "31")
(home-page "https://github.com/aperezdc/signify") (home-page "https://github.com/aperezdc/signify")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -224,16 +224,17 @@ communication, encryption, decryption, signatures, etc.")
"/download/v" version "/signify-" version ".tar.xz")) "/download/v" version "/signify-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"11l67j04gyxnlw6zrzsygqs5cgsc1sww1rh0apl05yay131hd17n")))) "0x1bipfphnyvf2kl7n9q4gawaglma79368vb8whama6lxsggsm8i"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; TODO Build with libwaive (described in README.md), to implement something ;; TODO Build with libwaive (described in README.md), to implement something
;; like OpenBSD's pledge(). ;; like OpenBSD's pledge().
(arguments (arguments
`(#:make-flags (list
(list ,(string-append "CC=" (cc-for-target)) #:make-flags
(string-append "PREFIX=" (assoc-ref %outputs "out"))) #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure)))) (delete 'configure))))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
@ -1210,7 +1211,7 @@ Features:
(list pkg-config)) (list pkg-config))
(inputs (inputs
(list nettle libxml2)) (list nettle libxml2))
(home-page "http://stoken.sf.net") (home-page "https://stoken.sf.net")
(synopsis "Software Token for cryptographic authentication") (synopsis "Software Token for cryptographic authentication")
(description (description
"@code{stoken} is a token code generator compatible with RSA SecurID "@code{stoken} is a token code generator compatible with RSA SecurID
@ -1478,7 +1479,7 @@ non-encrypted files.")
(define-public cryfs (define-public cryfs
(package (package
(name "cryfs") (name "cryfs")
(version "0.11.3") (version "0.11.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1486,7 +1487,7 @@ non-encrypted files.")
"https://github.com/cryfs/cryfs/releases/download/" "https://github.com/cryfs/cryfs/releases/download/"
version "/cryfs-" version ".tar.xz")) version "/cryfs-" version ".tar.xz"))
(sha256 (sha256
(base32 "1h41dhdfk2nll0vx5i66mgrdalv6kccwq5yx99gridywxw6qxxhq")))) (base32 "0a48qijfrd02ianp19x3kz24w1pgigmlxdr5nks0gag7z5b2s7m7"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:modules ((guix build cmake-build-system) '(#:modules ((guix build cmake-build-system)
@ -1513,14 +1514,7 @@ non-encrypted files.")
(when tests? (when tests?
(substitute* "CMakeLists.txt" (substitute* "CMakeLists.txt"
(("option.BUILD_TESTING .build test cases. OFF.") (("option.BUILD_TESTING .build test cases. OFF.")
"option(BUILD_TESTING \"build test cases\" ON)"))) "option(BUILD_TESTING \"build test cases\" ON)")))))
;; work around a missing import fixed upstream in boost 1.78
;; See https://github.com/boostorg/process/issues/213
(substitute* (find-files "." "subprocess.cpp$")
(("#include <boost/process.hpp>.*" line)
(string-append
"#include <algorithm>\n"
line)))))
(replace 'check (replace 'check
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
@ -1675,7 +1669,7 @@ checksum tool based on the BLAKE3 cryptographic hash function.")
(define-public libxcrypt (define-public libxcrypt
(package (package
(name "libxcrypt") (name "libxcrypt")
(version "4.4.33") (version "4.4.36")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1684,7 +1678,7 @@ checksum tool based on the BLAKE3 cryptographic hash function.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "174k5cj95617akg6pplv371mpd35j9q8il245f2zcpq76yz4qydl")))) (base32 "1yhpjjjv38y14nrj15bkndq824v42plndgi3k8mmc04grj1fbnjf"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf (list autoconf

View file

@ -514,14 +514,14 @@ should only be used as part of the Guix cups-pk-helper service.")
(define-public hplip (define-public hplip
(package (package
(name "hplip") (name "hplip")
(version "3.23.3") (version "3.23.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version (uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz")) "/hplip-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1dh7gqhzv03a6j1kbkiaksy9a752k90xwqi5x0hqvn5ilac0l9p4")) "1j6bjn4zplxl7w15xrc1v5l3p9a0x0345756ahvgq8mi97bmx3pn"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -860,9 +860,9 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
(package (package
(name "epson-inkjet-printer-escpr") (name "epson-inkjet-printer-escpr")
(version "1.7.24") (version "1.7.24")
;; XXX: This currently works. But it will break as soon as a newer ;; XXX: This currently works. But it will break as soon as a newer version
;; version is available since the URLs for older versions are not ;; is available since the URLs for older versions are not preserved. Since
;; preserved. An alternative source will be added as soon as ;; 1.8.0, source tarballs have been discontinued and only a source RPM is
;; available. ;; available.
(source (source
(origin (origin

View file

@ -11,7 +11,7 @@
;;; Copyright © 2019, 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Dale Mellor <guix-devel-0brg6b@rdmp.org> ;;; Copyright © 2020 Dale Mellor <guix-devel-0brg6b@rdmp.org>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Jean-Baptiste Volatier <jbv@pm.me> ;;; Copyright © 2021 Jean-Baptiste Volatier <jbv@pm.me>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
@ -125,7 +125,22 @@
;; The top-level "make check" does "make -C tests quiet-test", which ;; The top-level "make check" does "make -C tests quiet-test", which
;; is too quiet. Use the "test" target instead, which is more ;; is too quiet. Use the "test" target instead, which is more
;; verbose. ;; verbose.
(invoke "make" "-C" "tests" "test"))))))) (invoke "make" "-C" "tests" "test"))))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(let ((port (open-file "tests/data/DISABLED" "a")))
(display "526\n" port)
(display "527\n" port)
(display "532\n" port)
(display "533\n" port)
(display "537\n" port)
(display "546\n" port)
(display "575\n" port)
(display "1021\n" port)
(display "1501\n" port)
(close port)))))
#~()))))
(synopsis "Command line tool for transferring data with URL syntax") (synopsis "Command line tool for transferring data with URL syntax")
(description (description
"curl is a command line tool for transferring data with URL syntax, "curl is a command line tool for transferring data with URL syntax,
@ -386,7 +401,7 @@ sugar and output formatting inspired from @code{httpie}.")
(define-public trurl (define-public trurl
(package (package
(name "trurl") (name "trurl")
(version "0.5") (version "0.8")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -395,7 +410,7 @@ sugar and output formatting inspired from @code{httpie}.")
(commit (string-append name "-" version)))) (commit (string-append name "-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1mvkpjs6wnz5hzmp2iglik85zljrzglsa6fm839l78fhw89dg3w6")))) (base32 "19zdpjp01n7s7zgixq3irqfnx66dmqf8zyp0dlb6y7ga673lqwi8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -408,11 +423,11 @@ sugar and output formatting inspired from @code{httpie}.")
(native-inputs (list python)) (native-inputs (list python))
(inputs (list curl)) (inputs (list curl))
(home-page "https://curl.se/trurl/") (home-page "https://curl.se/trurl/")
(synopsis "Command line tool for URL parsing and manipulatio") (synopsis "Command line tool for URL parsing and manipulation")
(description "@code{trurl} is a tool in a similar spirit of @code{tr} but (description "@code{trurl} is a command line tool that parses and
for URLs. Here, @code{tr} stands for translate or transpose. manipulates URLs, designed to help shell script authors everywhere.
@code{trurl} is a command line tool that parses and manipulates URLs, designed It is similar in spirit to @code{tr}. Here, @code{tr} stands for translate or
to help shell script authors everywhere.") transpose.")
(license (license:non-copyleft "file://COPYING" (license (license:non-copyleft "file://COPYING"
"See COPYING in the distribution.")))) "See COPYING in the distribution."))))

View file

@ -2420,14 +2420,14 @@ similar to BerkeleyDB, LevelDB, etc.")
(define-public redis (define-public redis
(package (package
(name "redis") (name "redis")
(version "7.0.9") (version "7.0.12")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://download.redis.io/releases/redis-" (uri (string-append "https://download.redis.io/releases/redis-"
version".tar.gz")) version".tar.gz"))
(sha256 (sha256
(base32 (base32
"0rczzcy2mwy6hjdgg10l9lr4vavh8jrs7zlb0ba534bwlk13awgp")) "1dwayif99cipf0xs26zipbnj800px31pbsxz747bzclb4xdkvn4x"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Delete bundled jemalloc, as the package will use the libc one ;; Delete bundled jemalloc, as the package will use the libc one
@ -2435,7 +2435,7 @@ similar to BerkeleyDB, LevelDB, etc.")
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
#:make-flags #~(list #$(string-append "CC=" (cc-for-target)) #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
"MALLOC=libc" "MALLOC=libc"
"LDFLAGS=-ldl" "LDFLAGS=-ldl"
(string-append "PREFIX=" #$output)) (string-append "PREFIX=" #$output))
@ -2452,7 +2452,7 @@ similar to BerkeleyDB, LevelDB, etc.")
(which "env"))))) (which "env")))))
(add-after 'unpack 'adjust-tests (add-after 'unpack 'adjust-tests
(lambda _ (lambda _
;; Disable failing tests ;; Disable failing tests.
(substitute* "tests/test_helper.tcl" (substitute* "tests/test_helper.tcl"
;; The AOF tests cause the test suite to hang waiting for a ;; The AOF tests cause the test suite to hang waiting for a
;; "background AOF rewrite to finish", perhaps because dead ;; "background AOF rewrite to finish", perhaps because dead
@ -3321,19 +3321,19 @@ Memory-Mapped Database} (LMDB), a high-performance key-value store.")
(define-public virtuoso-ose (define-public virtuoso-ose
(package (package
(name "virtuoso-ose") (name "virtuoso-ose")
(version "7.2.9") (version "7.2.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/virtuoso/virtuoso/" version "/" (uri (string-append "mirror://sourceforge/virtuoso/virtuoso/" version "/"
"virtuoso-opensource-" version ".tar.gz")) "virtuoso-opensource-" version ".tar.gz"))
(sha256 (sha256
(base32 "145s4lqixdxa3j0lp9lgzbb664zzy1imw04hmgia5y5679i8r0xy")) (base32 "03vznas39valis02zk0hnli7x5asiam4rxzqhr58agzkdyb0lay0"))
(patches (search-patches "virtuoso-ose-remove-pre-built-jar-files.patch")) (patches (search-patches "virtuoso-ose-remove-pre-built-jar-files.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
;; This snippet removes pre-built Java archives. ;; This snippet removes pre-built Java archives.
(snippet (snippet
'(for-each delete-file-recursively #~(for-each delete-file-recursively
(list "binsrc/hibernate" (list "binsrc/hibernate"
"binsrc/jena" "binsrc/jena"
"binsrc/jena2" "binsrc/jena2"
@ -3347,14 +3347,16 @@ Memory-Mapped Database} (LMDB), a high-performance key-value store.")
"libsrc/JDBCDriverType4"))))) "libsrc/JDBCDriverType4")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; Tests require a network connection. (list
#:tests? #f ; tests require a network connection
;; TODO: Removing the libsrc/zlib source directory breaks the build. ;; TODO: Removing the libsrc/zlib source directory breaks the build.
;; This indicates that the internal zlib code may still be used. ;; This indicates that the internal zlib code may still be used.
#:configure-flags '("--without-internal-zlib" #:configure-flags
#~(list "--without-internal-zlib"
"--with-readline" "--with-readline"
"--enable-static=no") "--enable-static=no")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(replace 'bootstrap (replace 'bootstrap
(lambda _ (lambda _
(invoke "sh" "autogen.sh"))) (invoke "sh" "autogen.sh")))
@ -3392,12 +3394,12 @@ Memory-Mapped Database} (LMDB), a high-performance key-value store.")
;; Even with "--enable-static=no", "libvirtuoso-t.a" is left in ;; Even with "--enable-static=no", "libvirtuoso-t.a" is left in
;; the build output. The following phase removes it. ;; the build output. The following phase removes it.
(add-after 'install 'remove-static-libs (add-after 'install 'remove-static-libs
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let ((lib (string-append (assoc-ref outputs "out") "/lib"))) (for-each
(for-each (lambda (file) (lambda (file)
(delete-file (string-append lib "/" file))) (delete-file (string-append #$output "/lib/" file)))
'("libvirtuoso-t.a" '("libvirtuoso-t.a"
"libvirtuoso-t.la")))))))) "libvirtuoso-t.la")))))))
(native-inputs (native-inputs
(list autoconf automake bison flex gperf libtool)) (list autoconf automake bison flex gperf libtool))
(inputs (inputs

View file

@ -24,6 +24,7 @@
(define-module (gnu packages dav) (define-module (gnu packages dav)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix git-download) #:use-module (guix git-download)
@ -84,13 +85,13 @@ clients.")
(define-public xandikos (define-public xandikos
(package (package
(name "xandikos") (name "xandikos")
(version "0.2.3") (version "0.2.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "xandikos" version)) (uri (pypi-uri "xandikos" version))
(sha256 (sha256
(base32 "13ikmcja9p42azb5ccqj2bw98zybna6zlflj10hqy0kvbib70l94")))) (base32 "00ghmzcc37b17pp0r6d9v5vpxmz500kzxqj1k9ppcjhbbpvp9w8n"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (propagated-inputs
(list python-aiohttp (list python-aiohttp
@ -122,17 +123,19 @@ efficient syncing
(define-public vdirsyncer (define-public vdirsyncer
(package (package
(name "vdirsyncer") (name "vdirsyncer")
(version "0.19.1") (version "0.19.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri name version)) (uri (pypi-uri name version))
(sha256 (sha256
(base32 (base32
"1bh3kz0d8g07xnlkb5l2fj6fdakqps1wviab6zv139x5b9rcfxma")))) "1fl21m10ghrpmkqa12g0qri99cxk9879pkb60jd4b4w2mgp8q1gx"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f ; The test suite is very flakey. (list
#:phases (modify-phases %standard-phases #:tests? #f ; the test suite is very flakey
#:phases
#~(modify-phases %standard-phases
(replace 'check (replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys) (lambda* (#:key inputs outputs tests? #:allow-other-keys)
(add-installed-pythonpath inputs outputs) (add-installed-pythonpath inputs outputs)
@ -144,7 +147,8 @@ efficient syncing
(add-after 'unpack 'patch-version-call (add-after 'unpack 'patch-version-call
(lambda _ (lambda _
(substitute* "docs/conf.py" (substitute* "docs/conf.py"
(("^release.*") (string-append "release = '" ,version "'\n")))))))) (("^release.*")
(string-append "release = '" #$version "'\n"))))))))
(native-inputs (native-inputs
(list python-setuptools-scm (list python-setuptools-scm
python-sphinx python-sphinx

View file

@ -53,6 +53,7 @@
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages tcl) #:use-module (gnu packages tcl)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)) #:use-module (gnu packages xml))
@ -391,7 +392,7 @@ intelligible and easily correctable.")
(define-public sdcv (define-public sdcv
(package (package
(name "sdcv") (name "sdcv")
(version "0.5.3") (version "0.5.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -400,8 +401,7 @@ intelligible and easily correctable.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "17jwcgc3jdp41rvxqi7zdsysfpjgzqq4z1l345qwffp1an6yaaqk"))))
"144qpl9b8r2php0zhi9b7vg6flpvdgjy6yfaipydwwhxi4wy9600"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags '("-DBUILD_TESTS=YES") `(#:configure-flags '("-DBUILD_TESTS=YES")
@ -413,16 +413,13 @@ intelligible and easily correctable.")
(add-before 'check 'pre-check (add-before 'check 'pre-check
(lambda _ (lambda _
(setenv "HOME" (getcwd)) (setenv "HOME" (getcwd))
#t))
(add-after 'unpack 'remove-jq-requirement
(lambda _
;; We don't want to bring in jq for one test.
(substitute* "tests/t_json"
(("jq") "echo"))
#t))))) #t)))))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)
;; For tests.
("jq" ,jq)))
(inputs (inputs
(list glib ncurses readline zlib)) (list glib ncurses readline zlib))
(home-page "https://dushistov.github.io/sdcv/") (home-page "https://dushistov.github.io/sdcv/")

View file

@ -74,7 +74,7 @@
(define-public diffoscope (define-public diffoscope
(package (package
(name "diffoscope") (name "diffoscope")
(version "242") (version "245")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -83,10 +83,12 @@
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1aa6cszav4bgiljhkly0l3bzn4kggkncrk1zbc6hdm361r8yrw34")))) (base32 "0zh2smp0vvvl1c4f5ykmblw0xlbdfnix1v2yi5xpyia2pgslbjjv"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases (list
#:phases
#~(modify-phases %standard-phases
;; These tests are broken because our `file` package has a ;; These tests are broken because our `file` package has a
;; bug in berkeley-db and wasm file type detection. ;; bug in berkeley-db and wasm file type detection.
(add-after 'unpack 'remove-broken-file-type-detection-test (add-after 'unpack 'remove-broken-file-type-detection-test
@ -95,20 +97,22 @@
(delete-file "tests/comparators/test_wasm.py"))) (delete-file "tests/comparators/test_wasm.py")))
(add-after 'unpack 'embed-tool-references (add-after 'unpack 'embed-tool-references
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(define (bin command)
(search-input-file inputs (string-append "bin/" command)))
(substitute* "diffoscope/comparators/utils/compare.py" (substitute* "diffoscope/comparators/utils/compare.py"
(("\\[\"xxd\",") (("\\[\"(xxd)\"," _ command)
(string-append "[\"" (which "xxd") "\","))) (string-append "[\"" (bin command) "\",")))
(substitute* "diffoscope/diff.py" (substitute* "diffoscope/diff.py"
(("@tool_required\\(\"diff\"\\)") "") (("@tool_required\\(\"diff\"\\)") "")
(("get_tool_name\\(\"diff\"\\)") (("get_tool_name\\(\"(diff)\"\\)" _ command)
(string-append "get_tool_name(\"" (which "diff") "\")"))) (string-append "get_tool_name(\"" (bin command) "\")")))
(substitute* "diffoscope/comparators/directory.py" (substitute* "diffoscope/comparators/directory.py"
(("@tool_required\\(\"stat\"\\)") "") (("@tool_required\\(\"stat\"\\)") "")
(("@tool_required\\(\"getfacl\"\\)") "") (("@tool_required\\(\"getfacl\"\\)") "")
(("\\[\"stat\",") (("\\[\"(stat)\"," _ command)
(string-append "[\"" (which "stat") "\",")) (string-append "[\"" (bin command) "\","))
(("\\[\"getfacl\",") (("\\[\"(getfacl)\"," _ command)
(string-append "[\"" (which "getfacl") "\","))))) (string-append "[\"" (bin command) "\",")))))
(add-after 'build 'build-man-page (add-after 'build 'build-man-page
(lambda _ (lambda _
(invoke "make" "-C" "doc"))) (invoke "make" "-C" "doc")))

View file

@ -3,8 +3,8 @@
;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 20182022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016, 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2019-2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -69,6 +69,7 @@
#:use-module (gnu packages graphics) #:use-module (gnu packages graphics)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages hurd)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
@ -254,7 +255,13 @@ tmpfs/ramfs filesystems.")
"18h51i3x5cbqhlj5rm23m9sfw63gaaby5czln5w6qpqj3ifdsf29")))) "18h51i3x5cbqhlj5rm23m9sfw63gaaby5czln5w6qpqj3ifdsf29"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:phases (list
#:configure-flags (if (target-hurd?)
#~'("--disable-device-mapper")
#~'())
#:tests? (not (or (target-hurd?)
(%current-target-system)))
#:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-locales-and-python (add-after 'unpack 'fix-locales-and-python
(lambda _ (lambda _
@ -263,8 +270,11 @@ tmpfs/ramfs filesystems.")
(substitute* "tests/msdos-overlap" (substitute* "tests/msdos-overlap"
(("/usr/bin/python") (which "python")))))))) (("/usr/bin/python") (which "python"))))))))
(inputs (inputs
(list lvm2 readline `(,@(if (target-hurd?)
`(,util-linux "lib"))) (list hurd-minimal)
(list lvm2))
,readline
(,util-linux "lib")))
(native-inputs (native-inputs
(list gettext-minimal (list gettext-minimal

View file

@ -513,26 +513,27 @@ the two.")
(define-public nsd (define-public nsd
(package (package
(name "nsd") (name "nsd")
(version "4.6.1") (version "4.7.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-" (uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0ym2fgkjar94y99lyvp93p7jpj33ysprvqd7py28xxn37shs6q1z")))) (base32 "057jxhhyggqhy4swwqlwf1lflc96cfqpm200l1gr3lls557a9b4g"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags (list
(list "--enable-pie" ; fully benefit from ASLR #:configure-flags
#~(list "--enable-pie" ; fully benefit from tasty ASLR
"--enable-ratelimit" "--enable-ratelimit"
"--enable-recvmmsg" "--enable-recvmmsg"
"--enable-relro-now" ; protect GOT and .dtor areas "--enable-relro-now" ; protect GOT and .dtor areas
"--disable-radix-tree" "--disable-radix-tree"
(string-append "--with-libevent=" (string-append "--with-libevent="
(assoc-ref %build-inputs "libevent")) #$(this-package-input "libevent"))
(string-append "--with-ssl=" (string-append "--with-ssl="
(assoc-ref %build-inputs "openssl")) #$(this-package-input "openssl"))
"--with-configdir=/etc" "--with-configdir=/etc"
"--with-nsd_conf_file=/etc/nsd/nsd.conf" "--with-nsd_conf_file=/etc/nsd/nsd.conf"
"--with-logfile=/var/log/nsd.log" "--with-logfile=/var/log/nsd.log"
@ -542,11 +543,11 @@ the two.")
"--with-xfrdfile=/var/db/nsd/xfrd.state" "--with-xfrdfile=/var/db/nsd/xfrd.state"
"--with-zonelistfile=/var/db/nsd/zone.list") "--with-zonelistfile=/var/db/nsd/zone.list")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-before 'configure 'patch-installation-paths (add-before 'configure 'patch-installation-paths
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let ((doc (string-append #$output "/share/doc/"
(doc (string-append out "/share/doc/" ,name "-" ,version))) #$name "-" #$version)))
;; The make install target tries to create the parent ;; The make install target tries to create the parent
;; directories of run-time things like pidfile above, and ;; directories of run-time things like pidfile above, and
;; useless empty directories like 'configdir'. Remove such ;; useless empty directories like 'configdir'. Remove such
@ -635,14 +636,14 @@ BIND and djbdns---whilst using relatively little memory.")
(define-public unbound (define-public unbound
(package (package
(name "unbound") (name "unbound")
(version "1.17.0") (version "1.17.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.unbound.net/downloads/unbound-" (uri (string-append "https://www.unbound.net/downloads/unbound-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0h8k5yh49vasyzwkm3n1xsidxr7xybqwkvg4cq6937qxi7brbg6w")))) (base32 "1x55f5aqlzynpy24ryf1rsmdy8m8iyi19n7k03k889g1rk78ah7f"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "python")) (outputs '("out" "python"))
(native-inputs (native-inputs
@ -677,8 +678,7 @@ BIND and djbdns---whilst using relatively little memory.")
(("^PYTHON_SITE_PKG=.*$") (("^PYTHON_SITE_PKG=.*$")
(string-append (string-append
"PYTHON_SITE_PKG=" "PYTHON_SITE_PKG="
pyout "/lib/python-" ver "/site-packages\n")))) pyout "/lib/python-" ver "/site-packages\n"))))))
#t))
(add-before 'check 'fix-missing-nss-for-tests (add-before 'check 'fix-missing-nss-for-tests
;; Unfortunately, the package's unittests involve some checks ;; Unfortunately, the package's unittests involve some checks
;; looking up protocols and services which are not provided ;; looking up protocols and services which are not provided
@ -779,8 +779,7 @@ struct servent *getservbyport(int port, const char *proto) {
;; The preload library only affects the unittests. ;; The preload library only affects the unittests.
(substitute* "Makefile" (substitute* "Makefile"
(("./unittest") (("./unittest")
"LD_PRELOAD=/tmp/nss_preload.so ./unittest"))) "LD_PRELOAD=/tmp/nss_preload.so ./unittest"))))))))
#t)))))
(home-page "https://www.unbound.net") (home-page "https://www.unbound.net")
(synopsis "Validating, recursive, and caching DNS resolver") (synopsis "Validating, recursive, and caching DNS resolver")
(description (description
@ -794,16 +793,16 @@ served by AS112. Stub and forward zones are supported.")
(define-public yadifa (define-public yadifa
(package (package
(name "yadifa") (name "yadifa")
(version "2.5.3") (version "2.6.4")
(source (source
(let ((build "10333")) (let ((build "10892"))
(origin (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://www.yadifa.eu/sites/default/files/releases/" (string-append "https://www.yadifa.eu/sites/default/files/releases/"
"yadifa-" version "-" build ".tar.gz")) "yadifa-" version "-" build ".tar.gz"))
(sha256 (sha256
(base32 "1mwy6sfnlaslx26f3kpj9alh8i8y8bf1nbnsdd5j04hjsbavd07p"))))) (base32 "0wdm0gc01bhd04p3jqxy3y8lgx5v8wlm8saiy35llna5ssi77fyq")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list which)) (list which))
@ -812,6 +811,12 @@ served by AS112. Stub and forward zones are supported.")
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'unhard-code
(lambda _
(substitute* (list "lib/dnslg/Makefile.in"
"lib/dnsdb/Makefile.in"
"lib/dnscore/Makefile.in")
(("/usr/bin/(install)" _ command) command))))
(add-before 'configure 'omit-example-configurations (add-before 'configure 'omit-example-configurations
(lambda _ (lambda _
(substitute* "Makefile.in" (substitute* "Makefile.in"
@ -840,7 +845,7 @@ Extensions} (DNSSEC).")
(define-public knot (define-public knot
(package (package
(name "knot") (name "knot")
(version "3.2.7") (version "3.2.8")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -849,7 +854,7 @@ Extensions} (DNSSEC).")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1zrx5ih8wy0l9dka7ql9v32z6z8bxcdsfs1zmjn052xrzb01qjkw")) (base32 "05yhm1n0zphcvicy2brlbv3azp4lvdjprcqf3lybz7mzd6ghr25c"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -865,12 +870,12 @@ Extensions} (DNSSEC).")
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs (list "out" "doc" "lib" "tools")) (outputs (list "out" "doc" "lib" "tools"))
(arguments (arguments
`(#:configure-flags (list
(list (string-append "--docdir=" (assoc-ref %outputs "doc") #:configure-flags
"/share/" ,name "-" ,version) #~(list (string-append "--docdir=" #$output:doc
(string-append "--infodir=" (assoc-ref %outputs "doc") "/share/" #$name "-" #$version)
"/share/info") (string-append "--infodir=" #$output:doc "/share/info")
(string-append "--libdir=" (assoc-ref %outputs "lib") "/lib") (string-append "--libdir=" #$output:lib "/lib")
"--sysconfdir=/etc" "--sysconfdir=/etc"
"--localstatedir=/var" "--localstatedir=/var"
"--disable-static" ; static libraries are built by default "--disable-static" ; static libraries are built by default
@ -879,7 +884,7 @@ Extensions} (DNSSEC).")
"--enable-xdp=yes" "--enable-xdp=yes"
"--with-module-dnstap=yes") ; detailed query capturing & logging "--with-module-dnstap=yes") ; detailed query capturing & logging
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'link-missing-libbpf-dependency (add-after 'unpack 'link-missing-libbpf-dependency
;; Linking against -lbpf later would fail to find -lz: libbpf.pc has ;; Linking against -lbpf later would fail to find -lz: libbpf.pc has
;; zlib in its Requires.private (not Requires) field. Add it here. ;; zlib in its Requires.private (not Requires) field. Add it here.
@ -904,9 +909,9 @@ Extensions} (DNSSEC).")
'()) '())
,@make-flags)))) ,@make-flags))))
(replace 'install (replace 'install
(lambda* (#:key make-flags outputs parallel-build? #:allow-other-keys) (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((doc (string-append #$output "/share/doc/"
(doc (string-append out "/share/doc/" ,name "-" ,version)) #$name "-" #$version))
(etc (string-append doc "/examples/etc"))) (etc (string-append doc "/examples/etc")))
(apply invoke "make" "install" (apply invoke "make" "install"
(string-append "config_dir=" etc) (string-append "config_dir=" etc)
@ -922,22 +927,20 @@ Extensions} (DNSSEC).")
'()) '())
,@make-flags)))) ,@make-flags))))
(add-after 'install 'break-circular-:lib->:out-reference (add-after 'install 'break-circular-:lib->:out-reference
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let ((lib (assoc-ref outputs "lib")))
(for-each (lambda (file) (for-each (lambda (file)
(substitute* file (substitute* file
(("(prefix=).*" _ assign) (("(prefix=).*" _ assign)
(string-append assign lib "\n")))) (string-append assign #$output:lib "\n"))))
(find-files lib "\\.pc$"))))) (find-files #$output:lib "\\.pc$"))))
(add-after 'install 'split-:tools (add-after 'install 'split:tools
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (define (move source target file)
(tools (assoc-ref outputs "tools"))) (mkdir-p (dirname (string-append target "/" file)))
(mkdir-p (string-append tools "/share/man")) (rename-file (string-append source "/" file)
(rename-file (string-append out "/bin") (string-append target "/" file)))
(string-append tools "/bin")) (move #$output #$output:tools "bin")
(rename-file (string-append out "/share/man/man1") (move #$output #$output:tools "share/man/man1"))))))
(string-append tools "/share/man/man1"))))))))
(native-inputs (native-inputs
(list autoconf (list autoconf
automake automake

View file

@ -534,32 +534,24 @@ the in DocBook SGML DTDs.")
(build-system python-build-system) (build-system python-build-system)
;; TODO: Add xfig/transfig for fig2dev utility ;; TODO: Add xfig/transfig for fig2dev utility
(inputs (inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts `(("texlive" ,(texlive-updmap.cfg (list texlive-anysize
texlive-latex-anysize texlive-appendix
texlive-latex-appendix texlive-changebar
texlive-latex-bookmark texlive-fancybox
texlive-latex-changebar
texlive-latex-colortbl
texlive-latex-fancybox
texlive-fancyhdr
texlive-fancyvrb texlive-fancyvrb
texlive-latex-float texlive-float
texlive-latex-footmisc texlive-footmisc
texlive-hyperref texlive-jknapltx
texlive-latex-jknapltx
texlive-listings texlive-listings
texlive-latex-multirow texlive-multirow
texlive-latex-overpic texlive-overpic
texlive-pdfpages texlive-pdfpages
texlive-refcount texlive-refcount
texlive-rsfs
texlive-stmaryrd
texlive-subfigure texlive-subfigure
texlive-titlesec texlive-titlesec
texlive-wasysym texlive-wasysym)))
texlive-fonts-rsfs
texlive-stmaryrd
texlive-iftex)))
("imagemagick" ,imagemagick) ;for convert ("imagemagick" ,imagemagick) ;for convert
("inkscape" ,inkscape/stable) ;for svg conversion ("inkscape" ,inkscape/stable) ;for svg conversion
("docbook" ,docbook-xml) ("docbook" ,docbook-xml)

View file

@ -12,6 +12,7 @@
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.counoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.counoyer@gmail.com>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -40,6 +41,7 @@
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system qt) #:use-module (guix build-system qt)
#:use-module (guix deprecation) #:use-module (guix deprecation)
#:use-module (guix utils)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages backup) #:use-module (gnu packages backup)
@ -224,7 +226,15 @@ markup) can be customized and extended by the user.")
(let ((/bin/sh (search-input-file inputs "/bin/sh"))) (let ((/bin/sh (search-input-file inputs "/bin/sh")))
(substitute* "src/portable.cpp" (substitute* "src/portable.cpp"
(("/bin/sh") (("/bin/sh")
/bin/sh)))))))) /bin/sh)))))
#$@(if (target-hurd?)
#~((add-after 'unpack 'apply-patch
(lambda _
(let ((patch-file
#$(local-file
(search-patch "doxygen-hurd.patch"))))
(invoke "patch" "--force" "-p1" "-i" patch-file)))))
#~()))))
(synopsis "Generate documentation from annotated sources") (synopsis "Generate documentation from annotated sources")
(description "Doxygen is the de facto standard tool for generating (description "Doxygen is the de facto standard tool for generating
documentation from annotated C++ sources, but it also supports other popular documentation from annotated C++ sources, but it also supports other popular

View file

@ -621,7 +621,7 @@ Some of the current features:
(define-public xchm (define-public xchm
(package (package
(name "xchm") (name "xchm")
(version "1.33") (version "1.35")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/rzvncj/xCHM" (uri (string-append "https://github.com/rzvncj/xCHM"
@ -629,7 +629,7 @@ Some of the current features:
version "/xchm-" version ".tar.gz")) version "/xchm-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0an09shap2wj9gzj5fsw5sc2i6paq3kc3mc52fnwg2bb2dan5qxk")))) "19w9cmdncqgy20bk8njbvcz5xld15pq5slf7m477vhnvws8a373i"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list wxwidgets chmlib)) (list wxwidgets chmlib))

View file

@ -10,6 +10,7 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 Leo Le Bouter <lle-bout@zaclys.net> ;;; Copyright © 2021 Leo Le Bouter <lle-bout@zaclys.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -112,6 +113,28 @@
(("run-reverse-sections-self.sh") "") (("run-reverse-sections-self.sh") "")
(("run-strip-strmerge.sh") "") (("run-strip-strmerge.sh") "")
(("run-elflint-self.sh") ""))))) (("run-elflint-self.sh") "")))))
'())
,@(if (system-hurd?)
`((add-after 'unpack 'skip-tests
(lambda _
(substitute* '("tests/elfstrtab.c"
"tests/emptyfile.c")
(("elf_version \\(EV_CURRENT\\);" all)
"exit (77);"))
(substitute* '("tests/run-all-dwarf-ranges.sh"
"tests/run-allfcts-multi.sh"
"tests/run-attr-integrate-skel.sh"
"tests/run-bug1-test.sh"
"tests/run-copyadd-sections.sh"
"tests/run-deleted.sh"
"tests/run-get-units-split.sh"
"tests/run-native-test.sh"
"tests/run-readelf-loc.sh"
"tests/run-readelf-ranges.sh"
"tests/run-unit-info.sh"
"tests/run-varlocs.sh")
(("^#!.*" all)
(string-append all "exit 77;\n"))))))
'())))) '()))))
(native-inputs (list m4)) (native-inputs (list m4))

View file

@ -1261,6 +1261,32 @@ face properties and allows configuration of faces and colors.")
some utility functions, and commands using that infrastructure.") some utility functions, and commands using that infrastructure.")
(license license:gpl3+))) (license license:gpl3+)))
;; Package has no release. Version is extracted from "Version:" keyword in
;; main file.
(define-public emacs-project-mode-line-tag
(let ((commit "a8809cc1a50cfdedaf7bed2810249ae262884716")
(revision "0"))
(package
(name "emacs-project-mode-line-tag")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/fritzgrabo/project-mode-line-tag")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0bmx9a1g199axj9ypqisvfyf1517czw23zg96x1wdzqrpw3cb7cx"))))
(build-system emacs-build-system)
(home-page "https://github.com/fritzgrabo/project-mode-line-tag")
(synopsis "Display a buffer's project in its mode line")
(description
"Display information about a buffer's project (a \"project tag\") in
its mode line.")
(license license:gpl3+))))
(define-public git-modes (define-public git-modes
(package (package
(name "emacs-git-modes") (name "emacs-git-modes")
@ -3729,6 +3755,30 @@ always indented. It reindents after every change, making it more reliable
than @code{electric-indent-mode}.") than @code{electric-indent-mode}.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public emacs-gc-stats
(package
(name "emacs-gc-stats")
(version "1.4")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"emacs-gc-stats-" version ".tar"))
(sha256
(base32
"19195s2nw87nmdz861j6shw5m2lv0spbcb1wff0y338fgx9sicgz"))))
(build-system emacs-build-system)
(home-page "https://git.sr.ht/~yantar92/emacs-gc-stats")
(synopsis "Collect Emacs GC statistics")
(description
"This package collects Emacs @dfn{garbage collection} (GC) statistics over
time and saves it in the format that can be shared with Emacs maintainers.
This package does not upload anything automatically. You will need to upload
the data manually, by sending email attachment. If necessary, you can review
@code{emacs-gc-stats-file} (defaults to @code{~/.emacs.d/emacs-gc-stats.eld})
before uploading-it is just a text file.")
(license license:gpl3+)))
(define-public emacs-gcmh (define-public emacs-gcmh
;; No tagged release upstream, but the commit below correspond to the 0.2.1 ;; No tagged release upstream, but the commit below correspond to the 0.2.1
;; release. ;; release.
@ -3952,41 +4002,36 @@ as a library for other Emacs packages.")
;; We use 'emacs' because AUCTeX requires dbus at compile time ;; We use 'emacs' because AUCTeX requires dbus at compile time
;; ('emacs-minimal' does not provide dbus). ;; ('emacs-minimal' does not provide dbus).
(arguments (arguments
`(#:emacs ,emacs (list
#:include '("\\.el$" "^images/" "^latex/" "\\.info$") #:emacs emacs
#:exclude '("^tests/" "^latex/README") #:include #~(cons* "^images/" "^latex/" %default-include)
#:exclude #~(cons "^latex/README" %default-exclude)
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'configure (add-after 'unpack 'configure
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(emacs-substitute-variables "preview.el" (emacs-substitute-variables "preview.el"
("preview-gs-command" ("preview-gs-command"
(search-input-file inputs "/bin/gs"))) (search-input-file inputs "/bin/gs")))
;; Leave "dvipng" and "dvips" executables as-is. Otherwise, this
;; would require to add a TeX Live system to inputs, which is
;; much for an Emacs package.
(substitute* "preview.el" (substitute* "preview.el"
(("\"dvipng ")
(let ((dvipng (search-input-file inputs "/bin/dvipng")))
(string-append "\"" dvipng " ")))
(("\"dvips ")
(let ((dvips (search-input-file inputs "/bin/dvips")))
(string-append "\"" dvips " ")))
(("\"pdf2dsc ") (("\"pdf2dsc ")
(let ((pdf2dsc (search-input-file inputs "/bin/pdf2dsc"))) (let ((pdf2dsc (search-input-file inputs "/bin/pdf2dsc")))
(string-append "\"" pdf2dsc " ")))))) (string-append "\"" pdf2dsc " "))))))
(add-after 'install 'install-doc (add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let ((doc-dir (string-append #$output "/share/doc/"
(etc-dir (string-append out "/share/" ,name "/" #$name "-" #$version)))
,version "/etc")))
(with-directory-excursion "doc" (with-directory-excursion "doc"
(setenv "HOME" (getenv "TMPDIR")) ; for mktextfm (setenv "HOME" (getenv "TMPDIR")) ; for mktextfm
(invoke "pdftex" "tex-ref") (invoke "pdftex" "tex-ref")
(install-file "tex-ref.pdf" (install-file "tex-ref.pdf" doc-dir))))))))
(string-append etc-dir "/refcards")))))))))
(native-inputs (native-inputs
(list perl)) (list perl (texlive-updmap.cfg)))
(inputs (inputs
(list ghostscript (list ghostscript))
(texlive-updmap.cfg (list texlive-amsfonts))))
(home-page "https://www.gnu.org/software/auctex/") (home-page "https://www.gnu.org/software/auctex/")
(synopsis "Integrated environment for TeX") (synopsis "Integrated environment for TeX")
(description (description
@ -6560,6 +6605,31 @@ detecting specific uses of Ruby, e.g. when using rails, and using a
appropriate console.") appropriate console.")
(license license:gpl3+))) (license license:gpl3+)))
;; Package has no release. Version is extracted from "Version:" keyword in
;; main file.
(define-public emacs-zeno-theme
(let ((commit "70fa7b7442f24ea25eab538b5a22da690745fef5")
(revision "0"))
(package
(name "emacs-zeno-theme")
(version (git-version "1.0.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zenobht/zeno-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"10v6yf9c5qdsxrp6rk1n1xkv4byyfkinsikskdb2apjg05cx2273"))))
(build-system emacs-build-system)
(home-page "https://github.com/zenobht/zeno-theme")
(synopsis "Dark theme using different shades of blue for Emacs")
(description
"This package provides a dark theme using different shades of blue for
Emacs, inspired by @code{Dracula} theme.")
(license license:gpl3+))))
(define-public emacs-zig-mode (define-public emacs-zig-mode
(let ((commit "dbc648f5bca8f3b9ca2cc7827f326f5530115144") (let ((commit "dbc648f5bca8f3b9ca2cc7827f326f5530115144")
(revision "0")) (revision "0"))
@ -7477,6 +7547,28 @@ Also included are keybindings for spec files and Dired buffers, as well as
snippets for yasnippet.") snippets for yasnippet.")
(license license:gpl3+)))) (license license:gpl3+))))
(define-public emacs-mode-line-bell
(package
(name "emacs-mode-line-bell")
(version "0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/purcell/mode-line-bell")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"13n3di05lgqfm4f8krn3p36yika5znhymp5vr2d747x54hqmgh7y"))))
(build-system emacs-build-system)
(home-page "https://github.com/purcell/mode-line-bell")
(synopsis "Flash the mode-line instead of ringing the bell")
(description
"This Emacs package provides a global minor mode @code{mode-line-bell-mode}
which sets @code{ring-bell-function} to a function that will briefly flash the
mode-line when the bell is rung.")
(license license:gpl3+)))
(define-public emacs-mode-line-idle (define-public emacs-mode-line-idle
;; Package has no release. Version is extracted from "Version:" keyword in ;; Package has no release. Version is extracted from "Version:" keyword in
;; main file. ;; main file.
@ -11310,6 +11402,31 @@ provides a front-end interface for the workspace/symbols LSP procedure
call.") call.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-consult-flycheck
;; This particular commit introduces bug fixes above latest release.
(let ((commit "3f2a7c17cc2fe64e0c07e3bf90e33c885c0d7062")
(revision "0"))
(package
(name "emacs-consult-flycheck")
(version (git-version "0.9" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minad/consult-flycheck")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0cvxl6ynbns3wlpzilhg4ldakb91ikpibbr9wpb2wkzbgi5c766c"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-consult emacs-flycheck))
(home-page "https://github.com/minad/consult-flycheck")
(synopsis "Consult integration for Flycheck")
(description
"This package provides the @code{consult-flycheck} command for Emacs,
which integrates @code{Consult} with @code{Flycheck}.")
(license license:gpl3+))))
(define-public emacs-eglot-tempel (define-public emacs-eglot-tempel
(let ((commit "e08b203d6a7c495d4b91ed4537506b5f1ea8a84f") (let ((commit "e08b203d6a7c495d4b91ed4537506b5f1ea8a84f")
(revision "0")) (revision "0"))
@ -12039,6 +12156,28 @@ The following completions are currently available:
@end itemize") @end itemize")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-sweet-theme
(let ((commit "78f741806ecebe01224bf54d09ad80e306652508")
(revision "0"))
(package
(name "emacs-sweet-theme")
(version (git-version "4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/2bruh4me/sweet-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1yqz15l6xa1vkll4gaa3jpr30vq3yjgbgadjilsmz5p8mblawhyx"))))
(build-system emacs-build-system)
(home-page "https://github.com/2bruh4me/sweet-theme")
(synopsis "Emacs theme inspired by the GTK theme Sweet")
(description "Sweet is an Emacs theme inspired by the GTK theme with
the same name.")
(license license:gpl3+))))
(define-public emacs-swiper (define-public emacs-swiper
(package (package
(name "emacs-swiper") (name "emacs-swiper")
@ -13393,6 +13532,45 @@ and tooling.")
and RSS, with a user interface inspired by notmuch.") and RSS, with a user interface inspired by notmuch.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-elfeed-goodies
(let ((commit "544ef42ead011d960a0ad1c1d34df5d222461a6b"))
(package
(name "emacs-elfeed-goodies")
(version commit)
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jeetelongname/elfeed-goodies")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "147pwqx2maf430qhigzfd6lqk7a5sbrydf9a4c5bvsw8jv7wzb6l"))))
(build-system emacs-build-system)
(propagated-inputs
(list
emacs-elfeed
emacs-popwin
emacs-powerline
emacs-link-hint))
(home-page "https://github.com/jeetelongname/elfeed-goodies")
(synopsis
"Various bits and pieces to enhance the Elfeed user experience.")
(description
"This package enhances the vanilla Elfeed user experience with:
@itemize @bullet
@item
An adaptive, powerline-based header for the @code{*elfeed-search*} and
@code{*elfeed-entry*} buffers, with a matching entry format.
@item
Split pane setup.
@item
A function to toggle the @code{*elfeed-log*} buffer in a popup window.
@end itemize")
(license license:gpl3+))))
(define-public emacs-elfeed-org (define-public emacs-elfeed-org
(let ((commit "77b6bbf222487809813de260447d31c4c59902c9")) (let ((commit "77b6bbf222487809813de260447d31c4c59902c9"))
(package (package
@ -13630,6 +13808,34 @@ automatically when Git, Subversion or Mercurial are used. It also provides
functions to assist in reviewing changes on files.") functions to assist in reviewing changes on files.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-popwin
(package
(name "emacs-popwin")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacsorphanage/popwin")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1x1iimzbwb5izbia6aj6xv49jybzln2qxm5ybcrcq7xync5swiv1"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f ; requires an attached terminal
))
(native-inputs
(list emacs-ert-runner))
(home-page "https://github.com/emacsorphanage/popwin")
(synopsis "Popup window manager for Emacs")
(description
"This package provides utilities for treating certain windows as @dfn{pop
up windows}, which close automatically when quitting a command or selecting
another window.")
(license license:gpl3+)))
(define-public emacs-pyvenv (define-public emacs-pyvenv
(package (package
(name "emacs-pyvenv") (name "emacs-pyvenv")
@ -14970,7 +15176,7 @@ Lua programming language}.")
(define-public emacs-ebuild-mode (define-public emacs-ebuild-mode
(package (package
(name "emacs-ebuild-mode") (name "emacs-ebuild-mode")
(version "1.64") (version "1.65")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -14979,7 +15185,7 @@ Lua programming language}.")
"ebuild-mode-" version ".tar.xz")) "ebuild-mode-" version ".tar.xz"))
(file-name (string-append name "-" version ".tar.xz")) (file-name (string-append name "-" version ".tar.xz"))
(sha256 (sha256
(base32 "180wjbi385fhafijmmimcf23fdympdk2km0yj9rv6pmfbfjgq2bv")))) (base32 "07zla002lxkck4cgpfr5c5lmarxb12yfnldgflv9vf88yfa997xw"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -17460,6 +17666,31 @@ DefaultEncrypt, please refer to the home page or read the comments in the
source file, @file{jl-encrypt.el}.") source file, @file{jl-encrypt.el}.")
(license license:gpl3+))) (license license:gpl3+)))
;; Package has no release. Version is extracted from "Version:" keyword in
;; main file.
(define-public emacs-exotica-theme
(let ((commit "ff3ef4f6fa38c93b99becad977c7810c990a4d2f")
(revision "0"))
(package
(name "emacs-exotica-theme")
(version (git-version "1.0.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zenobht/exotica-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1kp6q55g3dcya4y79x877vqwxa4z2rkkvhs49pkwr3wljf4af2pd"))))
(build-system emacs-build-system)
(home-page "https://github.com/zenobht/exotica-theme")
(synopsis "Dark theme for Emacs with vibrant colors")
(description
"A dark opinionated theme with vibrant colors for Emacs. Inspired by
@code{Molokai} and @code{Dracula} themes.")
(license license:gpl3+))))
(define-public emacs-extend-smime (define-public emacs-extend-smime
(package (package
(name "emacs-extend-smime") (name "emacs-extend-smime")
@ -19243,6 +19474,34 @@ available key bindings that follow C-x (or as many as space allows given your
settings).") settings).")
(license license:gpl3+))) (license license:gpl3+)))
;; Tagged release upstream is from before the package was orphaned.
;; The base version is extracted from the "Version" keyword in the main file
;; with "-git" suffix removed.
(define-public emacs-which-key-posframe
(let ((commit "e4a9ce9a1b20de550fca51f14d055821980d534a")
(revision "0"))
(package
(name "emacs-which-key-posframe")
(version (git-version "0.2.0.50" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/emacsorphanage/which-key-posframe")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0kgc29pb5k6cb2m13cz1yhys1k8l4dpx6wjjgldpdlg9qw2i1b53"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-posframe emacs-which-key))
(home-page "https://github.com/emacsorphanage/which-key-posframe")
(synopsis "Display which-key popup in a posframe (a child frame)")
(description
"This package is a @code{which-key} extension, which uses posframe
(a child frame) to show @code{which-key} popups.")
(license license:gpl3+))))
(define-public emacs-display-wttr (define-public emacs-display-wttr
(package (package
(name "emacs-display-wttr") (name "emacs-display-wttr")
@ -19444,7 +19703,7 @@ multiplexer.")
(define-public emacs-plz (define-public emacs-plz
(package (package
(name "emacs-plz") (name "emacs-plz")
(version "0.6") (version "0.7")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -19453,7 +19712,7 @@ multiplexer.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "12hnsafv1bxkk1pb471i8hw0zy0yfla8afpcahlg4k4dni4dnqsm")))) (base32 "18lq7v2gglfnax5r1svh9p0fcd5hs745js57nl8bk58ba047a9q8"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(inputs (list curl)) (inputs (list curl))
(arguments (arguments
@ -23186,10 +23445,10 @@ within Emacs.")
(define-public emacs-svg-lib (define-public emacs-svg-lib
;; XXX: Upstream does not tag releases. The commit hash below corresponds ;; XXX: Upstream does not tag releases. The commit hash below corresponds
;; to the version bump. ;; to the version bump.
(let ((commit "0486c9453449771bc3f5872f70bc5cb23580d0f4")) (let ((commit "5ba4e4ea2b5c66e8811beb53251dee13685b2cb2"))
(package (package
(name "emacs-svg-lib") (name "emacs-svg-lib")
(version "0.2.5") (version "0.2.6")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -23198,7 +23457,7 @@ within Emacs.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "059vd4k7bvskkriwaiz4n2yafc3inndrr018hqfpic4k02cbwzpv")))) (base32 "1zpcw8arizwjiz7diky7f0nh65zkp0pmnpyqzb0h1qgqnlf734k4"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/rougier/svg-lib") (home-page "https://github.com/rougier/svg-lib")
(synopsis "Emacs SVG library for creating tags, icons and bars") (synopsis "Emacs SVG library for creating tags, icons and bars")
@ -26203,6 +26462,33 @@ displayed in chronological order) or as an Org document where the node tree
maps the thread tree.") maps the thread tree.")
(license license:gpl3+)))) (license license:gpl3+))))
;; Package has no releases or tags. Version is extracted from "Version:"
;; keyword in main file.
(define-public emacs-mu4e-dashboard
(let ((commit "16ffbb2a36817647e345f60acdfaac66dda28c0f")
(revision "0"))
(package
(name "emacs-mu4e-dashboard")
(version (git-version "0.1.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rougier/mu4e-dashboard")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1fp2f9rvh20r3advbzcgm5vv2dzcyvy1618hfykbm6ac4wjscdll"))))
(build-system emacs-build-system)
(propagated-inputs (list mu))
(home-page "https://github.com/rougier/mu4e-dashboard")
(synopsis "Build your own dashboard for mu4e using org-mode")
(description
"This package provides an @code{org-mode} link type that allows
execution of various @code{mu4e} queries when clicked. Such links can be
organized into a dashboard, by simply writing an org file.")
(license license:gpl3+))))
(define-public emacs-pinentry (define-public emacs-pinentry
(let ((commit "dcc9ba03252ee5d39e03bba31b420e0708c3ba0c") (let ((commit "dcc9ba03252ee5d39e03bba31b420e0708c3ba0c")
(revision "1")) (revision "1"))
@ -26871,6 +27157,26 @@ text-tree applications inside GNU Emacs. It consists of 2 subprojects:
@command{ztree-diff}).") @command{ztree-diff}).")
(license license:gpl3)))) (license license:gpl3))))
(define-public emacs-heaven-and-hell
(package
(name "emacs-heaven-and-hell")
(version "0.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/valignatev/heaven-and-hell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1bgs638nsn9hyvc9wbc2jpqm5i3hblld1mhmf0h9z0j6fjr0aapx"))))
(build-system emacs-build-system)
(home-page "https://github.com/valignatev/heaven-and-hell")
(synopsis "Easily toggle light/dark themes in Emacs")
(description "This package makes the process of switching between
light and dark themes as easy as hitting a single keystroke.")
(license license:expat)))
(define-public emacs-helm-org-contacts (define-public emacs-helm-org-contacts
(let ((commit "741eca6239684950219c9a12802386a132491b8c") (let ((commit "741eca6239684950219c9a12802386a132491b8c")
(revision "2")) (revision "2"))
@ -34208,7 +34514,7 @@ launching other commands/applications from within Emacs, similar to the
(define-public emacs-no-littering (define-public emacs-no-littering
(package (package
(name "emacs-no-littering") (name "emacs-no-littering")
(version "1.4.0") (version "1.5.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -34217,7 +34523,7 @@ launching other commands/applications from within Emacs, similar to the
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1i5fcci8fg14hbd4cjb84q3mx6rfwhbwkw0g21v25dal61kw4yvb")))) (base32 "14f07irjbk3akc07a0y5awyflmhsxvj8gg67y81zp90danjkgvvr"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
(list emacs-compat)) (list emacs-compat))
@ -34388,6 +34694,27 @@ one file per value. This makes it easy to delete or remove unused
variables.") variables.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-persistent-scratch
(package
(name "emacs-persistent-scratch")
(version "0.3.9")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Fanael/persistent-scratch")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"187cyl005csmmmh292km1v3ffl8x49h5qyn87i4adz9l5sqnpdgj"))))
(build-system emacs-build-system)
(home-page "https://github.com/Fanael/persistent-scratch")
(synopsis "Preserve the scratch buffer across Emacs sessions")
(description
"Preserve the state of scratch buffers across Emacs sessions by saving the
state to and restoring it from a file, with auto-saving and backups.")
(license license:bsd-2)))
(define-public emacs-company-emoji (define-public emacs-company-emoji
(package (package
(name "emacs-company-emoji") (name "emacs-company-emoji")
@ -35740,6 +36067,29 @@ uncluttered design pattern to achieve optimal focus and readability for code
syntax highlighting and UI components.") syntax highlighting and UI components.")
(license license:expat))) (license license:expat)))
(define-public emacs-weyland-yutani-theme
(let ((commit "e89a63a62e071180c9cdd9067679fadc3f7bf796")
(revision "0"))
(package
(name "emacs-weyland-yutani-theme")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jstaursky/weyland-yutani-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0gxlz9b7fvbjkqxsyb4l75g7jsxyms0i1vpnb6y499hl115akcaz"))))
(build-system emacs-build-system)
(home-page "https://github.com/jstaursky/weyland-yutani-theme")
(synopsis "Emacs theme based on the Alien movie franchise")
(description
"Weyland Yutani is a dark Emacs theme based on the Alien movie
franchise.")
(license license:gpl3+))))
(define-public emacs-janet-mode (define-public emacs-janet-mode
(let ((commit "2f5bcabcb6953e1ed1926ba6a2328c453e8b4ac7")) (let ((commit "2f5bcabcb6953e1ed1926ba6a2328c453e8b4ac7"))
(package (package
@ -36677,7 +37027,7 @@ Fennel code within Emacs.")
(define-public emacs-org-modern (define-public emacs-org-modern
(package (package
(name "emacs-org-modern") (name "emacs-org-modern")
(version "0.9") (version "0.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -36685,7 +37035,7 @@ Fennel code within Emacs.")
(url "https://github.com/minad/org-modern") (url "https://github.com/minad/org-modern")
(commit version))) (commit version)))
(sha256 (sha256
(base32 "16c74vff882rx8yp4ybaydlg5774xz68iasajhidbn0fb4fhz8ph")) (base32 "0fpc6pf1chjs9bb4m9hzacny3cdxvnpvwsf0vrbbz3vy9sf1a30c"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (list emacs-compat)) (propagated-inputs (list emacs-compat))
@ -37422,6 +37772,32 @@ a Vertico extension which provides a way to pop up a frame at point to show
a vertical completion UI.") a vertical completion UI.")
(license license:gpl3+))) (license license:gpl3+)))
;; No tagged release upstream
(define-public emacs-transient-posframe
(let ((commit "dcd898d1d35183a7d4f2c8f0ebcb43b4f8e70ebe")
(revision "0"))
(package
(name "emacs-transient-posframe")
(version (git-version "0.1.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/yanghaoxie/transient-posframe")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1aq1vbkww55xplyaa3xagz9z4kdlsxk13x054asnk0dqps4bcgbf"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-posframe emacs-transient))
(home-page "https://github.com/yanghaoxie/transient-posframe")
(synopsis "Pop up a posframe (a child frame) to show Transients")
(description
"This package is a @code{transient} extension, which uses @code{posframe}
(a child frame) to show @code{transient} popups in Emacs. It was developed with
@code{transient} popups of @code{magit} in mind.")
(license license:gpl3+))))
(define-public emacs-tintin-mode (define-public emacs-tintin-mode
(let ((commit "82e71e1db92ee3d94c7d0208bafc5de337193de8") (let ((commit "82e71e1db92ee3d94c7d0208bafc5de337193de8")
(revision "1")) (revision "1"))

View file

@ -12,7 +12,7 @@
;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -310,7 +310,7 @@
;; For native compilation ;; For native compilation
binutils binutils
glibc (libc-for-target)
libgccjit libgccjit
;; Required for "core" functionality, such as dired and compression. ;; Required for "core" functionality, such as dired and compression.

View file

@ -116,14 +116,14 @@
(define-public vice (define-public vice
(package (package
(name "vice") (name "vice")
(version "3.6") (version "3.7.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/vice-emu/releases/" (uri (string-append "mirror://sourceforge/vice-emu/releases/"
"vice-" version ".tar.gz")) "vice-" version ".tar.gz"))
(sha256 (sha256
(base32 "1zfkl9j40v2417l1fmczdvl9yzh81jlpcy5cl2svjzb2rrffbgv5")))) (base32 "165b1ixrarcqy1rl06yhaf46ni3j8lrbn8f3zf5nkc2d0bk12f3y"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags '("--disable-html-docs" `(#:configure-flags '("--disable-html-docs"

View file

@ -439,14 +439,14 @@ features.")))
(define-public librnd (define-public librnd
(package (package
(name "librnd") (name "librnd")
(version "4.0.0") (version "4.0.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://www.repo.hu/projects/librnd/releases/" (uri (string-append "http://www.repo.hu/projects/librnd/releases/"
"librnd-" version ".tar.bz2")) "librnd-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1fqh7gf9imhghlfajrsgzjx61mynfmdasciwpcajk7pn85d4ymql")))) "0z578x3sd8yjfbhivy1hz4hlgiy43qq6x7mnby872plpm08vgqxz"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -454,7 +454,7 @@ features.")))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'cc-is-gcc (add-after 'unpack 'cc-is-gcc
(lambda _ (setenv "CC" "gcc"))) (lambda _ (setenv "CC" #$(cc-for-target))))
(replace 'configure (replace 'configure
;; The configure script doesn't tolerate most of our configure flags. ;; The configure script doesn't tolerate most of our configure flags.
(lambda _ (lambda _
@ -527,21 +527,21 @@ optimizer; and it can produce photorealistic and design review images.")
(define-public pcb-rnd (define-public pcb-rnd
(package (inherit pcb) (package (inherit pcb)
(name "pcb-rnd") (name "pcb-rnd")
(version "3.1.0") (version "3.1.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://repo.hu/projects/pcb-rnd/releases/" (uri (string-append "http://repo.hu/projects/pcb-rnd/releases/"
"pcb-rnd-" version ".tar.gz")) "pcb-rnd-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0yw4sf4qrmmai48f3f5byn2fphc453myjszh3sy9z0dnfcz3x7fw")))) "0szcsp2049wh3wslv7743wbjqllrmphi07yz0933sz4vf6f1c8dg"))))
(arguments (arguments
(list (list
#:tests? #false ;no check target #:tests? #false ;no check target
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'cc-is-gcc (add-after 'unpack 'cc-is-gcc
(lambda _ (setenv "CC" "gcc"))) (lambda _ (setenv "CC" #$(cc-for-target))))
(replace 'configure (replace 'configure
;; The configure script doesn't tolerate most of our configure flags. ;; The configure script doesn't tolerate most of our configure flags.
(lambda _ (lambda _
@ -575,10 +575,11 @@ featuring various improvements and bug fixes.")))
"fastcap-mulGlobal.patch")))) "fastcap-mulGlobal.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
;; FIXME: with texlive-tiny citation references are rendered as question ;; FIXME: with (texlive-updmap.cfg) citation references are rendered as
;; marks. During the build warnings like these are printed: ;; question marks. During the build warnings like these are printed:
;; LaTeX Warning: Citation `nabors91' on page 2 undefined on input line 3. ;; LaTeX Warning: Citation `nabors91' on page 2 undefined on input line
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts))) ;; 3.
`(("texlive" ,(texlive-updmap.cfg))
("ghostscript" ,ghostscript))) ("ghostscript" ,ghostscript)))
(arguments (arguments
`(#:make-flags '("CC=gcc" "RM=rm" "SHELL=sh" "all") `(#:make-flags '("CC=gcc" "RM=rm" "SHELL=sh" "all")
@ -1289,7 +1290,7 @@ with the kernel and various utilities such as per-cpu counters.")
(define-public linsmith (define-public linsmith
(package (package
(name "linsmith") (name "linsmith")
(version "0.99.31") (version "0.99.33")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -1297,14 +1298,14 @@ with the kernel and various utilities such as per-cpu counters.")
version "/linsmith-" version ".tar.gz")) version "/linsmith-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"13qj7n9826qc9shkkgd1p6vcpj78v4h9d67wbg45prg7rbnzkzds")))) "1629p29casy9pgy8hzva1bmgrvh923qk01ls3anik6zqn6swkjfn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '("CFLAGS=-fcommon"))) '(#:configure-flags '("CFLAGS=-fcommon")))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) (list pkg-config))
("gtk" ,gtk+-2) (inputs
("libgnome" ,libgnomeui))) (list gtk+-2 libgnomeui))
(home-page "https://jcoppens.com/soft/linsmith/index.en.php") (home-page "https://jcoppens.com/soft/linsmith/index.en.php")
(synopsis "Smith Charting program") (synopsis "Smith Charting program")
(description "LinSmith is a Smith Charting program, mainly designed for (description "LinSmith is a Smith Charting program, mainly designed for

View file

@ -296,7 +296,7 @@ Example file names:
@code{emacs-dired-hacks} has @code{dired-avfs} module which enables seamless @code{emacs-dired-hacks} has @code{dired-avfs} module which enables seamless
integration with @code{avfs}.") integration with @code{avfs}.")
(home-page "http://avf.sourceforge.net/") (home-page "https://avf.sourceforge.net")
(license license:gpl2+))) (license license:gpl2+)))
(define-public davfs2 (define-public davfs2
@ -574,8 +574,8 @@ from a mounted file system.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public bcachefs-tools (define-public bcachefs-tools
(let ((commit "46a6b9210c927ab46fd1227cb6f641be0b4a7505") (let ((commit "c8bec83e307f28751c433ba1d3f648429fb5a34c")
(revision "16")) (revision "17"))
(package (package
(name "bcachefs-tools") (name "bcachefs-tools")
(version (git-version "0.1" revision commit)) (version (git-version "0.1" revision commit))
@ -587,7 +587,7 @@ from a mounted file system.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0jblpwz8mxrx0pa2gc5bwj60qjj2c0zmd8r06f2bhgzs75avpkj3")))) (base32 "0b1avy5mw3r3ppfs3n9cq4zb74yl45nd5l69r6hi27z9q5bc3nv8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:make-flags (list #:make-flags
@ -596,45 +596,39 @@ from a mounted file system.")
"INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools" "INITRAMFS_DIR=$(PREFIX)/share/initramfs-tools"
(string-append "CC=" #$(cc-for-target)) (string-append "CC=" #$(cc-for-target))
(string-append "PKG_CONFIG=" #$(pkg-config-for-target)) (string-append "PKG_CONFIG=" #$(pkg-config-for-target))
(string-append "PYTEST_CMD=" ;; This will be less of an option in the future, as more
#$(this-package-native-input "python-pytest") ;; code gets rewritten in Rust.
"/bin/pytest") "NO_RUST=better")
(string-append "PYTEST_ARGS=-k '"
;; These fail (invalid argument) on
;; kernels with a previous bcachefs version.
"not test_format and "
"not test_fsck and "
"not test_list and "
"not test_list_inodes and "
"not test_list_dirent"
"'"))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure) ; no configure script (delete 'configure) ; no configure script
(add-after 'install 'promote-mount.bcachefs.sh (replace 'check
;; XXX The (optional) mount.bcachefs requires rust:cargo. ;; The test suite is moribund upstream (never been useful),
;; This shell alternative does the job well enough for now. ;; but let's keep running it as a sanity check until then.
(lambda _ (lambda* (#:key tests? make-flags #:allow-other-keys)
(with-directory-excursion (string-append #$output "/sbin") (when tests?
(rename-file "mount.bcachefs.sh" "mount.bcachefs") ;; We must manually build the test_helper first.
;; WRAP-SCRIPT causes bogus Insufficient arguments errors. (apply invoke "make" "tests" make-flags)
(wrap-program "mount.bcachefs" (invoke (string-append
`("PATH" ":" prefix #$(this-package-native-input "python-pytest")
,(list (string-append #$output "/sbin") "/bin/pytest") "-k"
(string-append #$coreutils-minimal "/bin") ;; These fail (invalid argument) on kernels
(string-append #$gawk "/bin") ;; with a previous bcachefs version.
(string-append #$util-linux "/bin")))))))))) (string-append "not test_format and "
"not test_fsck and "
"not test_list and "
"not test_list_inodes and "
"not test_list_dirent"))))))))
(native-inputs (native-inputs
(append (cons* pkg-config
(list pkg-config ;; For generating documentation with rst2man.
python
python-docutils
;; For tests. ;; For tests.
python-pytest) python-pytest
(if (member (%current-system) (package-supported-systems valgrind)) (if (member (%current-system) (package-supported-systems valgrind))
(list valgrind) (list valgrind)
'()) '())))
;; For generating documentation with rst2man.
(list python
python-docutils)))
(inputs (inputs
(list eudev (list eudev
keyutils keyutils
@ -1213,8 +1207,8 @@ APFS.")
(define-public xfstests (define-public xfstests
;; The last release (1.1.0) is from 2011. ;; The last release (1.1.0) is from 2011.
(let ((revision "1") (let ((revision "2")
(commit "bae1d15f6421cbe99b3e2e134c39d50248e7c261")) (commit "87f90a2dae7a4adb7a0a314e27abae9aa1de78fb"))
(package (package
(name "xfstests") (name "xfstests")
(version (git-version "1.1.0" revision commit)) (version (git-version "1.1.0" revision commit))
@ -1226,7 +1220,7 @@ APFS.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "01y7dx5sx1xg3dycqlp2b6azclz3xcnx7vdy2rr6zmf210501xd9")))) (base32 "11p690k7h4f00bd14r60xa8sw34x14bh5rfd6x7j8gbkpsgsidli"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -1698,13 +1692,13 @@ compatible directories.")
(define-public python-dropbox (define-public python-dropbox
(package (package
(name "python-dropbox") (name "python-dropbox")
(version "11.36.0") (version "11.36.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "dropbox" version)) (uri (pypi-uri "dropbox" version))
(sha256 (sha256
(base32 "0iwbi1qdw9qr7isa37yys582am59k80dqrwvm6s0afdwv0ifa343")) (base32 "00650gk8557x3f38nd8a1mdby7v1l8l4l72aq48qpiw6shb3v3fl"))
(snippet (snippet
'(begin '(begin
(use-modules (guix build utils)) (use-modules (guix build utils))

View file

@ -2073,7 +2073,7 @@ trading, and risk management in real-life.")
(list gsl gtk+ ncurses)) (list gsl gtk+ ncurses))
(native-inputs (native-inputs
(list pkg-config texinfo (list pkg-config texinfo
(texlive-updmap.cfg (list texlive-epsf texlive-tex-texinfo)))) (texlive-updmap.cfg (list texlive-epsf texlive-texinfo))))
(home-page "https://anthonybradford.github.io/optionmatrix/") (home-page "https://anthonybradford.github.io/optionmatrix/")
(synopsis "Financial derivative calculator") (synopsis "Financial derivative calculator")
(description (description

View file

@ -575,7 +575,7 @@ executing in M-mode.")
(define-public seabios (define-public seabios
(package (package
(name "seabios") (name "seabios")
(version "1.16.1") (version "1.16.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -584,7 +584,7 @@ executing in M-mode.")
(commit (string-append "rel-" version)))) (commit (string-append "rel-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0gph1hf70jjpx55qc0lzx2yghkipg9dnsin07i4jajk0p1jpd2d0")) (base32 "1mal2zqn4ppxdjxddrxcphm6z9n8n4rw97xl2hldd7spw57nwq97"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
#~(begin #~(begin
@ -1025,7 +1025,7 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
(gnu-triplet->nix-system triplet)))))) (gnu-triplet->nix-system triplet))))))
(package (package
(name (string-append "arm-trusted-firmware-" platform)) (name (string-append "arm-trusted-firmware-" platform))
(version "2.8") (version "2.9")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1036,7 +1036,7 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
(file-name (git-file-name "arm-trusted-firmware" version)) (file-name (git-file-name "arm-trusted-firmware" version))
(sha256 (sha256
(base32 (base32
"0grq3fgxi9xhcljnhwlxjvdghyz15gaq50raw41xy4lm8rkmnzp3")) "16fjbn1zck0d8b554h8lk1svqqn0zlawvrlkjxry9l71s9h4vd0p"))
(snippet (snippet
#~(begin #~(begin
(use-modules (guix build utils)) (use-modules (guix build utils))
@ -1104,6 +1104,22 @@ such as:
(let ((base (make-arm-trusted-firmware "imx8mq"))) (let ((base (make-arm-trusted-firmware "imx8mq")))
(package (package
(inherit base) (inherit base)
;; Newer versions do not build and are essentially not supported
;; upstream.
;; XXX: explore using NXP maintained branch
;; https://github.com/nxp-imx/imx-atf
(version "2.8")
(source
(origin
(method git-fetch)
(uri (git-reference
;; There are only GitHub generated release snapshots.
(url "https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/")
(commit (string-append "v" version))))
(file-name (git-file-name "arm-trusted-firmware" version))
(sha256
(base32
"0grq3fgxi9xhcljnhwlxjvdghyz15gaq50raw41xy4lm8rkmnzp3"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments base) (substitute-keyword-arguments (package-arguments base)
((#:make-flags flags ''()) ((#:make-flags flags ''())

View file

@ -46,13 +46,16 @@
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf) #:use-module (gnu packages elf)
#:use-module (gnu packages embedded) #:use-module (gnu packages embedded)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages pciutils) #:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages libftdi) #:use-module (gnu packages libftdi)
@ -475,30 +478,58 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
(define-public srecord (define-public srecord
(package (package
(name "srecord") (name "srecord")
(version "1.64") (version "1.65.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/srecord/srecord/" (uri (string-append "mirror://sourceforge/srecord/srecord/"
version "/srecord-" version ".tar.gz")) (version-major+minor version) "/"
"srecord-" version "-Source.tar.gz"))
(sha256 (sha256
(base32 (base32 "0i3n6g8i28xx8761nadm6p2nf9y31bywx0isyi0h9rawy5yd1hw1"))
"1qk75q0k5vzmm3932q9hqz2gp8n9rrdfjacsswxc02656f3l3929")))) (modules '((guix build utils)))
(build-system gnu-build-system) (snippet
'(begin
;; Fix building without Git. Upstream tries to allow it but is buggy.
(substitute* "etc/configure.cmake"
(("\\(GIT_SHA1\\)") "(FALSE)"))
;; It also tries to install the entire RUNTIME_DEPENDENCY_SET of
;; each executable: libm, libc, libstc++ & more! Get the cluehammer.
(substitute* "etc/packaging.cmake"
((".*# Find standard library DLL.*" match)
"ENDFUNCTION()\n\nFUNCTION(WTF no)\n"))
;; Now stop it from deliberately clobbering -DCMAKE_INSTALL_PREFIX.
(substitute* "CMakeLists.txt"
(("set\\(CMAKE_INSTALL_PREFIX") "#"))))))
(build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags (list
(list (string-append "SH=" #:modules '((guix build cmake-build-system)
(assoc-ref %build-inputs "bash") (guix build utils)
"/bin/bash")))) (srfi srfi-26))
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'make-tests-executable
(lambda _
(for-each
(cut chmod <> #o755)
;; We're in a parallel build directory to the sources and tests.
(find-files ".." "\\.sh$")))))))
(inputs (inputs
(list boost libgcrypt)) (list boost libgcrypt))
(native-inputs (native-inputs
(list bison (list doxygen
diffutils ghostscript ; for ps2pdf
ghostscript graphviz ; the build scripts call this doxygen
groff groff
libtool psutils
which)) ;; For the tests.
diffutils
which
;; XXX Work around Guix's currently-broken psutils package. Remove
;; both and maybe (gnu packages perl) when core-updates is merged.
perl
perl-ipc-run3))
(home-page "https://srecord.sourceforge.net/") (home-page "https://srecord.sourceforge.net/")
(synopsis "Tools for EPROM files") (synopsis "Tools for EPROM files")
(description "The SRecord package is a collection of powerful tools for (description "The SRecord package is a collection of powerful tools for

View file

@ -1858,7 +1858,7 @@ programming. Iosevka is completely generated from its source code.")
(define-public font-sarasa-gothic (define-public font-sarasa-gothic
(package (package
(name "font-sarasa-gothic") (name "font-sarasa-gothic")
(version "0.40.7") (version "0.41.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1866,7 +1866,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version "/releases/download/v" version
"/sarasa-gothic-ttc-" version ".7z")) "/sarasa-gothic-ttc-" version ".7z"))
(sha256 (sha256
(base32 "01iqc93dmi48n4g3xf472602hxhf9zfwfawy7vhn4rf06yhndv4s")))) (base32 "11ldfkdc86kxbpwypggkyx2k5pj2rnq34r7gp0pmpzz61m1wk2v0"))))
(build-system font-build-system) (build-system font-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases (modify-phases %standard-phases
@ -3260,6 +3260,29 @@ minor tweaks to improve readability (a matter of taste of course).
Most characters are just 4px wide, which is brilliant for low dpi(90-120) displays.") Most characters are just 4px wide, which is brilliant for low dpi(90-120) displays.")
(license license:silofl1.1))) (license license:silofl1.1)))
(define-public font-tuffy
(package
(name "font-tuffy")
(version "20120614")
(source
(origin
(method url-fetch)
(uri (string-append "http://tulrich.com/fonts/tuffy-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"02vf72bgrp30vrbfhxjw82s115z27dwfgnmmzfb0n9wfhxxfpyf6"))
(snippet '(delete-file "._Tuffy.otf"))))
(build-system font-build-system)
(home-page "http://tulrich.com/fonts/")
(synopsis "The Tuffy Truetype Font Family")
(description
"Thatcher Ulrich's first outline font design. He started with the goal
+of producing a neutral, readable sans-serif text font. There are lots of
+\"expressive\" fonts out there, but he wanted to start with something very
+plain and clean, something he might want to actually use.")
(license license:public-domain)))
(define-public font-velvetyne-jgs (define-public font-velvetyne-jgs
;; There are no releases nor tags. ;; There are no releases nor tags.
(let ((revision "1") (let ((revision "1")

View file

@ -16,6 +16,8 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org> ;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org>
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com> ;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -124,6 +126,16 @@ anti-aliased glyph bitmap generation with 256 gray levels.")
(license license:freetype) ; some files have other licenses (license license:freetype) ; some files have other licenses
(home-page "https://freetype.org/"))) (home-page "https://freetype.org/")))
;; TODO: Make this change directly in freetype in the next large rebuild cycle
;; and remove this package.
(define-public freetype-with-brotli
(package
(inherit freetype)
(name "freetype-with-brotli")
(propagated-inputs
(modify-inputs (package-propagated-inputs freetype)
(prepend brotli)))))
(define-public opentype-sanitizer (define-public opentype-sanitizer
(package (package
(name "opentype-sanitizer") (name "opentype-sanitizer")
@ -1358,6 +1370,25 @@ applications should be.")
(list python python-fonttools-minimal)) (list python python-fonttools-minimal))
(inputs (inputs
(list freetype)) (list freetype))
(arguments
(if (system-hurd?)
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
;; cmake-build-system ignores #:make-flags for make check
(lambda* (#:key test-target tests? parallel-tests?
#:allow-other-keys)
(if tests?
(let ((jobs (if parallel-tests?
(number->string (parallel-job-count))
"1")))
(invoke "make"
(string-append
"ARGS=-j " jobs " --exclude-regex ^awamicmp3$")
test-target))
(format #t "test suite not run~%"))))))
'()))
(synopsis "Reimplementation of the SIL Graphite text processing engine") (synopsis "Reimplementation of the SIL Graphite text processing engine")
(description (description
"Graphite2 is a reimplementation of the SIL Graphite text processing "Graphite2 is a reimplementation of the SIL Graphite text processing
@ -1503,12 +1534,13 @@ definitions.")
("python" ,python) ("python" ,python)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
'(#:configure-flags '(;; TODO: Provide GTK+ for the Wayland-friendly GDK (list
#:configure-flags #~'( ;; TODO: Provide GTK+ for the Wayland-friendly GDK
;; backend, instead of the legacy X11 backend. ;; backend, instead of the legacy X11 backend.
;; Currently it introduces a circular dependency. ;; Currently it introduces a circular dependency.
"-DENABLE_X11=ON") "-DENABLE_X11=ON")
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'do-not-override-RPATH (add-after 'unpack 'do-not-override-RPATH
(lambda _ (lambda _
;; Do not attempt to set a default RPATH, as our ld-wrapper ;; Do not attempt to set a default RPATH, as our ld-wrapper
@ -1517,6 +1549,33 @@ definitions.")
(("^set_default_rpath\\(\\)") (("^set_default_rpath\\(\\)")
"")) ""))
#t)) #t))
#$@(if (target-hurd?)
#~((add-after 'unpack 'apply-hurd-patch
(lambda _
(let ((patch-file
#$(local-file
(search-patch "fontforge-hurd.patch"))))
(invoke "patch" "--force" "-p1" "-i" patch-file)))))
#~())
#$@(if (system-hurd?)
#~((replace 'check
;; cmake-build-system ignores #:make-flags for make check
(lambda* (#:key test-target tests? parallel-tests?
#:allow-other-keys)
(let ((skip '("test0001_py" "test0001_pyhook")))
(if tests?
(let ((jobs
(if parallel-tests?
(number->string (parallel-job-count))
"1")))
(invoke "make"
(string-append "ARGS=-j " jobs
" --exclude-regex ^"
(string-join skip "\\|")
"$")
test-target))
(format #t "test suite not run~%"))))))
#~())
(add-after 'install 'set-library-path (add-after 'install 'set-library-path
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
@ -1559,9 +1618,9 @@ generate bitmaps.")
(arguments (arguments
(substitute-keyword-arguments (package-arguments fontforge) (substitute-keyword-arguments (package-arguments fontforge)
((#:configure-flags _) ((#:configure-flags _)
''()) #~'())
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases #~(modify-phases #$phases
(delete 'do-not-override-RPATH))))) (delete 'do-not-override-RPATH)))))
(inputs (inputs
(modify-inputs (package-inputs fontforge) (modify-inputs (package-inputs fontforge)

View file

@ -38,16 +38,12 @@
(build-system copy-build-system) (build-system copy-build-system)
(native-inputs (native-inputs
(list (texlive-updmap.cfg (list (texlive-updmap.cfg
(list (list texlive-caption
texlive-caption
texlive-endnotes texlive-endnotes
texlive-fonts-ec texlive-fncychap
texlive-helvetic texlive-helvetic
texlive-hyperref texlive-times
texlive-latex-fncychap texlive-ucs))))
texlive-latex-geometry
texlive-latex-ucs
texlive-times))))
(arguments (arguments
(list (list
#:install-plan #~'(("faif-2.0.pdf" "share/doc/faif/")) #:install-plan #~'(("faif-2.0.pdf" "share/doc/faif/"))

View file

@ -28,6 +28,7 @@
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 dan <i@dan.games> ;;; Copyright © 2022 dan <i@dan.games>
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -86,6 +87,7 @@
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages llvm) #:use-module (gnu packages llvm)
@ -95,6 +97,7 @@
#:use-module (gnu packages multiprecision) #:use-module (gnu packages multiprecision)
#:use-module (gnu packages music) #:use-module (gnu packages music)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
@ -105,12 +108,14 @@
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages sdl) #:use-module (gnu packages sdl)
#:use-module (gnu packages speech)
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages stb) #:use-module (gnu packages stb)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils) #:use-module (gnu packages textutils)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages video) #:use-module (gnu packages video)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages wxwidgets) #:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg) #:use-module (gnu packages xdisorg)
@ -1708,7 +1713,7 @@ robust and compatible with many systems and operating systems.")
(define-public mygui (define-public mygui
(package (package
(name "mygui") (name "mygui")
(version "3.4.1") (version "3.4.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1717,8 +1722,7 @@ robust and compatible with many systems and operating systems.")
(commit (string-append "MyGUI" version)))) (commit (string-append "MyGUI" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0gkfahz118gpqa2906cjb3d4w8g13rv8v3ma7s0ml9l5cci785f8"))))
"1gyd4bzm6qqpqw6is065qs5c729gl6rp989bnkygha6q4s371vz6"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f ; No test target '(#:tests? #f ; No test target
@ -1765,7 +1769,10 @@ of use.")
(inputs (inputs
(modify-inputs (package-inputs mygui) (modify-inputs (package-inputs mygui)
(delete "ogre") (delete "ogre")
(prepend mesa glu))) (prepend glu
libglvnd ; for find_package(… GLX)
mesa ; for find_package(… OpenGL …)
(sdl-union (list sdl2 sdl2-image)))))
(synopsis "Fast, flexible and simple GUI (OpenGL backend)"))) (synopsis "Fast, flexible and simple GUI (OpenGL backend)")))
(define-public openmw (define-public openmw
@ -1812,7 +1819,7 @@ games.")
(home-page "https://openmw.org") (home-page "https://openmw.org")
(license license:gpl3))) (license license:gpl3)))
(define-public godot (define-public godot-lts
(package (package
(name "godot") (name "godot")
(version "3.4.2") (version "3.4.2")
@ -1982,6 +1989,253 @@ provide high-quality 3D rendering, it contains an animation editor, and can be
scripted in a Python-like language.") scripted in a Python-like language.")
(license license:expat))) (license license:expat)))
(define-public godot
(package
(name "godot")
(version "4.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/godotengine/godot")
(commit (string-append version "-stable"))))
(file-name (git-file-name name version))
(sha256
(base32
"0rc34w4nb1qwmxk7ijcm689kk4gdxrmgzbj4qqz8gkqhysn8mnmz"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)))
(snippet
'(begin
;; Keep only those bundled files we have not (yet) replaced
;; with Guix versions. Note that some of these may be
;; modified; see "thirdparty/README.md".
(with-directory-excursion "thirdparty"
(let* ((preserved-files
'("README.md"
"amd-fsr"
"assimp"
"astcenc"
"basis_universal"
;; TODO: Can unbundle once
;; <https://github.com/godotengine/godot/pull/79101>
;; is merged
"brotli"
;; Godot needs ca-certificates.crt, but that is
;; not available in build environment
"certs"
"cvtt"
"linuxbsd_headers"
"etc2comp"
"etcpak"
"fonts"
"glad"
"jpeg-compressor"
"libsimplewebm"
"meshoptimizer"
"minimp3"
"miniupnpc"
"minizip"
"misc"
"msdfgen"
"nanosvg"
"noise"
"oidn"
"openxr"
"pvrtccompressor"
"recastnavigation"
"rvo2"
"spirv-reflect"
"squish"
"stb_rect_pack"
"thorvg"
"tinyexr"
"vhacd"
"volk"
"vulkan"
"xatlas")))
(for-each delete-file-recursively
(lset-difference string=?
(scandir ".")
(cons* "." ".." preserved-files)))))))))
(build-system scons-build-system)
(arguments
(list
#:scons-flags #~`("platform=linuxbsd" "target=editor" "production=yes"
;; XXX: There may be advantages to enabling volk,
;; requiring unbundling and patching to use our input.
"use_volk=no"
;; Avoid using many of the bundled libs.
;; Note: These options can be found in the SConstruct file.
"builtin_embree=no"
"builtin_enet=no"
"builtin_freetype=no"
"builtin_glslang=no"
"builtin_graphite=no"
"builtin_harfbuzz=no"
"builtin_icu4c=no"
"builtin_libogg=no"
"builtin_libpng=no"
"builtin_libtheora=no"
"builtin_libvorbis=no"
"builtin_libwebp=no"
"builtin_mbedtls=no"
"builtin_pcre2=no"
"builtin_pcre2_with_jit=no"
"builtin_wslay=no"
"builtin_zlib=no"
"builtin_zstd=no")
#:tests? #f ; There are no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'scons-use-env
(lambda _
;; Scons does not use the environment variables by default,
;; but this substitution makes it do so.
(substitute* "SConstruct"
(("env_base = Environment\\(tools=custom_tools\\)")
(string-append
"env_base = Environment(tools=custom_tools)\n"
"env_base = Environment(ENV=os.environ)")))))
(add-after 'scons-use-env 'fix-dlopen-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((files '("drivers/alsa/asound-so_wrap.c"
"drivers/pulseaudio/pulse-so_wrap.c"
"platform/linuxbsd/dbus-so_wrap.c"
"platform/linuxbsd/fontconfig-so_wrap.c"
"platform/linuxbsd/libudev-so_wrap.c"
"platform/linuxbsd/speechd-so_wrap.c"
"platform/linuxbsd/x11/display_server_x11.cpp"
"platform/linuxbsd/x11/dynwrappers/xcursor-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xext-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xinerama-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xinput2-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xlib-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xrandr-so_wrap.c"
"platform/linuxbsd/x11/dynwrappers/xrender-so_wrap.c"
"platform/linuxbsd/xkbcommon-so_wrap.c"
"thirdparty/volk/volk.c"
"thirdparty/volk/volk.c"))
(libs '("libasound.so.2"
"libpulse.so.0"
"libdbus-1.so.3"
"libfontconfig.so.1"
"libudev.so.1"
"libspeechd.so.2"
"libXrandr.so.2"
"libXcursor.so.1"
"libXext.so.6"
"libXinerama.so.1"
"libXi.so.6"
"libX11.so.6"
"libXrandr.so.2"
"libXrender.so.1"
"libxkbcommon.so.0"
"libvulkan.so.1"
"libvulkan.so")))
(for-each (lambda (file lib)
(substitute* file
(((string-append "dlopen\\(\"" lib "\""))
(string-append "dlopen(\""
(search-input-file
inputs (string-append "lib/" lib))
"\""))))
files libs))
(substitute* "thirdparty/glad/gl.c"
(("libGL.so") ; for both .so and .so.1
(string-append (search-input-file inputs "lib/libGL.so"))))
(substitute* "thirdparty/glad/glx.c"
(("libGL.so") ; for both .so and .so.1
(string-append (search-input-file inputs "lib/libGL.so"))))))
(add-after 'fix-dlopen-paths 'unbundle-xkbcommon
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "platform/linuxbsd/xkbcommon-so_wrap.c"
(("./thirdparty/linuxbsd_headers/xkbcommon/xkbcommon.h")
(string-append
(search-input-file inputs "include/xkbcommon/xkbcommon.h")))
(("./thirdparty/linuxbsd_headers/xkbcommon/xkbcommon-compose.h")
(string-append
(search-input-file inputs "include/xkbcommon/xkbcommon-compose.h")))
(("./thirdparty/linuxbsd_headers/xkbcommon/xkbcommon-keysyms.h")
(string-append
(search-input-file inputs "include/xkbcommon/xkbcommon-keysyms.h"))))))
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(let ((zenity (search-input-file inputs "bin/zenity")))
;; Strip build info from filenames.
(with-directory-excursion "bin"
(for-each
(lambda (file)
(let ((dest (car (string-split (basename file) #\.))))
(rename-file file dest)))
(find-files "." "godot.*\\.linuxbsd\\.editor.*"))
(install-file "godot" (string-append #$output "/bin")))
;; Tell the editor where to find zenity for OS.alert().
;; TODO: This could be changed in
;; platform/linuxbsd/os_linuxbsd.cpp directly, along with the
;; other alert programs.
(wrap-program (string-append #$output "/bin/godot")
`("PATH" ":" prefix (,(string-append zenity "/bin")))))))
(add-after 'install 'install-godot-desktop
(lambda _
(let ((applications (string-append #$output "/share/applications"))
(icons (string-append #$output "/share/icons/hicolor")))
(mkdir-p applications)
(copy-file "misc/dist/linux/org.godotengine.Godot.desktop"
(string-append applications "/godot.desktop"))
(for-each (lambda (icon dest)
(mkdir-p (dirname dest))
(copy-file icon dest))
'("icon.png" "icon.svg")
`(,(string-append icons "/256x256/apps/godot.png")
,(string-append icons "/scalable/apps/godot.svg")))))))))
(native-inputs
(list pkg-config))
(inputs
(list alsa-lib
dbus
embree
enet
eudev
fontconfig
freetype-with-brotli
glew
glslang
glu
libpng
harfbuzz
icu4c
libtheora
libvorbis
libvpx
libwebp
libx11
libxcursor
libxi
libxinerama
libxkbcommon
libxrandr
mbedtls-apache
mesa
openxr
opusfile
pcre2
pulseaudio
speech-dispatcher
vulkan-loader
wslay
zenity
zlib
`(,zstd "lib")))
(home-page "https://godotengine.org/")
(synopsis "Advanced 2D and 3D game engine")
(description
"Godot is an advanced multi-platform game engine written in C++. If
features design tools such as a visual editor, can import 3D models and
provide high-quality 3D rendering, it contains an animation editor, and can be
scripted in a Python-like language.")
(license license:expat)))
(define-public entt (define-public entt
(package (package
(name "entt") (name "entt")
@ -2411,14 +2665,14 @@ a.k.a. XenoCollide) as described in Game Programming Gems 7.")
(define-public ode (define-public ode
(package (package
(name "ode") (name "ode")
(version "0.16.3") (version "0.16.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://bitbucket.org/odedevs/ode/downloads/" (uri (string-append "https://bitbucket.org/odedevs/ode/downloads/"
"ode-" version ".tar.gz")) "ode-" version ".tar.gz"))
(sha256 (sha256
(base32 "04y40czkh71m1p2r8ddfn5bajvlh7yyfa928jvi8qipwkgsdnhf7")) (base32 "0rrl4pn4h3g0ay0i3n61pr6bwyk9vgar17vjal56pj66h617n0vi"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin

View file

@ -24,7 +24,7 @@
;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com> ;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com>
;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info> ;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info>
;;; Copyright © 2017, 2018, 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017, 2018, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20172022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 20172023 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019 nee <nee-git@hidamari.blue> ;;; Copyright © 2017, 2019 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
@ -303,27 +303,23 @@ platform-jumping, key-collecting, ancient pyramid exploring game, vaguely in
the style of similar games for the Commodore+4.") the style of similar games for the Commodore+4.")
(license license:gpl2+))) (license license:gpl2+)))
;; Data package for adanaxisgpl.
(define adanaxis-mush
(let ((version "1.1.0"))
(origin
(method url-fetch)
(uri (string-append "http://www.mushware.com/files/adanaxis-mush-"
version ".tar.gz"))
(sha256
(base32 "0mk9ibis5nkdcalcg1lkgnsdxxbw4g5w2i3icjzy667hqirsng03")))))
(define-public adanaxisgpl (define-public adanaxisgpl
(let* ((version "1.2.5")
(commit (string-append "ADANAXIS_"
(string-join (string-split version #\.) "_")
"_RELEASE_X11")))
(package (package
(name "adanaxisgpl") (name "adanaxisgpl")
(version "1.2.5") (version version)
(source (source
(origin (origin
(method url-fetch) (method git-fetch)
(uri (string-append "http://www.mushware.com/files/adanaxisgpl-" (uri (git-reference
version ".tar.gz")) (url "https://github.com/mushware/adanaxis")
(commit commit)))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 "0jkn637jaabvlhd6hpvzb57vvjph94l6fbf7qxbjlw9zpr19dw1f")) (base32 "1vbg17lzbm0xl9yy9qymd1vgpz6f7fbr2hffl2ap0nm4zg0mnafm"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -334,37 +330,76 @@ the style of similar games for the Commodore+4.")
;; Avoid an "invalid conversion from const char* to char*" error. ;; Avoid an "invalid conversion from const char* to char*" error.
(substitute* "src/Platform/X11/PlatformMiscUtils.cpp" (substitute* "src/Platform/X11/PlatformMiscUtils.cpp"
(("char \\*end, \\*result;") (("char \\*end, \\*result;")
(string-append "const char *end;" (string-append "const char *end;\n"
"\n"
"char *result;"))) "char *result;")))
#t)))) ;; autogen.pl will throw misleading errors if these don't exist.
(for-each mkdir-p '("src/MushSecret" "data-adanaxis"))
;; Create these missing files at the right later moment.
(substitute* "autogen.pl"
(("automake")
"automake --add-missing"))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'unpack-inputs
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively
(dirname (search-input-directory inputs "pixelsrc"))
"data-adanaxis")
(copy-recursively
(dirname (search-input-file inputs "MushBase.rb"))
"data-adanaxis/mushruby")))
(replace 'bootstrap
(lambda _
(invoke "perl" "autogen.pl" "adanaxis"
"--type=gpl" "--dist=debian")))
(add-after 'install 'install-data (add-after 'install 'install-data
;; XXX This was copied from the original (pre-Git) adanaxisgpl
;; package. While the game appears to play fine without it,
;; I cannot prove that it's not missing *something*, so keep it.
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((data (assoc-ref inputs "adanaxis-mush")) (let ((share (string-append (assoc-ref outputs "out")
(share (string-append (assoc-ref outputs "out")
"/share/" ,name "-" ,version))) "/share/" ,name "-" ,version)))
(mkdir-p share) (copy-recursively (search-input-directory inputs "mush")
(invoke "tar" "xvf" data "-C" share))))))) (string-append share "/mush"))))))))
(native-inputs (native-inputs
`(("adanaxis-mush" ,adanaxis-mush))) ; game data (list (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mushware/adanaxis-data")
;; XXX There is a tag matching COMMIT, but it does not
;; contain the .mush files installed by 'install-data.
;; Use this later commit as long as we install them.
(commit "6a5b5ad8ee82c10e67bc4c12b16404944fd5754d")))
(file-name (git-file-name "adanaxis-data" version))
(sha256
(base32 "15am9ziq1i53sz0r7sjh2z329b52fkzj6fz7ms1nqqzdfmp11r3d")))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mushware/adanaxis-mushruby")
(commit commit)))
(file-name (git-file-name "adanaxis-mushruby" version))
(sha256
(base32 "0pzcvchysjj37420rpvarky580gi5d6pfv93kwa91rg6m5r1zwks")))
autoconf
automake
perl))
(inputs (inputs
`(("expat" ,expat) (list expat
("freeglut" ,freeglut) freeglut
("glu" ,glu) glu
("libjpeg" ,libjpeg-turbo) libjpeg-turbo
("libogg" ,libogg) libogg
("libtiff" ,libtiff) libtiff
("libvorbis" ,libvorbis) libvorbis
("libx11" ,libx11) libx11
("libxext" ,libxext) libxext
("pcre" ,pcre) pcre
("sdl" ,sdl) sdl
("sdl-mixer" ,sdl-mixer))) sdl-mixer))
(home-page "https://www.mushware.com") (home-page "https://www.mushware.com")
(synopsis "Action game in four spatial dimensions") (synopsis "Action game in four spatial dimensions")
(description (description
@ -375,7 +410,7 @@ six planes of rotation. Initially the game explains the 4D control system via
a graphical sequence, before moving on to 30 levels of gameplay with numerous a graphical sequence, before moving on to 30 levels of gameplay with numerous
enemy, ally, weapon and mission types. Features include simulated 4D texturing, enemy, ally, weapon and mission types. Features include simulated 4D texturing,
mouse and joystick control, and original music.") mouse and joystick control, and original music.")
(license license:gpl2))) (license license:gpl2))))
(define-public alex4 (define-public alex4
(package (package
@ -2826,9 +2861,9 @@ runnable=true
#:categories '("Game" "ArcadeGame"))) #:categories '("Game" "ArcadeGame")))
#t))))) #t)))))
(native-inputs (native-inputs
`(("godot-headless" ,godot "headless"))) `(("godot-headless" ,godot-lts "headless")))
(inputs (inputs
(list godot)) (list godot-lts))
(home-page "https://notapixel.itch.io/superstarfighter") (home-page "https://notapixel.itch.io/superstarfighter")
(synopsis "Fast-paced local multiplayer arcade game") (synopsis "Fast-paced local multiplayer arcade game")
(description "In SuperStarfighter, up to four local players compete in a (description "In SuperStarfighter, up to four local players compete in a
@ -2840,19 +2875,14 @@ available, as well as a single-player mode with AI-controlled ships.")
(define-public tetzle (define-public tetzle
(package (package
(name "tetzle") (name "tetzle")
(version "2.2.1") (version "2.2.2")
(source (origin (source
(origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://gottcode.org/" (uri (string-append "https://gottcode.org/tetzle/"
name "tetzle-" version ".tar.bz2"))
"/"
name
"-"
version
"-src.tar.bz2"))
(sha256 (sha256
(base32 (base32 "0sybryg65j8gz5s7zbsfqky8wlkjwpppkrhksijj6xc7692lfii8"))))
"1m4j4lzqp8fnwmvyglmzcn3vh14ix4hhh52ycmcsjgrsgj1w4p6a"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f)) ; no tests `(#:tests? #f)) ; no tests
@ -4521,7 +4551,7 @@ falling, themeable graphics and sounds, and replays.")
(define-public wesnoth (define-public wesnoth
(package (package
(name "wesnoth") (name "wesnoth")
(version "1.16.6") (version "1.16.9")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -4530,7 +4560,7 @@ falling, themeable graphics and sounds, and replays.")
(file-name (string-append name "-" version ".tar.bz2")) (file-name (string-append name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0hfvxmdnwn86w254blbjacia342j47rhhahm6ca79la9d04rlz3m")))) "06gfgkg8f98jsj9vnbglw5lqflqzf0229n6wf3xl12carjzgaq9g"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list #:tests? #f)) ;no test target (list #:tests? #f)) ;no test target
@ -4654,14 +4684,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
(define openttd-engine (define openttd-engine
(package (package
(name "openttd-engine") (name "openttd-engine")
(version "13.1") (version "13.3")
(source (source
(origin (method url-fetch) (origin (method url-fetch)
(uri (string-append "https://cdn.openttd.org/openttd-releases/" (uri (string-append "https://cdn.openttd.org/openttd-releases/"
version "/openttd-" version "-source.tar.xz")) version "/openttd-" version "-source.tar.xz"))
(sha256 (sha256
(base32 (base32
"1fsq1azddk1l11w89r93mgmhna34kvarfak7xy2q48rmf39j5psy")))) "14kiksw9qb37ryg6xkq4gahpvvd5yxwqz21sqws525k7zg91dyma"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs (inputs
(list allegro (list allegro
@ -6278,19 +6308,19 @@ for Un*x systems with X11.")
(define-public freeciv (define-public freeciv
(package (package
(name "freeciv") (name "freeciv")
(version "3.0.7") (version "3.0.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append (uri (list (string-append
"http://files.freeciv.org/stable/freeciv-" "https://files.freeciv.org/stable/freeciv-"
version ".tar.bz2") version ".tar.xz")
(string-append (string-append
"mirror://sourceforge/freeciv/Freeciv%20" "mirror://sourceforge/freeciv/Freeciv%20"
(version-major+minor version) "/" version (version-major+minor version) "/" version
"/freeciv-" version ".tar.xz"))) "/freeciv-" version ".tar.xz")))
(sha256 (sha256
(base32 "1i6sm2ich9bazbg8wjzn8z1c5hgmg541lgw8f899fgfhgvqhdrpn")))) (base32 "1m3nwz0aad6p33zvmdldbw39riw2xqn99b6384bvx448c8ps6niv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list curl cyrus-sasl gtk+ sdl-mixer zlib)) (list curl cyrus-sasl gtk+ sdl-mixer zlib))
@ -7254,15 +7284,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 "197jmd99l3w3sig32pvdlq9fcgdjjx7g9csy08kz174cyhrlyly3")) (base32 "197jmd99l3w3sig32pvdlq9fcgdjjx7g9csy08kz174cyhrlyly3"))
(modules '((guix build utils))) (modules '((guix build utils)))))
(snippet
'(begin
(substitute* '("src/music.h" "src/tSDL.h")
(("#elif defined(__FreeBSD__)" line)
(string-append
line " || defined(__GNUC__)")))
(substitute* '("src/tgl.h")
(("#include <GL/glext.h>") ""))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list unzip)) (list unzip))
@ -7994,7 +8016,7 @@ original.")
(define-public xonotic (define-public xonotic
(package (package
(name "xonotic") (name "xonotic")
(version "0.8.5") (version "0.8.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -8002,7 +8024,7 @@ original.")
version "-source.zip")) version "-source.zip"))
(file-name (string-append name "-" version ".zip")) (file-name (string-append name "-" version ".zip"))
(sha256 (sha256
(base32 "0pgahai0gk8bjmvkwx948bl50l9f9dhmjzwffl4vyldibajipa51")))) (base32 "1a0j825rb86i34xc5k6spsma41gcgp6yl8qs2affhjpz3iwar4lb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:configure-flags (list #:configure-flags
@ -8520,7 +8542,7 @@ your score gets higher, you level up and the blocks fall faster.")
(define-public endless-sky (define-public endless-sky
(package (package
(name "endless-sky") (name "endless-sky")
(version "0.10.0") (version "0.10.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -8529,7 +8551,7 @@ your score gets higher, you level up and the blocks fall faster.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1zbizmigxdwpi3m7sxv9hhf3aa18kbhsfrp48zy3iw2v64pw9l3r")))) (base32 "07br25cij6g284p53nclcvw4y6mgn93milynpxa5ahrjdl5yfnsn"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list #:configure-flags #~(list "-DES_USE_VCPKG=0" (list #:configure-flags #~(list "-DES_USE_VCPKG=0"
@ -9702,404 +9724,6 @@ the game avoids complex inventory management and character building, relying
on items and player adaptability for character progression.") on items and player adaptability for character progression.")
(license license:isc))) (license license:isc)))
(define-public drascula
(package
(name "drascula")
(version "1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scummvm/extras/"
"Drascula_%20The%20Vampire%20Strikes%20Back/"
"drascula-" version ".zip"))
(sha256
(base32
"1pj29rpb754sn6a56f8brfv6f2m1p5qgaqik7d68pfi2bb5zccdp"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 match))
(let* ((out (assoc-ref %outputs "out"))
(share (string-append out "/share/drascula"))
(scummvm (assoc-ref %build-inputs "scummvm")))
;; Install data.
(let ((unzip (search-input-file %build-inputs "/bin/unzip"))
(doc (string-append out "/share/doc/" ,name "-" ,version)))
(for-each
(lambda (input)
(invoke unzip
"-j"
(assoc-ref %build-inputs input)
"-x" "__MACOSX")
;; Every input provides "readme.txt", and we want to
;; preserve them all. Therefore we rename them first.
(match input
("drascula-int"
(rename-file "readme.txt" "readme-international.txt"))
("drascula-audio"
(rename-file "readme.txt" "readme-audio.txt"))
(_ #f))
;; Install documentation.
(for-each (lambda (f) (install-file f doc))
(find-files "." "\\.(txt|doc)$"))
;; Install data.
(for-each (lambda (f) (install-file f share))
(find-files "." "\\.(ogg|00[0-9])$")))
'("drascula-audio" "drascula-int" "source")))
;; Create standalone executable.
(let* ((bin (string-append out "/bin"))
(executable (string-append bin "/drascula"))
(bash (search-input-file %build-inputs "/bin/bash")))
(mkdir-p bin)
(with-output-to-file executable
(lambda ()
(format #t "#!~a~%" bash)
(format #t
"exec ~a/bin/scummvm --path=~a drascula~%"
scummvm share)))
(chmod executable #o755))
;; Create desktop file. There is no dedicated icon for the
;; game, so we borrow SCUMMVM's.
(let ((apps (string-append out "/share/applications")))
(mkdir-p apps)
(make-desktop-entry-file
(string-append apps "/drascula.desktop")
#:name "Drascula: The Vampire Strikes Back"
#:generic-name "Drascula"
#:exec (string-append out "/bin/drascula")
#:icon (string-append scummvm "/share/icons/hicolor/scalable/apps/scummvm.svg")
#:categories '("AdventureGame" "Game" "RolePlaying")
#:keywords '("game" "adventure" "roleplaying" "2D" "fantasy")
#:comment '((#f "Classic 2D point and click adventure game")
("de" "Klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier")
("fr" "Jeu classique d'aventure pointer-et-cliquer en 2D")
("it" "Gioco classico di avventura punta e clicca 2D"))))
#t))))
(native-inputs
(list bash unzip))
(inputs
`(("scummvm" ,scummvm)
("drascula-int"
,(let ((version "1.1"))
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scummvm/extras/"
"Drascula_%20The%20Vampire%20Strikes%20Back/"
"drascula-int-" version ".zip"))
(sha256
(base32
"12236i7blamal92p1i8dgp3nhp2yicics4whsl63v682bj999n14")))))
("drascula-audio"
,(let ((version "2.0"))
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scummvm/extras/"
"Drascula_%20The%20Vampire%20Strikes%20Back/"
"drascula-audio-" version ".zip"))
(sha256
(base32
"00g4izmsqzxb8ry1vhfx6jrygl58lvlij09nw01ds4zddsiznsky")))))))
(home-page "https://www.scummvm.org")
(synopsis "Classic 2D point and click adventure game")
(description "Drascula: The Vampire Strikes Back is a classic humorous 2D
point and click adventure game.
In Drascula you play the role of John Hacker, a British estate agent, that
gets to meet a gorgeous blond girl who is kidnapped by the notorious vampire
Count Drascula and embark on a fun yet dangerous quest to rescue her.
Unfortunately, Hacker is not aware of Drascula's real ambitions: DOMINATING
the World and demonstrating that he is even more evil than his brother Vlad.")
;; Drascula uses a BSD-like license.
(license (license:non-copyleft "file:///readme.txt"))))
(define (make-lure-package name language hash)
(package
(name name)
(version "1.1")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/scummvm/extras/"
"Lure%20of%20the%20Temptress/"
name "-" version ".zip"))
(sha256
(base32 hash))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(share (string-append out "/share"))
(data (string-append share "/" ,name "/" ,language))
(apps (string-append share "/applications"))
(bin (string-append out "/bin"))
(executable (string-append bin "/" ,name))
(scummvm (assoc-ref %build-inputs "scummvm")))
(let ((unzip (search-input-file %build-inputs "/bin/unzip")))
(invoke unzip "-j" (assoc-ref %build-inputs "source")))
(let ((doc (string-append share "/doc/" ,name "-" ,version)))
(for-each (lambda (f) (install-file f doc))
(find-files "." "\\.(txt|PDF|pdf)$")))
(for-each (lambda (f) (install-file f data))
(find-files "." "\\.(vga|VGA)$"))
;; Build the executable.
(mkdir-p bin)
(let ((bash (assoc-ref %build-inputs "bash")))
(with-output-to-file executable
(lambda ()
(format #t "#!~a/bin/bash~%" bash)
(format #t "exec ~a/bin/scummvm -q ~a -p ~a lure~%"
scummvm ,language data))))
(chmod executable #o755)
;; Create desktop file. There is no dedicated
;; icon for the game, so we borrow SCUMMVM's.
(mkdir-p apps)
(with-output-to-file (string-append apps "/" ,name ".desktop")
(lambda _
(format #t
"[Desktop Entry]~@
Name=Lure of the Temptress~@
GenericName=Lure~@
Exec=~a~@
Icon=~a/share/icons/hicolor/scalable/apps/scummvm.svg~@
Categories=AdventureGame;Game;RolePlaying;~@
Keywords=game;adventure;roleplaying;2D,fantasy;~@
Comment=Classic 2D point and click adventure game~@
Comment[de]=klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier~@
Comment[fr]=Jeu classique d'aventure pointer-et-cliquer en 2D~@
Comment[it]=Gioco classico di avventura punta e clicca 2D~@
Type=Application~%"
executable scummvm)))
#t))))
(native-inputs
(list unzip))
(inputs
(list bash scummvm))
(home-page "https://www.scummvm.org")
(synopsis "2D point and click fantasy adventure game")
(description
"Lure of the Temptress is a classic 2D point and click adventure game.
You are Diermot, an unwilling hero who'd prefer a quiet life, and are, to all
intents and purposes, a good man. After decades of unrest the King has united
the warring factions in his kingdom and all his lands are at peace, except
a remote region around a town called Turnvale. A revolt has recently taken
place in Turnvale, a revolt orchestrated by an apprentice sorceress called
Selena, the titular temptress. The king calls together his finest horsemen
and heads off (with you in tow) to Turnvale just to witness how hellish
mercenary monsters called Skorl are invading the town.
The king's men are defeated, the king is killed and you fall of your horse and
bang your head heavily on the ground. You have been *unconscious for a while
when you realize that you are in a dingy cell guarded by a not so friendly
Skorl. Maybe it would be an idea to try and escape...")
(license (license:non-copyleft "file:///README"))))
(define-public lure
(make-lure-package
"lure" "en" "0201i70qcs1m797kvxjx3ygkhg6kcl5yf49sihba2ga8l52q45zk"))
(define-public lure-de
(make-lure-package
"lure-de" "de" "0sqq7h5llml6rv85x0bfv4bgzwhs4c82p4w4zmfcaab6cjlad0sy"))
(define-public lure-es
(make-lure-package
"lure-es" "es" "1dvv5znvlsakw6w5r16calv9jkgw27aymgybsf4q22lcmpxbj1lk"))
(define-public lure-fr
(make-lure-package
"lure-fr" "fr" "1y51jjb7f8023832g44vd1jsb6ni85586pi2n5hjg9qjk6gi90r9"))
(define-public lure-it
(make-lure-package
"lure-it" "it" "1ks6n39r1cllisrrh6pcr39swsdv7ng3gx5c47vaw71zzfr70hjj"))
(define (make-queen-package name file-prefix release language hash)
(package
(name name)
(version release)
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scummvm/extras/"
"Flight%20of%20the%20Amazon%20Queen/"
file-prefix release ".zip"))
(sha256
(base32 hash))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("queen.1c" #$(string-append "share/" name "/"))
(#$name "bin/")
(#$(string-append name ".desktop") "share/applications/")
("." #$(string-append "share/doc/" name "-" version)
#:include-regexp ("README" "readme")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(with-output-to-file #$name
(lambda ()
(format #t "#!~a~%" (search-input-file inputs "bin/sh"))
(format #t "exec ~a -q ~a -p ~a queen~%"
(search-input-file inputs "bin/scummvm")
#$language
(string-append (assoc-ref outputs "out")
"/share/" #$name))))
(chmod #$name #o755)
(with-output-to-file #$(string-append name ".desktop")
(lambda ()
(format
#t
"[Desktop Entry]~@
Name=Flight of the Amazon Queen~@
GenericName=Queen~@
Comment=Embark on a quest to rescue a kidnapped princess~
and in the process, discover the true sinister intentions~
of a suspiciously located Lederhosen company~@
Comment[de]=Begib dich auf ein Abenteuer, um eine entführte~
Prinzessin zu retten und entdecke die wahren, finsteren~
Absichten eines verdächtig erscheinenden~
Lederhosen-Unternehmens~@
Type=Application~@
Exec=~a~@
Icon=~a/share/icons/hicolor/scalable/apps/scummvm.svg~@
Categories=AdventureGame;Game;RolePlaying;~@
Keywords=adventure;game;roleplaying;fantasy;~%"
(string-append (assoc-ref outputs "out") "/bin/" #$name)
(search-input-file inputs "bin/scummvm")))))))))
(native-inputs (list unzip))
(inputs (list bash scummvm))
(home-page "https://www.scummvm.org/")
(synopsis "Classic 2D point and click adventure game")
(description "Flight of the Amazon Queen is a 2D point-and-click
adventure game set in the 1940s.
You assume the role of Joe King, a pilot for hire who is given the job
of flying Faye Russell (a famous movie star) into the Amazon jungle
for a photo shoot. Of course, things never go according to plans.
After an unfortunate turn of events they find themselves stranded in
the heart of the Amazon jungle, where Joe will embark on a quest to
rescue a kidnapped princess and in the process, discover the true
sinister intentions of a suspiciously located Lederhosen company. In
a rich 2D environment, Joe will cross paths with a variety of unlikely
jungle inhabitants including, but not limited to, a tribe of Amazon
women and 6-foot-tall pygmies.")
(license (license:non-copyleft "file:///readme.txt"))))
(define-public queen
(make-queen-package
"queen" "FOTAQ_Talkie-" "1.1" "en"
"1a6q71q1dl9vvw2qqsxk5h1sv0gaqy6236zr5905w2is01gdsp52"))
(define-public queen-de
(make-queen-package
"queen-de" "FOTAQ_Ger_talkie-" "1.0" "de"
"13vn43x7214vyprlpqabvv71k890nff3d6fjscflr1ll7acjca3f"))
(define-public queen-fr
(make-queen-package
"queen-fr" "FOTAQ_Fr_Talkie_" "1.0" "fr"
"0hq5g4qrkcwm2kn5i4kv4hijs9hi7bw9xl1vrwd1l69qqn30crwy"))
(define-public queen-it
(make-queen-package
"queen-it" "FOTAQ_It_Talkie_" "1.0" "it"
"1h76y70lrpzfjkm53n4nr364nhyka54vbz9r7sadzyzl7c7ilv4d"))
(define-public sky
(package
(name "sky")
(version "1.2") ;1.3 is floppy version
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scummvm/extras/"
"Beneath%20a%20Steel%20Sky/"
"bass-cd-" version ".zip"))
(sha256
(base32 "14s5jz67kavm8l15gfm5xb7pbpn8azrv460mlxzzvdpa02a9n82k"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(share (string-append out "/share"))
(data (string-append share "/" ,name))
(apps (string-append share "/applications"))
(bin (string-append out "/bin"))
(executable (string-append bin "/" ,name))
(scummvm (assoc-ref %build-inputs "scummvm")))
(let ((unzip (search-input-file %build-inputs "/bin/unzip")))
(invoke unzip "-j" (assoc-ref %build-inputs "source")))
(let ((doc (string-append share "/doc/bass-" ,version)))
(install-file "readme.txt" doc))
(for-each (lambda (f) (install-file f data))
(find-files "." "^sky\\."))
;; Build the executable.
(mkdir-p bin)
(let ((bash (assoc-ref %build-inputs "bash")))
(with-output-to-file executable
(lambda ()
(format #t "#!~a/bin/bash~%" bash)
(format #t "exec ~a/bin/scummvm -p ~a sky~%" scummvm data))))
(chmod executable #o755)
;; Create desktop file. There is no dedicated
;; icon for the game, so we borrow SCUMMVM's.
(mkdir-p apps)
(with-output-to-file (string-append apps "/" ,name ".desktop")
(lambda _
(format #t
"[Desktop Entry]~@
Name=Beneath a Steel Sky~@
GenericName=Bass~@
Exec=~a~@
Icon=~a/share/icons/hicolor/scalable/apps/scummvm.svg~@
Categories=AdventureGame;Game;RolePlaying;~@
Keywords=adventure;game;roleplaying;cyberpunk;~@
Comment=A science-fiction adventure game set in a bleak post-apocalyptic vision of the future~@
Comment[de]=Ein Science-Fiction-Abenteuerspiel \
angesiedelt in einer düsteren, postapokalyptischen Vision der Zukunft~@
Type=Application~%"
executable scummvm)))
#t))))
(native-inputs
(list unzip))
(inputs
(list bash scummvm))
(home-page "https://www.scummvm.org/")
(synopsis "Classic 2D point and click science-fiction adventure game")
(description
"Beneath a Steel Sky is a science-fiction thriller set in a bleak
post-apocalyptic vision of the future. It revolves around Union City,
where selfishness, rivalry, and corruption by its citizens seems to be
all too common, those who can afford it live underground, away from
the pollution and social problems which are plaguing the city.
You take on the role of Robert Foster, an outcast of sorts from the
city since a boy who was raised in a remote environment outside of
Union City simply termed ``the gap''. Robert's mother took him away
from Union City as a child on their way to ``Hobart'' but the
helicopter crashed on its way. Unfortunately, Robert's mother died,
but he survived and was left to be raised by a local tribe from the
gap.
Years later, Union City security drops by and abducts Robert, killing
his tribe in the process; upon reaching the city the helicopter taking
him there crashes with him escaping, high upon a tower block in the
middle of the city. He sets out to discover the truth about his past,
and to seek vengeance for the killing of his tribe.")
(license (license:non-copyleft "file:///readme.txt"))))
(define-public gnurobots (define-public gnurobots
(package (package
(name "gnurobots") (name "gnurobots")
@ -11280,7 +10904,7 @@ disassembly of the DOS version, extended with new features.")
(define-public fheroes2 (define-public fheroes2
(package (package
(name "fheroes2") (name "fheroes2")
(version "1.0.2") (version "1.0.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -11289,7 +10913,7 @@ disassembly of the DOS version, extended with new features.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "18hl84lapmqc810rnh2wkd4p2mnfcl4gbmg5sizakqcfpahgsl33")))) (base32 "0v7dxzb5cfjb55jydd8f61zzlvxq9mrgdy51hq19b06dmrx1dnc7"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; no tests `(#:tests? #f ; no tests

View file

@ -133,10 +133,7 @@
#t))))) #t)))))
;; When tests fail, we want to know the details. ;; When tests fail, we want to know the details.
#:make-flags #~'("VERBOSE=yes" #:make-flags #~'("VERBOSE=yes")))
#$@(if (target-hurd?)
'("XFAIL_TESTS=test-perror2")
'()))))
(home-page "https://www.gnu.org/software/gettext/") (home-page "https://www.gnu.org/software/gettext/")
(synopsis (synopsis
"Tools and documentation for translation (used to build other packages)") "Tools and documentation for translation (used to build other packages)")
@ -282,7 +279,14 @@ from Markdown files.")
(add-before 'check 'disable-failing-tests (add-before 'check 'disable-failing-tests
(lambda _ (lambda _
;; FIXME: fails despite of importing SGMLS ;; FIXME: fails despite of importing SGMLS
(delete-file "t/fmt-sgml.t")))))) (delete-file "t/fmt-sgml.t")))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests/hurd
(lambda _
(delete-file "t/cfg-multi.t")
(delete-file "t/cfg-single.t")
(delete-file "t/cfg-split.t"))))
#~()))))
(native-inputs (native-inputs
(list gettext-minimal (list gettext-minimal
perl-module-build perl-module-build
@ -292,7 +296,7 @@ from Markdown files.")
;; For tests. ;; For tests.
docbook-xml-4.1.2 docbook-xml-4.1.2
perl-test-pod perl-test-pod
texlive-tiny)) (texlive-updmap.cfg)))
(inputs (inputs
(list bash-minimal (list bash-minimal
perl-gettext perl-gettext

View file

@ -9,7 +9,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2022 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2020, 2022 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -89,9 +89,12 @@ Consortium standard (ICC), approved as ISO 15076-1.")
(native-inputs (native-inputs
(list help2man)) (list help2man))
(arguments (arguments
'(#:configure-flags '("--disable-static" (list #:configure-flags ''("--disable-static"
;; Tests require a relocatable build. ;; Tests require a relocatable build.
"--enable-relocatable"))) "--enable-relocatable")
;; --enable-relocate is broken on the Hurd
#:tests? (not (or (target-hurd?)
(%current-target-system)))))
(outputs '("out" "debug")) (outputs '("out" "debug"))
(home-page "https://github.com/rrthomas/libpaper") (home-page "https://github.com/rrthomas/libpaper")
(synopsis "Library for handling paper sizes") (synopsis "Library for handling paper sizes")
@ -145,6 +148,7 @@ printing, and psresize, for adjusting page sizes.")
(package (package
(name "ghostscript") (name "ghostscript")
(version "9.56.1") (version "9.56.1")
(replacement ghostscript/fixed)
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -198,6 +202,16 @@ printing, and psresize, for adjusting page sizes.")
'())) '()))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
#$@(if (target-hurd?)
#~((add-after 'unpack 'patch-leptonica
(lambda _
(let ((patch-file
#$(local-file
(search-patch
"ghostscript-leptonica-hurd.patch"))))
(with-directory-excursion "leptonica"
(invoke "patch" "--force" "-p1" "-i" patch-file))))))
#~())
(add-before 'configure 'create-output-directory (add-before 'configure 'create-output-directory
(lambda _ (lambda _
;; The configure script refuses to function if the directory ;; The configure script refuses to function if the directory
@ -266,6 +280,12 @@ output file formats and printers.")
(home-page "https://www.ghostscript.com/") (home-page "https://www.ghostscript.com/")
(license license:agpl3+))) (license license:agpl3+)))
(define ghostscript/fixed
(package-with-patches
ghostscript
(search-patches "ghostscript-CVE-2023-36664.patch"
"ghostscript-CVE-2023-36664-fixup.patch")))
(define-public ghostscript/x (define-public ghostscript/x
(package/inherit ghostscript (package/inherit ghostscript
(name (string-append (package-name ghostscript) "-with-x")) (name (string-append (package-name ghostscript) "-with-x"))

View file

@ -279,6 +279,7 @@ also known as DXTn or DXTC) for Mesa.")
(base32 (base32
"1mcjf41x2bhxs6yxars7nh2vfryfw50g6rvbcfbb1wqdv2jn4qrq")))) "1mcjf41x2bhxs6yxars7nh2vfryfw50g6rvbcfbb1wqdv2jn4qrq"))))
(build-system meson-build-system) (build-system meson-build-system)
(replacement mesa-vulkan-hasvk)
(propagated-inputs (propagated-inputs
;; The following are in the Requires.private field of gl.pc. ;; The following are in the Requires.private field of gl.pc.
(list libdrm (list libdrm
@ -526,6 +527,21 @@ device drivers allows Mesa to be used in many different environments ranging
from software emulation to complete hardware acceleration for modern GPUs.") from software emulation to complete hardware acceleration for modern GPUs.")
(license license:x11))) (license license:x11)))
(define mesa-vulkan-hasvk
(let ((graft mesa)
(vulk "-Dvulkan-drivers=intel,amd"))
(package
(inherit graft)
(arguments
(substitute-keyword-arguments (package-arguments graft)
((#:configure-flags flags)
#~(begin
(use-modules (ice-9 match))
(map (match-lambda
(#$vulk (string-append #$vulk ",intel_hasvk,swrast"))
(x x))
#$flags))))))))
(define-public mesa-opencl (define-public mesa-opencl
(package/inherit mesa (package/inherit mesa
(name "mesa-opencl") (name "mesa-opencl")

View file

@ -14,7 +14,7 @@
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com> ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
@ -298,6 +298,108 @@ information, refer to the @samp{dbus-daemon(1)} man page.")))
(string-append "//" all "\n")) (string-append "//" all "\n"))
(("^ g_assert_cmpfloat \\(elapsed, ==.*" all) (("^ g_assert_cmpfloat \\(elapsed, ==.*" all)
(string-append "//" all "\n")))) (string-append "//" all "\n"))))
'())
#$@(if (system-hurd?)
'((with-directory-excursion "gio/tests"
;; TIMEOUT after 600s
(substitute* '("actions.c"
"dbus-appinfo.c"
"debugcontroller.c"
"gdbus-bz627724.c"
"gdbus-connection-slow.c"
"gdbus-exit-on-close.c"
"gdbus-export.c"
"gdbus-introspection.c"
"gdbus-method-invocation.c"
"gdbus-non-socket.c"
"gdbus-proxy-threads.c"
"gdbus-proxy-unique-name.c"
"gdbus-proxy-well-known-name.c"
"gdbus-proxy.c"
"gdbus-test-codegen.c"
"gmenumodel.c"
"gnotification.c"
"stream-rw_all.c")
(("return (g_test_run|session_bus_run)" all call)
(string-append "return 0;// " call))
((" (ret|rtv|result) = (g_test_run|session_bus_run)"
all var call)
(string-append " " var " = 0;// " call))
(("[ \t]*g_test_add_func.*;") ""))
;; commenting-out g_assert, g_test_add_func, g_test_run
;; does not help; special-case short-circuit.
(substitute* "gdbus-connection-loss.c" ;; TODO?
((" gchar \\*path;.*" all)
(string-append all " return 0;\n")))
;; FAIL
(substitute* '("appmonitor.c"
"async-splice-output-stream.c"
"autoptr.c"
"contexts.c"
"converter-stream.c"
"file.c"
"g-file-info.c"
"g-file.c"
"g-icon.c"
"gapplication.c"
"gdbus-connection-flush.c"
"gdbus-connection.c"
"gdbus-names.c"
"gdbus-server-auth.c"
"gsocketclient-slow.c"
"gsubprocess.c"
"io-stream.c"
"live-g-file.c"
"memory-monitor.c"
"mimeapps.c"
"network-monitor-race.c"
"network-monitor.c"
"pollable.c"
"power-profile-monitor.c"
"readwrite.c"
"resources.c"
"socket-service.c"
"socket.c"
"tls-bindings.c"
"tls-certificate.c"
"tls-database.c"
"trash.c"
"vfs.c")
(("return (g_test_run|session_bus_run)" all call)
(string-append "return 0;// " call))
((" (ret|rtv|result) = (g_test_run|session_bus_run)"
all var call)
(string-append " " var " = 0;// " call))
(("[ \t]*g_test_add_func.*;") ""))
;; commenting-out g_test_add_func, g_test_run does
;; not help; special-case short-circuit.
(substitute* "gsettings.c"
(("#ifdef TEST_LOCALE_PATH" all)
(string-append " return 0;\n" all)))
;; commenting-out g_test_add_func, ;; g_test_run does
;; not help; special-case short-circuit.
(substitute* "proxy-test.c"
((" gint result.*;" all)
(string-append all " return 0;\n")))
;; commenting-out g_test_add_func, g_test_run
;; does not help; special-case short-circuit.
(substitute* "volumemonitor.c"
((" gboolean ret;" all)
(string-append all " return 0;\n"))))
(with-directory-excursion "glib/tests"
;; TIMEOUT after 600s
(substitute* "thread-pool.c"
(("[ \t]*g_test_add_func.*;") ""))
;; FAIL
(substitute* "fileutils.c"
(("[ \t]*g_test_add_func.*;") ""))))
'()))) '())))
;; Python references are not being patched in patch-phase of build, ;; Python references are not being patched in patch-phase of build,
;; despite using python-wrapper as input. So we patch them manually. ;; despite using python-wrapper as input. So we patch them manually.

View file

@ -914,7 +914,7 @@ certain elements or change animation speeds.")
(define-public gnome-shell-extension-dash-to-panel (define-public gnome-shell-extension-dash-to-panel
(package (package
(name "gnome-shell-extension-dash-to-panel") (name "gnome-shell-extension-dash-to-panel")
(version "51") (version "56")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -922,7 +922,7 @@ certain elements or change animation speeds.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(sha256 (sha256
(base32 (base32
"103pl77dhafi2ayds5yma2smv3b58zcysnd6vl5m5zavjvk35sz7")) "17rm3wjj8zfdxgh5vp5f35vgd4mc9f9c2w77hac4vyvkgvwfzcnn"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments

View file

@ -2610,13 +2610,15 @@ forgotten when the session ends.")
(define-public evince (define-public evince
(package (package
(name "evince") (name "evince")
(version "44.1") (version "44.3")
(source (origin (source
(origin
(method url-fetch) (method url-fetch)
(uri "mirror://gnome/sources/evince/44/evince-44.1.tar.xz") (uri (string-append "mirror://gnome/sources/evince/"
(version-major version) "/"
"evince-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32 "08inp13kksa027ij9ai10734jxdn1y7s0skbgzsyk9j739ca32rv"))))
"0523lzk7xpfr6gir8nx80fmp1lhajm837hilmgn8zczz2nxx7bqm"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -5306,8 +5308,9 @@ floating in an ocean using only your brain and a little bit of luck.")
(("meson.add_install_script" &) (string-append "# " &))) (("meson.add_install_script" &) (string-append "# " &)))
#t))))) #t)))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") (list gettext-minimal
("pkg-config" ,pkg-config))) `(,glib "bin")
pkg-config))
(inputs (inputs
(list gtk+ (list gtk+
glib ; for gio glib ; for gio
@ -6134,9 +6137,10 @@ throughout GNOME for API documentation).")
(license license:gpl2+))) (license license:gpl2+)))
(define-public devhelp-with-libsoup2 (define-public devhelp-with-libsoup2
(hidden-package
(package/inherit devhelp (package/inherit devhelp
(inputs (modify-inputs (package-inputs devhelp) (inputs (modify-inputs (package-inputs devhelp)
(replace "webkitgtk" webkitgtk-with-libsoup2))))) (replace "webkitgtk" webkitgtk-with-libsoup2))))))
(define-public cogl (define-public cogl
(package (package

View file

@ -8,6 +8,7 @@
;;; Copyright © 2019, 2021 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com> ;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
;;; Copyright © 2020 Christopher Lam <christopher.lck@gmail.com> ;;; Copyright © 2020 Christopher Lam <christopher.lck@gmail.com>
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -28,6 +29,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages cmake) #:use-module (gnu packages cmake)
@ -64,14 +66,14 @@
;; directory. ;; directory.
(package (package
(name "gnucash") (name "gnucash")
(version "5.0") (version "5.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/" (uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
version "/gnucash-" version ".tar.bz2")) version "/gnucash-" version ".tar.bz2"))
(sha256 (sha256
(base32 "09482f1w4yawrdw5c2wi0jb8hwlp1x9mdvq552bf9n5f66mkphfg")))) (base32 "0npilq0spalpg1ma956j7vlbn0yc5f0z5imy4kbyksl5ql4cnn0l"))))
(outputs '("out" "doc" "debug" "python")) (outputs '("out" "doc" "debug" "python"))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
@ -87,13 +89,11 @@
(guix build utils)) (guix build utils))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'disable-unsupported-test (add-after 'unpack 'disable-online-test
;; test test-gnc-quotes neeeds perl JSON::Parse
;; not packaged in Guix yet
(lambda _ (lambda _
(substitute* "libgnucash/app-utils/test/CMakeLists.txt" (call-with-output-file "libgnucash/app-utils/test/CMakeLists.txt"
(("gnc_add_test\\(test-gnc-quotes") (lambda (port)
"#gnc_add_test\\(test-gnc-quotes")))) (display "set(CTEST_CUSTOM_TESTS_IGNORE online_wiggle)" port)))))
(add-after 'unpack 'set-env-vars (add-after 'unpack 'set-env-vars
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; At least one test is time-related and requires this ;; At least one test is time-related and requires this
@ -171,6 +171,7 @@
swig)) swig))
(inputs (inputs
(list aqbanking (list aqbanking
bash-minimal
boost boost
glib glib
gtk+ gtk+
@ -183,6 +184,7 @@
libxslt libxslt
perl-date-manip perl-date-manip
perl-finance-quote perl-finance-quote
perl-json-parse
python python
tzdata-for-tests tzdata-for-tests
webkitgtk-with-libsoup2)) webkitgtk-with-libsoup2))
@ -212,11 +214,13 @@ installed as well as Yelp, the Gnome help browser.")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
;; The filename for version 5.3 is gnucash-docs-5.2.tar.gz, not
;; gnucash-docs-5.3.tar.gz.
(uri (string-append (uri (string-append
"mirror://sourceforge/gnucash/gnucash%20%28stable%29/" "mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
version "/gnucash-docs-" version revision ".tar.gz")) version "/gnucash-docs-5.2" revision ".tar.gz"))
(sha256 (sha256
(base32 "1cgdb5qrwrx6yf6dsc8zlhi67lbyjs1g82i0n53sw6n6v38dd882")))) (base32 "16xlxwdgc0w4cg9kxg4w2f1y974cb16wq2c9icq5qrh3nj0nbsxr"))))
(build-system cmake-build-system) (build-system cmake-build-system)
;; These are native-inputs because they are only required for building the ;; These are native-inputs because they are only required for building the
;; documentation. ;; documentation.
@ -264,7 +268,7 @@ to be read using the GNOME Yelp program.")
(list libgcrypt gnutls openssl gtk+)) (list libgcrypt gnutls openssl gtk+))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(home-page "https://www.aquamaniac.de/sites/aqbanking/index.php") (home-page "https://www.aquamaniac.de")
(synopsis "Utility library for networking and security applications") (synopsis "Utility library for networking and security applications")
(description (description
"This package provides a helper library for networking and security "This package provides a helper library for networking and security
@ -303,7 +307,7 @@ applications and libraries. It is used by AqBanking.")
(list gmp xmlsec gnutls)) (list gmp xmlsec gnutls))
(native-inputs (native-inputs
(list pkg-config gettext-minimal libltdl)) (list pkg-config gettext-minimal libltdl))
(home-page "https://www.aquamaniac.de/sites/aqbanking/index.php") (home-page "https://www.aquamaniac.de")
(synopsis "Interface for online banking tasks") (synopsis "Interface for online banking tasks")
(description (description
"AqBanking is a modular and generic interface to online banking tasks, "AqBanking is a modular and generic interface to online banking tasks,

View file

@ -22,6 +22,7 @@
;;; Copyright © 2021 Nikita Domnitskii <nikita@domnitskii.me> ;;; Copyright © 2021 Nikita Domnitskii <nikita@domnitskii.me>
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org> ;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -102,11 +103,13 @@
"09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp")))) "09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(if (%current-target-system) (cond
`(#:modules ((guix build gnu-build-system) ((%current-target-system)
(list
#:modules '((guix build gnu-build-system)
(guix build utils)) (guix build utils))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
;; If this is left out, some generated header ;; If this is left out, some generated header
;; files will be sprinkled with \c, which ;; files will be sprinkled with \c, which
;; the compiler won't like. ;; the compiler won't like.
@ -127,7 +130,7 @@
(symlink (string-append "lock-obj-pub." triplet ".h") (symlink (string-append "lock-obj-pub." triplet ".h")
(string-append "src/syscfg/lock-obj-pub." (string-append "src/syscfg/lock-obj-pub."
source ".h"))) source ".h")))
,(let* ((target (%current-target-system)) #$(let* ((target (%current-target-system))
(architecture (architecture
(string-take target (string-index target #\-)))) (string-take target (string-index target #\-))))
(cond ((target-linux? target) (cond ((target-linux? target)
@ -140,8 +143,19 @@
;; configuration, as this is not correct for ;; configuration, as this is not correct for
;; all architectures. ;; all architectures.
(_ #t))) (_ #t)))
(#t #t))))))) (#t #t))))))))
'())) ((system-hurd?)
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-tests
(lambda _
(substitute*
"tests/t-syserror.c"
(("(^| )main *\\(.*" all)
(string-append all "{\n exit (77);//"))))))))
(else
'())))
(native-inputs (list gettext-minimal)) (native-inputs (list gettext-minimal))
(home-page "https://gnupg.org") (home-page "https://gnupg.org")
(synopsis "Library of error values for GnuPG components") (synopsis "Library of error values for GnuPG components")
@ -190,7 +204,15 @@ Daemon and possibly more in the future.")
,@(if (%current-target-system) ,@(if (%current-target-system)
;; When cross-compiling, _gcry_mpih_lshift etc are undefined. ;; When cross-compiling, _gcry_mpih_lshift etc are undefined.
`("--disable-asm") `("--disable-asm")
'())))) '()))
,@(if (system-hurd?)
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'setenv
(lambda _
(setenv "GCRYPT_NO_BENCHMARKS" "t")))))
'())))
(outputs '("out" "debug")) (outputs '("out" "debug"))
(home-page "https://gnupg.org/") (home-page "https://gnupg.org/")
(synopsis "Cryptographic function library") (synopsis "Cryptographic function library")

View file

@ -1642,17 +1642,19 @@ exec -a \"$0\" ~a/.brdf-real~%"
(list qttools-5)) ;for 'qmake' (list qttools-5)) ;for 'qmake'
(inputs (inputs
(list qtbase-5 mesa glew freeglut zlib)) (list qtbase-5 mesa glew freeglut zlib))
(home-page "https://www.disneyanimation.com/technology/brdf.html") (home-page
(string-append "https://web.archive.org/web/20190115030100/"
"https://www.disneyanimation.com/technology/brdf.html"))
(synopsis (synopsis
"Analyze bidirectional reflectance distribution functions (BRDFs)") "@acronym{BRDF, bidirectional reflectance distribution function} analyzer")
(description (description
"BRDF Explorer is an application that allows the development and analysis "BRDF Explorer is an application that allows the development and analysis
of bidirectional reflectance distribution functions (BRDFs). It can load and of @acronym{BRDF, bidirectional reflectance distribution functions}. It can
plot analytic BRDF functions (coded as functions in OpenGL's GLSL shader load and plot analytic BRDF functions (coded as functions in OpenGL's GLSL
language), measured material data from the MERL database, and anisotropic shader language), measured material data from the MERL database, and anisotropic
measured material data from MIT CSAIL. Graphs and visualizations update in measured material data from MIT CSAIL. Graphs and visualizations update in real
real time as parameters are changed, making it a useful tool for evaluating time as parameters are changed, making it a useful tool for evaluating and
and understanding different BRDFs (and other component functions).") understanding different BRDFs (and other component functions).")
(license license:ms-pl)))) (license license:ms-pl))))
(define-public agg (define-public agg
@ -2470,7 +2472,7 @@ generated discrete signed distance field using the cubic spline kernel.
(list doxygen graphviz (list doxygen graphviz
;; TODO: Fix failing LaTeX invocation (which results in equations ;; TODO: Fix failing LaTeX invocation (which results in equations
;; being inserted literally into PNGs rather than being typeset). ;; being inserted literally into PNGs rather than being typeset).
;;texlive-tiny ;; (texlive-updmap.cfg)
perl)) ;used to generate Fortran headers perl)) ;used to generate Fortran headers
(inputs (inputs

View file

@ -379,22 +379,16 @@ graphs in Graphviz's DOT language, written in pure Python.")
;; (see: ;; (see:
;; https://github.com/kjellmf/dot2tex/issues/94). ;; https://github.com/kjellmf/dot2tex/issues/94).
"-k" "not test_semicolon"))))))) "-k" "not test_semicolon")))))))
(native-inputs (list python-pytest)) (native-inputs
(inputs (list graphviz)) (list python-pytest
(propagated-inputs (texlive-updmap.cfg
(list python-pyparsing (list texlive-pgf
;; These TeX dependencies are propagated to make it easier to build texlive-preview
;; the resulting generated TeX files, which \usepackage them.
texlive-bin
texlive-amsmath
texlive-graphics
texlive-latex-geometry
texlive-latex-base
texlive-latex-preview
texlive-latex-xkeyval
texlive-pgf
texlive-pstricks texlive-pstricks
texlive-xcolor)) texlive-xcolor
texlive-xkeyval))))
(inputs (list graphviz))
(propagated-inputs (list python-pyparsing))
(home-page "https://github.com/kjellmf/dot2tex") (home-page "https://github.com/kjellmf/dot2tex")
(synopsis "Graphviz to LaTeX converter") (synopsis "Graphviz to LaTeX converter")
(description (description

View file

@ -35,6 +35,7 @@
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr> ;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -194,15 +195,21 @@ such as mate-panel and xfce4-panel.")
(assoc-ref %outputs "doc") (assoc-ref %outputs "doc")
"/share/gtk-doc/html")))) "/share/gtk-doc/html"))))
(native-inputs (native-inputs
`(("gobject-introspection" ,gobject-introspection) `(,@(if (target-hurd?)
'()
`(("gobject-introspection" ,gobject-introspection)))
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python" ,python-wrapper))) ("python" ,python-wrapper)))
(inputs (inputs
`(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap `(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap
("drm" ,libdrm) ,@(if (target-hurd?)
'()
`(("drm" ,libdrm)))
("ghostscript" ,ghostscript) ("ghostscript" ,ghostscript)
("libspectre" ,libspectre) ("libspectre" ,libspectre)
("poppler" ,poppler))) ,@(if (target-hurd?)
'()
`(("poppler" ,poppler)))))
(propagated-inputs (propagated-inputs
`( ;; ("cogl" ,cogl) `( ;; ("cogl" ,cogl)
;; ("directfb" ,directfb) ;; ("directfb" ,directfb)
@ -269,11 +276,13 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
;; There are all in the Requires or Requires.private field of '.pc'. ;; There are all in the Requires or Requires.private field of '.pc'.
(list glib graphite2 icu4c)) (list glib graphite2 icu4c))
(native-inputs (native-inputs
(list `(,glib "bin") ;for glib-mkenums (append (list `(,glib "bin")) ;for glib-mkenums
gobject-introspection (if (target-hurd?)
pkg-config '()
(list gobject-introspection))
(list pkg-config
python-wrapper python-wrapper
which)) which)))
(arguments (arguments
(list #:configure-flags (list #:configure-flags
#~(list "--with-graphite2" #~(list "--with-graphite2"
@ -286,20 +295,6 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
"See 'COPYING' in the distribution.")) "See 'COPYING' in the distribution."))
(home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/"))) (home-page "https://www.freedesktop.org/wiki/Software/HarfBuzz/")))
(define-public harfbuzz-5
(package
(inherit harfbuzz)
(version "5.3.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/harfbuzz/harfbuzz"
"/releases/download/" version "/harfbuzz-"
version ".tar.xz"))
(sha256
(base32
"0ka3nkk2lks2lgakq02vyibwdziv11dkpa2brkx230asnyby0v2a"))))))
(define-public libdatrie (define-public libdatrie
(package (package
(name "libdatrie") (name "libdatrie")
@ -406,12 +401,15 @@ applications.")
(list bash-minimal (list bash-minimal
zlib)) zlib))
(native-inputs (native-inputs
(list `(,glib "bin") ;glib-mkenums, etc. (append (list `(,glib "bin")) ;glib-mkenums, etc.
gobject-introspection ;g-ir-compiler, etc. (if (target-hurd?)
'()
(list gobject-introspection)) ;g-ir-compiler, etc.
(list
help2man help2man
perl perl
pkg-config pkg-config
python-wrapper)) python-wrapper)))
(synopsis "Text and font handling library") (synopsis "Text and font handling library")
(description "Pango is a library for laying out and rendering of text, with (description "Pango is a library for laying out and rendering of text, with
an emphasis on internationalization. Pango can be used anywhere that text an emphasis on internationalization. Pango can be used anywhere that text
@ -2413,15 +2411,18 @@ does not deal with windowing system surfaces, drawing, scene graphs, or input.")
(define-public spread-sheet-widget (define-public spread-sheet-widget
(package (package
(name "spread-sheet-widget") (name "spread-sheet-widget")
(version "0.7") (version "0.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://alpha.gnu.org/gnu/ssw/" (uri (string-append "https://alpha.gnu.org/gnu/ssw/"
"spread-sheet-widget-" version ".tar.gz")) "spread-sheet-widget-" version ".tar.gz"))
(sha256 (sha256
(base32 "09rzgp7gabnzab460x874a1ibgyjiibpwzsz5srn9zs6jv2jdxjb")))) (base32 "0jwmx5i02jwmkp6gci2mapqglh2g3a0092wns185hfygiwlxi2c5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list "--disable-static")))
(native-inputs (native-inputs
(list `(,glib "bin") ; for glib-genmarshal, etc. (list `(,glib "bin") ; for glib-genmarshal, etc.
pkg-config)) pkg-config))

View file

@ -4044,12 +4044,13 @@ feature-set, fully programmable in Guile Scheme.")
(inputs (inputs
(list vigra vigra-c guile-2.2)) (list vigra vigra-c guile-2.2))
(native-inputs (native-inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-booktabs `(("texlive" ,(texlive-updmap.cfg
(list texlive-booktabs
texlive-iwona
texlive-lm texlive-lm
texlive-siunitx texlive-siunitx
texlive-standalone texlive-standalone
texlive-xcolor texlive-xcolor)))
texlive-fonts-iwona)))
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(propagated-inputs (propagated-inputs
`(("guile-lib" ,guile2.2-lib))) `(("guile-lib" ,guile2.2-lib)))

View file

@ -212,8 +212,13 @@ without requiring the source code to be rewritten.")
(rename-file "test-suite/tests/srfi-18.test" "srfi-18.test") (rename-file "test-suite/tests/srfi-18.test" "srfi-18.test")
;; failed to remove 't-guild-compile-7215.go.tdL7yC ;; failed to remove 't-guild-compile-7215.go.tdL7yC
(substitute* "test-suite/standalone/Makefile.in" (substitute* "test-suite/standalone/Makefile.in"
(("test-guild-compile ") "")) (("test-guild-compile ") "")))))
#t))) '())
,@(if (system-hurd?)
'((add-after 'unpack 'disable-threads.tests
(lambda _
;; Many tests hang, esp. (join-thread ..), also others.
(rename-file "test-suite/tests/threads.test" "threads.test"))))
'()) '())
(add-before 'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
@ -286,7 +291,12 @@ without requiring the source code to be rewritten.")
(if (target-x86-32?) ;<https://issues.guix.gnu.org/49368> (if (target-x86-32?) ;<https://issues.guix.gnu.org/49368>
`(append '("--disable-static") `(append '("--disable-static")
'("CFLAGS=-g -O2 -fexcess-precision=standard")) '("CFLAGS=-g -O2 -fexcess-precision=standard"))
flags)))) flags))
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
#$@(if (system-hurd?)
#~((delete 'disable-threads.tests))
'())))))
(properties '((timeout . 72000) ;20 hours (properties '((timeout . 72000) ;20 hours
(max-silent-time . 36000))) ;10 hours (needed on ARM (max-silent-time . 36000))) ;10 hours (needed on ARM
@ -378,6 +388,19 @@ without requiring the source code to be rewritten.")
(search-patch "guile-hurd-posix-spawn.patch"))) (search-patch "guile-hurd-posix-spawn.patch")))
(invoke "patch" "--force" "-p1" "-i" patch)))) (invoke "patch" "--force" "-p1" "-i" patch))))
#~()) #~())
#$@(if (system-hurd?)
#~((add-after 'unpack 'disable-popen.test-no-duplicate
;; This test hangs on the Hurd.
(lambda _
(substitute* "test-suite/tests/popen.test"
(("\\(pass-if \"no duplicate\".*" all)
(string-append
all
(object->string
'(when (string-ci= "GNU"
(vector-ref (uname) 0))
(throw 'unresolved)))))))))
#~())
#$@(if (target-ppc32?) #$@(if (target-ppc32?)
#~((add-after 'unpack 'adjust-bootstrap-flags #~((add-after 'unpack 'adjust-bootstrap-flags
(lambda _ (lambda _
@ -829,6 +852,19 @@ type system, elevating types to first-class status.")
(lambda _ (lambda _
(substitute* "Makefile.am" (substitute* "Makefile.am"
((".*tests/blob\\.scm.*") "")))))) ((".*tests/blob\\.scm.*") ""))))))
'())
,@(if (system-hurd?)
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-tests/hurd
(lambda _
(substitute* "tests/proxy.scm"
(("\\(test-begin.*" all)
(string-append
all
"(when (string-ci= \"GNU\" (vector-ref (uname) 0))\n"
" (test-skip 1))\n")))))))
'()))) '())))
(native-inputs (native-inputs
(list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures)) (list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures))

View file

@ -250,7 +250,7 @@ sets, and tools to deal with register databases.")
;; their references. ;; their references.
;; TODO: package edid-decode and add "bin/edid-decode" below: ;; TODO: package edid-decode and add "bin/edid-decode" below:
(define need-progs (list "sbin/dmidecode" "sbin/smartctl" (define need-progs (list "sbin/dmidecode" "sbin/smartctl"
"sbin/lspci" "bin/lsusb")) "bin/lspci" "bin/lsusb"))
(wrap-script hw-probe (wrap-script hw-probe
(list "PERL5LIB" 'prefix (list (getenv "PERL5LIB"))) (list "PERL5LIB" 'prefix (list (getenv "PERL5LIB")))
(list "PATH" 'prefix (list "PATH" 'prefix
@ -331,7 +331,7 @@ operability and find drivers.")
(define-public hwinfo (define-public hwinfo
(package (package
(name "hwinfo") (name "hwinfo")
(version "22.2") (version "23.1")
(home-page "https://github.com/openSUSE/hwinfo") (home-page "https://github.com/openSUSE/hwinfo")
(source (source
(origin (origin
@ -342,11 +342,11 @@ operability and find drivers.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1lfzcyiipxwi8rh0aw5sy7n8x986b9f9pa9g048rxn6k7anfpxk7")) (base32 "1sdkkwbl1psqnh6135bmsa3ijrckk1nfz95xqckmd8awmx074ikz"))
(modules (modules
'((guix build utils))) '((guix build utils)))
(snippet (snippet
`(begin #~(begin
;; Remove git2log program file. ;; Remove git2log program file.
(delete-file "git2log") (delete-file "git2log")
;; Remove variables that depend on git2log. ;; Remove variables that depend on git2log.
@ -356,68 +356,59 @@ operability and find drivers.")
(("BRANCH.*\\:=.*$") "")) (("BRANCH.*\\:=.*$") ""))
;; Create version file. ;; Create version file.
(call-with-output-file "VERSION" (call-with-output-file "VERSION"
(lambda (port) (lambda (port) (format port #$version)))))))
(format port ,version)))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "lib" "doc")) (outputs '("out" "lib" "doc"))
(arguments (arguments
`(#:tests? #f ; no test-suite available (list
#:tests? #f ; no test-suite available
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "LIBDIR=" #$output:lib "/lib")
(string-append "VERSION=" #$version))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch (add-after 'unpack 'patch
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (let ((include (string-append #$output:lib "/include"))
(lib (assoc-ref outputs "lib")) (lib (string-append #$output:lib "/lib"))
(doc (assoc-ref outputs "doc")) (sbin (string-append #$output "/sbin"))
(incl-dir (string-append lib "/include")) (share (string-append #$output "/share"))
(lib-dir (string-append lib "/lib")) (doc (string-append #$output:doc "/share/doc")))
(sbin-dir (string-append out "/sbin")) ;; Generate HTML documentation in the "doc" output.
(share-dir (string-append out "/share")) (mkdir-p doc)
(doc-dir (string-append doc "/share/doc")))
;; Generate HTML documentation in the output "doc".
(mkdir-p doc-dir)
(substitute* "doc/libhd.doxy" (substitute* "doc/libhd.doxy"
(("OUTPUT_DIRECTORY.*=.*libhd") (("OUTPUT_DIRECTORY.*=.*libhd")
(string-append "OUTPUT_DIRECTORY = " doc-dir "/libhd"))) (string-append "OUTPUT_DIRECTORY = " doc "/libhd")))
;; Correct values of the version and install directories. ;; Correct values of the version and install directories.
(substitute* "Makefile" (substitute* "Makefile"
(("VERSION.*\\:=.*$") (("/usr/include") include)
(string-append "VERSION := " ,version "\n")) (("/(usr|var)/(lib|lib64)") lib)
(("LIBDIR.*\\?=.*$") (("/usr/sbin") sbin)
(string-append "LIBDIR ?= " lib-dir "\n")) (("/usr/share") share)
(("/usr/include") incl-dir)
(("/(usr|var)/(lib|lib64)") lib-dir)
(("/usr/sbin") sbin-dir)
(("/usr/share") share-dir)
(("\\$\\(DESTDIR\\)/sbin ") "")) (("\\$\\(DESTDIR\\)/sbin ") ""))
;; Add the "lib" output to the run-path. ;; Add the "lib" output to the run-path.
(substitute* "Makefile.common" (substitute* "Makefile.common"
(("-Lsrc") (("-Lsrc")
(string-append "-Lsrc " "-Wl,-rpath=" lib-dir))) (string-append "-Lsrc " "-Wl,-rpath=" lib)))
;; Correct program name of the lexical analyzer. ;; Correct program name of the lexical analyzer.
(substitute* "src/isdn/cdb/Makefile" (substitute* "src/isdn/cdb/Makefile"
(("lex isdn_cdb.lex") "flex isdn_cdb.lex")) (("lex isdn_cdb.lex") "flex isdn_cdb.lex"))
;; Patch pkg-config file to point to the "lib" output. ;; Patch pkg-config file to point to the "lib" output.
(substitute* "hwinfo.pc.in" (substitute* "hwinfo.pc.in"
(("/usr") lib))))) (("/usr") #$output:lib)))))
(delete 'configure) (delete 'configure)
(replace 'build (replace 'build
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "shared" make-flags)
(apply invoke "make" "doc" make-flags)))
(add-after 'install 'install-man-pages
(lambda _ (lambda _
(setenv "CC" ,(cc-for-target))
(invoke "make" "shared")
(invoke "make" "doc")))
(add-after 'install 'install-manpages
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man-dir (string-append out "/share/man"))
(man1-dir (string-append man-dir "/man1"))
(man8-dir (string-append man-dir "/man8")))
(for-each (for-each
(lambda (x) (install-file x man1-dir)) (lambda (file)
(find-files "doc" "\\.1$")) (install-file file (string-append #$output "/share/man/man"
(for-each (string-take-right file 1))))
(lambda (y) (install-file y man8-dir)) (find-files "doc" "\\.[0-9]$")))))))
(find-files "doc" "\\.8$"))))))))
(native-inputs (native-inputs
(list doxygen flex perl pkg-config)) (list doxygen flex perl pkg-config))
(inputs (inputs
@ -488,14 +479,14 @@ RGB animations.")
(define-public ddcutil (define-public ddcutil
(package (package
(name "ddcutil") (name "ddcutil")
(version "1.4.1") (version "1.4.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.ddcutil.com/tarballs/" (uri (string-append "https://www.ddcutil.com/tarballs/"
"ddcutil-" version ".tar.gz")) "ddcutil-" version ".tar.gz"))
(sha256 (sha256
(base32 "14svdjpw9xn1czl4vff4jg2i9bp83lxcbzxj7hxn63z3gzacaj4k")))) (base32 "015l13j7fp9fmlc5d7m6nfjbzjbp8vc0g5py35ljw7li2xk16v60"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
@ -1399,7 +1390,7 @@ confused with the @code{cpuid} command line utility from package @code{cpuid}.")
(define-public liblxi (define-public liblxi
(package (package
(name "liblxi") (name "liblxi")
(version "1.18") (version "1.20")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1408,19 +1399,20 @@ confused with the @code{cpuid} command line utility from package @code{cpuid}.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "1cc95ggs64jqq9lk5c8fm4nk6fdnv1x7lr3k4znamj0vv6w22bcd"))))
"0cbnnd5qmchlr586349j5y4qv5w3bw9nmpbd3k6sq9vwvqh5dmns"))))
(build-system meson-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
(list cmake pkg-config)) (list cmake pkg-config))
(inputs (inputs
(list avahi libtirpc libxml2)) (list avahi libtirpc libxml2))
(home-page "https://lxi-tools.github.io/") (home-page "https://lxi-tools.github.io/")
(synopsis "LAN eXtensions for Instrumentation library") (synopsis "@acronym{LXI, LAN eXtensions for Instrumentation} library")
(description (description
"This package provides library for LAN eXtensions for Instrumentation "This library offers a simple API for communicating with instruments
based on the LXI Consortium standard which defines the communication protocols compatible with the @acronym{LXI, LAN eXtensions for Instrumentation} standard
for modern instrumentation and data acquision systems using Ethernet.") that defines communication protocols for instrumentation and data acquisition
systems using Ethernet. Applications can use liblxi to discover instruments on
your network, send SCPI commands, and receive responses.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public lxi-tools (define-public lxi-tools

View file

@ -121,7 +121,7 @@ library. It is primarily used with HLint's @code{--refactor} flag.")
(arguments (arguments
`(#:cabal-revision ("2" `(#:cabal-revision ("2"
"1kpgyfl5njxp4c8ax5ziag1bhqvph3h0pn660v3vpxalz8d1j6xv"))) "1kpgyfl5njxp4c8ax5ziag1bhqvph3h0pn660v3vpxalz8d1j6xv")))
(home-page "http://www.haskell.org/cabal/") (home-page "https://www.haskell.org/cabal/")
(synopsis "Command-line interface for Cabal and Hackage") (synopsis "Command-line interface for Cabal and Hackage")
(description (description
"The cabal command-line program simplifies the process of managing "The cabal command-line program simplifies the process of managing

View file

@ -15813,7 +15813,7 @@ benchmarks](https://hackage.haskell.org/package/random-bytestring-0.1.3.2/src/be
"0lcj4g55sj5iv727g7k57pscgyj0fx3smwapm1gmd5qkc3yfa9fa")))) "0lcj4g55sj5iv727g7k57pscgyj0fx3smwapm1gmd5qkc3yfa9fa"))))
(build-system haskell-build-system) (build-system haskell-build-system)
(properties '((upstream-name . "Cabal-syntax"))) (properties '((upstream-name . "Cabal-syntax")))
(home-page "http://www.haskell.org/cabal/") (home-page "https://www.haskell.org/cabal/")
(synopsis "A library for working with .cabal files") (synopsis "A library for working with .cabal files")
(description (description
"This library provides tools for reading and manipulating the .cabal file format. "This library provides tools for reading and manipulating the .cabal file format.

View file

@ -1271,8 +1271,11 @@ interactive environment for the functional language Haskell.")
;; next rebuild. Note that they are required for GHC 8.10 and 9.2. ;; next rebuild. Note that they are required for GHC 8.10 and 9.2.
#$@(if (string-prefix? "i686" (or (%current-target-system) #$@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system))) (%current-system)))
#~((add-after 'skip-failing-tests-i686 'skip-failing-tests-i686-cuirass #~((add-after 'skip-failing-tests-i686 'skip-more-failing-tests-i686
(lambda _ (lambda _
(substitute* '("testsuite/tests/profiling/should_run/all.T")
(("test\\('T11627a', \\[ ")
"test('T11627a', [ when(arch('i386'), skip), "))
(substitute* '("testsuite/driver/testlib.py") (substitute* '("testsuite/driver/testlib.py")
((".*changes being made to the file will invalidate the code signature.*") ((".*changes being made to the file will invalidate the code signature.*")
"") "")

View file

@ -106,7 +106,7 @@ realistic with today's hardware.")
(define-public libqb (define-public libqb
(package (package
(name "libqb") (name "libqb")
(version "2.0.6") (version "2.0.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -114,17 +114,18 @@ realistic with today's hardware.")
version "/libqb-" version ".tar.xz")) version "/libqb-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"071k916vz9ppyb69rpk792fzjs3nf3chakn10i496scgiqh49rzi")))) "0xd51wh7gdindh6fzi62r4xp9lkayggb1rqsprqmjkh1m71gnvin"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (list autoconf automake libtool libxml2 pkg-config)) (native-inputs (list pkg-config))
(inputs (list libxml2))
(home-page "https://clusterlabs.github.io/libqb/") (home-page "https://clusterlabs.github.io/libqb/")
(synopsis (synopsis
"Library providing high performance logging, tracing, ipc, and poll") "Library providing high-performance logging, tracing, IPC, and polling")
(description (description
"Libqb is a library with the primary purpose of providing "Libqb is a library with the primary purpose of providing
high-performance, reusable features for client-server architecture, such as high-performance, reusable features for client-server architecture, such as
logging, tracing, inter-process communication (IPC), and polling. Libqb is logging, tracing, @acronym{IPC, inter-process communication} and polling. Libqb
not intended to be an all-encompassing library, but instead provide focused is not intended to be an all-encompassing library, but instead provide focused
APIs that are highly tuned for maximum performance for client-server APIs that are highly tuned for maximum performance for client-server
applications.") applications.")
(license license:lgpl2.1))) (license license:lgpl2.1)))

View file

@ -3,9 +3,10 @@
;;; Copyright © 2018, 2020-2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018, 2020-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2022, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -33,6 +34,8 @@
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
#:use-module (gnu packages disk)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages gawk) #:use-module (gnu packages gawk)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
@ -45,8 +48,9 @@
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages onc-rpc) #:use-module (gnu packages onc-rpc)
#:use-module (gnu packages xorg) ; libpciaccess #:use-module (gnu packages xorg) ;libpciaccess-0.17
#:use-module (guix git-download)) #:use-module (guix git-download)
#:use-module (ice-9 match))
(define (hurd-source-url version) (define (hurd-source-url version)
(string-append "mirror://gnu/hurd/hurd-" (string-append "mirror://gnu/hurd/hurd-"
@ -55,7 +59,7 @@
(define-public gnumach-headers (define-public gnumach-headers
(package (package
(name "gnumach-headers") (name "gnumach-headers")
(version "1.8+git20220827") ;; This is an upstream tag (version "1.8+git20221224") ;; This is an upstream tag
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -65,8 +69,7 @@
(file-name (git-file-name "gnumach" version)) (file-name (git-file-name "gnumach" version))
(sha256 (sha256
(base32 (base32
"07qlaf8vw029y7xdnhjyiiyn788zjzwmyzj79inz7idpswqsnyhf")) "0f49zqxf64ds75rmskizpybl2mw7sxs05k59gjp3pgspvr87w7gs"))))
(patches (search-patches "gnumach-add-missing-const_mach_port_name_array_t-type.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -75,19 +78,10 @@
(lambda _ (lambda _
(invoke "make" "install-data"))) (invoke "make" "install-data")))
(delete 'build)) (delete 'build))
;; GNU Mach supports only IA32 currently, so cheat so that we can at
;; least install its headers.
,@(if (%current-target-system)
'()
;; See <http://lists.gnu.org/archive/html/bug-hurd/2015-06/msg00042.html>
;; <http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00716.html>
'(#:configure-flags '("--build=i586-pc-gnu"
"--host=i686-linux-gnu")))
#:tests? #f)) #:tests? #f))
(native-inputs (native-inputs
(list autoconf automake texinfo-4)) (list autoconf automake texinfo-4))
(supported-systems %hurd-systems)
(home-page "https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html") (home-page "https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html")
(synopsis "GNU Mach kernel headers") (synopsis "GNU Mach kernel headers")
(description (description
@ -97,24 +91,20 @@
(define-public mig (define-public mig
(package (package
(name "mig") (name "mig")
(version "1.8+git20220827") (version "1.8+git20230520")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
;; XXX: Version 2.35 of glibc can only be built with an (uri (git-reference
;; unreleased version of MiG: (url "https://git.savannah.gnu.org/git/hurd/mig.git")
;; <https://lists.gnu.org/archive/html/bug-hurd/2023-03/msg00025.html>. (commit (string-append "v" version))))
;; It cannot be fetched from Git though, as the extra dependency (file-name (git-file-name name version))
;; on Autoconf/Automake would complicate bootstrapping.
(uri (string-append "mirror://gnu/guix/mirror/mig-"
version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"163d37s9lscd6zxyfng421m9nl857464mgjj90xsrcl5ykbng5p2")) "10r0fdjqjzqsy6ajb21rifvhw0wpjvrw6a1zdyliqlzqny5k0qlz"))))
(patches (search-patches "mig-cpu.h-generation.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; Flex is needed both at build and run time. ;; Flex is needed both at build and run time.
(inputs (list gnumach-headers flex)) (inputs (list gnumach-headers flex))
(native-inputs (list flex bison)) (native-inputs (list autoconf automake flex bison))
(arguments (arguments
(list #:tests? #f (list #:tests? #f
#:phases #:phases
@ -143,10 +133,10 @@ communication.")
;; This commit is now slightly behind 0.9.git20220818 as this one needs a ;; This commit is now slightly behind 0.9.git20220818 as this one needs a
;; newer glibc ;; newer glibc
(let ((revision "2") (let ((revision "2")
(commit "3ff70531ee672f431dbb0c11f286bfe85dce98fc")) (commit "v0.9.git20230216"))
(package (package
(name "hurd-headers") (name "hurd-headers")
(version (git-version "0.9" revision commit)) (version commit)
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -154,19 +144,14 @@ communication.")
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"1jb9f2h2v4lf6acsji1c12aqg3pixkvjdyb4q6axkd8jp22fdgc0")) "0jm1dnqkx4kdwmby0z5w0yqp9m5qp4hbxd4jxlyhiqm8nkw9mkvv"))
(file-name (git-file-name name version)) (file-name (git-file-name name version))))
(patches (search-patches "hurd-add-without-rump-configure-option.patch"
"hurd-fix-types-of-read-write-and-readables-methods.patch"
"hurd-fix-types-of-read-write-and-readables-methods-2.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf (list autoconf
automake automake
(if (%current-target-system) (if (%current-target-system)
(let* ((cross-base (resolve-interface '(gnu packages cross-base))) (cross-mig (%current-target-system))
(cross-mig (module-ref cross-base 'cross-mig)))
(cross-mig (%current-target-system)))
mig))) mig)))
(arguments (arguments
`(#:phases `(#:phases
@ -195,9 +180,11 @@ communication.")
"ac_cv_func_exec_exec_paths=no" "ac_cv_func_exec_exec_paths=no"
"ac_cv_func__hurd_exec_paths=no" "ac_cv_func__hurd_exec_paths=no"
"ac_cv_func__hurd_libc_proc_init=no" "ac_cv_func__hurd_libc_proc_init=no"
"ac_cv_func_file_futimens=no") "ac_cv_func_file_futimens=no"
"ac_cv_lib_acpica_acpi_init=no")
#:tests? #f)) #:tests? #f))
(supported-systems %hurd-systems)
(home-page "https://www.gnu.org/software/hurd/hurd.html") (home-page "https://www.gnu.org/software/hurd/hurd.html")
(synopsis "GNU Hurd headers") (synopsis "GNU Hurd headers")
(description (description
@ -208,36 +195,25 @@ Library and other user programs.")
(define-public hurd-minimal (define-public hurd-minimal
(package (inherit hurd-headers) (package (inherit hurd-headers)
(name "hurd-minimal") (name "hurd-minimal")
(inputs (list glibc/hurd-headers)) (inputs (list glibc/hurd-headers gnumach-headers))
(arguments (arguments
(substitute-keyword-arguments (package-arguments hurd-headers) (substitute-keyword-arguments (package-arguments hurd-headers)
((#:make-flags flags '())
#~'(#$(string-append "lib-subdirs=libshouldbeinlibc libihash libstore")
"prog-subdirs="
"other-subdirs="
#$@flags))
((#:phases _) ((#:phases _)
'(modify-phases %standard-phases #~%standard-phases)
(replace 'install ((#:validate-runpath? validate-runpath? #f)
(lambda* (#:key outputs #:allow-other-keys) #f)))
(let ((out (assoc-ref outputs "out"))) (supported-systems %hurd-systems)
;; We need to copy libihash.a to the output directory manually,
;; since there is no target for that in the makefile.
(mkdir-p (string-append out "/include"))
(copy-file "libihash/ihash.h"
(string-append out "/include/ihash.h"))
(mkdir-p (string-append out "/lib"))
(copy-file "libihash/libihash.a"
(string-append out "/lib/libihash.a"))
#t)))
(replace 'build
(lambda _
;; Install <assert-backtrace.h> & co.
(invoke "make" "-Clibshouldbeinlibc"
"../include/assert-backtrace.h")
;; Build libihash.
(invoke "make" "-Clibihash" "libihash.a")))))))
(home-page "https://www.gnu.org/software/hurd/hurd.html") (home-page "https://www.gnu.org/software/hurd/hurd.html")
(synopsis "GNU Hurd libraries") (synopsis "GNU Hurd libraries")
(description (description
"This package provides libihash, needed to build the GNU C "This package provides libshouldbeinlibc, libihash, libstore, libports,
Library for GNU/Hurd.") libiohelp, libfshelp, libtrivfs, and libmachdev, needed to build the GNU C
Library, Parted and netdde for GNU/Hurd.")
(license gpl2+))) (license gpl2+)))
(define-public hurd-core-headers (define-public hurd-core-headers
@ -265,6 +241,7 @@ Library for GNU/Hurd.")
directories) directories)
#t)))))) #t))))))
(inputs (list gnumach-headers hurd-headers hurd-minimal)) (inputs (list gnumach-headers hurd-headers hurd-minimal))
(supported-systems %hurd-systems)
(synopsis "Union of the Hurd headers and libraries") (synopsis "Union of the Hurd headers and libraries")
(description (description
"This package contains the union of the Mach and Hurd headers and the "This package contains the union of the Mach and Hurd headers and the
@ -276,12 +253,22 @@ Hurd-minimal package which are needed for both glibc and GCC.")
(package (package
(inherit gnumach-headers) (inherit gnumach-headers)
(name "gnumach") (name "gnumach")
(source (origin
(inherit (package-source gnumach-headers))
(patches
(append
(search-patches "gnumach-support-noide.patch")
(origin-patches (package-source gnumach-headers))))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments gnumach-headers) (substitute-keyword-arguments (package-arguments gnumach-headers)
((#:make-flags flags ''()) ((#:make-flags flags ''())
`(cons "CFLAGS=-fcommon" ,flags)) `(cons "CFLAGS=-fcommon" ,flags))
((#:configure-flags flags ''()) ((#:configure-flags flags ''())
`(cons "--enable-kdb" ,flags)) ;enable kernel debugger `(cons* "--enable-kdb" ;enable kernel debugger
"--disable-net-group"
"--disable-pcmcia-group"
"--disable-wireless-group"
,flags))
((#:phases phases '%standard-phases) ((#:phases phases '%standard-phases)
`(modify-phases %standard-phases `(modify-phases %standard-phases
(add-after 'install 'produce-image (add-after 'install 'produce-image
@ -294,13 +281,11 @@ Hurd-minimal package which are needed for both glibc and GCC.")
(list autoconf (list autoconf
automake automake
(if (%current-target-system) (if (%current-target-system)
(let* ((cross-base (resolve-interface '(gnu packages cross-base))) (cross-mig (%current-target-system))
(cross-mig (module-ref cross-base 'cross-mig)))
(cross-mig (%current-target-system)))
mig) mig)
perl perl
texinfo-4)) texinfo-4))
(supported-systems (cons "i686-linux" %hurd-systems)) (supported-systems %hurd-systems)
(synopsis "Microkernel of the GNU system") (synopsis "Microkernel of the GNU system")
(description (description
"GNU Mach is the microkernel upon which a GNU Hurd system is based."))) "GNU Mach is the microkernel upon which a GNU Hurd system is based.")))
@ -338,17 +323,20 @@ Hurd-minimal package which are needed for both glibc and GCC.")
(define-public hurd (define-public hurd
(package (package
(name "hurd") (name "hurd")
(source (package-source hurd-headers)) (source (origin
(inherit (package-source hurd-headers))
(patches (search-patches "hurd-fix-rumpdisk-build.patch"
"hurd-rumpdisk-no-hd.patch"))))
(version (package-version hurd-headers)) (version (package-version hurd-headers))
(arguments (arguments
`(#:phases `(#:tests? #f ;no "check" target
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'prepare-dde (add-after 'unpack 'prepare-addons
(lambda* (#:key native-inputs inputs #:allow-other-keys) (lambda* (#:key native-inputs inputs #:allow-other-keys)
;; First we import the things we want from dde. ;; First we import the things we want from dde.
(for-each make-file-writable (find-files ".")) (for-each make-file-writable (find-files "."))
(let ((dde (or (assoc-ref inputs "dde-sources") (let ((dde (assoc-ref (or native-inputs inputs) "dde-sources")))
(assoc-ref native-inputs "dde-sources"))))
(for-each (lambda (dir) (for-each (lambda (dir)
(copy-recursively (copy-recursively
(string-append dde "/" dir ) dir)) (string-append dde "/" dir ) dir))
@ -357,7 +345,7 @@ Hurd-minimal package which are needed for both glibc and GCC.")
;; Makefile. libdde_linux26 is built later in its own phase. ;; Makefile. libdde_linux26 is built later in its own phase.
(substitute* "Makefile" (substitute* "Makefile"
(("libbpf ") (("libbpf ")
"libbpf libmachdevdde libddekit")))) "libbpf libmachdevdde libddekit rumpdisk"))))
(add-after 'unpack 'find-tirpc (add-after 'unpack 'find-tirpc
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (var) (for-each (lambda (var)
@ -478,13 +466,13 @@ exec ${system}/rc \"$@\"
#t))) #t)))
(add-after 'build 'build-libdde-linux (add-after 'build 'build-libdde-linux
(lambda* (#:key inputs native-inputs #:allow-other-keys) (lambda* (#:key inputs native-inputs #:allow-other-keys)
(invoke (string-append (assoc-ref native-inputs "make") (invoke (string-append (assoc-ref (or native-inputs inputs) "make")
"/bin/make") "/bin/make")
;; XXX There can be a race condition because subdirs ;; XXX There can be a race condition because subdirs
;; aren't interdependent targets in the Makefile. ;; aren't interdependent targets in the Makefile.
"-j1" "-C" "libdde_linux26" "-j1" "-C" "libdde_linux26"
(string-append "SHELL=" (string-append "SHELL="
(assoc-ref native-inputs "bash") (assoc-ref (or native-inputs inputs) "bash")
"/bin/bash") "/bin/bash")
(string-append "CC=" (string-append "CC="
,(cc-for-target))))) ,(cc-for-target)))))
@ -495,11 +483,11 @@ exec ${system}/rc \"$@\"
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(datadir (string-append out "/share/hurd"))) (datadir (string-append out "/share/hurd")))
;; Install libdde_linux26. ;; Install libdde_linux26.
(invoke (string-append (assoc-ref native-inputs "make") (invoke (string-append (assoc-ref (or native-inputs inputs) "make")
"/bin/make") "/bin/make")
"-C" "libdde_linux26" "install" "-C" "libdde_linux26" "install"
(string-append "SHELL=" (string-append "SHELL="
(assoc-ref native-inputs "bash") (assoc-ref (or native-inputs inputs) "bash")
"/bin/bash") "/bin/bash")
(string-append "INSTALLDIR=" (string-append "INSTALLDIR="
out out
@ -520,10 +508,10 @@ exec ${system}/rc \"$@\"
#:configure-flags #:configure-flags
,#~(list (string-append "LDFLAGS=-Wl,-rpath=" ,#~(list (string-append "LDFLAGS=-Wl,-rpath="
#$output "/lib") #$output "/lib")
"--enable-static-progs=ext2fs,iso9660fs,rumpdisk,pci-arbiter,acpi"
"--disable-ncursesw" "--disable-ncursesw"
"--without-libbz2" "--without-libbz2"
"--without-libz" "--without-libz"
"--without-parted"
;; This is needed to pass the configure check for ;; This is needed to pass the configure check for
;; clnt_create ;; clnt_create
"ac_func_search_save_LIBS=-ltirpc" "ac_func_search_save_LIBS=-ltirpc"
@ -534,7 +522,7 @@ exec ${system}/rc \"$@\"
`(("libgcrypt" ,libgcrypt) ;for /hurd/random `(("libgcrypt" ,libgcrypt) ;for /hurd/random
("libdaemon" ,libdaemon) ;for /bin/console --daemonize ("libdaemon" ,libdaemon) ;for /bin/console --daemonize
("unifont" ,unifont) ("unifont" ,unifont)
("libpciaccess" ,libpciaccess) ("libpciaccess" ,libpciaccess-0.17) ;need libpciaccess > 0.16
;; For NFS support ;; For NFS support
("libtirpc" ,libtirpc/hurd) ("libtirpc" ,libtirpc/hurd)
@ -544,15 +532,15 @@ exec ${system}/rc \"$@\"
("coreutils" ,coreutils) ("coreutils" ,coreutils)
("sed" ,sed) ("sed" ,sed)
("grep" ,grep) ("grep" ,grep)
("util-linux" ,util-linux))) ("util-linux" ,util-linux "static") ;libuuid.a, for parted
("parted" ,parted) ;for rumpdisk
("rumpkernel" ,rumpkernel)))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)
("libgcrypt" ,libgcrypt) ;for 'libgcrypt-config' ("libgcrypt" ,libgcrypt) ;for 'libgcrypt-config'
("mig" , (if (%current-target-system) ("mig" , (if (%current-target-system)
(let* ((cross-base (resolve-interface '(gnu packages cross-base))) (cross-mig (%current-target-system))
(cross-mig (module-ref cross-base 'cross-mig)))
(cross-mig (%current-target-system)))
mig)) mig))
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("perl" ,perl) ("perl" ,perl)
@ -569,8 +557,8 @@ implementing them.")
(license gpl2+))) (license gpl2+)))
(define-public netdde (define-public netdde
(let ((commit "4a1016f130b6f2065d3f088325e5fb0b2997ae12") (let ((commit "e67c284ac113d939b10b4578334f27dab29d5b08")
(revision "1")) (revision "2"))
(package (package
(name "netdde") (name "netdde")
;; The version prefix corresponds to the version of Linux from which the ;; The version prefix corresponds to the version of Linux from which the
@ -581,20 +569,19 @@ implementing them.")
(uri (git-reference (uri (git-reference
(url "https://git.savannah.gnu.org/git/hurd/incubator.git") (url "https://git.savannah.gnu.org/git/hurd/incubator.git")
(commit commit))) (commit commit)))
(patches (list (search-patch "netdde-build-fix.patch")))
(sha256 (sha256
(base32 (base32
"1njv9dszq4lj05yq4v9j5v247hfghpzvvz4hzy0khjjr35mw7hr8")) "0vnkls7sr7srzib5mnw6gybzl5qa8c5a4zf3h08w6gdr7zqbndh0"))
(file-name (git-file-name name commit)))) (file-name (git-file-name name commit))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags `(#:tests? #f ;no "check" target
#:make-flags
(list (string-append "SHELL=" (list (string-append "SHELL="
(search-input-file %build-inputs "/bin/bash")) (search-input-file %build-inputs "/bin/bash"))
"PKGDIR=libdde_linux26" "PKGDIR=libdde_linux26"
,@(if (%current-target-system) (string-append "CC=" ,(cc-for-target)))
(list "CC=i586-pc-gnu-gcc"
"LINK_PROGRAM=i586-pc-gnu-gcc")
(list "CC=gcc")))
#:configure-flags #:configure-flags
,#~(list (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")) ,#~(list (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib"))
#:phases #:phases
@ -603,15 +590,13 @@ implementing them.")
(add-after 'unpack 'prepare-dde (add-after 'unpack 'prepare-dde
(lambda* (#:key native-inputs inputs #:allow-other-keys) (lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each make-file-writable (find-files ".")) (for-each make-file-writable (find-files "."))
(let ((dde (or (assoc-ref inputs "dde-sources") (let ((dde (assoc-ref (or native-inputs inputs) "dde-sources")))
(assoc-ref native-inputs "dde-sources"))))
(for-each (lambda (dir) (for-each (lambda (dir)
(copy-recursively (copy-recursively
(string-append dde "/" dir ) dir)) (string-append dde "/" dir ) dir))
'("libdde_linux26" "libddekit"))) '("libdde_linux26" "libddekit")))
(substitute* "libdde_linux26/mk/rel2abs.sh" (substitute* "libdde_linux26/mk/rel2abs.sh"
(("/bin/bash") (which "bash"))) (("/bin/bash") (which "bash")))))
#t))
(add-after 'patch-generated-file-shebangs 'build-libdde-linux26 (add-after 'patch-generated-file-shebangs 'build-libdde-linux26
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
(with-directory-excursion "libdde_linux26" (with-directory-excursion "libdde_linux26"
@ -622,17 +607,23 @@ implementing them.")
(apply invoke "make" "convert" make-flags))) (apply invoke "make" "convert" make-flags)))
(replace 'build (replace 'build
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
;; no-common can be dropped with GCC 10+ where this is the (apply invoke "make"
;; default. ,(string-append "LINK_PROGRAM=" (cc-for-target))
(apply invoke "make" "CFLAGS=-fno-common" make-flags))) make-flags)
;; This hack to build netdde.static was found in
;; https://salsa.debian.org/hurd-team/netdde/-/blob/b539b2ad7a171371f140c3da58cce33f1a91ac12/debian/rules
(delete-file "Makefile.inc")
(apply invoke "make"
,(string-append "LINK_PROGRAM=" (cc-for-target) " -static")
"TARGET=netdde.static"
make-flags)))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(install-file "netdde" (let ((hurd (string-append (assoc-ref outputs "out") "/hurd")))
(string-append (assoc-ref outputs "out") (install-file "netdde" hurd)
"/bin")) (install-file "netdde.static" hurd)))))))
#t)))))
(inputs (inputs
(list hurd libpciaccess zlib)) (list hurd libpciaccess-0.17 zlib `(,zlib "static")))
(native-inputs (native-inputs
`(("coreutils" ,coreutils) `(("coreutils" ,coreutils)
("gawk" ,gawk) ("gawk" ,gawk)
@ -649,3 +640,230 @@ in userland processes thanks to the DDE layer.")
;; Some drivers are dually licensed with the options being GPLv2 or one ;; Some drivers are dually licensed with the options being GPLv2 or one
;; of MPL/Expat/BSD-3 (dependent on the driver). ;; of MPL/Expat/BSD-3 (dependent on the driver).
(license gpl2)))) (license gpl2))))
(define-public rumpkernel
(let ((commit "81043d42fabda9baed7ac9ca36e3f3f5ed11ba81")
(revision "3"))
(package
(name "rumpkernel")
(version (git-version "0-20211031" revision commit))
;; This uses the Debian Salsa rumpkernel package git as upstream as that
;; is where development happens. Once things have stabilized, upstream
;; may change to the NetBSD git from where Debian takes their snapshots.
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://salsa.debian.org/hurd-team/rumpkernel.git")
(commit commit)))
(sha256
(base32
"0fv0k52qqcg3nq9012hibgsamvsd7mnvn2ikdasmzjhsp8qh5q3r"))
(file-name (git-file-name name commit))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f
#:modules '((srfi srfi-26)
(ice-9 rdelim)
(guix build utils)
(guix build gnu-build-system))
;; As we are using the Debian package as upstream, we follow their
;; build:
;; * apply patches in debian/patches taken from the
;; debian/patches/series file
;; * for the configure, make, and install stages, follow
;; the code in debian/rules
;; The Debian patchset includes a cross build feature that we
;; use with two differences
;; * Debian uses a multiarch toolchain
;; * we use cross-mig
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'apply-patches
(lambda* (#:key target #:allow-other-keys)
(let* ((patch-directory "debian/patches/")
(series (string-append patch-directory "series"))
(text (with-input-from-file series read-string))
(lines (string-split (string-trim-right text) #\newline))
(patches (filter (negate (cute string-prefix? "#" <>))
lines))
(patch-files (map
(cute string-append patch-directory <>)
patches)))
(for-each
(cute invoke "patch" "--force" "-p1" "-i" <>)
patch-files)
;; Somewhere in the build.sh/make process MIG is not being
;; exported, apparently.
(let* ((prefix (if (not target) "" (string-append target "-")))
(mig (string-append prefix "mig")))
(substitute* "pci-userspace/src-gnu/Makefile.inc"
(("MIG=mig")
(string-append "MIG=" mig)))))))
(add-before 'configure 'setenv
(lambda* (#:key build target #:allow-other-keys)
(define (noisy-setenv name value)
(setenv name value)
(format (current-error-port) "set ~a=~s\n" name value))
(noisy-setenv "HOST_CC" "gcc")
(let* ((prefix (if (not target) "" (string-append target "-"))))
(noisy-setenv "TARGET_AR" (string-append prefix "ar"))
(noisy-setenv "TARGET_CC" (string-append prefix "gcc"))
(noisy-setenv "TARGET_CXX" (string-append prefix "g++"))
(noisy-setenv "TARGET_LD" (string-append prefix "ld"))
(noisy-setenv "TARGET_MIG" (string-append prefix "mig"))
(noisy-setenv "TARGET_NM" (string-append prefix "nm"))
(noisy-setenv "MIG" (string-append prefix "mig")))
(setenv "PAWD" "pwd")
(for-each
(cute noisy-setenv <> "")
'("_GCC_CRTENDS"
"_GCC_CRTEND"
"_GCC_CRTBEGINS"
"_GCC_CRTBEGIN"
"_GCC_CRTI"
"_GCC_CRTN"))))
(replace 'configure
(lambda args
(let ((configure (assoc-ref %standard-phases 'configure)))
(with-directory-excursion "buildrump.sh/src/lib/librumpuser"
(apply configure args)))))
;; The build has three toplevel entry points
;; * buildrump.sh/src/build.sh: create a NetBSD-compatible
;; toolchain and supports cross-compiling
;; * buildrump.sh/src/lib/librumpuser: the librump* libraries
;; * pci-userspace/src-gnu: the librumpdev_pci* libraries
(replace 'build
(lambda* (#:key parallel-build? #:allow-other-keys)
(let* ((jobs (if parallel-build? (parallel-job-count) 1))
(host-cpu #$(match (or (%current-target-system)
(%current-system))
((? target-x86-32?)
"i386")
((? target-x86-64?)
"amd64")
(_ "unknown")))
(toprump (string-append
(getcwd)
"/buildrump.sh/src/sys/rump"))
(rump-make (string-append
(getcwd)
"/buildrump.sh/src/obj/tooldir/bin/nbmake-"
host-cpu)))
(mkdir "obj")
(with-directory-excursion "buildrump.sh/src"
(invoke
"sh" "build.sh"
"-V" "TOOLS_BUILDRUMP=yes"
"-V" "MKBINUTILS=no"
"-V" "MKGDB=no"
"-V" "MKGROFF=no"
"-V" (string-append "TOPRUMP=" toprump)
"-V" "BUILDRUMP_CPPFLAGS=-Wno-error=stringop-overread"
"-V" "RUMPUSER_EXTERNAL_DPLIBS=pthread"
"-V" (string-append
"CPPFLAGS="
" -I../../obj/destdir." host-cpu "/usr/include"
" -D_FILE_OFFSET_BITS=64"
" -DRUMP_REGISTER_T=int"
" -DRUMPUSER_CONFIG=yes"
" -DNO_PCI_MSI_MSIX=yes"
" -DNUSB_DMA=1")
"-V" (string-append
"CWARNFLAGS="
" -Wno-error=maybe-uninitialized"
" -Wno-error=address-of-packed-member"
" -Wno-error=unused-variable"
" -Wno-error=stack-protector"
" -Wno-error=array-parameter"
" -Wno-error=array-bounds"
" -Wno-error=stringop-overflow")
"-V" "LIBCRTBEGIN="
"-V" "LIBCRTEND="
"-V" "LIBCRT0="
"-V" "LIBCRTI="
"-V" "_GCC_CRTENDS="
"-V" "_GCC_CRTEND="
"-V" "_GCC_CRTBEGINS="
"-V" "_GCC_CRTBEGIN="
"-V" "_GCC_CRTI="
"-V" "_GCC_CRTN="
"-U"
"-u"
"-T" "./obj/tooldir"
"-m" host-cpu
"-j" (number->string jobs)
"tools"
"rump"))
(with-directory-excursion "buildrump.sh/src/lib/librumpuser"
(setenv "RUMPRUN" "true")
(invoke rump-make "dependall"))
(with-directory-excursion "pci-userspace/src-gnu"
(invoke rump-make "dependall")))))
(replace 'install
(lambda _
(define (install-file file target)
(let ((dest (string-append target (basename file))))
(format (current-output-port) "`~a' -> `~a'~%" file dest)
(mkdir-p (dirname dest))
;; Some libraries are duplicated/copied around in the
;; build system, do not fail trying to install one
;; a second time.
(if (file-exists? dest)
(format (current-error-port)
"warning: skipping: ~a\n" file)
(let ((stat (lstat file)))
(case (stat:type stat)
((symlink)
(let ((target (readlink file)))
(symlink target dest)))
(else
(copy-file file dest)))))))
(let ((header (string-append #$output "/include/rump"))
(lib (string-append #$output "/lib/")))
(mkdir-p header)
(copy-recursively "buildrump.sh/src/sys/rump/include/rump"
header)
(mkdir-p lib)
(for-each
(cute install-file <> lib)
(append (find-files "buildrump.sh/src" "librump.*[.](a|so.*)")
(find-files "obj" "librump.*[.](a|so.*)")))))))))
(inputs
(list gnumach-headers libpciaccess-0.17))
(native-inputs
(list autoconf
automake
libgcrypt
(if (%current-target-system)
(cross-mig (%current-target-system))
mig)
zlib))
(supported-systems %hurd-systems)
(home-page "https://wiki.netbsd.org/rumpkernel")
(synopsis "NetBSD as rumpkernel for the GNU/Hurd")
(description
"This package provides NetBSD as rumpkernel for the GNU/Hurd, so that
the Hurd may be installed on iron. Using this rumpkernel package, the hurd
package's rumpdisk can be built which provides the pci.arbiter and rumpdisk
servers.")
(license
;; The NetBSD rumpkernel code is a big hodgepodge of softwares many of
;; which have their own different licensing terms, see also
;; https://salsa.debian.org/hurd-team/rumpkernel/-/blob/master/debian/copyright
(list asl2.0
boost1.0
bsd-2
bsd-3
bsd-4
cddl1.0
expat
gpl1
gpl2+
gpl3+
isc
lgpl2.0+
public-domain
(@ (guix licenses) zlib)
(non-copyleft "file://src/lib/libc/hash/hashhl.c"
"See debian/copyright in the distribution."))))))

View file

@ -1279,41 +1279,46 @@ libraries designed for computer vision research and implementation.")
(base32 "0bs63mk4q8jmx38f031jy5w5n9yy5ng9x8ijwinvjyvas8cichqi")))) (base32 "0bs63mk4q8jmx38f031jy5w5n9yy5ng9x8ijwinvjyvas8cichqi"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; tests require network access and external data (list #:tests? #f ; tests require network access and external data
#:configure-flags #:configure-flags #~'("-DITK_USE_GPU=ON"
'("-DITK_USE_GPU=ON"
"-DITK_USE_SYSTEM_LIBRARIES=ON" "-DITK_USE_SYSTEM_LIBRARIES=ON"
"-DITK_USE_SYSTEM_GOOGLETEST=ON" "-DITK_USE_SYSTEM_GOOGLETEST=ON"
"-DITK_BUILD_SHARED=ON" "-DITK_BUILD_SHARED=ON"
;; This prevents "GTest::GTest" from being added to the ITK_LIBRARIES ;; This prevents "GTest::GTest" from being added to the ITK_LIBRARIES
;; variable in the installed CMake files. This is necessary as other ;; variable in the installed CMake files. This is necessary as other
;; packages using insight-toolkit could not be configured otherwise. ;; packages using insight-toolkit could not be configured otherwise.
"-DGTEST_ROOT=gtest") "-DGTEST_ROOT=gtest"
"-DCMAKE_CXX_STANDARD=17")
#:phases #:phases #~(modify-phases %standard-phases
(modify-phases %standard-phases
(add-after 'unpack 'do-not-tune (add-after 'unpack 'do-not-tune
(lambda _ (lambda _
(substitute* "CMake/ITKSetStandardCompilerFlags.cmake" (substitute* "CMake/ITKSetStandardCompilerFlags.cmake"
(("-mute=native") "")) (("-mtune=native")
#t))))) "")))))))
(inputs (inputs
`(("eigen" ,eigen) (list eigen
("expat" ,expat) expat
("fftw" ,fftw) fftw
("fftwf" ,fftwf) fftwf
("hdf5" ,hdf5) hdf5
("libjpeg" ,libjpeg-turbo) libjpeg-turbo
("libpng" ,libpng) libpng
("libtiff" ,libtiff) libtiff
("mesa" ,mesa-opencl) mesa-opencl
("perl" ,perl) perl
("python" ,python) python
("tbb" ,tbb) tbb
("vxl" ,vxl-1) vxl-1
("zlib" ,zlib))) zlib))
(native-inputs (native-inputs
(list googletest pkg-config)) (list googletest pkg-config))
;; The 'CMake/ITKSetStandardCompilerFlags.cmake' file normally sets
;; '-mtune=native -march=corei7', suggesting there's something to be
;; gained from CPU-specific optimizations.
(properties '((tunable? . #t)))
(home-page "https://github.com/InsightSoftwareConsortium/ITK/") (home-page "https://github.com/InsightSoftwareConsortium/ITK/")
(synopsis "Scientific image processing, segmentation and registration") (synopsis "Scientific image processing, segmentation and registration")
(description "The Insight Toolkit (ITK) is a toolkit for N-dimensional (description "The Insight Toolkit (ITK) is a toolkit for N-dimensional
@ -1338,9 +1343,8 @@ combine the information contained in both.")
(sha256 (sha256
(base32 "19cgfpd63gqrvc3m27m394gy2d7w79g5y6lvznb5qqr49lihbgns")))) (base32 "19cgfpd63gqrvc3m27m394gy2d7w79g5y6lvznb5qqr49lihbgns"))))
(arguments (arguments
`(#:tests? #f ; tests require network access and external data (list #:tests? #f ; tests require network access and external data
#:configure-flags #:configure-flags #~'("-DITKV3_COMPATIBILITY=ON" ; needed for itk-snap
'("-DITKV3_COMPATIBILITY=ON" ; needed for itk-snap
"-DITK_USE_GPU=ON" "-DITK_USE_GPU=ON"
"-DITK_USE_SYSTEM_LIBRARIES=ON" "-DITK_USE_SYSTEM_LIBRARIES=ON"
"-DITK_USE_SYSTEM_GOOGLETEST=ON" "-DITK_USE_SYSTEM_GOOGLETEST=ON"

View file

@ -2046,14 +2046,14 @@ stdout.")
(define-public gifsicle (define-public gifsicle
(package (package
(name "gifsicle") (name "gifsicle")
(version "1.93") (version "1.94")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.lcdf.org/gifsicle/gifsicle-" (uri (string-append "https://www.lcdf.org/gifsicle/gifsicle-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0irljjm76anicsm5rfkpqxd6x105aa8f0sky13dc3x1bfdwp1xlj")))) (base32 "16zq5wd6fyjgy0p0mak15k3mh1zpqb9rg6gqfpg215kqq02p1jab"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -2066,8 +2066,7 @@ stdout.")
(("/bin/sh") (("/bin/sh")
(which "sh")) (which "sh"))
(("/bin/rm") (("/bin/rm")
(which "rm"))) (which "rm"))))))))
#t)))))
(native-inputs (list perl)) ; only for tests (native-inputs (list perl)) ; only for tests
(inputs (list libx11)) (inputs (list libx11))
(home-page "https://www.lcdf.org/gifsicle/") (home-page "https://www.lcdf.org/gifsicle/")

View file

@ -34,14 +34,14 @@
(xgcc (cross-gcc triplet #:libc xlibc))) (xgcc (cross-gcc triplet #:libc xlibc)))
(package (package
(name (string-append "nsis-" machine)) (name (string-append "nsis-" machine))
(version "3.08") (version "3.09")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://prdownloads.sourceforge.net/nsis/nsis-" (uri (string-append "http://prdownloads.sourceforge.net/nsis/nsis-"
version "-src.tar.bz2")) version "-src.tar.bz2"))
(sha256 (sha256
(base32 (base32
"11qy1n1qdcqwal9hn8cmzm7gxjdyx7by6w14rfz2l646afnp0lm8")) "1qjnvhnj89a40ac10k2mbln0yqscdmawmgw71816i465x734dn0c"))
(patches (search-patches "nsis-env-passthru.patch")))) (patches (search-patches "nsis-env-passthru.patch"))))
(build-system scons-build-system) (build-system scons-build-system)
(native-inputs `(("xgcc" ,xgcc) (native-inputs `(("xgcc" ,xgcc)

View file

@ -1553,6 +1553,15 @@ blacklisted.certs.pem"
(base32 (base32
"0wh9xhqgcjk0jgvpvlvf78dy3r8m0vgqd0f54whpx0qqbmyavgdw")) "0wh9xhqgcjk0jgvpvlvf78dy3r8m0vgqd0f54whpx0qqbmyavgdw"))
(patches (search-patches "jbr-17-xcursor-no-dynamic.patch")))) (patches (search-patches "jbr-17-xcursor-no-dynamic.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments openjdk17)
((#:configure-flags configure-flags)
#~(append #$configure-flags
(list "--with-jvm-features=shenandoahgc"
"--enable-cds=yes"
"--with-vendor-name=JetBrains s.r.o"
"--with-vendor-url=https://www.jetbrains.com/"
"--with-vendor-bug-url=https://youtrack.jetbrains.com/issues/JBR")))))
(synopsis "JetBrains Java Runtime") (synopsis "JetBrains Java Runtime")
(description "This package provides a Java runtime environment for (description "This package provides a Java runtime environment for
and Java development kit. It supports enhanced class redefinition (DCEVM), and Java development kit. It supports enhanced class redefinition (DCEVM),

View file

@ -63,7 +63,7 @@ text editors.")
(define-public lesspipe (define-public lesspipe
(package (package
(name "lesspipe") (name "lesspipe")
(version "2.07") (version "2.08")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -72,7 +72,7 @@ text editors.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0xci0c575hklb5y6vybvb48938fslb9zw3mlisvspx1p3fplyzrg")))) "00kswzbyys4j5l10y3c3cinrgf0mkzjn1ilqdvs1mkbxlzk33pwc"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -112,7 +112,7 @@ text editors.")
(string-append file " -"))))))))) (string-append file " -")))))))))
(inputs (inputs
(list file (list file
ncurses ;; for tput ncurses ; for tput
perl-archive-zip)) perl-archive-zip))
(native-inputs (list perl)) (native-inputs (list perl))
(home-page "https://github.com/wofr06/lesspipe") (home-page "https://github.com/wofr06/lesspipe")

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -23,19 +24,20 @@
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (gnu packages crypto)) #:use-module (gnu packages crypto))
(define-public libbsd (define-public libbsd
(package (package
(name "libbsd") (name "libbsd")
(version "0.11.6") (version "0.11.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://libbsd.freedesktop.org/releases/" (uri (string-append "https://libbsd.freedesktop.org/releases/"
"libbsd-" version ".tar.xz")) "libbsd-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1pxmk42brddk43bj8lp4a64f9iwhc5ii91y6w7k97xpaf8qqzcqr")))) "0q82iaynmal3dn132jgjq21p27x3zn8zks88cg02bgzbb5h1ialv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:configure-flags #~'("--disable-static") (list #:configure-flags #~'("--disable-static")
@ -64,7 +66,15 @@
;; build container. ;; build container.
(substitute* "test/Makefile" (substitute* "test/Makefile"
(("pwcache\\$\\(EXEEXT\\) ") (("pwcache\\$\\(EXEEXT\\) ")
""))))))) ""))))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(substitute* "test/explicit_bzero.c"
(("(^| )main *\\(.*" all)
(string-append all
"{\n exit (77);//"))))))
#~()))))
(inputs (inputs
(list libmd)) (list libmd))
(synopsis "Utility functions from BSD systems") (synopsis "Utility functions from BSD systems")

View file

@ -1117,7 +1117,7 @@ commonly called @code{ftoa} or @code{dtoa}.")
graphite2 graphite2
gst-plugins-base gst-plugins-base
gtk+ gtk+
harfbuzz-5 harfbuzz
hunspell hunspell
hyphen hyphen
libabw libabw

View file

@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2018, 2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2018, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2023 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@ -28,7 +28,6 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages base)) #:use-module (gnu packages base))
@ -61,10 +60,7 @@
(with-directory-excursion (string-append #$output "/lib") (with-directory-excursion (string-append #$output "/lib")
(install-file "libunistring.a" (install-file "libunistring.a"
(string-append #$output:static "/lib")) (string-append #$output:static "/lib"))
(delete-file "libunistring.a"))))) (delete-file "libunistring.a")))))))
#:make-flags (if (target-hurd?)
#~(list "XFAIL_TESTS=test-perror2 test-strerror_r")
#~'())))
(synopsis "C library for manipulating Unicode strings") (synopsis "C library for manipulating Unicode strings")
(description (description
"GNU libunistring is a library providing functions to manipulate "GNU libunistring is a library providing functions to manipulate

View file

@ -274,14 +274,14 @@ wrapper for accessing libusb-1.0.")
(define-public python-pyusb (define-public python-pyusb
(package (package
(name "python-pyusb") (name "python-pyusb")
(version "1.0.2") (version "1.2.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pyusb" version)) (uri (pypi-uri "pyusb" version))
(sha256 (sha256
(base32 (base32
"0qkk2jn270jwwl1x26hmdhb14m9kkbrzzwzizdjcl1a29b6756sf")))) "1fg7knfzybzija2b01pzrzhzsj989scl12sb2ra4f503l8279k54"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f ; no tests `(#:tests? #f ; no tests
@ -302,6 +302,9 @@ wrapper for accessing libusb-1.0.")
"^libusb-.*\\.so\\..*")) "^libusb-.*\\.so\\..*"))
"\""))) "\"")))
#t))))) #t)))))
(native-inputs
(list python-setuptools-scm))
(inputs (inputs
(list libusb)) (list libusb))
(home-page "https://pyusb.github.io/pyusb/") (home-page "https://pyusb.github.io/pyusb/")

View file

@ -34,7 +34,7 @@
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com> ;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com>
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019, 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com> ;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com>
;;; Copyright © 2019-2022 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2019-2022 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net>
@ -42,7 +42,7 @@
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2020 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com> ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2020 John Soo <jsoo1@asu.edu> ;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
@ -95,6 +95,7 @@
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages algebra) #:use-module (gnu packages algebra)
#:use-module (gnu packages apparmor)
#:use-module (gnu packages audio) #:use-module (gnu packages audio)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages avahi) #:use-module (gnu packages avahi)
@ -486,7 +487,22 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major ;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream. ;; versions that are still supported upstream.
(define-public linux-libre-6.3-version "6.3.12") (define-public linux-libre-6.4-version "6.4.3")
(define-public linux-libre-6.4-gnu-revision "gnu")
(define deblob-scripts-6.4
(linux-libre-deblob-scripts
linux-libre-6.4-version
linux-libre-6.4-gnu-revision
(base32 "1hfircard99kmf81416xnln0chs6hskpjqz0p55ic8alm4rdlljs")
(base32 "1566506bmci15i80y0l0s93dgpgima0lqfmkg5ql7gd671aawkra")))
(define-public linux-libre-6.4-pristine-source
(let ((version linux-libre-6.4-version)
(hash (base32 "18c8ikghvlr6h9jajy11dldck4h57wl301j14rxg7xhd6qlysd3i")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.4)))
(define-public linux-libre-6.3-version "6.3.13")
(define-public linux-libre-6.3-gnu-revision "gnu") (define-public linux-libre-6.3-gnu-revision "gnu")
(define deblob-scripts-6.3 (define deblob-scripts-6.3
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -496,7 +512,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1i6vyakvqgmr3lcmr0aj8n7lbcksrp4d0rm1sz7cz64hwbsr67pq"))) (base32 "1i6vyakvqgmr3lcmr0aj8n7lbcksrp4d0rm1sz7cz64hwbsr67pq")))
(define-public linux-libre-6.3-pristine-source (define-public linux-libre-6.3-pristine-source
(let ((version linux-libre-6.3-version) (let ((version linux-libre-6.3-version)
(hash (base32 "1mvcirkhqnf03cci3jiq077fs9b42a3xdk3zjkpyim3x43ydwzyb"))) (hash (base32 "1ywijjhf19bciip75ppzjjh7bkadd449jr64yg2j5049w9h0aipa")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.3))) deblob-scripts-6.3)))
@ -622,26 +638,42 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source) (patches (append (origin-patches source)
patches)))) patches))))
(define-public linux-libre-6.4-source
(source-with-patches linux-libre-6.4-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch
"linux-libre-wireguard-postup-privkey.patch"))))
(define-public linux-libre-6.3-source (define-public linux-libre-6.3-source
(source-with-patches linux-libre-6.3-pristine-source (source-with-patches linux-libre-6.3-pristine-source
(list %boot-logo-patch (list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch))) %linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch
"linux-libre-wireguard-postup-privkey.patch"))))
(define-public linux-libre-6.1-source (define-public linux-libre-6.1-source
(source-with-patches linux-libre-6.1-pristine-source (source-with-patches linux-libre-6.1-pristine-source
(append
(list %boot-logo-patch (list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch %linux-libre-arm-export-__sync_icache_dcache-patch)
(search-patch "linux-libre-infodocs-target.patch")))) (search-patches
"linux-libre-infodocs-target.patch"
"linux-libre-wireguard-postup-privkey.patch"))))
(define-public linux-libre-5.15-source (define-public linux-libre-5.15-source
(source-with-patches linux-libre-5.15-pristine-source (source-with-patches linux-libre-5.15-pristine-source
(list %boot-logo-patch (list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch))) %linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch
"linux-libre-wireguard-postup-privkey.patch"))))
(define-public linux-libre-5.10-source (define-public linux-libre-5.10-source
(source-with-patches linux-libre-5.10-pristine-source (source-with-patches linux-libre-5.10-pristine-source
(list %boot-logo-patch (list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch))) %linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch
"linux-libre-wireguard-postup-privkey.patch"))))
(define-public linux-libre-5.4-source (define-public linux-libre-5.4-source
(source-with-patches linux-libre-5.4-pristine-source (source-with-patches linux-libre-5.4-pristine-source
@ -738,6 +770,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(description "Headers of the Linux-Libre kernel.") (description "Headers of the Linux-Libre kernel.")
(license license:gpl2))) (license license:gpl2)))
(define-public linux-libre-headers-6.4
(make-linux-libre-headers* linux-libre-6.4-version
linux-libre-6.4-gnu-revision
linux-libre-6.4-source))
(define-public linux-libre-headers-6.3 (define-public linux-libre-headers-6.3
(make-linux-libre-headers* linux-libre-6.3-version (make-linux-libre-headers* linux-libre-6.3-version
linux-libre-6.3-gnu-revision linux-libre-6.3-gnu-revision
@ -1081,6 +1118,14 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages. ;;; Generic kernel packages.
;;; ;;;
(define-public linux-libre-6.4
(make-linux-libre* linux-libre-6.4-version
linux-libre-6.4-gnu-revision
linux-libre-6.4-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-6.3 (define-public linux-libre-6.3
(make-linux-libre* linux-libre-6.3-version (make-linux-libre* linux-libre-6.3-version
linux-libre-6.3-gnu-revision linux-libre-6.3-gnu-revision
@ -2356,7 +2401,14 @@ parameters.")
(let* ((out #$output) (let* ((out #$output)
(dup (append-map (cut find-files out <>) (dup (append-map (cut find-files out <>)
'("^kill" "^uptime")))) '("^kill" "^uptime"))))
(for-each delete-file dup))))))) (for-each delete-file dup))))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(substitute* "library/tests/test_version.c"
(("^int main\\(.*" all)
(string-append all "{\n exit (77);//"))))))
#~()))))
(inputs (list ncurses)) (inputs (list ncurses))
(native-inputs (list pkg-config)) (native-inputs (list pkg-config))
(home-page "https://gitlab.com/procps-ng/procps/") (home-page "https://gitlab.com/procps-ng/procps/")
@ -2464,7 +2516,7 @@ module.")
perl perl
procps)) procps))
(arguments (arguments
'(;; util-linux is the preferred source for some of the libraries and `(;; util-linux is the preferred source for some of the libraries and
;; commands, so disable them (see, e.g., ;; commands, so disable them (see, e.g.,
;; <http://git.buildroot.net/buildroot/commit/?id=e1ffc2f791b33633>.) ;; <http://git.buildroot.net/buildroot/commit/?id=e1ffc2f791b33633>.)
#:configure-flags (list "--disable-libblkid" #:configure-flags (list "--disable-libblkid"
@ -2511,7 +2563,77 @@ module.")
(let ((archives (find-files lib "\\.a$"))) (let ((archives (find-files lib "\\.a$")))
(for-each (lambda (file) (for-each (lambda (file)
(chmod file #o666)) (chmod file #o666))
archives)))))))) archives)))))
,@(if (system-hurd?)
'((add-after 'unpack 'skip-tests
(lambda _
(with-directory-excursion "tests"
(for-each
(lambda (directory)
(delete-file-recursively directory))
'("d_bad_ostype"
"f_detect_junk"
"f_extent_oobounds"
"j_ext_long_revoke_trans"
"j_ext_long_trans"
"j_long_revoke_trans"
"j_long_revoke_trans_mcsum_32bit"
"j_long_revoke_trans_mcsum_64bit"
"j_long_trans"
"j_long_trans_mcsum_32bit"
"j_long_trans_mcsum_64bit"
"j_short_revoke_trans"
"j_short_revoke_trans_mcsum_64bit"
"j_short_trans_64bit"
"j_short_trans"
"j_short_trans_mcsum_64bit"
"j_short_trans_old_csum"
"j_short_trans_open_recover"
"j_short_trans_recover"
"j_short_trans_recover_mcsum_64bit"
"j_short_uncommitted_trans"
"j_short_uncommitted_trans_mcsum_64bit"
"m_error_behavior"
"m_minrootdir"
"m_rootdir"
"r_32to64bit_expand_full"
"r_expand_full"
"r_fixup_lastbg_big"
"t_change_uuid"
"t_change_uuid_mcsum"
"t_change_uuid_mcsum_mounted"
"t_change_uuid_mcsum_seed_mounted"
"t_change_uuid_mounted"
"t_disable_changed_csum_seed"
"t_disable_changed_csum_seed_mounted"
"t_disable_csum_seed"
"t_disable_meta_csum_and_seed"
"t_enable_csum_seed"
"t_format_csum_seed"
"t_replay_and_set"
"u_compound_rollback"
"u_corrupt_blk_csum"
"u_corrupt_blk_csum_force"
"u_corrupt_key_csum"
"u_debugfs_opt"
"u_dryrun"
"u_e2fsck_opt"
"u_errorout"
"u_force"
"u_force_dryrun"
"u_incomplete"
"u_mke2fs_opt"
"u_mke2fs_opt_oddsize"
"u_offset"
"u_onefile_bad"
"u_resize2fs_opt"
"u_revert_64bitmcsum_onefile"
"u_revert_all_onefile"
"u_revert_upgrade_to_64bitmcsum"
"u_tune2fs_opt"
"u_undo_undo"
"u_wrong_fs"))))))
'()))))
(home-page "https://e2fsprogs.sourceforge.net/") (home-page "https://e2fsprogs.sourceforge.net/")
(synopsis "Creating and checking ext2/ext3/ext4 file systems") (synopsis "Creating and checking ext2/ext3/ext4 file systems")
(description (description
@ -3476,6 +3598,7 @@ settings.")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://web.archive.org/web/20211201184543/"
"http://www.jpj.net/~trevor/aumix/releases/aumix-" "http://www.jpj.net/~trevor/aumix/releases/aumix-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
@ -3486,7 +3609,8 @@ settings.")
;; Allow compilation with GCC 10. ;; Allow compilation with GCC 10.
'(#:configure-flags '("CFLAGS=-O2 -g -fcommon"))) '(#:configure-flags '("CFLAGS=-O2 -g -fcommon")))
(inputs (list ncurses)) (inputs (list ncurses))
(home-page "http://www.jpj.net/~trevor/aumix.html") (home-page (string-append "https://web.archive.org/web/20211201184543/"
"http://jpj.net/~trevor/aumix.html"))
(synopsis "Audio mixer for X and the console") (synopsis "Audio mixer for X and the console")
(description (description
"Aumix adjusts an audio mixer from X, the console, a terminal, "Aumix adjusts an audio mixer from X, the console, a terminal,
@ -5096,21 +5220,24 @@ Translation (@dfn{SAT}) are also supported.")
(define-public libnvme (define-public libnvme
(package (package
(name "libnvme") (name "libnvme")
(version "1.3") (version "1.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/linux-nvme/libnvme.git") (url "https://github.com/linux-nvme/libnvme.git")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(sha256 (sha256
(base32 "1fngj5acp2sl4162xalq5simfasnika6gy0xrbi41x09wikvhn7y")) (base32 "1wq8bw60l090z2kb717wyzk5wz1jrcn31ykdaa7k9pz9w79v0v67"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system meson-build-system) (build-system meson-build-system)
(outputs (list "out" "doc")) ; docs are 80% of all output
(arguments (arguments
(list (list
#:configure-flags #~(list (format #f "-Dhtmldir=~a/share/doc/~a/html" #:configure-flags
#$output #$name) #~(let ((doc (string-append #$output:doc "/share/doc/" #$name)))
"-Ddocs-build=true" "-Ddocs=all"))) (list (string-append "-Dhtmldir=" doc "/html")
(string-append "-Drstdir=" doc "/rst")
"-Ddocs-build=true" "-Ddocs=all"))))
(native-inputs (list pkg-config perl python python-sphinx)) (native-inputs (list pkg-config perl python python-sphinx))
;; libnvme.pc, libnvme-mi.pc lists these in Requires.private. ;; libnvme.pc, libnvme-mi.pc lists these in Requires.private.
(propagated-inputs (list dbus json-c openssl)) (propagated-inputs (list dbus json-c openssl))
@ -5125,7 +5252,7 @@ and manage nvme devices on a Linux system.")
(define-public nvme-cli (define-public nvme-cli
(package (package
(name "nvme-cli") (name "nvme-cli")
(version "2.3") (version "2.5")
(home-page "https://github.com/linux-nvme/nvme-cli") (home-page "https://github.com/linux-nvme/nvme-cli")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
@ -5133,13 +5260,14 @@ and manage nvme devices on a Linux system.")
(url home-page) (url home-page)
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(sha256 (sha256
(base32 "1f3bhxh2kr94s6glzibrmgxxgs66qyabn8plnw5y0v9cpi78b3qs")) (base32 "1jv1xir6gm86yyk5846qqkcjhc1bq103zyxf794fznyinh4nhlbg"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system meson-build-system) (build-system meson-build-system)
(outputs (list "out" "doc")) ; docs make up ~70% of total size
(arguments (arguments
(list (list
#:configure-flags #~(list (format #f "-Dhtmldir=~a/share/doc/~a/html" #:configure-flags #~(list (format #f "-Dhtmldir=~a/share/doc/~a/html"
#$output #$name) #$output:doc #$name)
"-Ddocs=all"))) "-Ddocs=all")))
(native-inputs (list pkg-config)) (native-inputs (list pkg-config))
(inputs (list libnvme json-c zlib)) (inputs (list libnvme json-c zlib))
@ -6321,7 +6449,7 @@ from userspace.")
(define-public tpacpi-bat (define-public tpacpi-bat
(package (package
(name "tpacpi-bat") (name "tpacpi-bat")
(version "3.1") (version "3.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -6330,22 +6458,21 @@ from userspace.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0wbaz34z99gqx721alh5vmpxpj2yxg3x9m8jqyivfi1wfpwc2nd5")))) (base32 "0nd8s2bqbhl0sjpflphb4l9ix71p7kvnbvkq4dg9a1v0sxafyygm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no test target `(#:tests? #f ; no test target
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'refer-to-inputs (add-after 'unpack 'refer-to-inputs
(lambda _ (lambda* (#:key inputs #:allow-other-keys)
(substitute* "tpacpi-bat" (substitute* "tpacpi-bat"
(("cat ") (("cat ")
(format #f "~a " (which "cat"))) (string-append (search-input-file inputs "bin/cat") " "))
;; tpacpi-bat modprobes the acpi_call kernel module if it's not ;; tpacpi-bat modprobes the acpi_call kernel module if it's not
;; loaded. That's the administrator's prerogative; disable it. ;; loaded. That's the administrator's prerogative; disable it.
(("system \"(modprobe .*)\"" _ match) (("system \"(modprobe .*)\"" _ match)
(format #f "die \"Please run ~a first.\\n\"" match))) (format #f "die \"Please run ~a first.\\n\"" match)))))
#t))
(delete 'configure) ; nothing to configure (delete 'configure) ; nothing to configure
(delete 'build) ; nothing to build (delete 'build) ; nothing to build
(replace 'install (replace 'install
@ -6360,10 +6487,10 @@ from userspace.")
(let ((target (string-append doc "/" file))) (let ((target (string-append doc "/" file)))
(mkdir-p (dirname target)) (mkdir-p (dirname target))
(copy-recursively file target))) (copy-recursively file target)))
(list "battery_asl" "examples" "README.md")) (list "battery_asl" "examples" "README.md"))))))))
#t))))))
(inputs (inputs
(list perl)) (list coreutils-minimal
perl))
(home-page "https://github.com/teleshoes/tpacpi-bat") (home-page "https://github.com/teleshoes/tpacpi-bat")
(synopsis "ThinkPad battery charge controller") (synopsis "ThinkPad battery charge controller")
(description (description
@ -8819,7 +8946,7 @@ IP addresses and routes, and configure IPsec.")
(define-public libinih (define-public libinih
(package (package
(name "libinih") (name "libinih")
(version "56") (version "57")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -8828,7 +8955,7 @@ IP addresses and routes, and configure IPsec.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1fjqvf56yij15lgwj58dcmxlq5n98gzpbss0nnn1d2i5j7gf4kgf")))) "03hpyahdkipm5wfalj2xkz6y9ncd9zrlhnf7vap6lr56jj2fz2bb"))))
(build-system meson-build-system) (build-system meson-build-system)
;; Install static libraries for use by the initrd's xfsprogs/static. ;; Install static libraries for use by the initrd's xfsprogs/static.
(outputs (list "out" "static")) (outputs (list "out" "static"))
@ -9806,7 +9933,7 @@ older system-wide @file{/sys} interface.")
(define-public libtraceevent (define-public libtraceevent
(package (package
(name "libtraceevent") (name "libtraceevent")
(version "1.7.1") (version "1.7.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -9815,15 +9942,12 @@ older system-wide @file{/sys} interface.")
(commit (string-append name "-" version)))) (commit (string-append name "-" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "06mw2f0xnk6dy9w2z0n4dz7lnm02qfsmnmj2h24453qxlw57x0d6"))
"1kbl11lqh8cadi6r3qqxx68idr7597l6i50pr5p5mdgsf6k2i83c"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
#~(begin #~(begin
(substitute* "Makefile" (substitute* (list "Makefile" "scripts/utils.mk")
(("/bin/pwd") "pwd")) (("/bin/(pwd)" _ command) command))))))
(substitute* "scripts/utils.mk"
(("/bin/pwd") "pwd"))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -9834,7 +9958,7 @@ older system-wide @file{/sys} interface.")
(string-append "prefix=" #$output)) (string-append "prefix=" #$output))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(delete 'configure)))) (delete 'configure)))) ; no configure script
(home-page "https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/") (home-page "https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/")
(synopsis "Linux kernel trace event library") (synopsis "Linux kernel trace event library")
(description "This package provides library to parse raw trace event (description "This package provides library to parse raw trace event
@ -10130,6 +10254,42 @@ suggestions from various sources, including:
This tool supports checking Kconfig options and kernel cmdline parameters.") This tool supports checking Kconfig options and kernel cmdline parameters.")
(license license:gpl3))) (license license:gpl3)))
(define-public firejail
(package
(name "firejail")
(version "0.9.72")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/netblue30/firejail/releases/download/" version
"/firejail-" version ".tar.xz" ))
(sha256
(base32
"1x77xy1mwfgjrcsymdda82bjnqgl7z2yymcb10mzd1zwik27gqc2"))))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "test"
(invoke "make"))))))))
(build-system gnu-build-system)
(inputs
(list apparmor xdg-dbus-proxy))
(synopsis "Linux namespaces sandbox program")
(description
"Firejail is a SUID sandbox program that reduces the risk of security
breaches by restricting the running environment of untrusted applications
using Linux namespaces, seccomp-bpf and Linux capabilities. The software
includes sandbox profiles for a number of common Linux programs. Firejail
should be added to the list of setuid programs in the system configuration to
work properly.")
(home-page "https://github.com/netblue30/firejail")
(supported-systems
(filter (cut string-suffix? "-linux" <>) %supported-systems))
(license license:gpl2+)))
(define-public edac-utils (define-public edac-utils
(package (package
(name "edac-utils") (name "edac-utils")

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