forked from tribes/guix
Compare commits
158 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 89a8bd9257 | |||
| f99f4a2257 | |||
| 02874b2a43 | |||
| 33253b562a | |||
| eeba993f57 | |||
| 454bb06e83 | |||
| 76f7602b9f | |||
| a68d1d47ee | |||
| d79c103e11 | |||
| 2cebf680c7 | |||
| dc7da2c9ed | |||
| 5324be85a7 | |||
| 6ff0f60dab | |||
| 7a6a8ee7e0 | |||
| b8f4ed8f5d | |||
| 46fbea36ea | |||
| 2d8e56ac16 | |||
| 43d18521e8 | |||
| 3f2b0e12f1 | |||
| 189b1c4f27 | |||
| 6b6fb78724 | |||
| edb9a5b835 | |||
| 08bb73749e | |||
| e7f1e1a78d | |||
| a59afdc92e | |||
| c6b5161e97 | |||
| 01647fc80c | |||
| b77ec228af | |||
| a973d72355 | |||
| 387a9772c2 | |||
| dbc5b51cb9 | |||
| 2f7ab8e373 | |||
| 8e3d4f05df | |||
| d8a7e37b86 | |||
| a9429c8f22 | |||
| f0136b36ae | |||
| 1594aaecd5 | |||
| 95630d2d74 | |||
| e42753fd86 | |||
| 97a5819643 | |||
| 6bf2fa8d1c | |||
| ee2f074d0b | |||
| ca6993af91 | |||
| 892aac72a2 | |||
| 0db2a6e749 | |||
| 5268bd97b1 | |||
| 4c19c3eb06 | |||
| 806824c2c0 | |||
| 2d206cd3dc | |||
| 9223b81071 | |||
| 296398e672 | |||
| 7e2e7a34d1 | |||
| 3a29ec6d32 | |||
| fa5a062572 | |||
| 359636a408 | |||
| 4810804e72 | |||
| 4f407029bf | |||
| cddaf93e22 | |||
| 280097b71f | |||
| 36685334a0 | |||
| 38ec52136f | |||
| c63566c5cf | |||
| 09deb8a570 | |||
| b47d8363f9 | |||
| df8a042de8 | |||
| b3fb3c10b8 | |||
| 774042fede | |||
| 98bd43095c | |||
| 47f87b2e48 | |||
| 11302036f7 | |||
| b2907f5b25 | |||
| 4270d3cf98 | |||
| ec9d9bddc7 | |||
| e6db86b337 | |||
| 5418275398 | |||
| ca9527845f | |||
| 5e9018b389 | |||
| c2777bb64f | |||
| 91aa20e237 | |||
| 006538c527 | |||
| e7cf0ea660 | |||
| d293162615 | |||
| 970b7a949d | |||
| f833399811 | |||
| 94268d5021 | |||
| 83c3332758 | |||
| 5e796bfc22 | |||
| 69f284a35f | |||
| f172118ca4 | |||
| b31ef5638b | |||
| 521e0d32e3 | |||
| 10ee2542e8 | |||
| 0989c839dd | |||
| 65df5a4eb2 | |||
| d5f8bfcd14 | |||
| 6c4c0f16a6 | |||
| 5f628d773b | |||
| 6ac6a7e020 | |||
| 0d41fe4855 | |||
| 7c57821c68 | |||
| bca1157e47 | |||
| 9bf69d38aa | |||
| 3dc776cb71 | |||
| 8313f741a8 | |||
| bbb08831e0 | |||
| 1236a563b9 | |||
| e25ff31663 | |||
| 80194d9e47 | |||
| bc5654af82 | |||
| fab871ae7a | |||
| 94f8ba37cc | |||
| 6ccf8ea81f | |||
| 9f916d1476 | |||
| de86aaa097 | |||
| fcaed5b81e | |||
| 77b98bf187 | |||
| a7bc1c8dd3 | |||
| d3d6e8b31a | |||
| ea5039c765 | |||
| 296599dac5 | |||
| 4acddaa659 | |||
| 97cd9b73a6 | |||
| 65e5f1475d | |||
| a4c40efa05 | |||
| 40e07889d1 | |||
| 9c96dfd43c | |||
| c2f5510730 | |||
| c3417f0754 | |||
| 2d9c06c61d | |||
| d8ff47a75e | |||
| 2f817ab6ab | |||
| 90fb289b69 | |||
| 744bfc61da | |||
| 1f7cf5834c | |||
| cf7c7e2596 | |||
| 9ccb0cf70a | |||
| bbb5243817 | |||
| 7f3da8f882 | |||
| e8176d3152 | |||
| f73758f6c2 | |||
| 7b71cd6dab | |||
| 9bf44750dc | |||
| 0fe0a3a8ee | |||
| 283bc45649 | |||
| 9ca2f94b1b | |||
| 034459cc67 | |||
| e3d61d2082 | |||
| 8a55fde935 | |||
| 9bf0652b08 | |||
| 5d8515b337 | |||
| 385ba2f369 | |||
| fae2fcdbc9 | |||
| 0cccc2f52c | |||
| 22f7d4bce1 | |||
| 426038df3b | |||
| 693d75e859 | |||
| 8419221620 | |||
| 041a12c46b |
@@ -144,6 +144,7 @@ MODULES = \
|
||||
guix/build-system/font.scm \
|
||||
guix/build-system/go.scm \
|
||||
guix/build-system/meson.scm \
|
||||
guix/build-system/mozilla.scm \
|
||||
guix/build-system/minify.scm \
|
||||
guix/build-system/minetest.scm \
|
||||
guix/build-system/asdf.scm \
|
||||
|
||||
+50
-34
@@ -36,7 +36,7 @@ Copyright @copyright{} 2016, 2017, 2018, 2021 Chris Marusich@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner@*
|
||||
Copyright @copyright{} 2016 John Darrington@*
|
||||
Copyright @copyright{} 2016, 2017 Nikita Gillmann@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Jan Nieuwenhuizen@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2021, 2022 Jan Nieuwenhuizen@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Julien Lepiller@*
|
||||
Copyright @copyright{} 2016 Alex ter Weele@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Christopher Baines@*
|
||||
@@ -394,7 +394,7 @@ Installing Debugging Files
|
||||
|
||||
Bootstrapping
|
||||
|
||||
* Reduced Binary Seed Bootstrap:: A Bootstrap worthy of GNU.
|
||||
* Full-Source Bootstrap:: A Bootstrap worthy of GNU.
|
||||
* Preparing to Use the Bootstrap Binaries:: Building that what matters most.
|
||||
|
||||
@end detailmenu
|
||||
@@ -8546,6 +8546,15 @@ directory, the parameter @code{#:javascript-files} can be used to
|
||||
specify a list of file names to feed to the minifier.
|
||||
@end defvr
|
||||
|
||||
@defvr {Scheme Variable} mozilla-build-system
|
||||
This variable is exported by @code{(guix build-system mozilla)}. It
|
||||
sets the @code{--target} and @code{--host} configuration flags to what
|
||||
software developed by Mozilla expects -- due to historical reasons,
|
||||
Mozilla software expects @code{--host} to be the system that is
|
||||
cross-compiled from and @code{--target} to be the system that is
|
||||
cross-compiled to, contrary to the standard Autotools conventions.
|
||||
@end defvr
|
||||
|
||||
@defvr {Scheme Variable} ocaml-build-system
|
||||
This variable is exported by @code{(guix build-system ocaml)}. It implements
|
||||
a build procedure for @uref{https://ocaml.org, OCaml} packages, which consists
|
||||
@@ -39482,12 +39491,12 @@ re-create them if needed (@pxref{Preparing to Use the Bootstrap
|
||||
Binaries}).
|
||||
|
||||
@menu
|
||||
* Reduced Binary Seed Bootstrap:: A Bootstrap worthy of GNU.
|
||||
* Full-Source Bootstrap:: A Bootstrap worthy of GNU.
|
||||
* Preparing to Use the Bootstrap Binaries:: Building that what matters most.
|
||||
@end menu
|
||||
|
||||
@node Reduced Binary Seed Bootstrap
|
||||
@section The Reduced Binary Seed Bootstrap
|
||||
@node Full-Source Bootstrap
|
||||
@section The Full-Source Bootstrap
|
||||
|
||||
Guix---like other GNU/Linux distributions---is traditionally bootstrapped from
|
||||
a set of bootstrap binaries: Bourne shell, command-line tools provided by GNU
|
||||
@@ -39502,28 +39511,47 @@ about 250MB (@pxref{Bootstrappable Builds,,, mes, GNU Mes}). Auditing
|
||||
or even inspecting these is next to impossible.
|
||||
|
||||
For @code{i686-linux} and @code{x86_64-linux}, Guix now features a
|
||||
``Reduced Binary Seed'' bootstrap @footnote{We would like to say: ``Full
|
||||
Source Bootstrap'' and while we are working towards that goal it would
|
||||
be hyperbole to use that term for what we do now.}.
|
||||
@dfn{full-source bootstrap}. This bootstrap is rooted in
|
||||
@file{hex0-seed} from the @url{https://savannah.gnu.org/projects/stage0,
|
||||
Stage0} package. The hex0 program is minimalist assembler: it reads
|
||||
space-separated hexadecimal digits (nibbles) from a file, possibly
|
||||
including comments, and emits on standard output the bytes corresponding
|
||||
to those hexadecimal numbers. The source code of this initial hex0
|
||||
program is a file called
|
||||
@c XXX TODO: udpate to savannah url, once accepted there
|
||||
@url{https://github.com/oriansj/bootstrap-seeds/blob/master/POSIX/x86/hex0_x86.hex0,@file{hex0_x86.hex0}}
|
||||
and is written in the @code{hex0} language.
|
||||
|
||||
The Reduced Binary Seed bootstrap removes the most critical tools---from a
|
||||
trust perspective---from the bootstrap binaries: GCC, Binutils and the GNU C
|
||||
Library are replaced by: @code{bootstrap-mescc-tools} (a tiny assembler and
|
||||
linker) and @code{bootstrap-mes} (a small Scheme Interpreter and a C compiler
|
||||
written in Scheme and the Mes C Library, built for TinyCC and for GCC).
|
||||
Hex0 is self-hosting, which means that it can build itself:
|
||||
|
||||
Using these new binary seeds the ``missing'' Binutils, GCC, and the GNU
|
||||
C Library are built from source. From here on the more traditional
|
||||
bootstrap process resumes. This approach has reduced the bootstrap
|
||||
binaries in size to about 145MB in Guix v1.1.
|
||||
@example
|
||||
./hex0-seed hex0_x86.hex0 hex0
|
||||
@end example
|
||||
|
||||
The next step that Guix has taken is to replace the shell and all its
|
||||
Hex0 it is the ASCII-equivalent of the binary program and can be
|
||||
produced by doing something much like:
|
||||
|
||||
@example
|
||||
sed 's/[;#].*$//g' hex0_x86.hex0 | xxd -r -p > hex0
|
||||
chmod +x hex0
|
||||
@end example
|
||||
|
||||
It is because of this ASCII-binary equivalence that we can bless this
|
||||
initial 357-byte binary as source, and hence `full-source bootstrap''.
|
||||
|
||||
The bootstrap then continues: @code{hex0} builds @code{hex1} and then on
|
||||
to @code{M0}, @code{hex2}, @code{M1}, @code{mescc-tools} and finally
|
||||
@code{M2-Planet}. Then, using @code{mescc-tools}, @code{M2-Planet} we
|
||||
build Mes (@pxref{Top, GNU Mes Reference Manual,, mes, GNU Mes}, a
|
||||
Scheme interpreter and C compiler in Scheme). Frome here on starts
|
||||
the more traditional @code{C}-based bootstrap of the GNU System.
|
||||
|
||||
Another step that Guix has taken is to replace the shell and all its
|
||||
utilities with implementations in Guile Scheme, the @emph{Scheme-only
|
||||
bootstrap}. Gash (@pxref{Gash,,, gash, The Gash manual}) is a
|
||||
POSIX-compatible shell that replaces Bash, and it comes with Gash Utils
|
||||
which has minimalist replacements for Awk, the GNU Core Utilities, Grep,
|
||||
Gzip, Sed, and Tar. The rest of the bootstrap binary seeds that were
|
||||
removed are now built from source.
|
||||
Gzip, Sed, and Tar.
|
||||
|
||||
Building the GNU System from source is currently only possible by adding
|
||||
some historical GNU packages as intermediate steps@footnote{Packages
|
||||
@@ -39539,22 +39567,10 @@ The graph below shows the resulting dependency graph for
|
||||
@code{gcc-core-mesboot0}, the bootstrap compiler used for the
|
||||
traditional bootstrap of the rest of the Guix System.
|
||||
|
||||
@c ./pre-inst-env guix graph -e '(@@ (gnu packages commencement) gcc-core-mesboot0)' | sed -re 's,((bootstrap-mescc-tools|bootstrap-mes|guile-bootstrap).*shape =) box,\1 ellipse,' > doc/images/gcc-core-mesboot0-graph.dot
|
||||
@c ./pre-inst-env guix graph -e '(@@ (gnu packages commencement) gcc-core-mesboot0)' | sed -re 's,((bootstrap-seeds|guile-bootstrap).*shape =) box,\1 ellipse,' > doc/images/gcc-core-mesboot0-graph.dot
|
||||
@image{images/gcc-core-mesboot0-graph,6in,,Dependency graph of gcc-core-mesboot0}
|
||||
|
||||
The only significant binary bootstrap seeds that remain@footnote{
|
||||
Ignoring the 68KB @code{mescc-tools}; that will be removed later,
|
||||
together with @code{mes}.} are a Scheme interpreter and a Scheme
|
||||
compiler: GNU Mes and GNU Guile@footnote{Not shown in this graph are the
|
||||
static binaries for @file{bash}, @code{tar}, and @code{xz} that are used
|
||||
to get Guile running.}.
|
||||
|
||||
This further reduction has brought down the size of the binary seed to
|
||||
about 60MB for @code{i686-linux} and @code{x86_64-linux}.
|
||||
|
||||
Work is ongoing to remove all binary blobs from our free software
|
||||
bootstrap stack, working towards a Full Source Bootstrap. Also ongoing
|
||||
is work to bring these bootstraps to the @code{arm-linux} and
|
||||
Work is ongoing to to bring these bootstraps to the @code{arm-linux} and
|
||||
@code{aarch64-linux} architectures and to the Hurd.
|
||||
|
||||
If you are interested, join us on @samp{#bootstrappable} on the Freenode
|
||||
|
||||
@@ -1,114 +1,79 @@
|
||||
digraph "Guix package" {
|
||||
"139781154519456" [label = "gcc-core-mesboot0@2.95.3", shape = box, fontname = Helvetica];
|
||||
"139781154519456" -> "139781154519632" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781154520688" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034971312" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781154520160" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034971664" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781154519984" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781154519808" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781154520512" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034971488" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034972896" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034972368" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781034973072" [color = darkgoldenrod];
|
||||
"139781154519456" -> "139781131267872" [color = darkgoldenrod];
|
||||
"139781154519632" [label = "binutils-mesboot0@2.14", shape = box, fontname = Helvetica];
|
||||
"139781154519632" -> "139781154520688" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034971312" [color = peachpuff4];
|
||||
"139781154519632" -> "139781154520160" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034971664" [color = peachpuff4];
|
||||
"139781154519632" -> "139781154519984" [color = peachpuff4];
|
||||
"139781154519632" -> "139781154519808" [color = peachpuff4];
|
||||
"139781154519632" -> "139781154520512" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034971488" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034972896" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034972368" [color = peachpuff4];
|
||||
"139781154519632" -> "139781034973072" [color = peachpuff4];
|
||||
"139781154519632" -> "139781131267872" [color = peachpuff4];
|
||||
"139781154520688" [label = "bash-mesboot0@2.05b", shape = box, fontname = Helvetica];
|
||||
"139781154520688" -> "139781034971488" [color = magenta];
|
||||
"139781154520688" -> "139781034971840" [color = magenta];
|
||||
"139781154520688" -> "139781034972896" [color = magenta];
|
||||
"139781154520688" -> "139781034972368" [color = magenta];
|
||||
"139781154520688" -> "139781034973072" [color = magenta];
|
||||
"139781154520688" -> "139781131267872" [color = magenta];
|
||||
"139781034971488" [label = "make-mesboot0@3.80", shape = box, fontname = Helvetica];
|
||||
"139781034971488" -> "139781034971840" [color = dimgrey];
|
||||
"139781034971488" -> "139781034972896" [color = dimgrey];
|
||||
"139781034971488" -> "139781034972368" [color = dimgrey];
|
||||
"139781034971488" -> "139781034973072" [color = dimgrey];
|
||||
"139781034971488" -> "139781131267872" [color = dimgrey];
|
||||
"139781034971840" [label = "tcc-boot0@0.9.26-1103-g6e62e0e", shape = box, fontname = Helvetica];
|
||||
"139781034971840" -> "139781034972016" [color = magenta];
|
||||
"139781034971840" -> "139781131266816" [color = magenta];
|
||||
"139781034971840" -> "139781034972896" [color = magenta];
|
||||
"139781034971840" -> "139781034972368" [color = magenta];
|
||||
"139781034971840" -> "139781034973072" [color = magenta];
|
||||
"139781034971840" -> "139781131267872" [color = magenta];
|
||||
"139781034972016" [label = "mes-boot@0.22", shape = box, fontname = Helvetica];
|
||||
"139781034972016" -> "139781034972192" [color = cyan3];
|
||||
"139781034972016" -> "139781131266816" [color = cyan3];
|
||||
"139781034972016" -> "139781034972896" [color = cyan3];
|
||||
"139781034972016" -> "139781034972368" [color = cyan3];
|
||||
"139781034972016" -> "139781034973072" [color = cyan3];
|
||||
"139781034972016" -> "139781131267872" [color = cyan3];
|
||||
"139781034972192" [label = "bootstrap-mes-rewired@0.19", shape = ellipse, fontname = Helvetica];
|
||||
"139781034972192" -> "139781131266640" [color = darkseagreen];
|
||||
"139781034972192" -> "139781034972896" [color = darkseagreen];
|
||||
"139781131266640" [label = "bootstrap-mes@0", shape = ellipse, fontname = Helvetica];
|
||||
"139781034972896" [label = "gash-boot@0.2.0", shape = box, fontname = Helvetica];
|
||||
"139781034972896" -> "139781034973072" [color = darkviolet];
|
||||
"139781034972896" -> "139781131267872" [color = darkviolet];
|
||||
"139781034973072" [label = "bootar@1", shape = box, fontname = Helvetica];
|
||||
"139781034973072" -> "139781131267872" [color = darkviolet];
|
||||
"139781131267872" [label = "guile-bootstrap@2.0", shape = ellipse, fontname = Helvetica];
|
||||
"139781131266816" [label = "bootstrap-mescc-tools@0.5.2", shape = ellipse, fontname = Helvetica];
|
||||
"139781034972368" [label = "gash-utils-boot@0.1.0", shape = box, fontname = Helvetica];
|
||||
"139781034972368" -> "139781034973072" [color = darkseagreen];
|
||||
"139781034972368" -> "139781034972896" [color = darkseagreen];
|
||||
"139781034972368" -> "139781131267872" [color = darkseagreen];
|
||||
"139781034971312" [label = "bzip2-mesboot@1.0.8", shape = box, fontname = Helvetica];
|
||||
"139781034971312" -> "139781034971488" [color = cyan3];
|
||||
"139781034971312" -> "139781034971840" [color = cyan3];
|
||||
"139781034971312" -> "139781034972896" [color = cyan3];
|
||||
"139781034971312" -> "139781034972368" [color = cyan3];
|
||||
"139781034971312" -> "139781034973072" [color = cyan3];
|
||||
"139781034971312" -> "139781131267872" [color = cyan3];
|
||||
"139781154520160" [label = "diffutils-mesboot@2.7", shape = box, fontname = Helvetica];
|
||||
"139781154520160" -> "139781034971488" [color = red];
|
||||
"139781154520160" -> "139781034971840" [color = red];
|
||||
"139781154520160" -> "139781034972896" [color = red];
|
||||
"139781154520160" -> "139781034972368" [color = red];
|
||||
"139781154520160" -> "139781034973072" [color = red];
|
||||
"139781154520160" -> "139781131267872" [color = red];
|
||||
"139781034971664" [label = "gzip-mesboot@1.2.4", shape = box, fontname = Helvetica];
|
||||
"139781034971664" -> "139781034971840" [color = red];
|
||||
"139781034971664" -> "139781034972896" [color = red];
|
||||
"139781034971664" -> "139781034972368" [color = red];
|
||||
"139781034971664" -> "139781034973072" [color = red];
|
||||
"139781034971664" -> "139781131267872" [color = red];
|
||||
"139781154519984" [label = "patch-mesboot@2.5.9", shape = box, fontname = Helvetica];
|
||||
"139781154519984" -> "139781034971488" [color = blue];
|
||||
"139781154519984" -> "139781034971840" [color = blue];
|
||||
"139781154519984" -> "139781034972896" [color = blue];
|
||||
"139781154519984" -> "139781034972368" [color = blue];
|
||||
"139781154519984" -> "139781034973072" [color = blue];
|
||||
"139781154519984" -> "139781131267872" [color = blue];
|
||||
"139781154519808" [label = "sed-mesboot0@1.18", shape = box, fontname = Helvetica];
|
||||
"139781154519808" -> "139781034971488" [color = red];
|
||||
"139781154519808" -> "139781034971840" [color = red];
|
||||
"139781154519808" -> "139781034972896" [color = red];
|
||||
"139781154519808" -> "139781034972368" [color = red];
|
||||
"139781154519808" -> "139781034973072" [color = red];
|
||||
"139781154519808" -> "139781131267872" [color = red];
|
||||
"139781154520512" [label = "tcc-boot@0.9.27", shape = box, fontname = Helvetica];
|
||||
"139781154520512" -> "139781034971312" [color = darkviolet];
|
||||
"139781154520512" -> "139781034971488" [color = darkviolet];
|
||||
"139781154520512" -> "139781034971840" [color = darkviolet];
|
||||
"139781154520512" -> "139781034972896" [color = darkviolet];
|
||||
"139781154520512" -> "139781034972368" [color = darkviolet];
|
||||
"139781154520512" -> "139781034973072" [color = darkviolet];
|
||||
"139781154520512" -> "139781131267872" [color = darkviolet];
|
||||
"139803511371136" [label = "gcc-core-mesboot0@2.95.3", shape = box, fontname = sans];
|
||||
"139803511371136" -> "139803511371312" [color = red];
|
||||
"139803511371136" -> "139803511372016" [color = red];
|
||||
"139803511371136" -> "139803511371488" [color = red];
|
||||
"139803511371136" -> "139803511371664" [color = red];
|
||||
"139803511371136" -> "139803511371840" [color = red];
|
||||
"139803511371136" -> "139803507105792" [color = red];
|
||||
"139803511371136" -> "139803511373600" [color = red];
|
||||
"139803511371136" -> "139803507105968" [color = red];
|
||||
"139803511371136" -> "139803749199472" [color = red];
|
||||
"139803511371312" [label = "binutils-mesboot0@2.20.1a", shape = box, fontname = sans];
|
||||
"139803511371312" -> "139803511372016" [color = dimgrey];
|
||||
"139803511371312" -> "139803511371488" [color = dimgrey];
|
||||
"139803511371312" -> "139803511371664" [color = dimgrey];
|
||||
"139803511371312" -> "139803511371840" [color = dimgrey];
|
||||
"139803511371312" -> "139803507105792" [color = dimgrey];
|
||||
"139803511371312" -> "139803511373600" [color = dimgrey];
|
||||
"139803511371312" -> "139803507105968" [color = dimgrey];
|
||||
"139803511371312" -> "139803749199472" [color = dimgrey];
|
||||
"139803511372016" [label = "gzip-mesboot@1.2.4", shape = box, fontname = sans];
|
||||
"139803511372016" -> "139803511372192" [color = magenta];
|
||||
"139803511372016" -> "139803507105792" [color = magenta];
|
||||
"139803511372016" -> "139803511373600" [color = magenta];
|
||||
"139803511372016" -> "139803507105968" [color = magenta];
|
||||
"139803511372016" -> "139803749199472" [color = magenta];
|
||||
"139803511372192" [label = "tcc-boot0@0.9.26-1136-g5bba73cc", shape = box, fontname = sans];
|
||||
"139803511372192" -> "139803511372368" [color = magenta];
|
||||
"139803511372192" -> "139803511372544" [color = magenta];
|
||||
"139803511372192" -> "139803507105792" [color = magenta];
|
||||
"139803511372192" -> "139803511373600" [color = magenta];
|
||||
"139803511372192" -> "139803507105968" [color = magenta];
|
||||
"139803511372192" -> "139803749199472" [color = magenta];
|
||||
"139803511372368" [label = "mes-boot@0.24", shape = box, fontname = sans];
|
||||
"139803511372368" -> "139803511372544" [color = darkviolet];
|
||||
"139803511372368" -> "139803507105792" [color = darkviolet];
|
||||
"139803511372368" -> "139803511373600" [color = darkviolet];
|
||||
"139803511372368" -> "139803507105968" [color = darkviolet];
|
||||
"139803511372368" -> "139803749199472" [color = darkviolet];
|
||||
"139803511372544" [label = "stage0-posix@1.4", shape = box, fontname = sans];
|
||||
"139803511372544" -> "139803511373072" [color = peachpuff4];
|
||||
"139803511372544" -> "139803507105792" [color = peachpuff4];
|
||||
"139803511372544" -> "139803511373600" [color = peachpuff4];
|
||||
"139803511372544" -> "139803507105968" [color = peachpuff4];
|
||||
"139803511372544" -> "139803749199472" [color = peachpuff4];
|
||||
"139803511373072" [label = "bootstrap-seeds@1.0.0", shape = ellipse, fontname = sans];
|
||||
"139803511373072" -> "139803507105968" [color = cyan3];
|
||||
"139803507105968" [label = "bootar@1b", shape = box, fontname = sans];
|
||||
"139803507105968" -> "139803749199472" [color = dimgrey];
|
||||
"139803749199472" [label = "guile-bootstrap@2.0", shape = ellipse, fontname = sans];
|
||||
"139803507105792" [label = "gash-boot@0.3.0", shape = box, fontname = sans];
|
||||
"139803507105792" -> "139803507105968" [color = darkviolet];
|
||||
"139803507105792" -> "139803749199472" [color = darkviolet];
|
||||
"139803511373600" [label = "gash-utils-boot@0.2.0", shape = box, fontname = sans];
|
||||
"139803511373600" -> "139803507105968" [color = red];
|
||||
"139803511373600" -> "139803507105792" [color = red];
|
||||
"139803511373600" -> "139803749199472" [color = red];
|
||||
"139803511371488" [label = "patch-mesboot@2.5.9", shape = box, fontname = sans];
|
||||
"139803511371488" -> "139803511371840" [color = darkseagreen];
|
||||
"139803511371488" -> "139803511372192" [color = darkseagreen];
|
||||
"139803511371488" -> "139803507105792" [color = darkseagreen];
|
||||
"139803511371488" -> "139803511373600" [color = darkseagreen];
|
||||
"139803511371488" -> "139803507105968" [color = darkseagreen];
|
||||
"139803511371488" -> "139803749199472" [color = darkseagreen];
|
||||
"139803511371840" [label = "make-mesboot0@3.80", shape = box, fontname = sans];
|
||||
"139803511371840" -> "139803511372192" [color = blue];
|
||||
"139803511371840" -> "139803507105792" [color = blue];
|
||||
"139803511371840" -> "139803511373600" [color = blue];
|
||||
"139803511371840" -> "139803507105968" [color = blue];
|
||||
"139803511371840" -> "139803749199472" [color = blue];
|
||||
"139803511371664" [label = "tcc-boot@0.9.27", shape = box, fontname = sans];
|
||||
"139803511371664" -> "139803511371840" [color = peachpuff4];
|
||||
"139803511371664" -> "139803511372192" [color = peachpuff4];
|
||||
"139803511371664" -> "139803507105792" [color = peachpuff4];
|
||||
"139803511371664" -> "139803511373600" [color = peachpuff4];
|
||||
"139803511371664" -> "139803507105968" [color = peachpuff4];
|
||||
"139803511371664" -> "139803749199472" [color = peachpuff4];
|
||||
|
||||
}
|
||||
|
||||
+1
-1
@@ -1084,7 +1084,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
|
||||
%D%/packages/patches/ganeti-shepherd-support.patch \
|
||||
%D%/packages/patches/ganeti-sphinx-compat.patch \
|
||||
%D%/packages/patches/gash-utils-ls-test.patch \
|
||||
%D%/packages/patches/gawk-shell.patch \
|
||||
%D%/packages/patches/gcc-arm-bug-71399.patch \
|
||||
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
|
||||
@@ -1436,6 +1435,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/linphone-desktop-without-sdk.patch \
|
||||
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
|
||||
%D%/packages/patches/linux-pam-no-setfsuid.patch \
|
||||
%D%/packages/patches/linux-pam-unix_chkpwd.patch \
|
||||
%D%/packages/patches/linuxdcpp-openssl-1.1.patch \
|
||||
%D%/packages/patches/lirc-localstatedir.patch \
|
||||
%D%/packages/patches/lirc-reproducible-build.patch \
|
||||
|
||||
@@ -1317,7 +1317,7 @@ connection alive.")
|
||||
(list config perl file))
|
||||
|
||||
(inputs `(("inetutils" ,inetutils)
|
||||
("bash" ,(canonical-package bash-minimal)) ;for wrap-program
|
||||
("bash" ,bash-minimal)
|
||||
,@(if (hurd-target?) '()
|
||||
`(("net-tools" ,net-tools)
|
||||
("iproute" ,iproute)))
|
||||
|
||||
@@ -76,9 +76,7 @@ scripts.")
|
||||
"0gcincjvpll2qmlc906jx6mfq97s87mgi0zby0753ki0rr2ch0s8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(;; FIXME: Some tests require network access
|
||||
#:tests? #f
|
||||
#:phases
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'filter-live-tests
|
||||
(lambda _
|
||||
|
||||
@@ -324,14 +324,14 @@ output is indexed in many ways to simplify browsing.")
|
||||
(define-public automake
|
||||
(package
|
||||
(name "automake")
|
||||
(version "1.16.3")
|
||||
(version "1.16.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/automake/automake-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fmz2fhmzcpacnprl5msphvaflwiy0hvpgmqlgfny72ddijzfazz"))
|
||||
"0v8kbw4fan7apbjwziylyjl5z708w452r5q6kpafcmssi04wryl0"))
|
||||
(patches
|
||||
(search-patches "automake-skip-amhello-tests.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
+10
-6
@@ -1,11 +1,11 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2019 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;; Copyright © 2016, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||
@@ -105,14 +105,14 @@ command-line arguments, multiple languages, and so on.")
|
||||
(define-public grep
|
||||
(package
|
||||
(name "grep")
|
||||
(version "3.6")
|
||||
(version "3.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/grep/grep-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gipv6bzkm1aihj0ncqpyh164xrzgcxcv9r1kwzyk2g1mzl1azk6"))
|
||||
"0g42svbc1nq5bamxfj6x7320wli4dlj86padk0hwgbk04hqxl42w"))
|
||||
(patches (search-patches "grep-timing-sensitive-test.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list perl)) ;some of the tests require it
|
||||
@@ -293,14 +293,14 @@ interactive means to merge two files.")
|
||||
(define-public findutils
|
||||
(package
|
||||
(name "findutils")
|
||||
(version "4.8.0")
|
||||
(version "4.9.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/findutils/findutils-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r3i72hnw0a30khlczi9k2c51aamaj6kfmp5mk3844nrjxz7n4jp"))
|
||||
"1zk2sighc26bfdsm97bv7cd1cnvq7r4gll4zqpnp0rs3kp0bigx2"))
|
||||
(patches (search-patches "findutils-localstatedir.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -742,6 +742,10 @@ the store.")
|
||||
(guix build utils)
|
||||
(guix build gnu-build-system))
|
||||
|
||||
;; Strip binaries but preserve the symbol table needed by Valgrind:
|
||||
;; <https://lists.gnu.org/archive/html/help-guix/2022-03/msg00036.html>.
|
||||
#:strip-flags '("--strip-debug")
|
||||
|
||||
#:configure-flags
|
||||
(list "--sysconfdir=/etc"
|
||||
|
||||
|
||||
+14
-5
@@ -1,8 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012-2017, 2019-2020, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
|
||||
@@ -72,7 +72,7 @@
|
||||
...))
|
||||
|
||||
(define %patch-series-5.1
|
||||
;; This is the current patches series for 5.0, generated using
|
||||
;; This is the current patches series for 5.1, generated using
|
||||
;; 'download-patches' below.
|
||||
(patch-series
|
||||
(1 "1ymm8ppss6gyh9ifznjwiabrb4k91npd09c10y7mk66xp8yppc7b")
|
||||
@@ -82,7 +82,15 @@
|
||||
(5 "19bdyigdr81824nxvqr6a7k0cax60wq7376j6b91afbnwvlvbjyc")
|
||||
(6 "051x8wlwrqk0yr0zg378vh824iklfl5g9pkmcdf62qp8gn9pvqbm")
|
||||
(7 "0fir80pp1gmlpadmqcgkrv4y119pc7xllchjzg05fd7px73viz5c")
|
||||
(8 "1lfjgshk8i9vch92p5wgc9r90j3phw79aa7gbai89w183b2z6b7j")))
|
||||
(8 "1lfjgshk8i9vch92p5wgc9r90j3phw79aa7gbai89w183b2z6b7j")
|
||||
(9 "1vn36dzd9g4y1h3jiss6418crla0rbcd0d6wwsyv9d5l7aaxlp74")
|
||||
(10 "0amfmvbzsand7bdypylkjdpcp88fa3cplfshn7vyzv2ff2rdgj52")
|
||||
(11 "0yq24abb4fzfxqnwl20b330sxl9lr9ds0nc4yi30f81l94b1y6aq")
|
||||
(12 "165bff97ffih49vfs4mkr5w3z5gn1w6zfyrf773iajkw6v48kw8h")
|
||||
(13 "1bfmgv3lagbk3aq9a831d29xv7jz4sjq7jhn9hq89limyinvdb67")
|
||||
(14 "1l43dw4kpddn7l41i8wmj406z9abxky1wb3rk8krcys33g4f0kka")
|
||||
(15 "1w40vzadzx019v0zhs4q6yqycrk04x1k8xs6qb73vk7ny4p6jdqv")
|
||||
(16 "0krqqljz4bkp9wrdnwfx51bxkb8rkwf8ivc93as1znx5fr7i96c8")))
|
||||
|
||||
(define (download-patches store count)
|
||||
"Download COUNT Bash patches into store. Return a list of
|
||||
@@ -109,7 +117,8 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
|
||||
"-DSSH_SOURCE_BASHRC")
|
||||
" "))
|
||||
(configure-flags
|
||||
``("--with-installed-readline"
|
||||
``("--without-bash-malloc"
|
||||
"--with-installed-readline"
|
||||
,,(string-append "CPPFLAGS=" cppflags)
|
||||
,(string-append
|
||||
"LDFLAGS=-Wl,-rpath -Wl,"
|
||||
|
||||
@@ -3337,10 +3337,10 @@ data and settings.")
|
||||
texlive-fonts-ec
|
||||
texlive-latex-examplep
|
||||
texlive-hyperref
|
||||
texlive-latex-ms
|
||||
texlive-ms
|
||||
texlive-latex-natbib
|
||||
texlive-bibtex ; style files used by natbib
|
||||
texlive-pgf ; tikz
|
||||
texlive-bibtex ;style files used by natbib
|
||||
texlive-pgf ;tikz
|
||||
texlive-latex-verbatimbox)))
|
||||
("imagemagick" ,imagemagick)))
|
||||
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
|
||||
@@ -13432,7 +13432,7 @@ to an artifact/contaminant file.")
|
||||
(inputs
|
||||
(list openmpi zlib))
|
||||
(native-inputs
|
||||
`(("texlive" ,(texlive-updmap.cfg (list texlive-latex-graphics
|
||||
`(("texlive" ,(texlive-updmap.cfg (list texlive-graphics
|
||||
texlive-fonts-ec
|
||||
texlive-hyperref)))))
|
||||
(home-page "https://www.ebi.ac.uk/~zerbino/velvet/")
|
||||
|
||||
@@ -15,9 +15,8 @@
|
||||
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2021, 2022 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2021 Franck Pérignon <franck.perignon@univ-grenoble-alpes.fr>
|
||||
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -68,15 +67,21 @@
|
||||
(define-public boost
|
||||
(package
|
||||
(name "boost")
|
||||
(version "1.77.0")
|
||||
(version "1.79.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://boostorg.jfrog.io/artifactory/main/release/"
|
||||
version "/source/boost_"
|
||||
(version-with-underscores version) ".tar.bz2"))
|
||||
(patches
|
||||
(list (boost-patch
|
||||
;; 1.79.0 was released with a segmentation fault:
|
||||
;; <https://github.com/boostorg/json/issues/692>.
|
||||
"0001-json-array-erase-relocate.patch" version
|
||||
"1b0izwj8w92imr8ydzrh522syncprpf82n3kcy6apxn6p54b7p0f")))
|
||||
(sha256
|
||||
(base32
|
||||
"0m08hhk3l7zvzajyk39qlw566q3fhixayhc2j11328qf0gy8b7zw"))))
|
||||
"0fggarccddj6q4ifj3kn7g565rbhn4ia1vd45fxb7y57a6fmhpa7"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list icu4c zlib))
|
||||
(native-inputs
|
||||
|
||||
@@ -1035,9 +1035,7 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
|
||||
;; own packages.
|
||||
(match (%current-system)
|
||||
((or "i686-linux" "x86_64-linux")
|
||||
`(("linux-libre-headers" ,%bootstrap-linux-libre-headers)
|
||||
("bootstrap-mescc-tools" ,%bootstrap-mescc-tools)
|
||||
("mes" ,%bootstrap-mes)))
|
||||
`(("linux-libre-headers" ,%bootstrap-linux-libre-headers)))
|
||||
(_
|
||||
`(("libc" ,%bootstrap-glibc)
|
||||
("gcc" ,%bootstrap-gcc)
|
||||
|
||||
+14
-55
@@ -1390,44 +1390,27 @@ same arguments.")
|
||||
(define-public python-pytest-xdist
|
||||
(package
|
||||
(name "python-pytest-xdist")
|
||||
(version "2.1.0")
|
||||
(version "2.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest-xdist" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wh6pn66nncfs6ay0n863bgyriwsgppn8flx5l7551j1lbqkinc2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Remove pre-compiled .pyc files from source.
|
||||
(for-each delete-file-recursively
|
||||
(find-files "." "__pycache__" #:directories? #t))
|
||||
(for-each delete-file (find-files "." "\\.pyc$"))
|
||||
#t))))
|
||||
"1psf5dqxvc38qzxvc305mkg5xpdmdkbkkfiyqlmdnkgh7z5dx025"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; Lots of tests fail.
|
||||
#:phases
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-setup-py
|
||||
(lambda _
|
||||
;; Relax pytest requirement.
|
||||
(substitute* "setup.py"
|
||||
(("pytest>=6\\.0\\.0") "pytest"))))
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "pytest" "-vv"
|
||||
"-n" (number->string (parallel-job-count)))))))))
|
||||
(native-inputs
|
||||
(list python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-execnet python-pytest python-py python-pytest-forked))
|
||||
(home-page
|
||||
"https://github.com/pytest-dev/pytest-xdist")
|
||||
(native-inputs (list python-setuptools-scm))
|
||||
(propagated-inputs (list python-execnet python-pytest python-py
|
||||
python-pytest-forked))
|
||||
(home-page "https://github.com/pytest-dev/pytest-xdist")
|
||||
(synopsis
|
||||
"Plugin for py.test with distributed testing and loop-on-failing modes")
|
||||
(description
|
||||
@@ -1439,25 +1422,6 @@ program code to a remote location, executes there, and then syncs the
|
||||
result back.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python2-pytest-xdist
|
||||
(package-with-python2 python-pytest-xdist))
|
||||
|
||||
(define-public python-pytest-xdist-next
|
||||
(package/inherit python-pytest-xdist
|
||||
(name "python-pytest-xdist")
|
||||
(version "2.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest-xdist" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19cy57jrf3pwi7x6fnbxryjvqagsl0yv736jnynvr3yqhlpxxv78"))))
|
||||
(propagated-inputs
|
||||
`(("python-execnet" ,python-execnet)
|
||||
("python-pytest" ,python-pytest-6)
|
||||
("python-pytest-forked" ,python-pytest-forked)))))
|
||||
|
||||
(define-public python-pytest-timeout
|
||||
(package
|
||||
(name "python-pytest-timeout")
|
||||
@@ -1491,7 +1455,7 @@ timeout has been exceeded.")
|
||||
(define-public python-pytest-forked
|
||||
(package
|
||||
(name "python-pytest-forked")
|
||||
(version "1.3.0")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch) ;for tests
|
||||
@@ -1501,29 +1465,24 @@ timeout has been exceeded.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1aip4kx50ynvykl7kq2mlbsi82vx701dvb8mm64lhp69bbv105rc"))))
|
||||
"0j9bbjny7h3b4fig6l26f26c697r67mm62fzdd9m9rqyy2bmnqjs"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-setuptools-scm
|
||||
(add-before 'build 'pretend-version
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("use_scm_version=True")
|
||||
(format #f "version=~s" ,version))
|
||||
(("setup_requires=\\['setuptools_scm'\\],.*")
|
||||
""))))
|
||||
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" ,version)))
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "pytest" "-vv")))))))
|
||||
(native-inputs
|
||||
;; XXX: The bootstrap variant of Pytest is used to ensure the
|
||||
;; 'hypothesis' plugin is not in the environment (due to
|
||||
;; <http://issues.guix.gnu.org/25235>), which would cause the test suite
|
||||
;; to fail (see: https://github.com/pytest-dev/pytest-forked/issues/54).
|
||||
`(("python-pytest" ,python-pytest-bootstrap)))
|
||||
(list python-pytest-bootstrap python-setuptools-scm))
|
||||
(home-page "https://github.com/pytest-dev/pytest-forked")
|
||||
(synopsis "Pytest plugin to run tests in isolated forked subprocesses")
|
||||
(description "This package provides a Pytest plugin which enables running
|
||||
|
||||
+417
-912
File diff suppressed because it is too large
Load Diff
@@ -35,6 +35,7 @@
|
||||
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
|
||||
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2021 Ahmad Jarara <git@ajarara.io>
|
||||
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -232,43 +233,28 @@ adding and extracting files to/from a tar archive.")
|
||||
(define-public gzip
|
||||
(package
|
||||
(name "gzip")
|
||||
(version "1.10")
|
||||
(version "1.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gzip/gzip-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1h6p374d3j8d4cdfydzls021xa2yby8myc0h8d6m8bc7k6ncq9c4"))))
|
||||
"0mhrx5wk9gazmxdw7vmbpg036yzqqhsww6h12kwf2dzn37jh6pnf"))))
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "General file (de)compression (using lzw)")
|
||||
(arguments
|
||||
;; FIXME: The test suite wants `less', and optionally Perl.
|
||||
'(#:tests? #f
|
||||
#:configure-flags '("ac_cv_prog_LESS=\"less\"")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-for-glibc-2.28
|
||||
(lambda _
|
||||
;; Adjust the bundled gnulib to work with glibc 2.28. See e.g.
|
||||
;; "m4-gnulib-libio.patch". This is a phase rather than patch
|
||||
;; or snippet to work around <https://bugs.gnu.org/32347>.
|
||||
(substitute* (find-files "lib" "\\.c$")
|
||||
(("#if defined _IO_ftrylockfile")
|
||||
"#if defined _IO_EOF_SEEN"))
|
||||
(substitute* "lib/stdio-impl.h"
|
||||
(("^/\\* BSD stdio derived implementations")
|
||||
(string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n"
|
||||
"# define _IO_IN_BACKUP 0x100\n"
|
||||
"#endif\n\n"
|
||||
"/* BSD stdio derived implementations")))
|
||||
#t))
|
||||
(add-after 'unpack 'use-absolute-name-of-gzip
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "gunzip.in"
|
||||
(("exec gzip")
|
||||
(("exec 'gzip'")
|
||||
(string-append "exec " (assoc-ref outputs "out")
|
||||
"/bin/gzip")))
|
||||
#t)))))
|
||||
"/bin/gzip"))))))))
|
||||
(description
|
||||
"GNU Gzip provides data compression and decompression utilities; the
|
||||
typical extension is \".gz\". Unlike the \"zip\" format, it compresses a single
|
||||
@@ -1578,28 +1564,21 @@ or junctions, and always follows hard links.")
|
||||
(define-public zstd
|
||||
(package
|
||||
(name "zstd")
|
||||
(version "1.5.0")
|
||||
(version "1.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/facebook/zstd/releases/download/"
|
||||
"v" version "/zstd-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "150y541303vnvfhd8wkbih00lfvvm98rd12yijwlbkqzg3xgp52i"))))
|
||||
(base32 "1l1zm1imcc2ixayykyh4y421shdj3pzp7g2xm2k2js8jmipxahkw"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" ;1.2MiB executables and documentation
|
||||
(outputs '("out" ;1.5MiB executables and documentation
|
||||
"lib" ;1.2MiB shared library and headers
|
||||
"static")) ;1.2MiB static library
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-bogus-check
|
||||
(lambda _
|
||||
;; lib/Makefile falsely claims that no .pc file can be created.
|
||||
(substitute* "lib/Makefile"
|
||||
(("error configured .*dir ")
|
||||
"true "))
|
||||
#t))
|
||||
(add-after 'unpack 'patch-command-file-names
|
||||
;; Don't require hard requirements to be in $PATH.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
||||
@@ -61,14 +61,14 @@
|
||||
(define-public curl
|
||||
(package
|
||||
(name "curl")
|
||||
(version "7.79.1")
|
||||
(version "7.82.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://curl.haxx.se/download/curl-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"129n9hi7rbg3s112chyadhp4y27ppb5i65n12wm77aw2255zf1h6"))
|
||||
"0g2qibjxq3397myjkw3asyxqvhym1pl3qw7jaii9dc04ppbi5aha"))
|
||||
(patches (search-patches "curl-use-ssl-cert-env.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
|
||||
+14
-15
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flasher.co.il>
|
||||
;;; Copyright © 2016, 2017, 2022 Efraim Flashner <efraim@flasher.co.il>
|
||||
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -43,25 +43,25 @@
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
;; Note: The test-suite *requires* /dev/pts among the
|
||||
;; `build-chroot-dirs' of the build daemon when
|
||||
;; building in a chroot. See
|
||||
;; <http://thread.gmane.org/gmane.linux.distributions.nixos/1036>
|
||||
;; for details.
|
||||
(if (and (directory-exists? "/dev/pts")
|
||||
(directory-exists? "/proc"))
|
||||
(when tests?
|
||||
(if (and (directory-exists? "/dev/pts")
|
||||
(directory-exists? "/proc"))
|
||||
(begin
|
||||
;; Provide `runtest' with a log name, otherwise it
|
||||
;; tries to run `whoami', which fails when in a chroot.
|
||||
(setenv "LOGNAME" "guix-builder")
|
||||
;; Provide `runtest' with a log name, otherwise it
|
||||
;; tries to run `whoami', which fails when in a chroot.
|
||||
(setenv "LOGNAME" "guix-builder")
|
||||
|
||||
;; The test-suite needs to have a non-empty stdin:
|
||||
;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
|
||||
(unless (zero? (system "make check < /dev/zero"))
|
||||
(error "make check failed")))
|
||||
(display "test suite cannot be run, skipping\n"))
|
||||
#t))
|
||||
;; The test-suite needs to have a non-empty stdin:
|
||||
;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
|
||||
(unless (zero? (system "make check < /dev/zero"))
|
||||
(error "make check failed")))
|
||||
(display "test suite cannot be run, skipping\n")))))
|
||||
(add-after 'install 'post-install
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Use the right `expect' binary.
|
||||
@@ -71,8 +71,7 @@
|
||||
(("^mypath.*$" all)
|
||||
(string-append all
|
||||
"export PATH="
|
||||
expect "/bin:$PATH\n")))
|
||||
#t))))))
|
||||
expect "/bin:$PATH\n")))))))))
|
||||
(home-page
|
||||
"https://www.gnu.org/software/dejagnu/")
|
||||
(synopsis "GNU software testing framework")
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cpio)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages file) ;for 'file-next'
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages gnome)
|
||||
@@ -172,11 +171,6 @@
|
||||
dtc
|
||||
e2fsprogs
|
||||
ffmpeg
|
||||
|
||||
;; XXX: Must be the same version as python-magic uses;
|
||||
;; remove when 'file' is updated.
|
||||
file-next
|
||||
|
||||
fpc
|
||||
gettext-minimal
|
||||
ghostscript
|
||||
|
||||
@@ -391,9 +391,7 @@ size and quality.")
|
||||
" and not test_urls_cache_is_cleared")))
|
||||
(format #t "test suite not run~%")))))))
|
||||
(native-inputs
|
||||
(list python-django python-setuptools-scm
|
||||
;; For tests.
|
||||
python-pytest-xdist-next))
|
||||
(list python-django python-setuptools-scm python-pytest-xdist))
|
||||
(propagated-inputs
|
||||
(list python-pytest))
|
||||
(home-page "https://pytest-django.readthedocs.org/")
|
||||
|
||||
@@ -159,7 +159,6 @@ a continuous layout.")
|
||||
("exiv2" ,exiv2)
|
||||
("graphicsmagick" ,graphicsmagick)
|
||||
("poppler" ,poppler)
|
||||
("poppler-data" ,poppler-data)
|
||||
("util-linux-lib" ,util-linux "lib"))) ; for libuuid
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
|
||||
+26
-20
@@ -4,7 +4,7 @@
|
||||
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2021 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2021 Andrew Whatson <whatson@gmail.com>
|
||||
@@ -153,7 +153,8 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||
"18hgwvmywh6a5jh38szjmg3hg2r4v5lb6r3ydc3rd8cp9wg61i5c"))))))
|
||||
|
||||
(define-public docbook-xml-4.1.2
|
||||
(package (inherit docbook-xml)
|
||||
(package
|
||||
(inherit docbook-xml)
|
||||
(version "4.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@@ -167,13 +168,22 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((source (assoc-ref %build-inputs "source"))
|
||||
(unzip (string-append (assoc-ref %build-inputs "unzip")
|
||||
"/bin/unzip"))
|
||||
(dtd (string-append (assoc-ref %outputs "out")
|
||||
"/xml/dtd/docbook")))
|
||||
(let* ((source (assoc-ref %build-inputs "source"))
|
||||
(unzip (string-append (assoc-ref %build-inputs "unzip")
|
||||
"/bin/unzip"))
|
||||
(xmlcatalog (string-append (assoc-ref %build-inputs "libxml2")
|
||||
"/bin/xmlcatalog"))
|
||||
(dtd (string-append (assoc-ref %outputs "out")
|
||||
"/xml/dtd/docbook"))
|
||||
(catalog.xml (string-append dtd "/catalog.xml")))
|
||||
(mkdir-p dtd)
|
||||
(invoke unzip source "-d" dtd)))))))
|
||||
(invoke unzip source "-d" dtd)
|
||||
;; Create a minimal XML catalog, to use with libxml2 tools.
|
||||
(invoke xmlcatalog "--noout" "--create" catalog.xml)
|
||||
(invoke xmlcatalog "--noout" "--add" "public"
|
||||
"-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||
(string-append dtd "/docbookx.dtd") catalog.xml)))))
|
||||
(native-inputs (list libxml2 unzip))))
|
||||
|
||||
(define-public docbook-xsl
|
||||
(package
|
||||
@@ -467,29 +477,25 @@ the in DocBook SGML DTDs.")
|
||||
texlive-latex-changebar
|
||||
texlive-latex-colortbl
|
||||
texlive-latex-fancybox
|
||||
texlive-latex-fancyhdr
|
||||
texlive-latex-fancyvrb
|
||||
texlive-fancyhdr
|
||||
texlive-fancyvrb
|
||||
texlive-latex-float
|
||||
texlive-latex-footmisc
|
||||
texlive-hyperref
|
||||
texlive-latex-jknapltx
|
||||
|
||||
;; TODO: Use non-deprecated name on
|
||||
;; next rebuild cycle.
|
||||
texlive-latex-listings
|
||||
|
||||
texlive-listings
|
||||
texlive-latex-multirow
|
||||
texlive-latex-overpic
|
||||
texlive-latex-pdfpages
|
||||
texlive-latex-refcount
|
||||
texlive-latex-subfigure
|
||||
texlive-latex-titlesec
|
||||
texlive-pdfpages
|
||||
texlive-refcount
|
||||
texlive-subfigure
|
||||
texlive-titlesec
|
||||
texlive-wasysym
|
||||
|
||||
texlive-fonts-rsfs
|
||||
texlive-stmaryrd
|
||||
|
||||
texlive-generic-iftex)))
|
||||
texlive-iftex)))
|
||||
("imagemagick" ,imagemagick) ;for convert
|
||||
("inkscape" ,inkscape) ;for svg conversion
|
||||
("docbook" ,docbook-xml)
|
||||
|
||||
+6
-6
@@ -1,7 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2019, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -22,31 +22,31 @@
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages compression))
|
||||
|
||||
(define-public ed
|
||||
(package
|
||||
(name "ed")
|
||||
(version "1.17")
|
||||
(version "1.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/ed/ed-"
|
||||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0m2yrkfjjraakxr98nsiakqrn351h99n706x9asgmdi57j43kpki"))))
|
||||
"0krb8rsb0cd8mgz0c5pqgnjbbrj7zjl7mf9099r8gi80k2nyza5c"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list lzip))
|
||||
(arguments
|
||||
'(#:configure-flags '("CC=gcc")
|
||||
`(#:configure-flags (list ,(string-append "CC=" (cc-for-target)))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'patch-source-shebangs 'patch-test-suite
|
||||
(lambda _
|
||||
(substitute* "testsuite/check.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
#t)))))
|
||||
(("/bin/sh") (which "sh"))))))))
|
||||
(home-page "https://www.gnu.org/software/ed/")
|
||||
(synopsis "Line-oriented text editor")
|
||||
(description
|
||||
|
||||
+2
-14
@@ -32,14 +32,14 @@
|
||||
(define-public file
|
||||
(package
|
||||
(name "file")
|
||||
(version "5.39")
|
||||
(version "5.41")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.astron.com/pub/file/file-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lgs2w2sgamzf27kz5h7pajz7v62554q21fbs11n4mfrfrm2hpgh"))))
|
||||
"0gv027jgdr0hdkw7m9ck0nwhq583f4aa7vnz4dzdbxv4ng3k5r8k"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; When cross-compiling, this package depends upon a native install of
|
||||
@@ -58,15 +58,3 @@ extensions to tell you the type of a file, but looks at the actual contents
|
||||
of the file. This package provides the libmagic library.")
|
||||
(license bsd-2)
|
||||
(home-page "https://www.darwinsys.com/file/")))
|
||||
|
||||
(define-public file-next
|
||||
(package
|
||||
(inherit file)
|
||||
(version "5.41")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://ftp.astron.com/pub/file/file-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gv027jgdr0hdkw7m9ck0nwhq583f4aa7vnz4dzdbxv4ng3k5r8k"))))))
|
||||
|
||||
+2
-2
@@ -260,7 +260,7 @@ also known as DXTn or DXTC) for Mesa.")
|
||||
(define-public mesa
|
||||
(package
|
||||
(name "mesa")
|
||||
(version "21.3.2")
|
||||
(version "21.3.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -272,7 +272,7 @@ also known as DXTn or DXTC) for Mesa.")
|
||||
version "/mesa-" version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1g96y59bw10ml8h4jl259g41jdmf5ww3jbwqpz1sprq7hgxvmrz2"))
|
||||
"0ggw3s514z6szasbiy4dv5mdi689121yy2xly2g21gv1mavrvyml"))
|
||||
(patches
|
||||
(search-patches "mesa-skip-tests.patch"))))
|
||||
(build-system meson-build-system)
|
||||
|
||||
@@ -427,14 +427,14 @@ be used when cross-compiling."
|
||||
(define gobject-introspection
|
||||
(package
|
||||
(name "gobject-introspection")
|
||||
(version "1.66.1")
|
||||
(version "1.68.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/"
|
||||
"gobject-introspection/" (version-major+minor version)
|
||||
"/gobject-introspection-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "078n0q7b6z682mf4irclrksm73cyixq295mqnqifl9plwmgaai6x"))
|
||||
(base32 "09sawnv3xj9pzgy2qrrk87dl3jibfphnswb61i5bh0d2h4j28afj"))
|
||||
(patches (search-patches
|
||||
"gobject-introspection-cc.patch"
|
||||
"gobject-introspection-girepository.patch"
|
||||
@@ -483,11 +483,7 @@ be used when cross-compiling."
|
||||
("bison" ,bison)
|
||||
("flex" ,flex)))
|
||||
(inputs
|
||||
`(,@(if (%current-target-system)
|
||||
`(("python" ,python))
|
||||
`(("bison" ,bison)
|
||||
("flex" ,flex)
|
||||
("python" ,python-wrapper)))
|
||||
`(("python" ,python)
|
||||
("zlib" ,zlib)))
|
||||
(propagated-inputs
|
||||
(list glib
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix build-system mozilla)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages autotools)
|
||||
@@ -113,7 +114,7 @@
|
||||
(substitute* '("js/src/config/milestone.pl")
|
||||
(("defined\\(@TEMPLATE_FILE)") "@TEMPLATE_FILE"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system mozilla-build-system)
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
@@ -388,15 +389,7 @@ in C/C++.")
|
||||
;; This is important because without it gjs will segfault during the
|
||||
;; configure phase. With jemalloc only the standalone mozjs console
|
||||
;; will work.
|
||||
"--disable-jemalloc"
|
||||
;; Mozilla deviates from Autotools conventions due to historical
|
||||
;; reasons.
|
||||
#$@(if (%current-target-system)
|
||||
#~(#$(string-append
|
||||
"--host="
|
||||
(nix-system->gnu-triplet (%current-system)))
|
||||
#$(string-append "--target=" (%current-target-system)))
|
||||
#~())))
|
||||
"--disable-jemalloc"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Make sure pkg-config will be found.
|
||||
@@ -902,7 +895,7 @@ in C/C++.")
|
||||
(name "icecat")
|
||||
(version %icecat-version)
|
||||
(source icecat-source)
|
||||
(build-system gnu-build-system)
|
||||
(build-system mozilla-build-system)
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("bzip2" ,bzip2)
|
||||
|
||||
@@ -188,7 +188,7 @@ tools have full access to view and control running applications.")
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python-wrapper)))
|
||||
(inputs
|
||||
`(("bash-minimal" ,bash-minimal)
|
||||
`(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap
|
||||
("drm" ,libdrm)
|
||||
("ghostscript" ,ghostscript)
|
||||
("libspectre" ,libspectre)
|
||||
@@ -638,9 +638,8 @@ highlighting and other features typical of a source code editor.")
|
||||
(with-directory-excursion "docs"
|
||||
(substitute* "meson.build"
|
||||
(("http://docbook.sourceforge.net/release/xsl/current/")
|
||||
(string-append (assoc-ref ,(if (%current-target-system)
|
||||
'(or native-inputs inputs)
|
||||
'inputs) "docbook-xsl")
|
||||
(string-append (assoc-ref (or native-inputs inputs)
|
||||
"docbook-xsl")
|
||||
"/xml/xsl/docbook-xsl-1.79.2/")))
|
||||
(substitute* (find-files "." "\\.xml$")
|
||||
(("http://www.oasis-open.org/docbook/xml/4\\.3/")
|
||||
@@ -654,11 +653,11 @@ highlighting and other features typical of a source code editor.")
|
||||
(("\\[ 'pixbuf-fail', \\['conform', 'slow'\\], \\],")
|
||||
""))))
|
||||
;; The slow tests take longer than the specified timeout.
|
||||
,@(if (any (cute string=? <> (%current-system))
|
||||
'("armhf-linux" "aarch64-linux"))
|
||||
,@(if (target-arm? (%current-system))
|
||||
'((replace 'check
|
||||
(lambda _
|
||||
(invoke "meson" "test" "--timeout-multiplier" "5"))))
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "meson" "test" "--timeout-multiplier" "5")))))
|
||||
'()))))
|
||||
(propagated-inputs
|
||||
(list ;; Required by gdk-pixbuf-2.0.pc
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016, 2017, 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
@@ -34,14 +34,14 @@
|
||||
(define-public libidn
|
||||
(package
|
||||
(name "libidn")
|
||||
(version "1.37")
|
||||
(version "1.38")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libidn/libidn-" version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hljls9rkilh04dwiwg388wk8djkac8idijrdysqq2nqbh6rg3iw"))))
|
||||
"1xphpfw58il0vb14nvd0rgfkacj76rchv8nr9nqkpkapyx0bh06y"))))
|
||||
(build-system gnu-build-system)
|
||||
;; FIXME: No Java and C# libraries are currently built.
|
||||
(arguments
|
||||
@@ -60,14 +60,14 @@ Java libraries.")
|
||||
(define-public libidn2
|
||||
(package
|
||||
(name "libidn2")
|
||||
(version "2.3.1")
|
||||
(version "2.3.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libidn/" name "-" version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0b8gsksj2g9f4iywwdma3v4jcg7i9rqvdxfmclwvbf1n72a89xla"))))
|
||||
"14agfrv7lhwba9l20966kmp96ppzbyr9bld9g4shks3qwza0r53n"))))
|
||||
(inputs
|
||||
(list libunistring))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
(define-public libusb
|
||||
(package
|
||||
(name "libusb")
|
||||
(version "1.0.24")
|
||||
(version "1.0.25")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -62,7 +62,7 @@
|
||||
"releases/download/v" version
|
||||
"/libusb-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0amilbi5qncdnrds3ji21vbiz1wvdm1fwp5qrxnk49xkyy2jdzby"))))
|
||||
(base32 "0j88ym7afy4wj3x789zzxsr04asyjy0mw29gf31blzkrg8cyya4a"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; XXX: Enabling udev is now recommended, but eudev indirectly depends on
|
||||
|
||||
@@ -1594,7 +1594,8 @@ which need to be installed separately.")
|
||||
(sha256
|
||||
(base32
|
||||
"1z4jayf69qyyxln1gl6ch4qxfd66ib1g42garnrv2d8i1drl0790"))
|
||||
(patches (search-patches "linux-pam-no-setfsuid.patch"))))
|
||||
(patches (search-patches "linux-pam-unix_chkpwd.patch"
|
||||
"linux-pam-no-setfsuid.patch"))))
|
||||
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
|
||||
@@ -146,8 +146,7 @@ a flexible and convenient way.")
|
||||
(substitute* file
|
||||
(("#! /bin/sh")
|
||||
(string-append "#!" (which "sh")))))
|
||||
(remove file-is-directory?
|
||||
(find-files "src/tests" ".*"))))))
|
||||
(find-files "src/tests")))))
|
||||
(add-after 'unpack 'patch-absolute-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/man.c"
|
||||
@@ -194,10 +193,7 @@ a flexible and convenient way.")
|
||||
'("nroff" "eqn" "neqn" "tbl" "refer" "pic")))
|
||||
;; At run time we should refer to GROFF-MINIMAL, not GROFF (the latter
|
||||
;; pulls in Perl.)
|
||||
#:disallowed-references (list groff)
|
||||
#:modules '((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-1))))
|
||||
#:disallowed-references (list groff)))
|
||||
(native-inputs
|
||||
(list pkg-config flex
|
||||
;; Groff is needed at build time for troff, grops, soelim, etc.
|
||||
|
||||
@@ -5393,6 +5393,8 @@ set.")
|
||||
texlive-caption
|
||||
texlive-cm
|
||||
texlive-etoolbox
|
||||
texlive-fancyhdr
|
||||
texlive-fancyvrb
|
||||
texlive-jknappen
|
||||
texlive-sectsty
|
||||
texlive-tex-gyre
|
||||
@@ -5403,8 +5405,6 @@ set.")
|
||||
texlive-latex-cmap
|
||||
texlive-latex-colortbl
|
||||
texlive-latex-etoc
|
||||
texlive-latex-fancyhdr
|
||||
texlive-latex-fancyvrb
|
||||
texlive-latex-float
|
||||
texlive-latex-fncychap
|
||||
texlive-latex-framed
|
||||
@@ -5422,6 +5422,7 @@ set.")
|
||||
texlive-latex-tocloft
|
||||
texlive-latex-upquote
|
||||
texlive-latex-varwidth
|
||||
texlive-titlesec
|
||||
texlive-ulem
|
||||
texlive-wasysym
|
||||
texlive-wrapfig))))
|
||||
|
||||
@@ -951,7 +951,7 @@ and SSH, and it can use both TCP and UDP as transport mechanisms.")
|
||||
(define-public socat
|
||||
(package
|
||||
(name "socat")
|
||||
(version "1.7.4.1")
|
||||
(version "1.7.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -959,7 +959,7 @@ and SSH, and it can use both TCP and UDP as transport mechanisms.")
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1sbmqqvni3ss9wyay6ik5v81kxffkra80mh4ypgj74g82iba5b1z"))))
|
||||
"01w0hpqf5xmgn40s1ablfd4y67dlrx5y9zlx24spc1qm8h81hwyl"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:tests? #f)) ; no test suite
|
||||
(inputs (list openssl))
|
||||
@@ -2280,7 +2280,7 @@ sockets in Perl.")
|
||||
(inputs
|
||||
(list dbus zlib))
|
||||
(arguments
|
||||
`(#:phases
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
|
||||
+3
-11
@@ -29,6 +29,7 @@
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system mozilla)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages bash)
|
||||
@@ -49,7 +50,7 @@
|
||||
(sha256
|
||||
(base32
|
||||
"1j5b2m8cjlhnnv8sq34587avaagkqvh521w4f95miwgvsn3xlaap"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system mozilla-build-system)
|
||||
(inputs
|
||||
;; For 'compile-et.pl' and 'nspr-config'.
|
||||
(list perl ;for 'compile-et.pl'
|
||||
@@ -69,16 +70,7 @@
|
||||
(list "--disable-static"
|
||||
"--enable-64bit"
|
||||
(string-append "LDFLAGS=-Wl,-rpath="
|
||||
(assoc-ref %outputs "out") "/lib")
|
||||
;; Mozilla deviates from Autotools conventions
|
||||
;; due to historical reasons. Adjust to Mozilla conventions,
|
||||
;; otherwise the Makefile will try to use TARGET-gcc
|
||||
;; as a ‘native’ compiler.
|
||||
,@(if (%current-target-system)
|
||||
`(,(string-append "--host="
|
||||
(nix-system->gnu-triplet (%current-system)))
|
||||
,(string-append "--target=" (%current-target-system)))
|
||||
'()))
|
||||
(assoc-ref %outputs "out") "/lib"))
|
||||
;; Use fixed timestamps for reproducibility.
|
||||
#:make-flags '("SH_DATE='1970-01-01 00:00:01'"
|
||||
;; This is epoch 1 in microseconds.
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
'ls.scm' monkey-patches (ice-9 getopt-long) to allow it to recognize '-1'
|
||||
as a valid option. Unfortunately, monkey patching no longer works with
|
||||
Guile 3.0 due to inlining, so change the test to make do without '-1'.
|
||||
|
||||
diff --git a/tests/core-utils.org b/tests/core-utils.org
|
||||
index d35ede8..22718e3 100644
|
||||
--- a/tests/core-utils.org
|
||||
+++ b/tests/core-utils.org
|
||||
@@ -93,14 +93,11 @@
|
||||
* ls
|
||||
:script:
|
||||
#+begin_src sh
|
||||
- ls -1 tests/data/star
|
||||
+ ls tests/data/star
|
||||
#+end_src
|
||||
:stdout:
|
||||
#+begin_example
|
||||
- 0
|
||||
- 1
|
||||
- 2
|
||||
- 3
|
||||
+ 0 1 2 3
|
||||
#+end_example
|
||||
|
||||
* test-file
|
||||
@@ -1,11 +1,20 @@
|
||||
# Names of libraries included in typelib files are opened by dlopen. Here we
|
||||
# add the full path.
|
||||
#
|
||||
# This patch was provided by Luca Bruno <lucabru@src.gnome.org> for
|
||||
# 'gobject-introspection' 1.40.0 in Nix.
|
||||
#
|
||||
# It has since been updated to work with newer versions of
|
||||
# gobject-introspection.
|
||||
Names of libraries included in typelib files are opened by dlopen.
|
||||
Here we add the full path.
|
||||
|
||||
This patch was provided by Luca Bruno <lucabru@src.gnome.org>,
|
||||
for 'gobject-introspection' 1.40.0 in Nix.
|
||||
|
||||
It has since been updated to work with newer versions of
|
||||
gobject-introspection.
|
||||
---
|
||||
giscanner/scannermain.py | 37 ++++++++++++++++++++++++++++++++++++
|
||||
giscanner/shlibs.py | 30 ++++++++++++++++++++---------
|
||||
giscanner/utils.py | 15 +++++----------
|
||||
tests/scanner/test_shlibs.py | 3 ++-
|
||||
4 files changed, 65 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
|
||||
index 957ba0b7..78f9b11b 100644
|
||||
--- a/giscanner/scannermain.py
|
||||
+++ b/giscanner/scannermain.py
|
||||
@@ -95,6 +95,39 @@ def get_windows_option_group(parser):
|
||||
@@ -48,7 +57,7 @@
|
||||
def _get_option_parser():
|
||||
parser = optparse.OptionParser('%prog [options] sources',
|
||||
version='%prog ' + giscanner.__version__)
|
||||
@@ -205,6 +238,10 @@ match the namespace prefix.""")
|
||||
@@ -214,6 +247,10 @@ match the namespace prefix.""")
|
||||
parser.add_option("", "--filelist",
|
||||
action="store", dest="filelist", default=[],
|
||||
help="file containing headers and sources to be scanned")
|
||||
@@ -59,6 +68,8 @@
|
||||
|
||||
group = get_preprocessor_option_group(parser)
|
||||
parser.add_option_group(group)
|
||||
diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
|
||||
index 9f8ab5df..8aa37c99 100644
|
||||
--- a/giscanner/shlibs.py
|
||||
+++ b/giscanner/shlibs.py
|
||||
@@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
|
||||
@@ -76,7 +87,7 @@
|
||||
# This is a what we do for non-la files. We assume that we are on an
|
||||
# ELF-like system where ldd exists and the soname extracted with ldd is
|
||||
# a filename that can be opened with dlopen().
|
||||
@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries):
|
||||
@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
|
||||
output = output.decode("utf-8", "replace")
|
||||
|
||||
shlibs = resolve_from_ldd_output(libraries, output)
|
||||
@@ -86,7 +97,7 @@
|
||||
|
||||
|
||||
def sanitize_shlib_path(lib):
|
||||
@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib):
|
||||
@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib):
|
||||
# In case we get relative paths on macOS (like @rpath) then we fall
|
||||
# back to the basename as well:
|
||||
# https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
|
||||
@@ -111,7 +122,7 @@
|
||||
if len(patterns) == 0:
|
||||
return []
|
||||
|
||||
@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output):
|
||||
@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output):
|
||||
if line.endswith(':'):
|
||||
continue
|
||||
for word in line.split():
|
||||
@@ -126,10 +137,11 @@
|
||||
if m:
|
||||
del patterns[library]
|
||||
shlibs.append(m.group())
|
||||
|
||||
diff --git a/giscanner/utils.py b/giscanner/utils.py
|
||||
index 45807f17..8a319cd1 100644
|
||||
--- a/giscanner/utils.py
|
||||
+++ b/giscanner/utils.py
|
||||
@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file):
|
||||
@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
|
||||
if dlname is None:
|
||||
return None
|
||||
|
||||
@@ -141,8 +153,7 @@
|
||||
- if libdir is None:
|
||||
- return dlbasename
|
||||
- return libdir + '/' + dlbasename
|
||||
- # From the comments in extract_libtool(), older libtools had
|
||||
- # a path rather than the raw dlname
|
||||
- # Older libtools had a path rather than the raw dlname
|
||||
- return os.path.basename(dlname)
|
||||
+ dlbasename = os.path.basename(dlname)
|
||||
+ libdir = _extract_libdir_field(la_file)
|
||||
@@ -151,10 +162,12 @@
|
||||
+ return libdir + '/' + dlbasename
|
||||
|
||||
|
||||
def extract_libtool(la_file):
|
||||
# Returns arguments for invoking libtool, if applicable, otherwise None
|
||||
diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
|
||||
index a8337c60..7f123103 100644
|
||||
--- a/tests/scanner/test_shlibs.py
|
||||
+++ b/tests/scanner/test_shlibs.py
|
||||
@@ -40,6 +64,7 @@ class TestLddParser(unittest.TestCase):
|
||||
@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase):
|
||||
|
||||
self.assertEqual(
|
||||
sanitize_shlib_path('/foo/bar'),
|
||||
@@ -163,4 +176,7 @@
|
||||
+ '/foo/bar')
|
||||
|
||||
def test_unresolved_library(self):
|
||||
output = ''
|
||||
output = ''
|
||||
--
|
||||
2.33.0
|
||||
|
||||
|
||||
@@ -1,14 +1,22 @@
|
||||
Use gcc as the default C compiler if CC is not set.
|
||||
|
||||
diff -ru gobject-introspection-1.58.1.orig/giscanner/__init__.py gobject-introspection-1.58.1/giscanner/__init__.py
|
||||
--- gobject-introspection-1.58.1.orig/giscanner/__init__.py 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ gobject-introspection-1.58.1/giscanner/__init__.py 2018-12-03 13:33:28.788971299 +0100
|
||||
@@ -22,6 +22,8 @@
|
||||
---
|
||||
giscanner/__init__.py | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/giscanner/__init__.py b/giscanner/__init__.py
|
||||
index 7c2f365a..607fe341 100644
|
||||
--- a/giscanner/__init__.py
|
||||
+++ b/giscanner/__init__.py
|
||||
@@ -21,6 +21,8 @@ import os
|
||||
builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
|
||||
if builddir is not None:
|
||||
__path__.append(os.path.join(builddir, 'giscanner'))
|
||||
__path__.append(os.path.join(builddir, 'giscanner')) # type: ignore # mypy issue #1422
|
||||
+if not 'CC' in os.environ:
|
||||
+ os.environ['CC'] = 'gcc'
|
||||
try:
|
||||
from ._version import __version__
|
||||
except ImportError:
|
||||
--
|
||||
2.33.0
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
unix_chkpwd is designed to have a suid bit, but it's not possible to set it
|
||||
for files in the store. This patch tells unix_pam.so to look for
|
||||
unix_chkpwd in setuid program directory on Guix System.
|
||||
|
||||
--- a/modules/pam_unix/Makefile.in
|
||||
+++ b/modules/pam_unix/Makefile.in
|
||||
@@ -651,1 +651,1 @@
|
||||
- -DCHKPWD_HELPER=\"$(sbindir)/unix_chkpwd\" \
|
||||
+ -DCHKPWD_HELPER=\"/run/setuid-programs/unix_chkpwd\" \
|
||||
@@ -93,6 +93,11 @@ Each database is contained in a specific package output, such as the
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unbundle-pci.ids
|
||||
(lambda* (#:key native-inputs inputs #:allow-other-keys)
|
||||
(copy-file (search-input-file (or native-inputs inputs)
|
||||
"share/hwdata/pci.ids")
|
||||
"pci.ids")))
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; There's no 'configure' script, just a raw makefile.
|
||||
@@ -115,22 +120,29 @@ Each database is contained in a specific package output, such as the
|
||||
(string-append "PREFIX := " (assoc-ref outputs "out")
|
||||
"\n"))
|
||||
(("^MANDIR:=.*$")
|
||||
;; By default the thing tries to automatically
|
||||
;; determine whether to use $prefix/man or
|
||||
;; $prefix/share/man, and wrongly so.
|
||||
;; By default the thing tries to automatically
|
||||
;; determine whether to use $prefix/man or
|
||||
;; $prefix/share/man, and wrongly so.
|
||||
(string-append "MANDIR := " (assoc-ref outputs "out")
|
||||
"/share/man\n"))
|
||||
|
||||
(("^SHARED=.*$")
|
||||
;; Build libpciutils.so.
|
||||
"SHARED := yes\n")
|
||||
|
||||
(("^ZLIB=.*$")
|
||||
;; Ask for zlib support, for 'pci.ids.gz' decompression.
|
||||
"ZLIB := yes\n")
|
||||
|
||||
(("^IDSDIR=.*$")
|
||||
;; Installation directory of 'pci.ids.gz'.
|
||||
"IDSDIR = $(SHAREDIR)/hwdata\n"))))
|
||||
"IDSDIR = $(SHAREDIR)/hwdata\n")
|
||||
|
||||
;; Do not install the update script nor its man page.
|
||||
((".*INSTALL.*update-pciids .*") "")
|
||||
(("update-pciids update-pciids.8 ") "")
|
||||
(("(.*INSTALL.*)update-pciids.8(.*)" _ head tail)
|
||||
(string-append head tail)))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Install the commands, library, and .pc files.
|
||||
@@ -151,7 +163,7 @@ Each database is contained in a specific package output, such as the
|
||||
;; No test suite.
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list which pkg-config))
|
||||
(list `(,hwdata "pci") pkg-config which))
|
||||
(inputs
|
||||
`(,@(if (not (hurd-target?))
|
||||
`(("kmod" ,kmod))
|
||||
|
||||
+81
-65
@@ -82,6 +82,7 @@
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages markup)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages photo)
|
||||
@@ -221,32 +222,48 @@ times. If you have a second page, Flyer Composer can arrange it the same way
|
||||
This package contains only the command line tool. If you like to use the gui,
|
||||
please install the @code{flyer-composer-gui} package.")))
|
||||
|
||||
(define poppler-tests
|
||||
(let ((poppler-version "22.01.0") ; bump when bumping poppler version
|
||||
(revision "0")
|
||||
(commit "0762e0144143e680e24ec8d4c34c46c3716b8713"))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.freedesktop.org/poppler/test.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "poppler-tests"
|
||||
(git-version poppler-version revision commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1nwgwcddj5fiq200p4f07fl0i5f885c1nfzmvpc6q9p55qxp6brv")))))
|
||||
|
||||
(define-public poppler
|
||||
(package
|
||||
(name "poppler")
|
||||
(version "21.07.0")
|
||||
(version "22.01.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://poppler.freedesktop.org/poppler-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1m54hsi8z6c13jdbjwz55flkra1mahmkw2igavbf8p86d2gv4sp2"))))
|
||||
"0giin9klpj7264n4rl8qwvc6rh650ap2qg39bhz431jvdc2r6d3x"))))
|
||||
(build-system cmake-build-system)
|
||||
;; FIXME:
|
||||
;; use libcurl: no
|
||||
(inputs `(("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("libpng" ,libpng)
|
||||
("libtiff" ,libtiff)
|
||||
("lcms" ,lcms)
|
||||
("openjpeg" ,openjpeg)
|
||||
("zlib" ,zlib)
|
||||
|
||||
;; To build poppler-glib (as needed by Evince), we need Cairo and
|
||||
;; GLib. But of course, that Cairo must not depend on Poppler.
|
||||
("cairo" ,cairo-sans-poppler)))
|
||||
(inputs (list fontconfig
|
||||
freetype
|
||||
libjpeg-turbo
|
||||
libpng
|
||||
libtiff
|
||||
lcms
|
||||
nss ;for 'pdfsig'
|
||||
openjpeg
|
||||
poppler-data
|
||||
zlib
|
||||
;; To build poppler-glib (as needed by Evince), we need Cairo and
|
||||
;; GLib. But of course, that Cairo must not depend on Poppler.
|
||||
cairo-sans-poppler))
|
||||
(propagated-inputs
|
||||
;; As per poppler-cairo and poppler-glib.pc.
|
||||
;; XXX: Ideally we'd propagate Cairo too, but that would require a
|
||||
@@ -257,22 +274,20 @@ please install the @code{flyer-composer-gui} package.")))
|
||||
`(,glib "bin") ; glib-mkenums, etc.
|
||||
gobject-introspection))
|
||||
(arguments
|
||||
`(#:tests? #f ;no test data provided with the tarball
|
||||
#:configure-flags
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(lib (string-append out "/lib")))
|
||||
(list "-DENABLE_UNSTABLE_API_ABI_HEADERS=ON" ;to install header files
|
||||
"-DENABLE_ZLIB=ON"
|
||||
"-DENABLE_BOOST=OFF" ;disable Boost to save size
|
||||
(string-append "-DCMAKE_INSTALL_LIBDIR=" lib)
|
||||
(string-append "-DCMAKE_INSTALL_RPATH=" lib)))
|
||||
,@(if (%current-target-system)
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-PKG_CONFIG
|
||||
(lambda _
|
||||
(setenv "PKG_CONFIG" ,(pkg-config-for-target))))))
|
||||
'())))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DENABLE_UNSTABLE_API_ABI_HEADERS=ON" ;to install header files
|
||||
"-DENABLE_ZLIB=ON"
|
||||
"-DENABLE_BOOST=OFF" ;disable Boost to save size
|
||||
(string-append "-DCMAKE_INSTALL_LIBDIR=" #$output "/lib")
|
||||
(string-append "-DCMAKE_INSTALL_RPATH=" #$output "/lib")
|
||||
(string-append "-DTESTDATADIR=" #+poppler-tests))
|
||||
#:phases
|
||||
(if (%current-target-system) #~%standard-phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-PKG_CONFIG
|
||||
(lambda _
|
||||
(setenv "PKG_CONFIG" #$(pkg-config-for-target))))))))
|
||||
(synopsis "PDF rendering library")
|
||||
(description
|
||||
"Poppler is a PDF rendering library based on the xpdf-3.0 code base.")
|
||||
@@ -777,46 +792,47 @@ line tools for batch rendering @command{pdfdraw}, rewriting files
|
||||
|
||||
(define-public qpdf
|
||||
(package
|
||||
(name "qpdf")
|
||||
(version "10.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/qpdf/qpdf/" version
|
||||
"/qpdf-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yw2cpw7ygfd6jlgpwbi8vsnvv9p55zxp9h17x77z2qq733pf8jx"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:disallowed-references (,perl)
|
||||
(name "qpdf")
|
||||
(version "10.6.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/qpdf/qpdf/" version
|
||||
"/qpdf-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07jin19jlcsyxgdxny2ddb08w4kkyl9ivwjw0krn9ncv9wdsa3vg"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:disallowed-references (list perl)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-paths
|
||||
(lambda _
|
||||
(substitute* "make/libtool.mk"
|
||||
(("SHELL=/bin/bash")
|
||||
(string-append "SHELL=" (which "bash"))))
|
||||
(substitute* (append
|
||||
'("qtest/bin/qtest-driver")
|
||||
(find-files "." "\\.test"))
|
||||
(("/usr/bin/env") (which "env")))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
(list pkg-config perl))
|
||||
(propagated-inputs
|
||||
;; In Requires.private of libqpdf.pc.
|
||||
(list libjpeg-turbo zlib))
|
||||
(synopsis "Command-line tools and library for transforming PDF files")
|
||||
(description
|
||||
"QPDF is a command-line program that does structural, content-preserving
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "make/libtool.mk"
|
||||
(("SHELL=/bin/bash")
|
||||
(string-append "SHELL="
|
||||
(search-input-file inputs "/bin/bash"))))
|
||||
(substitute*
|
||||
(append '("qtest/bin/qtest-driver")
|
||||
(find-files "." "\\.test"))
|
||||
(("/usr/bin/env") (which "env"))))))))
|
||||
(native-inputs
|
||||
(list perl pkg-config))
|
||||
(propagated-inputs
|
||||
;; In Requires.private of libqpdf.pc.
|
||||
(list libjpeg-turbo zlib))
|
||||
(synopsis "Command-line tools and library for transforming PDF files")
|
||||
(description
|
||||
"QPDF is a command-line program that does structural, content-preserving
|
||||
transformations on PDF files. It could have been called something like
|
||||
pdf-to-pdf. It includes support for merging and splitting PDFs and to
|
||||
manipulate the list of pages in a PDF file. It is not a PDF viewer or a
|
||||
program capable of converting PDF into other formats.")
|
||||
;; Prior to the 7.0 release, QPDF was licensed under Artistic 2.0.
|
||||
;; Users can still choose to use the old license at their option.
|
||||
(license (list license:asl2.0 license:clarified-artistic))
|
||||
(home-page "http://qpdf.sourceforge.net/")))
|
||||
;; Prior to the 7.0 release, QPDF was licensed under Artistic 2.0.
|
||||
;; Users can still choose to use the old license at their option.
|
||||
(license (list license:asl2.0 license:clarified-artistic))
|
||||
(home-page "http://qpdf.sourceforge.net/")))
|
||||
|
||||
(define-public qpdfview
|
||||
(package
|
||||
|
||||
@@ -302,19 +302,19 @@ colors, styles, options and details.")
|
||||
texlive-epsf
|
||||
texlive-etoolbox
|
||||
texlive-fonts-ec
|
||||
texlive-generic-infwarerr
|
||||
texlive-generic-kvdefinekeys
|
||||
texlive-infwarerr
|
||||
texlive-kvdefinekeys
|
||||
texlive-grfext
|
||||
texlive-hyperref
|
||||
texlive-latex-base
|
||||
texlive-latex-geometry
|
||||
texlive-latex-graphics
|
||||
texlive-latex-kvoptions
|
||||
texlive-graphics
|
||||
texlive-kvoptions
|
||||
texlive-latex-media9
|
||||
texlive-latex-ocgx2
|
||||
texlive-latex-pdftexcmds
|
||||
texlive-oberdiek ;for ifluatex
|
||||
texlive-latex-ocgx2
|
||||
texlive-latex-parskip
|
||||
texlive-pdftexcmds
|
||||
texlive-tex-texinfo))))
|
||||
(inputs
|
||||
(list fftw
|
||||
|
||||
@@ -112,9 +112,9 @@ interfaces with pytest.")
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "pytest")))))))
|
||||
(native-inputs
|
||||
(list python-pytest-flake8 python-pytest-xdist-next python-tabulate))
|
||||
(list python-pytest-flake8 python-pytest-xdist python-tabulate))
|
||||
(propagated-inputs
|
||||
(list python-pytest-6 python-six))
|
||||
(list python-pytest python-six))
|
||||
(home-page "https://github.com/nicoulaj/pytest-csv")
|
||||
(synopsis "CSV reporter for Pytest")
|
||||
(description "This package provides a plugin for Pytest that enables a
|
||||
|
||||
+46
-15
@@ -5900,7 +5900,7 @@ readable format.")
|
||||
texlive-capt-of
|
||||
texlive-cm-super
|
||||
texlive-fonts-ec
|
||||
texlive-generic-iftex
|
||||
texlive-iftex
|
||||
texlive-pdftex
|
||||
texlive-amsfonts
|
||||
texlive-latex-cmap
|
||||
@@ -5908,13 +5908,13 @@ readable format.")
|
||||
texlive-latex-eqparbox
|
||||
texlive-etoolbox
|
||||
texlive-latex-expdlist
|
||||
texlive-latex-fancyhdr
|
||||
texlive-latex-fancyvrb
|
||||
texlive-fancyhdr
|
||||
texlive-fancyvrb
|
||||
texlive-latex-fncychap
|
||||
texlive-latex-float
|
||||
texlive-latex-framed
|
||||
texlive-latex-geometry
|
||||
texlive-latex-graphics
|
||||
texlive-graphics
|
||||
texlive-hyperref
|
||||
texlive-latex-mdwtools
|
||||
texlive-latex-multirow
|
||||
@@ -5924,7 +5924,7 @@ readable format.")
|
||||
texlive-latex-preview
|
||||
texlive-latex-tabulary
|
||||
texlive-latex-threeparttable
|
||||
texlive-latex-titlesec
|
||||
texlive-titlesec
|
||||
texlive-latex-trimspaces
|
||||
texlive-latex-ucs
|
||||
texlive-latex-upquote
|
||||
@@ -8998,20 +8998,20 @@ computing.")
|
||||
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
|
||||
texlive-capt-of
|
||||
texlive-fonts-ec
|
||||
texlive-generic-iftex
|
||||
texlive-iftex
|
||||
texlive-pdftex
|
||||
texlive-latex-cmap
|
||||
texlive-latex-environ
|
||||
texlive-latex-eqparbox
|
||||
texlive-etoolbox
|
||||
texlive-latex-expdlist
|
||||
texlive-latex-fancyhdr
|
||||
texlive-latex-fancyvrb
|
||||
texlive-fancyhdr
|
||||
texlive-fancyvrb
|
||||
texlive-latex-fncychap
|
||||
texlive-latex-float
|
||||
texlive-latex-framed
|
||||
texlive-latex-geometry
|
||||
texlive-latex-graphics
|
||||
texlive-graphics
|
||||
texlive-hyperref
|
||||
texlive-latex-mdwtools
|
||||
texlive-latex-multirow
|
||||
@@ -9021,7 +9021,7 @@ computing.")
|
||||
texlive-latex-preview
|
||||
texlive-latex-tabulary
|
||||
texlive-latex-threeparttable
|
||||
texlive-latex-titlesec
|
||||
texlive-titlesec
|
||||
texlive-latex-trimspaces
|
||||
texlive-latex-ucs
|
||||
texlive-latex-upquote
|
||||
@@ -12798,7 +12798,40 @@ time.")
|
||||
;;("python-pyppeteer" ,python-pyppeteer)
|
||||
("python-pytest" ,python-pytest)
|
||||
("python-pytest-cov" ,python-pytest-cov)
|
||||
("python-pytest-dependency" ,python-pytest-dependency)))
|
||||
("python-pytest-dependency" ,python-pytest-dependency)
|
||||
("texlive" ,(texlive-updmap.cfg
|
||||
(list texlive-adjustbox
|
||||
texlive-amsfonts
|
||||
texlive-booktabs
|
||||
texlive-caption
|
||||
texlive-eurosym
|
||||
texlive-fancyvrb
|
||||
texlive-fonts-rsfs
|
||||
texlive-fontspec
|
||||
texlive-grffile
|
||||
texlive-hyperref
|
||||
texlive-iftex
|
||||
texlive-jknappen
|
||||
texlive-latex-amsmath
|
||||
texlive-latex-enumitem
|
||||
texlive-latex-float
|
||||
texlive-latex-geometry
|
||||
texlive-latex-jknapltx
|
||||
texlive-latex-parskip
|
||||
texlive-latex-trimspaces
|
||||
texlive-latex-ucs
|
||||
texlive-latex-upquote
|
||||
texlive-lm
|
||||
texlive-mathpazo
|
||||
texlive-ms
|
||||
texlive-oberdiek
|
||||
texlive-stringenc
|
||||
texlive-tcolorbox
|
||||
texlive-titling
|
||||
texlive-tools
|
||||
texlive-ulem
|
||||
texlive-xcolor
|
||||
texlive-zapfding)))))
|
||||
(propagated-inputs
|
||||
(list python-bleach
|
||||
python-defusedxml
|
||||
@@ -15549,9 +15582,7 @@ syntax highlighting, markdown and more to the terminal.")
|
||||
(list which))
|
||||
(inputs
|
||||
;; python-magic needs to be able to find libmagic.so.
|
||||
;; Use a newer version because 5.39 returns bogus for some archives
|
||||
;; (notably Chromium .crx extensions), which breaks e.g. 'diffoscope'.
|
||||
(list file-next))
|
||||
(list file))
|
||||
(synopsis "File type identification using libmagic")
|
||||
(description
|
||||
"This module uses ctypes to access the libmagic file type
|
||||
@@ -26766,7 +26797,7 @@ By default it uses the open Python vulnerability database Safety DB.")
|
||||
(native-inputs
|
||||
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
|
||||
texlive-fonts-ec
|
||||
texlive-generic-iftex
|
||||
texlive-iftex
|
||||
texlive-hyperref
|
||||
texlive-oberdiek
|
||||
texlive-lm
|
||||
|
||||
@@ -503,7 +503,7 @@ used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).")
|
||||
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
|
||||
texlive-latex-amsmath
|
||||
;; TODO: Add newunicodechar.
|
||||
texlive-latex-graphics)))
|
||||
texlive-graphics)))
|
||||
("xorg-server" ,xorg-server-for-tests)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
@@ -711,7 +711,7 @@ to access different radio hardware.")
|
||||
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
|
||||
texlive-latex-amsmath
|
||||
;; TODO: Add newunicodechar.
|
||||
texlive-latex-graphics)))))
|
||||
texlive-graphics)))))
|
||||
(inputs
|
||||
(list fftwf))
|
||||
(arguments
|
||||
|
||||
@@ -5209,14 +5209,14 @@ across multiple CPU cores.")
|
||||
(define-public ruby-parser
|
||||
(package
|
||||
(name "ruby-parser")
|
||||
(version "3.0.0.0")
|
||||
(version "3.1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "parser" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jixakyzmy0j5c1rb0fjrrdhgnyryvrr6vgcybs14jfw09akv5ml"))))
|
||||
"08q20ckhn58m49lccf93p0yv7pkc7hymmcz3di762kb658d5fd38"))))
|
||||
(build-system ruby-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; tests not included in gem
|
||||
|
||||
+22
-20
@@ -111,23 +111,24 @@ joystick, and graphics hardware.")
|
||||
(license license:lgpl2.1)))
|
||||
|
||||
(define-public sdl2
|
||||
(package (inherit sdl)
|
||||
(package
|
||||
(inherit sdl)
|
||||
(name "sdl2")
|
||||
(version "2.0.14")
|
||||
(version "2.0.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://libsdl.org/release/SDL2-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g1jahknv5r4yhh1xq5sf0md20ybdw1zh1i15lry26sq39bmn8fq"))))
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://libsdl.org/release/SDL2-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"073iwmggkvvl82fssqb7xzbb4awraprjig6zxav0p8dz7pbhrm4l"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments sdl)
|
||||
((#:configure-flags flags)
|
||||
`(append '("--disable-wayland-shared" "--enable-video-kmsdrm"
|
||||
"--disable-kmsdrm-shared")
|
||||
,flags))
|
||||
,flags))
|
||||
((#:make-flags flags ''())
|
||||
`(cons*
|
||||
;; SDL dlopens libudev, so make sure it is in rpath. This overrides
|
||||
@@ -141,16 +142,17 @@ joystick, and graphics hardware.")
|
||||
;; experience a bug where input events are doubled.
|
||||
;;
|
||||
;; For more information, see: https://dev.solus-project.com/T1721
|
||||
(append `(("dbus" ,dbus)
|
||||
("eudev" ,eudev) ; for discovering input devices
|
||||
("fcitx" ,fcitx) ; helps with CJK input
|
||||
("glib" ,glib)
|
||||
("ibus" ,ibus)
|
||||
("libxkbcommon" ,libxkbcommon)
|
||||
("libxcursor" ,libxcursor) ; enables X11 cursor support
|
||||
("wayland" ,wayland)
|
||||
("wayland-protocols" ,wayland-protocols))
|
||||
(package-inputs sdl)))
|
||||
(modify-inputs (package-inputs sdl)
|
||||
(prepend
|
||||
dbus
|
||||
eudev ;for discovering input devices
|
||||
fcitx ;helps with CJK input
|
||||
glib
|
||||
ibus
|
||||
libxkbcommon
|
||||
libxcursor
|
||||
wayland ;enables X11 cursor support
|
||||
wayland-protocols)))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public libmikmod
|
||||
|
||||
+4
-23
@@ -876,29 +876,19 @@ scripts.")
|
||||
(define-public gash
|
||||
(package
|
||||
(name "gash")
|
||||
(version "0.2.0")
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "mirror://savannah/gash/gash-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"13m0yz5h9nj3x40mr6wr5xcpq1lscndfwcicw3skrz801025hhgf"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Allow builds with Guile 3.0.
|
||||
(substitute* "configure"
|
||||
(("search=\"2\\.2 2\\.0\"")
|
||||
"search=\"3.0 2.2 2.0\""))
|
||||
#t))))
|
||||
"1af2jz4a6rzsshi379wzw4b8d04zvfamdhfzip2pgmk821lyqsjl"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
(list guile-3.0))
|
||||
(arguments
|
||||
'(#:make-flags '("XFAIL_TESTS=tests/redirects.org")))
|
||||
(home-page "https://savannah.nongnu.org/projects/gash/")
|
||||
(synopsis "POSIX-compatible shell written in Guile Scheme")
|
||||
(description "Gash is a POSIX-compatible shell written in Guile
|
||||
@@ -910,23 +900,14 @@ as part of the Guix bootstrap process.")
|
||||
(define-public gash-utils
|
||||
(package
|
||||
(name "gash-utils")
|
||||
(version "0.1.0")
|
||||
(version "0.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://savannah/gash/gash-utils-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ib2p52qmbac5n0s5bys4fiwim461ps546976l1n7pwbs0avh7fk"))
|
||||
(patches (search-patches "gash-utils-ls-test.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Allow builds with Guile 3.0.
|
||||
(substitute* "configure"
|
||||
(("search=\"2\\.2 2\\.0\"")
|
||||
"search=\"3.0 2.2 2.0\""))
|
||||
#t))))
|
||||
"18ylb54l9lmaynapbncc1zhbsirhihznrxihhxgqrpqgyjkfbap6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
|
||||
@@ -360,11 +360,11 @@ as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\
|
||||
texlive-grfext
|
||||
texlive-amsfonts
|
||||
texlive-latex-base
|
||||
texlive-latex-fancyvrb
|
||||
texlive-latex-graphics
|
||||
texlive-fancyvrb
|
||||
texlive-graphics
|
||||
texlive-hyperref
|
||||
texlive-oberdiek
|
||||
texlive-latex-tools
|
||||
texlive-tools
|
||||
texlive-latex-upquote
|
||||
texlive-url
|
||||
texlive-latex-xkeyval)))
|
||||
|
||||
+1411
-687
File diff suppressed because it is too large
Load Diff
@@ -89,6 +89,7 @@
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-crypto)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages qt)
|
||||
@@ -483,6 +484,7 @@ interface.")
|
||||
python-jinja2
|
||||
python-markupsafe
|
||||
python-pygments
|
||||
python-pynacl
|
||||
python-pypeg2
|
||||
python-pyyaml
|
||||
;; FIXME: python-pyqtwebengine needs to come before python-pyqt so
|
||||
@@ -499,6 +501,11 @@ interface.")
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-systemdir
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "qutebrowser/utils/standarddir.py"
|
||||
(("/usr/share") (string-append out "/share"))))))
|
||||
(add-before 'check 'set-env-offscreen
|
||||
(lambda _
|
||||
(setenv "QT_QPA_PLATFORM" "offscreen")))
|
||||
@@ -523,6 +530,12 @@ interface.")
|
||||
(("Exec=qutebrowser")
|
||||
(string-append "Exec=" out "/bin/qutebrowser")))
|
||||
(install-file "misc/org.qutebrowser.qutebrowser.desktop" app))))
|
||||
(add-after 'install 'install-userscripts
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(scripts (string-append out "/share/qutebrowser/userscripts")))
|
||||
(mkdir-p scripts)
|
||||
(copy-recursively "misc/userscripts" scripts))))
|
||||
(add-after 'wrap 'wrap-qt-process-path
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
||||
@@ -3995,10 +3995,7 @@ extension to the X11 protocol. It includes:
|
||||
(inputs
|
||||
(list libx11 xkbcomp-intermediate))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python)))
|
||||
(list gettext-minimal libxslt perl pkg-config python))
|
||||
(home-page "https://www.x.org/wiki/")
|
||||
(synopsis "Xorg XKB configuration files")
|
||||
(description
|
||||
|
||||
+8
-2
@@ -21,6 +21,7 @@
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu system setuid)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-9)
|
||||
@@ -375,8 +376,13 @@ strings or string-valued gexps."
|
||||
|
||||
(define pam-root-service-type
|
||||
(service-type (name 'pam)
|
||||
(extensions (list (service-extension etc-service-type
|
||||
/etc-entry)))
|
||||
(extensions
|
||||
(list (service-extension
|
||||
setuid-program-service-type
|
||||
(lambda (_)
|
||||
(list (file-like->setuid-program
|
||||
(file-append linux-pam "/sbin/unix_chkpwd")))))
|
||||
(service-extension etc-service-type /etc-entry)))
|
||||
|
||||
;; Arguments include <pam-service> as well as procedures.
|
||||
(compose concatenate)
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (guix build-system mozilla)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system)
|
||||
#:use-module (guix utils)
|
||||
#:export (mozilla-build-system))
|
||||
|
||||
;;
|
||||
;; Build procedure for packages using Autotools with the Mozillian conventions
|
||||
;; for --target, --host and --build, which are different from the GNU
|
||||
;; conventions.
|
||||
;;
|
||||
;; Code:
|
||||
|
||||
(define* (lower-mozilla name #:key system target #:allow-other-keys
|
||||
#:rest arguments)
|
||||
(define lower (build-system-lower gnu-build-system))
|
||||
(if target
|
||||
(apply lower
|
||||
(substitute-keyword-arguments arguments
|
||||
;; Override --target and --host to what Mozillian configure
|
||||
;; scripts expect.
|
||||
((#:configure-flags configure-flags ''())
|
||||
`(cons* ,(string-append "--target=" target)
|
||||
,(string-append "--host=" (nix-system->gnu-triplet system))
|
||||
,configure-flags))))
|
||||
(apply lower name arguments))) ; not cross-compiling
|
||||
|
||||
(define mozilla-build-system
|
||||
(build-system
|
||||
(name 'mozilla)
|
||||
(description "The build system for Mozilla software using the Autotools")
|
||||
(lower lower-mozilla)))
|
||||
|
||||
;;; mozilla.scm ends here
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2020 Timothy Sample <samplet@ngyro.com>
|
||||
;;; Copyright © 2020, 2022 Timothy Sample <samplet@ngyro.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -25,17 +25,18 @@
|
||||
|
||||
(define-module (guix build gnu-bootstrap)
|
||||
#:use-module (guix build utils)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (system base compile)
|
||||
#:export (bootstrap-configure
|
||||
bootstrap-build
|
||||
bootstrap-install))
|
||||
|
||||
(define (bootstrap-configure version modules scripts)
|
||||
(define (bootstrap-configure name version modules scripts)
|
||||
"Create a procedure that configures an early bootstrap package. The
|
||||
procedure will search the MODULES directory and configure all of the
|
||||
'.in' files with VERSION. It will then search the SCRIPTS directory and
|
||||
configure all of the '.in' files with the bootstrap Guile and its module
|
||||
and object directories."
|
||||
procedure will search each directory in MODULES and configure all of the
|
||||
'.in' files with NAME and VERSION. It will then search the SCRIPTS
|
||||
directory and configure all of the '.in' files with the bootstrap
|
||||
Guile and its module and object directories."
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(guile-dir (assoc-ref inputs "guile"))
|
||||
@@ -50,10 +51,10 @@ and object directories."
|
||||
(let ((target (string-drop-right template 3)))
|
||||
(copy-file template target)
|
||||
(substitute* target
|
||||
(("@PACKAGE_NAME@") name)
|
||||
(("@VERSION@") version))))
|
||||
(find-files modules
|
||||
(lambda (fn st)
|
||||
(string-suffix? ".in" fn))))
|
||||
(append-map (lambda (dir) (find-files dir "\\.in$"))
|
||||
modules))
|
||||
(for-each (lambda (template)
|
||||
(format #t "Configuring ~a~%" template)
|
||||
(let ((target (string-drop-right template 3)))
|
||||
@@ -70,7 +71,7 @@ and object directories."
|
||||
|
||||
(define (bootstrap-build modules)
|
||||
"Create a procedure that builds an early bootstrap package. The
|
||||
procedure will search the MODULES directory and compile all of the
|
||||
procedure will search each directory in MODULES and compile all of the
|
||||
'.scm' files."
|
||||
(lambda _
|
||||
(add-to-load-path (getcwd))
|
||||
@@ -80,13 +81,15 @@ procedure will search the MODULES directory and compile all of the
|
||||
(dir (dirname scm)))
|
||||
(format #t "Compiling ~a~%" scm)
|
||||
(compile-file scm #:output-file go)))
|
||||
(find-files modules "\\.scm$"))
|
||||
(append-map (lambda (dir) (find-files dir "\\.scm$"))
|
||||
modules))
|
||||
#t))
|
||||
|
||||
(define (bootstrap-install modules scripts)
|
||||
"Create a procedure that installs an early bootstrap package. The
|
||||
procedure will install all of the '.scm' and '.go' files in the MODULES
|
||||
directory, and all the executable files in the SCRIPTS directory."
|
||||
procedure will install all of the '.scm' and '.go' files in each of the
|
||||
directories in MODULES, and all the executable files in the SCRIPTS
|
||||
directory."
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(guile-dir (assoc-ref inputs "guile"))
|
||||
@@ -104,7 +107,8 @@ directory, and all the executable files in the SCRIPTS directory."
|
||||
(install-file scm (string-append moddir "/" dir))
|
||||
(format #t "Installing ~a~%" go)
|
||||
(install-file go (string-append godir "/" dir))))
|
||||
(find-files modules "\\.scm$"))
|
||||
(append-map (lambda (dir) (find-files dir "\\.scm$"))
|
||||
modules))
|
||||
(for-each (lambda (script)
|
||||
(format #t "Installing ~a~%" script)
|
||||
(install-file script (string-append out "/bin")))
|
||||
|
||||
@@ -91,15 +91,6 @@ If it is unknown, make an educated guess."
|
||||
#:install-plan (mod-install-plan (apply guess-mod-name arguments))
|
||||
arguments))
|
||||
|
||||
(define %png-magic-bytes
|
||||
;; Magic bytes of PNG images, see ‘5.2 PNG signatures’ in
|
||||
;; ‘Portable Network Graphics (PNG) Specification (Second Edition)’
|
||||
;; on <https://www.w3.org/TR/PNG/>.
|
||||
#vu8(137 80 78 71 13 10 26 10))
|
||||
|
||||
(define png-file?
|
||||
((@@ (guix build utils) file-header-match) %png-magic-bytes))
|
||||
|
||||
(define* (minimise-png #:key inputs native-inputs #:allow-other-keys)
|
||||
"Minimise PNG images found in the working directory."
|
||||
(define optipng (which "optipng"))
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
'("QTWEBENGINEPROCESS_PATH" = regular
|
||||
"/lib/qt5/libexec/QtWebEngineProcess"))))
|
||||
|
||||
(define* (wrap-qt-program* program #:key inputs output-dir
|
||||
(define* (wrap-qt-program* program #:key sh inputs output-dir
|
||||
qt-wrap-excluded-inputs)
|
||||
|
||||
(define input-directories
|
||||
@@ -106,9 +106,9 @@
|
||||
(cons output-dir input-directories)
|
||||
output-dir)))
|
||||
(when (not (null? vars-to-wrap))
|
||||
(apply wrap-program program vars-to-wrap))))
|
||||
(apply wrap-program program #:sh sh vars-to-wrap))))
|
||||
|
||||
(define* (wrap-qt-program program-name #:key inputs output
|
||||
(define* (wrap-qt-program program-name #:key (sh (which "bash")) inputs output
|
||||
(qt-wrap-excluded-inputs %qt-wrap-excluded-inputs))
|
||||
"Wrap the specified program (which must reside in the OUTPUT's \"/bin\"
|
||||
directory) with suitably set environment variables.
|
||||
@@ -116,10 +116,11 @@ directory) with suitably set environment variables.
|
||||
This is like qt-build-systems's phase \"qt-wrap\", but only the named program
|
||||
is wrapped."
|
||||
(wrap-qt-program* (string-append output "/bin/" program-name)
|
||||
#:sh sh
|
||||
#:output-dir output #:inputs inputs
|
||||
#:qt-wrap-excluded-inputs qt-wrap-excluded-inputs))
|
||||
|
||||
(define* (wrap-all-qt-programs #:key inputs outputs
|
||||
(define* (wrap-all-qt-programs #:key (sh (which "bash")) inputs outputs
|
||||
(qt-wrap-excluded-outputs '())
|
||||
(qt-wrap-excluded-inputs %qt-wrap-excluded-inputs)
|
||||
#:allow-other-keys)
|
||||
@@ -148,6 +149,7 @@ add a dependency of that output on Qt."
|
||||
((output . output-dir)
|
||||
(unless (member output qt-wrap-excluded-outputs)
|
||||
(for-each (cut wrap-qt-program* <>
|
||||
#:sh sh
|
||||
#:output-dir output-dir #:inputs inputs
|
||||
#:qt-wrap-excluded-inputs qt-wrap-excluded-inputs)
|
||||
(find-files-to-wrap output-dir))))))
|
||||
|
||||
@@ -62,6 +62,8 @@
|
||||
symbolic-link?
|
||||
call-with-temporary-output-file
|
||||
call-with-ascii-input-file
|
||||
file-header-match
|
||||
png-file?
|
||||
elf-file?
|
||||
ar-file?
|
||||
gzip-file?
|
||||
@@ -291,6 +293,15 @@ with the bytes in HEADER, a bytevector."
|
||||
#f ;FILE is a directory
|
||||
(apply throw args))))))
|
||||
|
||||
(define %png-magic-bytes
|
||||
;; Magic bytes of PNG images, see ‘5.2 PNG signatures’ in
|
||||
;; ‘Portable Network Graphics (PNG) Specification (Second Edition)’
|
||||
;; on <https://www.w3.org/TR/PNG/>.
|
||||
#vu8(137 80 78 71 13 10 26 10))
|
||||
|
||||
(define png-file?
|
||||
(file-header-match %png-magic-bytes))
|
||||
|
||||
(define %elf-magic-bytes
|
||||
;; Magic bytes of ELF files. See <elf.h>.
|
||||
(u8-list->bytevector (map char->integer (string->list "\x7FELF"))))
|
||||
|
||||
@@ -587,7 +587,6 @@ or \"bash-minimal\" is not in its inputs. 'wrap-script' is not supported."
|
||||
(('wrap-program _ . _)
|
||||
(list (report-wrap-program-error package 'wrap-program)))
|
||||
;; Wrapper of 'wrap-program' for Qt programs.
|
||||
;; TODO #:sh is not yet supported but probably will be.
|
||||
(('wrap-qt-program _ '#:sh . _) '())
|
||||
(('wrap-qt-program _ . _)
|
||||
(list (report-wrap-program-error package 'wrap-qt-program)))
|
||||
|
||||
@@ -1716,12 +1716,6 @@ the entries in MANIFEST."
|
||||
(force-output))))))
|
||||
|
||||
(gexp->derivation "manual-database" build
|
||||
|
||||
;; Work around GDBM 1.13 issue whereby uninitialized bytes
|
||||
;; get written to disk:
|
||||
;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29654#23>.
|
||||
#:env-vars `(("MALLOC_PERTURB_" . "1"))
|
||||
|
||||
#:substitutable? #f
|
||||
#:local-build? #t
|
||||
#:properties
|
||||
|
||||
Reference in New Issue
Block a user