mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-11 17:44:07 +02:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ea9401bf1e | |||
| 39240c6a87 | |||
| 35f20275c0 | |||
| 3f83561fdf | |||
| c76a119d42 | |||
| 20e8690310 | |||
| 9e1e42aa90 |
+3
-7
@@ -42,13 +42,9 @@
|
|||||||
;; For use with 'bug-reference-prog-mode'. Extra bug-reference
|
;; For use with 'bug-reference-prog-mode'. Extra bug-reference
|
||||||
;; configuration should be done in your Emacs user configuration file;
|
;; configuration should be done in your Emacs user configuration file;
|
||||||
;; refer to (info (guix) The Perfect Setup).
|
;; refer to (info (guix) The Perfect Setup).
|
||||||
(eval . (setq-local
|
(bug-reference-bug-regexp
|
||||||
;; #8545, guix/guix#8545, guix/guix!8545, but not !8545
|
. "\\(<https?://\\bugs\\.gnu\\.org/\\([0-9]+\\)>\\)")
|
||||||
bug-reference-bug-regexp
|
(bug-reference-url-format . "https://issues.guix.gnu.org/%s")
|
||||||
(rx (group (or (seq (zero-or-more "guix/guix") "#")
|
|
||||||
(seq (one-or-more "guix/guix") "!"))
|
|
||||||
(group (one-or-more digit))))))
|
|
||||||
(bug-reference-url-format . "https://codeberg.org/guix/guix/issues/%s")
|
|
||||||
|
|
||||||
(eval . (add-to-list 'completion-ignored-extensions ".go"))
|
(eval . (add-to-list 'completion-ignored-extensions ".go"))
|
||||||
|
|
||||||
|
|||||||
@@ -16,8 +16,6 @@
|
|||||||
( ;; primary: "D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F"
|
( ;; primary: "D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F"
|
||||||
"01FD 85F4 1A7B 7F82 0583 06A5 935E BE07 36DC 857E"
|
"01FD 85F4 1A7B 7F82 0583 06A5 935E BE07 36DC 857E"
|
||||||
(name "avp"))
|
(name "avp"))
|
||||||
("5D54 CF25 57B2 38E8 8DC1 80A2 2D22 3241 0AB7 4043"
|
|
||||||
(name "baleine"))
|
|
||||||
( ;; primary: "34FF 38BC D151 25A6 E340 A0B5 3453 2F9F AFCA 8B8E"
|
( ;; primary: "34FF 38BC D151 25A6 E340 A0B5 3453 2F9F AFCA 8B8E"
|
||||||
"A3A4 B419 0074 087C A7DE 5698 BC45 CA67 E2F8 D007"
|
"A3A4 B419 0074 087C A7DE 5698 BC45 CA67 E2F8 D007"
|
||||||
(name "bavier"))
|
(name "bavier"))
|
||||||
|
|||||||
+6
-16
@@ -32,7 +32,6 @@ gnu/packages/assembly\.scm @guix/build-tools
|
|||||||
gnu/packages/autogen\.scm @guix/build-tools
|
gnu/packages/autogen\.scm @guix/build-tools
|
||||||
gnu/packages/autotools\.scm @guix/build-tools
|
gnu/packages/autotools\.scm @guix/build-tools
|
||||||
gnu/packages/bison\.scm @guix/build-tools
|
gnu/packages/bison\.scm @guix/build-tools
|
||||||
gnu/packages/compiler-tools\.scm @guix/build-tools
|
|
||||||
gnu/packages/m4\.scm @guix/build-tools
|
gnu/packages/m4\.scm @guix/build-tools
|
||||||
gnu/packages/oyacc\.scm @guix/build-tools
|
gnu/packages/oyacc\.scm @guix/build-tools
|
||||||
gnu/packages/re2c\.scm @guix/build-tools
|
gnu/packages/re2c\.scm @guix/build-tools
|
||||||
@@ -69,7 +68,6 @@ guix/discovery\.scm @guix/core
|
|||||||
guix/docker\.scm @guix/core
|
guix/docker\.scm @guix/core
|
||||||
guix/download\.scm @guix/core
|
guix/download\.scm @guix/core
|
||||||
guix/elf\.scm @guix/core
|
guix/elf\.scm @guix/core
|
||||||
guix/fossil-download\.scm @guix/core
|
|
||||||
guix/ftp-client\.scm @guix/core
|
guix/ftp-client\.scm @guix/core
|
||||||
guix/gexp\.scm @guix/core
|
guix/gexp\.scm @guix/core
|
||||||
guix/git-authenticate\.scm @guix/core
|
guix/git-authenticate\.scm @guix/core
|
||||||
@@ -162,8 +160,6 @@ gnu/system/examples/bare-bones\.tmpl @guix/documentation
|
|||||||
gnu/system/examples/lightweight-desktop\.tmpl @guix/documentation
|
gnu/system/examples/lightweight-desktop\.tmpl @guix/documentation
|
||||||
gnu/system/examples/desktop\.tmpl @guix/documentation
|
gnu/system/examples/desktop\.tmpl @guix/documentation
|
||||||
|
|
||||||
gnu/packages/dotnet\.scm @guix/dotnet
|
|
||||||
|
|
||||||
gnu/packages/electronics\.scm @guix/electronics
|
gnu/packages/electronics\.scm @guix/electronics
|
||||||
gnu/packages/hdl\.scm @guix/electronics
|
gnu/packages/hdl\.scm @guix/electronics
|
||||||
gnu/packages/libftdi\.scm @guix/electronics
|
gnu/packages/libftdi\.scm @guix/electronics
|
||||||
@@ -182,7 +178,6 @@ guix/scripts/import/elpa\.scm @guix/emacs
|
|||||||
tests/import/elpa\.scm @guix/emacs
|
tests/import/elpa\.scm @guix/emacs
|
||||||
|
|
||||||
gnu/packages/bootloaders\.scm @guix/embedded
|
gnu/packages/bootloaders\.scm @guix/embedded
|
||||||
gnu/packages/coreboot\.scm @guix/embedded
|
|
||||||
gnu/packages/firmware\.scm @guix/embedded
|
gnu/packages/firmware\.scm @guix/embedded
|
||||||
|
|
||||||
gnu/packages/emulators\.scm @guix/games
|
gnu/packages/emulators\.scm @guix/games
|
||||||
@@ -267,7 +262,6 @@ gnu/installer(\.scm$|/) @guix/installer
|
|||||||
gnu/packages/clojure\.scm @guix/java
|
gnu/packages/clojure\.scm @guix/java
|
||||||
gnu/packages/java(-.+|)\.scm$ @guix/java
|
gnu/packages/java(-.+|)\.scm$ @guix/java
|
||||||
gnu/packages/maven(-.+|)\.scm$ @guix/java
|
gnu/packages/maven(-.+|)\.scm$ @guix/java
|
||||||
gnu/packages/netbeans\.scm @guix/java
|
|
||||||
guix/build/ant-build-system\.scm @guix/java
|
guix/build/ant-build-system\.scm @guix/java
|
||||||
guix/build/clojure-build-system\.scm @guix/java
|
guix/build/clojure-build-system\.scm @guix/java
|
||||||
guix/build/clojure-utils\.scm @guix/java
|
guix/build/clojure-utils\.scm @guix/java
|
||||||
@@ -278,7 +272,6 @@ guix/build-system/ant\.scm @guix/java
|
|||||||
guix/build-system/clojure\.scm @guix/java
|
guix/build-system/clojure\.scm @guix/java
|
||||||
guix/build-system/maven\.scm @guix/java
|
guix/build-system/maven\.scm @guix/java
|
||||||
|
|
||||||
gnu/packages/javascript\.scm @guix/javascript
|
|
||||||
gnu/packages/node-xyz\.scm @guix/javascript
|
gnu/packages/node-xyz\.scm @guix/javascript
|
||||||
gnu/packages/node\.scm @guix/javascript
|
gnu/packages/node\.scm @guix/javascript
|
||||||
guix/build-system/node\.scm @guix/javascript
|
guix/build-system/node\.scm @guix/javascript
|
||||||
@@ -292,12 +285,12 @@ guix/build-system/julia\.scm @guix/julia
|
|||||||
|
|
||||||
gnu/packages/(kde)(-.+|)\.scm$ @guix/kde
|
gnu/packages/(kde)(-.+|)\.scm$ @guix/kde
|
||||||
|
|
||||||
gnu/build/linux-modules\.scm @guix/linux-libre
|
gnu/build/linux-modules\.scm @guix/kernel
|
||||||
gnu/packages/aux-files/linux-libre.*$ @guix/linux-libre
|
gnu/packages/aux-files/linux-libre.*$ @guix/kernel
|
||||||
gnu/packages/linux\.scm @guix/linux-libre
|
gnu/packages/linux\.scm @guix/kernel
|
||||||
gnu/tests/linux-modules\.scm @guix/linux-libre
|
gnu/tests/linux-modules\.scm @guix/kernel
|
||||||
guix/build/linux-module-build-system\.scm @guix/linux-libre
|
guix/build/linux-module-build-system\.scm @guix/kernel
|
||||||
guix/build-system/linux-module\.scm @guix/linux-libre
|
guix/build-system/linux-module\.scm @guix/kernel
|
||||||
|
|
||||||
gnu/packages/lisp(-.+|)\.scm$ @guix/lisp
|
gnu/packages/lisp(-.+|)\.scm$ @guix/lisp
|
||||||
guix/build/asdf-build-system\.scm @guix/lisp
|
guix/build/asdf-build-system\.scm @guix/lisp
|
||||||
@@ -324,7 +317,6 @@ gnu/packages/tor-browsers\.scm @guix/mozilla
|
|||||||
|
|
||||||
gnu/packages/ocaml\.scm @guix/ocaml
|
gnu/packages/ocaml\.scm @guix/ocaml
|
||||||
gnu/packages/coq\.scm @guix/ocaml
|
gnu/packages/coq\.scm @guix/ocaml
|
||||||
gnu/packages/rocq\.scm @guix/ocaml
|
|
||||||
guix/build/ocaml-build-system\.scm @guix/ocaml
|
guix/build/ocaml-build-system\.scm @guix/ocaml
|
||||||
guix/build/dune-build-system\.scm @guix/ocaml
|
guix/build/dune-build-system\.scm @guix/ocaml
|
||||||
guix/build-system/ocaml\.scm @guix/ocaml
|
guix/build-system/ocaml\.scm @guix/ocaml
|
||||||
@@ -341,7 +333,6 @@ guix/build-system/rakudo\.scm @guix/perl
|
|||||||
guix/import/cpan\.scm @guix/perl
|
guix/import/cpan\.scm @guix/perl
|
||||||
guix/scripts/import/cpan\.scm @guix/perl
|
guix/scripts/import/cpan\.scm @guix/perl
|
||||||
|
|
||||||
gnu/packages/aux-files/python/.*\.py$ @guix/python
|
|
||||||
gnu/packages/django\.scm @guix/python
|
gnu/packages/django\.scm @guix/python
|
||||||
gnu/packages/jupyter\.scm @guix/python
|
gnu/packages/jupyter\.scm @guix/python
|
||||||
gnu/packages/python(-.+|)\.scm$ @guix/python
|
gnu/packages/python(-.+|)\.scm$ @guix/python
|
||||||
@@ -493,7 +484,6 @@ gnu/services/version-control\.scm @guix/vcs
|
|||||||
gnu/tests/version-control\.scm @guix/vcs
|
gnu/tests/version-control\.scm @guix/vcs
|
||||||
guix/build/bzr\.scm @guix/vcs
|
guix/build/bzr\.scm @guix/vcs
|
||||||
guix/build/cvs\.scm @guix/vcs
|
guix/build/cvs\.scm @guix/vcs
|
||||||
guix/build/fossil\.scm @guix/vcs
|
|
||||||
guix/build/git\.scm @guix/vcs
|
guix/build/git\.scm @guix/vcs
|
||||||
guix/build/hg\.scm @guix/vcs
|
guix/build/hg\.scm @guix/vcs
|
||||||
guix/build/svn\.scm @guix/vcs
|
guix/build/svn\.scm @guix/vcs
|
||||||
|
|||||||
@@ -104,7 +104,6 @@ MODULES = \
|
|||||||
guix/discovery.scm \
|
guix/discovery.scm \
|
||||||
guix/android-repo-download.scm \
|
guix/android-repo-download.scm \
|
||||||
guix/bzr-download.scm \
|
guix/bzr-download.scm \
|
||||||
guix/fossil-download.scm \
|
|
||||||
guix/git-download.scm \
|
guix/git-download.scm \
|
||||||
guix/hg-download.scm \
|
guix/hg-download.scm \
|
||||||
guix/hash.scm \
|
guix/hash.scm \
|
||||||
@@ -237,7 +236,6 @@ MODULES = \
|
|||||||
guix/build/asdf-build-system.scm \
|
guix/build/asdf-build-system.scm \
|
||||||
guix/build/bzr.scm \
|
guix/build/bzr.scm \
|
||||||
guix/build/copy-build-system.scm \
|
guix/build/copy-build-system.scm \
|
||||||
guix/build/fossil.scm \
|
|
||||||
guix/build/git.scm \
|
guix/build/git.scm \
|
||||||
guix/build/hg.scm \
|
guix/build/hg.scm \
|
||||||
guix/build/glib-or-gtk-build-system.scm \
|
guix/build/glib-or-gtk-build-system.scm \
|
||||||
@@ -457,8 +455,6 @@ AUX_FILES = \
|
|||||||
gnu/packages/aux-files/findclass.php \
|
gnu/packages/aux-files/findclass.php \
|
||||||
gnu/packages/aux-files/guix.vim \
|
gnu/packages/aux-files/guix.vim \
|
||||||
gnu/packages/aux-files/guix-nvim.vim \
|
gnu/packages/aux-files/guix-nvim.vim \
|
||||||
gnu/packages/aux-files/linux-libre/7.0-arm64.conf \
|
|
||||||
gnu/packages/aux-files/linux-libre/7.0-x86_64.conf \
|
|
||||||
gnu/packages/aux-files/linux-libre/6.19-arm64.conf \
|
gnu/packages/aux-files/linux-libre/6.19-arm64.conf \
|
||||||
gnu/packages/aux-files/linux-libre/6.19-i686.conf \
|
gnu/packages/aux-files/linux-libre/6.19-i686.conf \
|
||||||
gnu/packages/aux-files/linux-libre/6.19-x86_64.conf \
|
gnu/packages/aux-files/linux-libre/6.19-x86_64.conf \
|
||||||
@@ -488,7 +484,6 @@ AUX_FILES = \
|
|||||||
gnu/packages/aux-files/linux-libre/5.10-x86_64.conf \
|
gnu/packages/aux-files/linux-libre/5.10-x86_64.conf \
|
||||||
gnu/packages/aux-files/ovmf/51-edk2-ovmf-2m-raw-x64-nosb.json \
|
gnu/packages/aux-files/ovmf/51-edk2-ovmf-2m-raw-x64-nosb.json \
|
||||||
gnu/packages/aux-files/pack-audit.c \
|
gnu/packages/aux-files/pack-audit.c \
|
||||||
gnu/packages/aux-files/python/pytest_guix.py \
|
|
||||||
gnu/packages/aux-files/python/sanity-check.py \
|
gnu/packages/aux-files/python/sanity-check.py \
|
||||||
gnu/packages/aux-files/python/sitecustomize.py \
|
gnu/packages/aux-files/python/sitecustomize.py \
|
||||||
gnu/packages/aux-files/renpy/renpy.in \
|
gnu/packages/aux-files/renpy/renpy.in \
|
||||||
|
|||||||
@@ -18,10 +18,6 @@ Please send Guix bug reports to bug-guix@gnu.org.
|
|||||||
** Distribution
|
** Distribution
|
||||||
*** GNOME updated to version 48
|
*** GNOME updated to version 48
|
||||||
*** New service for Fossil SCM
|
*** New service for Fossil SCM
|
||||||
*** TeX Live updated to 2026.1
|
|
||||||
|
|
||||||
** Programming interfaces
|
|
||||||
*** New (guix fossil-download) module, for fetching Fossil repositories
|
|
||||||
|
|
||||||
* Changes in 1.5.0 (since 1.4.0)
|
* Changes in 1.5.0 (since 1.4.0)
|
||||||
** Package management
|
** Package management
|
||||||
|
|||||||
@@ -120,7 +120,6 @@ running 'guix-daemon $extra_options'" >&2
|
|||||||
"@abs_top_builddir@/pre-inst-env" \
|
"@abs_top_builddir@/pre-inst-env" \
|
||||||
"@abs_top_builddir@/guix-daemon" \
|
"@abs_top_builddir@/guix-daemon" \
|
||||||
$extra_options \
|
$extra_options \
|
||||||
--allow-aslr \
|
|
||||||
--substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" &
|
--substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" &
|
||||||
|
|
||||||
daemon_pid=$!
|
daemon_pid=$!
|
||||||
|
|||||||
+23
-41
@@ -1,5 +1,5 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2019-2026 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2019-2025 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||||
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
|
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
|
||||||
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
|
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
|
||||||
@@ -324,31 +324,17 @@ actual file name."
|
|||||||
((('span ('@ ('class "category")) ;raw Texinfo 6.8
|
((('span ('@ ('class "category")) ;raw Texinfo 6.8
|
||||||
(? string-or-entity?) ...) rest ...)
|
(? string-or-entity?) ...) rest ...)
|
||||||
#t)
|
#t)
|
||||||
((('span ;Texinfo 6, post-processed
|
((('span ('@ ('class "symbol-definition-category"))
|
||||||
('@ ('class "symbol-definition-category"))
|
(? string-or-entity?) ...) rest ...)
|
||||||
(? string-or-entity?) ...) rest ...)
|
|
||||||
#t)
|
|
||||||
((('span ;Texinfo 7
|
|
||||||
('@ ('class "category-def")) _ ...)
|
|
||||||
('span ('strong ('@ ('class "def-name")) _ ...)
|
|
||||||
_ ...)
|
|
||||||
rest ...)
|
|
||||||
#t)
|
#t)
|
||||||
(x
|
(x
|
||||||
#f))))
|
#f))))
|
||||||
|
|
||||||
(define (definition-class? class)
|
|
||||||
;; Return true for "deffn def-line", "deftp def-line", etc.
|
|
||||||
(string-suffix? " def-line" class))
|
|
||||||
|
|
||||||
(let ((shtml (call-with-input-file file html->shtml)))
|
(let ((shtml (call-with-input-file file html->shtml)))
|
||||||
(let loop ((shtml shtml)
|
(let loop ((shtml shtml)
|
||||||
(anchors anchors))
|
(anchors anchors))
|
||||||
(match shtml
|
(match shtml
|
||||||
((or ('dt ('@ ('id id) _ ...) rest ...) ;Texinfo 6
|
(('dt ('@ ('id id) _ ...) rest ...)
|
||||||
('dt ('@ ('class (? definition-class?)) ;Texinfo 7
|
|
||||||
('id id))
|
|
||||||
rest ...))
|
|
||||||
(if (and (string-prefix? "index-" id)
|
(if (and (string-prefix? "index-" id)
|
||||||
(worthy-entry? rest))
|
(worthy-entry? rest))
|
||||||
(alist-cons (anchor-id->key id)
|
(alist-cons (anchor-id->key id)
|
||||||
@@ -519,16 +505,10 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
|||||||
(loop rest (cons str strings)))
|
(loop rest (cons str strings)))
|
||||||
((('*ENTITY* "additional" entity) . rest)
|
((('*ENTITY* "additional" entity) . rest)
|
||||||
(loop rest (cons (entity->string entity) strings)))
|
(loop rest (cons (entity->string entity) strings)))
|
||||||
((('*ENTITY* "additional-char" entity) . rest)
|
|
||||||
(loop rest (cons (string
|
|
||||||
(integer->char (string->number entity)))
|
|
||||||
strings)))
|
|
||||||
((('span _ lst ...) . rest) ;for <span class="roman">
|
((('span _ lst ...) . rest) ;for <span class="roman">
|
||||||
(loop (append lst rest) strings))
|
(loop (append lst rest) strings))
|
||||||
((('var ('@ _) name) . rest) ;for @var{name} within @lisp
|
((('var name) . rest) ;for @var{name} within @lisp
|
||||||
(loop rest (cons name strings))) ;XXX: losing formatting
|
(loop rest (cons name strings))) ;XXX: losing formatting
|
||||||
((('var name) . rest) ;likewise (Texinfo 6)
|
|
||||||
(loop rest (cons name strings)))
|
|
||||||
(something
|
(something
|
||||||
(pk 'unsupported-code-snippet something)
|
(pk 'unsupported-code-snippet something)
|
||||||
(primitive-exit 1)))))
|
(primitive-exit 1)))))
|
||||||
@@ -557,10 +537,7 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
|||||||
(link (@ (rel "stylesheet")
|
(link (@ (rel "stylesheet")
|
||||||
(type "text/css")
|
(type "text/css")
|
||||||
(href #$syntax-css-url)))))
|
(href #$syntax-css-url)))))
|
||||||
((or ('pre ('@ ('class "lisp")) ;Texinfo 6
|
(('pre ('@ ('class "lisp")) code-snippet ...)
|
||||||
code-snippet ...)
|
|
||||||
('pre ('@ ('class "lisp-preformatted"))
|
|
||||||
code-snippet ...))
|
|
||||||
`(pre (@ (class "lisp"))
|
`(pre (@ (class "lisp"))
|
||||||
,@(highlights->sxml*
|
,@(highlights->sxml*
|
||||||
(pair-open/close
|
(pair-open/close
|
||||||
@@ -568,16 +545,14 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
|||||||
(concatenate-snippets code-snippet)))
|
(concatenate-snippets code-snippet)))
|
||||||
anchors)))
|
anchors)))
|
||||||
|
|
||||||
;; For Texinfo 6: Replace the ugly <strong> used for @deffn
|
;; Replace the ugly <strong> used for @deffn etc., which
|
||||||
;; etc., which translate to <dt>, with more stylable
|
;; translate to <dt>, with more stylable markup.
|
||||||
;; markup. No such post-processing is needed for @deffn
|
|
||||||
;; with Texinfo 7.
|
|
||||||
(('dt ('@ ('id id)) ;raw Texinfo 6.8
|
(('dt ('@ ('id id)) ;raw Texinfo 6.8
|
||||||
('span ('@ ('class "category")) category ...)
|
('span ('@ ('class "category")) category ...)
|
||||||
('span ('strong thing)
|
('span ('strong thing)
|
||||||
anchor))
|
anchor))
|
||||||
(highlight-definition id category thing '()))
|
(highlight-definition id category thing '()))
|
||||||
(('dt ('@ ('id id)) ;ditto
|
(('dt (@ ('id id))
|
||||||
('span ('@ ('class "category")) category ...)
|
('span ('@ ('class "category")) category ...)
|
||||||
('span ('strong thing)
|
('span ('strong thing)
|
||||||
(? space?) ('em args ...)
|
(? space?) ('em args ...)
|
||||||
@@ -833,9 +808,16 @@ in SOURCE."
|
|||||||
(match sxml
|
(match sxml
|
||||||
(('*TOP* decl body ...)
|
(('*TOP* decl body ...)
|
||||||
`(*TOP* ,decl ,@(map loop body)))
|
`(*TOP* ,decl ,@(map loop body)))
|
||||||
((or ('body ('@ _) elements ...)
|
(('head elements ...)
|
||||||
('body elements ...))
|
;; Add reference to our own manual CSS, which provides
|
||||||
`(body ,(navigation-bar
|
;; support for the language menu.
|
||||||
|
`(head ,@elements
|
||||||
|
(link (@ (rel "stylesheet")
|
||||||
|
(type "text/css")
|
||||||
|
(href #$manual-css-url)))))
|
||||||
|
(('body ('@ attributes ...) elements ...)
|
||||||
|
`(body (@ ,@attributes)
|
||||||
|
,(navigation-bar
|
||||||
;; TODO: Add "Contribute" menu, to report
|
;; TODO: Add "Contribute" menu, to report
|
||||||
;; errors, etc.
|
;; errors, etc.
|
||||||
(list (menu-dropdown
|
(list (menu-dropdown
|
||||||
@@ -970,12 +952,12 @@ makeinfo OPTIONS."
|
|||||||
(mkdir-p (string-append #$output "/"
|
(mkdir-p (string-append #$output "/"
|
||||||
(normalize language)))
|
(normalize language)))
|
||||||
(setenv "LANGUAGE" language)
|
(setenv "LANGUAGE" language)
|
||||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||||
"-o" (string-append #$output "/"
|
"-o" (string-append #$output "/"
|
||||||
(normalize language)
|
(normalize language)
|
||||||
"/html_node")
|
"/html_node")
|
||||||
opts)
|
opts)
|
||||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||||
"--no-split"
|
"--no-split"
|
||||||
"-o"
|
"-o"
|
||||||
(string-append #$output "/"
|
(string-append #$output "/"
|
||||||
@@ -1427,7 +1409,7 @@ commit date (an integer)."
|
|||||||
(string-append #+tar "/bin:"
|
(string-append #+tar "/bin:"
|
||||||
#+xz "/bin:"
|
#+xz "/bin:"
|
||||||
#+zstd "/bin:"
|
#+zstd "/bin:"
|
||||||
#+texinfo-7 "/bin"))
|
#+texinfo "/bin"))
|
||||||
(invoke "tar" "xf" #$(package-source guile))
|
(invoke "tar" "xf" #$(package-source guile))
|
||||||
(mkdir-p (string-append #$output "/en/html_node"))
|
(mkdir-p (string-append #$output "/en/html_node"))
|
||||||
|
|
||||||
@@ -1446,7 +1428,7 @@ commit date (an integer)."
|
|||||||
(string-append #$output "/en/html_node")))))))))
|
(string-append #$output "/en/html_node")))))))))
|
||||||
|
|
||||||
(define %guile-manual-base-url
|
(define %guile-manual-base-url
|
||||||
"https://doc.guix.gnu.org/guile/latest/en")
|
"https://www.gnu.org/software/guile/manual")
|
||||||
|
|
||||||
(define (for-all-languages index)
|
(define (for-all-languages index)
|
||||||
(map (lambda (language)
|
(map (lambda (language)
|
||||||
|
|||||||
+7
-114
@@ -618,33 +618,6 @@ enhance @code{scheme-mode} and Geiser. @xref{Introduction,,,
|
|||||||
emacs-guix, Emacs-Guix Reference Manual}, to make sure you don't miss
|
emacs-guix, Emacs-Guix Reference Manual}, to make sure you don't miss
|
||||||
out!
|
out!
|
||||||
|
|
||||||
@unnumberedsubsubsec Submitting Pull Requests Following the AGit Workflow
|
|
||||||
|
|
||||||
@cindex AGit workflow, for pull requests (Emacs).
|
|
||||||
@url{https://codeberg.org/halvin/agitjo, Agitjo} is a helper to ease
|
|
||||||
AGit workflow based patch submission (@pxref{Submitting Patches}).
|
|
||||||
Install it with:
|
|
||||||
|
|
||||||
@example
|
|
||||||
guix install emacs-agitjo
|
|
||||||
@end example
|
|
||||||
|
|
||||||
Assuming your local checkout is on the branch containing the changes you
|
|
||||||
would like to submit for inclusion in the @code{master} branch, use
|
|
||||||
@command{M-x agitjo-push} then:
|
|
||||||
|
|
||||||
@itemize
|
|
||||||
@item
|
|
||||||
Set options like the title @option{-t} and the session identifier
|
|
||||||
@option{-s}.
|
|
||||||
@item
|
|
||||||
Invoke one of the push commands to execute a @command{git push} operation.
|
|
||||||
@end itemize
|
|
||||||
|
|
||||||
When creating a new pull request, a dedicated buffer will open for
|
|
||||||
drafting a description. The force-push option @option{-f} is enabled to
|
|
||||||
push changes to the existing pull request.
|
|
||||||
|
|
||||||
@unnumberedsubsubsec Taming Boilerplate with Templates
|
@unnumberedsubsubsec Taming Boilerplate with Templates
|
||||||
|
|
||||||
@cindex code snippets
|
@cindex code snippets
|
||||||
@@ -733,7 +706,13 @@ Manual}). To set it up, enable it in the relevant modes:
|
|||||||
|
|
||||||
When working from a Git checkout of Guix, setup is automatic:
|
When working from a Git checkout of Guix, setup is automatic:
|
||||||
@code{bug-reference} automatically detects that the project is hosted on
|
@code{bug-reference} automatically detects that the project is hosted on
|
||||||
Codeberg and infers the issue and pull request URL from there.
|
Codeberg@footnote{
|
||||||
|
@c 'vc-git-repository-url' is used by
|
||||||
|
@c 'bug-reference-setup-from-vc-alist', which checks for one of these
|
||||||
|
@c names for the remote.
|
||||||
|
As of Emacs@tie{}30.2, auto-detection works if and
|
||||||
|
only if the Git remote is called @code{upstream} or @code{origin}.} and
|
||||||
|
infers the issue and pull request URL from there.
|
||||||
|
|
||||||
@node Guile Studio
|
@node Guile Studio
|
||||||
@subsection Guile Studio
|
@subsection Guile Studio
|
||||||
@@ -1688,9 +1667,6 @@ can be turned into a version string via @code{git-version}, for example
|
|||||||
@code{rust-pipewire-0.8.0.fd3d8f7} and @code{rust-pubgrub-0.3.0.b70cf70}.
|
@code{rust-pipewire-0.8.0.fd3d8f7} and @code{rust-pubgrub-0.3.0.b70cf70}.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
When contributing Rust packages, we should have all modifications to these
|
|
||||||
two modules, in the same commit as the package we are contributing.
|
|
||||||
|
|
||||||
To avoid merge conflicts with changes from multiple branches, these two modules
|
To avoid merge conflicts with changes from multiple branches, these two modules
|
||||||
are maintained by the Rust team (@pxref{Teams}).
|
are maintained by the Rust team (@pxref{Teams}).
|
||||||
|
|
||||||
@@ -1720,68 +1696,6 @@ tree.
|
|||||||
@xref{Packaging Rust Crates,,, guix-cookbook, GNU Guix Cookbook}, for
|
@xref{Packaging Rust Crates,,, guix-cookbook, GNU Guix Cookbook}, for
|
||||||
packaging workflow.
|
packaging workflow.
|
||||||
|
|
||||||
@subsubsection Commit messages
|
|
||||||
|
|
||||||
The commit message must have a general brief mention to entry changes
|
|
||||||
in @code{(gnu packages rust-crates)}. For changes in @code{(gnu packages
|
|
||||||
rust-sources)}, the commit message must explicitly mention all changes to the
|
|
||||||
packages.
|
|
||||||
|
|
||||||
Here are some examples for different situations:
|
|
||||||
|
|
||||||
@itemize
|
|
||||||
|
|
||||||
@item
|
|
||||||
Adding a new Rust package:
|
|
||||||
|
|
||||||
@example
|
|
||||||
gnu: Add catppuccin-whiskers.
|
|
||||||
|
|
||||||
* gnu/packages/rust-apps.scm (catppuccin-whiskers): New variable.
|
|
||||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)
|
|
||||||
[catppuccin-whiskers]: New entry.
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@item
|
|
||||||
Updating a simple package:
|
|
||||||
|
|
||||||
@example
|
|
||||||
gnu: watchexec: Update to 2.3.2.
|
|
||||||
|
|
||||||
* gnu/packages/rust-apps.scm (watchexec): Update to 2.3.2.
|
|
||||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[watchexec]:
|
|
||||||
Update entry.
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@item
|
|
||||||
Updating a package with sources:
|
|
||||||
|
|
||||||
@example
|
|
||||||
gnu: typst: Update to 0.14.0.
|
|
||||||
|
|
||||||
* gnu/packages/rust-apps.scm (typst): Update to 0.14.0.
|
|
||||||
[arguments]<#:rust>: Use rust-1.88.
|
|
||||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[typst]: Update
|
|
||||||
entry.
|
|
||||||
[rust-syntect-5]: Rename to rust-syntect-5.2.
|
|
||||||
[rust-syntect-5.3]: New entry.
|
|
||||||
* gnu/packages/rust-sources.scm (rust-hypher-0.1): Update to 0.1.6.
|
|
||||||
(rust-syntect-5): Rename to rust-syntect-5.2.
|
|
||||||
[inputs]: Rename cargo-inputs rust-syntect-5 to rust-syntect-5.2.
|
|
||||||
(rust-syntect-5.3): New variable.
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@end itemize
|
|
||||||
|
|
||||||
@subsubsection Resolving merge conflicts in Pull Requests
|
|
||||||
|
|
||||||
For Rust crates, the recommended way to solve merge conflicts is to drop all
|
|
||||||
changes to @code{gnu/packages/rust-crates.scm}, rebase onto the desired branch
|
|
||||||
and run the lockfile importer again, manually adding back all relevant snippets
|
|
||||||
(if any).
|
|
||||||
|
|
||||||
@xref{Common Workflow for Resolving Merge Conflicts on Existing Pull Requests,,, guix-cookbook, GNU Guix Cookbook} for
|
|
||||||
a suggested workflow on resolving merge conflicts.
|
|
||||||
|
|
||||||
@node Elm Packages
|
@node Elm Packages
|
||||||
@subsection Elm Packages
|
@subsection Elm Packages
|
||||||
@@ -2736,7 +2650,6 @@ applications settings page}, granting read/write access to the
|
|||||||
|
|
||||||
@cindex decision making
|
@cindex decision making
|
||||||
@cindex consensus seeking
|
@cindex consensus seeking
|
||||||
Every contribution to the project involves a form of decision making.
|
|
||||||
It is expected from all contributors, and even more so from committers,
|
It is expected from all contributors, and even more so from committers,
|
||||||
to help build consensus and make decisions based on consensus. By using
|
to help build consensus and make decisions based on consensus. By using
|
||||||
consensus, we are committed to finding solutions that everyone can live
|
consensus, we are committed to finding solutions that everyone can live
|
||||||
@@ -2751,26 +2664,6 @@ resolve the deadlock. To learn what consensus decision making means and
|
|||||||
understand its finer details, you are encouraged to read
|
understand its finer details, you are encouraged to read
|
||||||
@url{https://www.seedsforchange.org.uk/consensus}.
|
@url{https://www.seedsforchange.org.uk/consensus}.
|
||||||
|
|
||||||
Day-to-day decision making, for instance discussions about pull requests
|
|
||||||
(@pxref{Reviewing the Work of Others}), happens informally among
|
|
||||||
interested parties such as contributors and members of the relevant
|
|
||||||
teams (@pxref{Teams}).
|
|
||||||
|
|
||||||
@cindex GCD, Guix Consensus Documents
|
|
||||||
@cindex Guix Consensus Documents (GCD)
|
|
||||||
Decisions that are expected to have an impact on most contributors
|
|
||||||
and/or on the broader user community---e.g., changes to project-wide
|
|
||||||
policies, to core functionality, and so on---are made following the
|
|
||||||
@acronym{GCD, Guix Consensus Document} process. The process provides a
|
|
||||||
framework to formalize proposals and draw attention to them, to leave
|
|
||||||
time for interested parties to discuss them, and to collectively accept
|
|
||||||
or withdraw them based on input from participating team members. It is
|
|
||||||
defined in
|
|
||||||
@uref{https://consensus.guix.gnu.org/gcd/001-gcd-process.html,
|
|
||||||
GCD@tie{}001}. Past GCDs can be seen at
|
|
||||||
@uref{https://consensus.guix.gnu.org}, and discussions take place at
|
|
||||||
@uref{https://codeberg.org/guix/guix-consensus-documents}.
|
|
||||||
|
|
||||||
@node Commit Access
|
@node Commit Access
|
||||||
@section Commit Access
|
@section Commit Access
|
||||||
|
|
||||||
|
|||||||
+21
-362
@@ -146,8 +146,6 @@ Packaging Rust Crates
|
|||||||
* Common Workflow for Rust Packaging::
|
* Common Workflow for Rust Packaging::
|
||||||
* Cargo Workspaces and Development Snapshots::
|
* Cargo Workspaces and Development Snapshots::
|
||||||
* Using Rust Libraries in Other Build Systems::
|
* Using Rust Libraries in Other Build Systems::
|
||||||
* Common Workflow for Updating Existing Rust Packages::
|
|
||||||
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
|
|
||||||
|
|
||||||
System Configuration
|
System Configuration
|
||||||
|
|
||||||
@@ -646,11 +644,9 @@ This field contains a description of the source code origin. The
|
|||||||
|
|
||||||
@enumerate
|
@enumerate
|
||||||
@item The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
|
@item The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
|
||||||
exist, such as @code{git-fetch} for Git repositories. @xref{origin
|
exist, such as @code{git-fetch} for Git repositories.
|
||||||
Reference,,, guix, GNU Guix Reference Manual}, for more info on the
|
|
||||||
available download methods.
|
|
||||||
@item The URI, which is typically some @code{https://} location for @code{url-fetch}. Here
|
@item The URI, which is typically some @code{https://} location for @code{url-fetch}. Here
|
||||||
the special @code{mirror://gnu} refers to a set of well known locations, all of
|
the special `mirror://gnu` refers to a set of well known locations, all of
|
||||||
which can be used by Guix to fetch the source, should some of them fail.
|
which can be used by Guix to fetch the source, should some of them fail.
|
||||||
@item The @code{sha256} checksum of the requested file. This is essential to ensure
|
@item The @code{sha256} checksum of the requested file. This is essential to ensure
|
||||||
the source is not corrupted. Note that Guix works with base32 strings,
|
the source is not corrupted. Note that Guix works with base32 strings,
|
||||||
@@ -1118,8 +1114,7 @@ Let's discuss those fields in depth.
|
|||||||
@subsubsection @code{git-fetch} method
|
@subsubsection @code{git-fetch} method
|
||||||
|
|
||||||
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
|
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
|
||||||
a Git repository and a commit (@pxref{origin Reference,,, guix, GNU Guix
|
a Git repository and a commit. The commit can be any Git reference such as
|
||||||
Reference Manual}). The commit can be any Git reference such as
|
|
||||||
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
|
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
|
||||||
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
|
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
|
||||||
"v" version))}.
|
"v" version))}.
|
||||||
@@ -1165,7 +1160,7 @@ Snippets might need additional Guile modules which can be imported from the
|
|||||||
|
|
||||||
There are 3 different input types. In short:
|
There are 3 different input types. In short:
|
||||||
|
|
||||||
@table @code
|
@table @asis
|
||||||
@item native-inputs
|
@item native-inputs
|
||||||
Required for building but not runtime -- installing a package
|
Required for building but not runtime -- installing a package
|
||||||
through a substitute won't install these inputs.
|
through a substitute won't install these inputs.
|
||||||
@@ -1233,14 +1228,9 @@ It's advised to separate outputs only when you've shown it's worth it: if the
|
|||||||
output size is significant (compare with @code{guix size}) or in case the package is
|
output size is significant (compare with @code{guix size}) or in case the package is
|
||||||
modular.
|
modular.
|
||||||
|
|
||||||
@xref{Packages with Multiple Outputs,,, guix, GNU Guix Reference
|
|
||||||
Manual}, for more info.
|
|
||||||
|
|
||||||
@subsubsection Build system arguments
|
@subsubsection Build system arguments
|
||||||
|
|
||||||
The @code{arguments} is a keyword-value list used to configure the build
|
The @code{arguments} is a keyword-value list used to configure the build process.
|
||||||
process; these arguments are passed to the @dfn{build system}
|
|
||||||
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
|
|
||||||
|
|
||||||
The simplest argument @code{#:tests?} can be used to disable the test suite when
|
The simplest argument @code{#:tests?} can be used to disable the test suite when
|
||||||
building the package. This is mostly useful when the package does not feature
|
building the package. This is mostly useful when the package does not feature
|
||||||
@@ -1256,7 +1246,7 @@ following flags
|
|||||||
"CC=gcc")
|
"CC=gcc")
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
translate into:
|
translate into
|
||||||
|
|
||||||
@example
|
@example
|
||||||
$ make CC=gcc prefix=/gnu/store/...-<out>
|
$ make CC=gcc prefix=/gnu/store/...-<out>
|
||||||
@@ -1276,9 +1266,7 @@ Similarly, it's possible to set the configure flags:
|
|||||||
The @code{%build-inputs} variable is also generated in scope. It's an association
|
The @code{%build-inputs} variable is also generated in scope. It's an association
|
||||||
table that maps the input names to their store directories.
|
table that maps the input names to their store directories.
|
||||||
|
|
||||||
The @code{phases} keyword lists the sequential steps of the build
|
The @code{phases} keyword lists the sequential steps of the build system. Typically
|
||||||
system. @xref{Build Phases,,, guix, GNU Guix Reference Manual}, for
|
|
||||||
details; in a nutshell,
|
|
||||||
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
|
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
|
||||||
more about those phases, you need to work out the appropriate build system
|
more about those phases, you need to work out the appropriate build system
|
||||||
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
|
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
|
||||||
@@ -1393,12 +1381,10 @@ Its return value is ignored.
|
|||||||
|
|
||||||
@subsubsection Code staging
|
@subsubsection Code staging
|
||||||
|
|
||||||
The astute reader may have noticed the hash-tilde and hash-dollar syntax in the
|
The astute reader may have noticed the quasi-quote and comma syntax in the
|
||||||
argument field. Indeed, the build code in the package declaration should not be
|
argument field. Indeed, the build code in the package declaration should not be
|
||||||
evaluated on the client side, but only when passed to the Guix daemon. This
|
evaluated on the client side, but only when passed to the Guix daemon. This
|
||||||
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
|
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
|
||||||
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for info on the
|
|
||||||
this mechanism, which is called @dfn{g-expressions}.
|
|
||||||
|
|
||||||
@subsubsection Utility functions
|
@subsubsection Utility functions
|
||||||
|
|
||||||
@@ -1407,7 +1393,7 @@ equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.)@: com
|
|||||||
regular ``Unix-style'' installations.
|
regular ``Unix-style'' installations.
|
||||||
|
|
||||||
Some like @code{chmod} are native to Guile.
|
Some like @code{chmod} are native to Guile.
|
||||||
@xref{File System,,, guile, Guile reference manual} for a complete list.
|
@xref{,,, guile, Guile reference manual} for a complete list.
|
||||||
|
|
||||||
Guix provides additional helper functions which prove especially handy in the
|
Guix provides additional helper functions which prove especially handy in the
|
||||||
context of package management.
|
context of package management.
|
||||||
@@ -1541,9 +1527,9 @@ The recursive importer won't import packages for which Guix already has package
|
|||||||
definitions, except for the very first.
|
definitions, except for the very first.
|
||||||
|
|
||||||
Not all applications can be packaged this way, only those relying on a select
|
Not all applications can be packaged this way, only those relying on a select
|
||||||
number of supported systems.
|
number of supported systems. Read about the full list of importers in
|
||||||
@xref{Invoking guix import,,, guix, GNU Guix Reference Manual} for
|
the guix import section of the manual
|
||||||
the full list of importers.
|
(@pxref{Invoking guix import,,, guix, GNU Guix Reference Manual}).
|
||||||
|
|
||||||
@node Automatic update
|
@node Automatic update
|
||||||
@subsubsection Automatic update
|
@subsubsection Automatic update
|
||||||
@@ -1563,9 +1549,6 @@ well:
|
|||||||
$ guix refresh hello --update
|
$ guix refresh hello --update
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@xref{Invoking guix refresh,,, guix, GNU Guix Reference Manual}, for
|
|
||||||
more info.
|
|
||||||
|
|
||||||
@node Inheritance
|
@node Inheritance
|
||||||
@subsubsection Inheritance
|
@subsubsection Inheritance
|
||||||
|
|
||||||
@@ -1590,9 +1573,7 @@ noticed that a significant number of them have a @code{inherit} field:
|
|||||||
|
|
||||||
All unspecified fields are inherited from the parent package. This is very
|
All unspecified fields are inherited from the parent package. This is very
|
||||||
convenient to create alternative packages, for instance with different source,
|
convenient to create alternative packages, for instance with different source,
|
||||||
version or compilation options. @xref{Defining Package Variants,,, guix,
|
version or compilation options.
|
||||||
GNU Guix Reference Manual}, for a discussion of inheritance and of other
|
|
||||||
ways to create package variants.
|
|
||||||
|
|
||||||
@node Getting help
|
@node Getting help
|
||||||
@subsection Getting help
|
@subsection Getting help
|
||||||
@@ -1633,8 +1614,7 @@ hopefully we will see your contributions soon!
|
|||||||
|
|
||||||
@itemize
|
@itemize
|
||||||
@item
|
@item
|
||||||
@xref{Defining Packages,,, guix, GNU Guix Reference Manual}, for the
|
The @uref{https://guix.gnu.org/manual/en/html_node/Defining-Packages.html, package reference in the manual}
|
||||||
@code{package} reference in the manual.
|
|
||||||
|
|
||||||
@item
|
@item
|
||||||
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotr’s hacking guide to GNU Guix}
|
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotr’s hacking guide to GNU Guix}
|
||||||
@@ -1667,8 +1647,6 @@ $ guix shell rust rust:cargo cargo-audit cargo-license
|
|||||||
* Common Workflow for Rust Packaging::
|
* Common Workflow for Rust Packaging::
|
||||||
* Cargo Workspaces and Development Snapshots::
|
* Cargo Workspaces and Development Snapshots::
|
||||||
* Using Rust Libraries in Other Build Systems::
|
* Using Rust Libraries in Other Build Systems::
|
||||||
* Common Workflow for Updating Existing Rust Packages::
|
|
||||||
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
|
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@node Common Workflow for Rust Packaging
|
@node Common Workflow for Rust Packaging
|
||||||
@@ -1727,15 +1705,6 @@ $ cargo audit
|
|||||||
$ cargo license
|
$ cargo license
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
Before running @command{cargo generate-lockfile}, make sure you have checked
|
|
||||||
out the correct tag for the version you are packaging. This ensures that
|
|
||||||
@code{Cargo.toml} matches the file used in the packages's @code{source} field.
|
|
||||||
To make sure, you can obtain the exact source with @command{./pre-inst-env guix
|
|
||||||
build --source <package>} and only then run @command{cargo generate-lockfile} on
|
|
||||||
that source tree.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
@command{cargo generate-lockfile} updates dependencies to compatible versions.
|
@command{cargo generate-lockfile} updates dependencies to compatible versions.
|
||||||
Applying it to all Rust applications helps reduce a great number of Rust
|
Applying it to all Rust applications helps reduce a great number of Rust
|
||||||
libraries we need to check later. Although sometimes libraries may fail to
|
libraries we need to check later. Although sometimes libraries may fail to
|
||||||
@@ -2018,316 +1987,6 @@ method, one of the most popular choices for Traditional Chinese users.")
|
|||||||
(license license:lgpl2.1+)))
|
(license license:lgpl2.1+)))
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@node Common Workflow for Updating Existing Rust Packages
|
|
||||||
@subsubsection Common Workflow for Updating Existing Rust Packages
|
|
||||||
|
|
||||||
For this example, we'll update @code{niri}. The package definition looks like
|
|
||||||
this initially:
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define-public niri
|
|
||||||
(package
|
|
||||||
(name "niri")
|
|
||||||
(version "25.08")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/YaLTeR/niri")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"09nsxd211mly8r1ys2lq6ia4jxgb980h1axrbgw748r0knfbbj7n"))))
|
|
||||||
(build-system cargo-build-system)
|
|
||||||
...
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
We start by running the usual @command{guix refresh -u niri}.
|
|
||||||
|
|
||||||
The @command{-u} flag will update in place the version and hash for the
|
|
||||||
@code{niri} package.
|
|
||||||
|
|
||||||
The package definition will then look like this:
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define-public niri
|
|
||||||
(package
|
|
||||||
(name "niri")
|
|
||||||
(version "25.11")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/YaLTeR/niri")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0752qm245wc2gak0jhp0fnr0rdj3z54m2h97k3cxbjym9pcn658n"))))
|
|
||||||
(build-system cargo-build-system)
|
|
||||||
...
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
This means the source field was updated successfully, thus we can now proceed to
|
|
||||||
get the updated source with @command{guix build --source niri} as follows:
|
|
||||||
|
|
||||||
@example shell
|
|
||||||
$ cp -r $(./pre-inst-env guix build --source niri) /tmp
|
|
||||||
$ cd /tmp/<hash>-niri-25.11-checkout/
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
In this specific example, the source is a git checkout, thus a directory. If the
|
|
||||||
package source is a compressed archive, you would at this point extract it to a
|
|
||||||
directory to proceed.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
Now, given that we have access to the @code{Cargo.toml} file, we can now run
|
|
||||||
the following inside the checkout:
|
|
||||||
|
|
||||||
@example shell
|
|
||||||
$ guix shell rust rust:cargo -- cargo generate-lockfile
|
|
||||||
$ guix shell rust rust:cargo -- cargo audit
|
|
||||||
$ guix shell rust rust:cargo -- cargo license
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
Sometimes the package will require a more up-to-date version of rust, that is
|
|
||||||
not yet the default rust on guix. For these cases you can use:
|
|
||||||
@example shell
|
|
||||||
$ guix shell -e "(@ (gnu packages rust) rust-1.90)" \
|
|
||||||
-e '`(,(@ (gnu packages rust) rust-1.90) "cargo")'
|
|
||||||
@end example
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
The first command will ensure that all cargo dependencies are up to date
|
|
||||||
and semver compatible, while also providing some other benefits, as further
|
|
||||||
explained in @ref{Common Workflow for Rust Packaging}.
|
|
||||||
|
|
||||||
The following command will warn if there are any known vulnerabilities in the
|
|
||||||
crates being imported. The last one will output the license information of all
|
|
||||||
the dependent crates.
|
|
||||||
|
|
||||||
If everything looks good, we can now replace the contents of the @code{niri}
|
|
||||||
indentifier, located inside the @code{lookup-cargo-inputs} variable on the
|
|
||||||
bottom of the @file{gnu/packages/rust-crates.scm} module, with the newer updated
|
|
||||||
crates by running the importer on the lockfile as follows:
|
|
||||||
|
|
||||||
@example shell
|
|
||||||
$ guix import -i /path/to/gnu/packages/rust-crates.scm \
|
|
||||||
crate -f Cargo.lock niri
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
For the purpose of contributing a package to Guix (@pxref{Contributing,,,
|
|
||||||
guix, GNU Guix Reference Manual}), there is no need to cleanup the leftover
|
|
||||||
crates as a result of the package update. This is tasked to the rust-team
|
|
||||||
(@pxref{Teams,,, guix, GNU Guix Reference Manual}) to periodically run a
|
|
||||||
convenient script in @code{etc/teams/rust} to cleanup unused crates from
|
|
||||||
@file{gnu/packages/rust-crates.scm}.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
We then need to check whether the importer has placed some TODOs for us,
|
|
||||||
inside @file{gnu/packages/rust-crates.scm} (you can use @command{git diff --
|
|
||||||
gnu/packages/rust-crates.scm} for this purpose).
|
|
||||||
|
|
||||||
There are a few types of TODO messages that you might encounter during this
|
|
||||||
step, each type requiring you to perform a different action.
|
|
||||||
|
|
||||||
The first one we encounter in our example is:
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define rust-libdisplay-info-sys-0.3.0
|
|
||||||
;; TODO REVIEW: Check bundled sources.
|
|
||||||
(crate-source "libdisplay-info-sys" "0.3.0"
|
|
||||||
"07xmkc2aqcdn6d58321y87rd3gzdr4nx3ncm1mmrr7w1p1ahsn96"))
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
This specific TODO message tells us that there is a high probability of
|
|
||||||
encountering bundled sources within a crate definition generated by the
|
|
||||||
importer.
|
|
||||||
|
|
||||||
We then check if there are any bundled sources within the
|
|
||||||
@code{rust-libdisplay-info-sys-0.3.0} crate. Since there are none (in our
|
|
||||||
example), we can simply remove the TODO line, and continue to the next TODO.
|
|
||||||
|
|
||||||
If there were any bundled sources inside the crate, we would have to patch
|
|
||||||
it with a snippet, in order to unbundle it. You can see some examples on
|
|
||||||
how to unbundle inside @file{gnu/packages/rust-crates.scm} (search for the
|
|
||||||
@code{#:snippet} keyword).
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
If the unbundle is considered too difficult to be executed (e.g. the effort
|
|
||||||
needed to unbundle is unreasonable), the @code{TODO REVIEW} line should be
|
|
||||||
converted to a regular TODO comment explicitly stating the unbundle was not done
|
|
||||||
(e.g. @code{TODO: Unbundle rust-libdisplay-info-sys.}).
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
Continuing, another TODO message we encounter in this example is the following:
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define rust-smithay-0.7.0.d743e1a
|
|
||||||
;; TODO REVIEW: Define standalone package if this is a workspace.
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference (url "https://github.com/Smithay/smithay.git")
|
|
||||||
(commit "d743e1a317fa0f01d1c4cadd96d277a1ec7b59d9")))
|
|
||||||
(file-name (git-file-name "rust-smithay" "0.7.0.d743e1a"))
|
|
||||||
(sha256 (base32 "11327mhxxf844bs0v5bw1g9bzjssnzhidsissywy6kwng16x727v"))))
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
This specific TODO message tells us that there is a high probability of the
|
|
||||||
@code{rust-smithay-0.7.0.d743e1a} crate being a workspace.
|
|
||||||
|
|
||||||
After verifying that it is indeed a workspace, we now need to make it an
|
|
||||||
actual package in @file{gnu/packages/rust-sources.scm}, referencing it in the
|
|
||||||
crate-source definition (see @ref{Common Workflow for Rust Packaging} for more
|
|
||||||
details).
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
You can verify if a crate is a workspace by cloning the crate repository (in
|
|
||||||
this case @code{https://github.com/Smithay/smithay.git}), checking out the
|
|
||||||
specific revision (in this case @command{git checkout d743e1a}), and looking
|
|
||||||
for @code{[workspace]} in its main @file{Cargo.toml} file. If it does not have a
|
|
||||||
TOML @code{[workspace]} section, then it is not a workspace.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
After defining the separate source package for the workspace in
|
|
||||||
@file{gnu/packages/rust-sources.scm} (see @ref{Common Workflow for Rust
|
|
||||||
Packaging} for more details on how to do this), the crate definition for
|
|
||||||
@code{rust-smithay-0.7.0.d743e1a} would then become the following (notice we
|
|
||||||
also remove the TODO line):
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define rust-smithay-0.7.0.d743e1a package:rust-smithay-0.7.0.d743e1a)
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
If @code{rust-smithay-0.7.0.d743e1a} was not a workspace, we would simply remove
|
|
||||||
the TODO line and move on.
|
|
||||||
|
|
||||||
We then try to build the package with @command{guix build niri}, and make sure
|
|
||||||
whether it builds successfully, which it does.
|
|
||||||
|
|
||||||
As a good practice, we can further check the output of the
|
|
||||||
@code{check-for-pregenerated-files} phase to ensure there are no extraneous
|
|
||||||
pregenerated files inside the crates. If there are any, it is important to
|
|
||||||
snippet them out, like these:
|
|
||||||
|
|
||||||
@lisp
|
|
||||||
(define rust-winapi-x86-64-pc-windows-gnu-0.4.0
|
|
||||||
(crate-source "winapi-x86_64-pc-windows-gnu" "0.4.0"
|
|
||||||
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"
|
|
||||||
#:snippet '(delete-file-recursively "lib")))
|
|
||||||
|
|
||||||
(define rust-flate2-1.1.4
|
|
||||||
(crate-source "flate2" "1.1.4"
|
|
||||||
"1a8a3pk2r2dxays4ikc47ygydhpd1dcxlgqdi3r9kiiq9rb4wnnw"
|
|
||||||
#:snippet '(for-each delete-file-recursively '("examples" "tests"))))
|
|
||||||
|
|
||||||
(define rust-flo-curves-0.3.1
|
|
||||||
(crate-source "flo_curves" "0.3.1"
|
|
||||||
"16x293dp8825jh465kgms4yyvl4960j26gh37h3skflq9zxpy8hw"
|
|
||||||
#:snippet '(for-each delete-file '("logo-small.png" "logo.png"))))
|
|
||||||
|
|
||||||
(define rust-interception-sys-0.1.3
|
|
||||||
(crate-source "interception-sys" "0.1.3"
|
|
||||||
"1lgwbml7gzq5a5rriy708w68gx6yiw9cdg7xy2c5vsrrck7pbs5b"
|
|
||||||
#:snippet '(for-each delete-file (find-files "." "\\.(dll|lib)$"))))
|
|
||||||
@end lisp
|
|
||||||
|
|
||||||
@node Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
|
|
||||||
@subsubsection Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
|
|
||||||
|
|
||||||
Whenever a Rust package change is merged into our target branch from a different
|
|
||||||
Pull Request, we often encounter many merge conflicts in @code{(gnu packages
|
|
||||||
rust-crates)} when rebasing the Pull Request on top of the target branch. Since
|
|
||||||
we should avoid modifying the rust-crates file manually (e.g. using the git
|
|
||||||
interface to solve merge conflicts), it is recommended (and often much faster)
|
|
||||||
to drop all changes to @code{(gnu packages rust-crates)} and run the lockfile
|
|
||||||
importer once again, manually adding back all the manual changes.
|
|
||||||
|
|
||||||
This workflow describes one of many ways to do the described procedure.
|
|
||||||
|
|
||||||
In this example we'll update the @code{codeberg-cli} package, which has produced
|
|
||||||
some merge conflicts in @file{gnu/packages/rust-crates.scm} when we tried a git
|
|
||||||
pull rebase.
|
|
||||||
|
|
||||||
Before starting, make sure we're not in a rebase environment, by aborting the
|
|
||||||
rebase we tried previously (the one which created the merge conflicts by git
|
|
||||||
pulling):
|
|
||||||
|
|
||||||
@example
|
|
||||||
$ git rebase --abort
|
|
||||||
@end example
|
|
||||||
|
|
||||||
@cindex git rebase --interactive
|
|
||||||
@cindex interactive rebase
|
|
||||||
To begin, we interactively rebase our PR branch by marking as
|
|
||||||
@code{edit} the commit we want to edit, which is the one containing the
|
|
||||||
@file{gnu/packages/rust-crates.scm} changes:
|
|
||||||
|
|
||||||
@example
|
|
||||||
# Change 1 to the number of relevant commits
|
|
||||||
$ git rebase -i HEAD~1
|
|
||||||
@end example
|
|
||||||
|
|
||||||
In our example, we would mark the @code{codeberg-cli} commit like so:
|
|
||||||
|
|
||||||
@example
|
|
||||||
edit 6ef4f1ad043 # gnu: codeberg-cli: Update to 0.5.4.
|
|
||||||
@end example
|
|
||||||
|
|
||||||
After that, we'll be in rebase mode, where we can restore the changes made to
|
|
||||||
@file{gnu/packages/rust-crates.scm}:
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
Notice that we will lose all manual changes we have previously made to
|
|
||||||
@file{gnu/packages/rust-crates.scm} (e.g. snippets, deleting TODO comments,
|
|
||||||
if there were any). We'll need to manually add them back after we run the guix
|
|
||||||
lockfile importer once again, so make sure you have them saved somewhere, for
|
|
||||||
example in your PR link under the @code{Files changed} tab.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
@example
|
|
||||||
$ git restore --source=HEAD~ gnu/packages/rust-crates.scm
|
|
||||||
@end example
|
|
||||||
|
|
||||||
Having restored the file, we can stage the changes, commit, finish the rebase
|
|
||||||
and pull rebase from the target branch:
|
|
||||||
|
|
||||||
@example
|
|
||||||
$ git add gnu/packages/rust-crates.scm
|
|
||||||
$ git commit --amend --no-edit
|
|
||||||
$ git rebase --continue
|
|
||||||
$ git pull <remote> <target branch>
|
|
||||||
@end example
|
|
||||||
|
|
||||||
We then proceed to run the guix lockfile importer:
|
|
||||||
|
|
||||||
@quotation Note
|
|
||||||
Remember to checkout the correct tag you're packaging in the package repository
|
|
||||||
checkout. Don't forget to run @code{cargo generate-lockfile} before running
|
|
||||||
the lockfile importer, see @ref{Common Workflow for Rust Packaging} for more
|
|
||||||
detailed steps on what to do before running the guix lockfile importer.
|
|
||||||
@end quotation
|
|
||||||
|
|
||||||
@example
|
|
||||||
$ guix import --insert=gnu/packages/rust-crates.scm \
|
|
||||||
crate --lockfile=/path/to/Cargo.lock codeberg-cli
|
|
||||||
@end example
|
|
||||||
|
|
||||||
Now is the time we manually add back the snippets and remove the relevant TODOs
|
|
||||||
we have already checked (if there are any).
|
|
||||||
|
|
||||||
After running the lockfile importer and checking if there are any changes to
|
|
||||||
manually add back, we can finally:
|
|
||||||
|
|
||||||
@example
|
|
||||||
$ git add gnu/packages/rust-crates.scm
|
|
||||||
# Our target commit is the last one:
|
|
||||||
$ git commit --amend --no-edit
|
|
||||||
@end example
|
|
||||||
|
|
||||||
We now have a non-conflicting tree, from which we can now update our PR with.
|
|
||||||
|
|
||||||
@c *********************************************************************
|
@c *********************************************************************
|
||||||
@node System Configuration
|
@node System Configuration
|
||||||
@@ -3274,8 +2933,8 @@ your Linode Summary section.) Now you can run the "install guix from
|
|||||||
|
|
||||||
@example
|
@example
|
||||||
sudo apt-get install gpg
|
sudo apt-get install gpg
|
||||||
wget https://codeberg.org/efraim.gpg -qO - | gpg --import -
|
wget https://sv.gnu.org/people/viewgpg.php?user_id=15145 -qO - | gpg --import -
|
||||||
wget https://guix.gnu.org/guix-install.sh
|
wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
|
||||||
chmod +x guix-install.sh
|
chmod +x guix-install.sh
|
||||||
./guix-install.sh
|
./guix-install.sh
|
||||||
guix pull
|
guix pull
|
||||||
@@ -3454,7 +3113,7 @@ Now you can run the "install guix from @pxref{Binary Installation,,,
|
|||||||
guix, GNU Guix}" steps:
|
guix, GNU Guix}" steps:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
wget https://guix.gnu.org/guix-install.sh
|
wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
|
||||||
chmod +x guix-install.sh
|
chmod +x guix-install.sh
|
||||||
./guix-install.sh
|
./guix-install.sh
|
||||||
guix pull
|
guix pull
|
||||||
@@ -4509,7 +4168,7 @@ network. Assuming your interface is named @samp{enp2s0}, the following
|
|||||||
command can be used to do so:
|
command can be used to do so:
|
||||||
|
|
||||||
@example sh
|
@example sh
|
||||||
# nmcli con add type bridge-slave autoconnect yes ifname enp2s0 master br0
|
# nmcli con add type bridge-slave ifname enp2s0 master br0
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@quotation Important
|
@quotation Important
|
||||||
@@ -4545,8 +4204,8 @@ bridge interface, as the default is to deny all. Add the following to
|
|||||||
your list of services to do so:
|
your list of services to do so:
|
||||||
|
|
||||||
@example lisp
|
@example lisp
|
||||||
(extra-special-file "/etc/qemu/bridge.conf"
|
(extra-special-file "/etc/qemu/host.conf"
|
||||||
(plain-file "bridge.conf" "allow br0\n"))
|
(plain-file "host.conf" "allow br0\n"))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@subsection Invoking QEMU with the right command line options
|
@subsection Invoking QEMU with the right command line options
|
||||||
@@ -4564,7 +4223,7 @@ machine making use of the bridge would cause networking issues.
|
|||||||
@example sh
|
@example sh
|
||||||
$ qemu-system-x86_64 [...] \
|
$ qemu-system-x86_64 [...] \
|
||||||
-device virtio-net-pci,netdev=user0,mac=XX:XX:XX:XX:XX:XX \
|
-device virtio-net-pci,netdev=user0,mac=XX:XX:XX:XX:XX:XX \
|
||||||
-netdev bridge,helper=/run/privileged/bin/qemu-bridge-helper,id=user0,br=br0 \
|
-netdev bridge,id=user0,br=br0 \
|
||||||
[...]
|
[...]
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
|||||||
+163
-848
File diff suppressed because it is too large
Load Diff
+13
-13
@@ -6,7 +6,7 @@
|
|||||||
# Copyright © 2016, 2018 Mathieu Lirzin <mthl@gnu.org>
|
# Copyright © 2016, 2018 Mathieu Lirzin <mthl@gnu.org>
|
||||||
# Copyright © 2018, 2021 Julien Lepiller <julien@lepiller.eu>
|
# Copyright © 2018, 2021 Julien Lepiller <julien@lepiller.eu>
|
||||||
# Copyright © 2019 Timothy Sample <samplet@ngyro.com>
|
# Copyright © 2019 Timothy Sample <samplet@ngyro.com>
|
||||||
# Copyright © 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
|
# Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||||
# Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
|
# Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
|
||||||
#
|
#
|
||||||
# This file is part of GNU Guix.
|
# This file is part of GNU Guix.
|
||||||
@@ -30,7 +30,7 @@ COOKBOOK_LANGUAGES = de es fr it ko pt_BR ru sk sv ta zh_CN
|
|||||||
|
|
||||||
# Arg1: A list of languages codes.
|
# Arg1: A list of languages codes.
|
||||||
# Arg2: The file name stem.
|
# Arg2: The file name stem.
|
||||||
lang_to_texinfo = $(foreach lang,$(1),$(srcdir)/%D%/$(2).$(lang).texi)
|
lang_to_texinfo = $(foreach lang,$(1),%D%/$(2).$(lang).texi)
|
||||||
|
|
||||||
# Automake does not understand GNU Make non-standard extensions,
|
# Automake does not understand GNU Make non-standard extensions,
|
||||||
# unfortunately, so we cannot use the above patsubst-based function here.
|
# unfortunately, so we cannot use the above patsubst-based function here.
|
||||||
@@ -104,7 +104,7 @@ MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
|
|||||||
# reference is not translated, which means it references a section that does not
|
# reference is not translated, which means it references a section that does not
|
||||||
# exist.
|
# exist.
|
||||||
define xref_command
|
define xref_command
|
||||||
$(top_builddir)/pre-inst-env $(GUILE) --no-auto-compile \
|
$(top_srcdir)/pre-inst-env $(GUILE) --no-auto-compile \
|
||||||
"$(top_srcdir)/build-aux/convert-xref.scm" \
|
"$(top_srcdir)/build-aux/convert-xref.scm" \
|
||||||
$@.tmp $<
|
$@.tmp $<
|
||||||
endef
|
endef
|
||||||
@@ -116,21 +116,21 @@ dummy_pot = $(shell mktemp --suffix=.pot)
|
|||||||
$(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go
|
$(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go
|
||||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||||
--variable localized="$@.tmp" \
|
--variable localized="$@.tmp" \
|
||||||
--variable master="$(srcdir)/%D%/guix.texi" \
|
--variable master="%D%/guix.texi" \
|
||||||
--variable po="$<" \
|
--variable po="$<" \
|
||||||
--variable pot=$(dummy_pot) \
|
--variable pot=$(dummy_pot) \
|
||||||
$(srcdir)/po/doc/po4a.cfg
|
po/doc/po4a.cfg
|
||||||
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
||||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||||
-mv "$@.tmp" "$@"
|
-mv "$@.tmp" "$@"
|
||||||
|
|
||||||
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
|
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
|
||||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||||
--variable localized="$@.tmp" \
|
--variable localized="$@.tmp" \
|
||||||
--variable master="$(srcdir)/%D%/guix-cookbook.texi" \
|
--variable master="%D%/guix-cookbook.texi" \
|
||||||
--variable po="$<" \
|
--variable po="$<" \
|
||||||
--variable pot=$(dummy_pot) \
|
--variable pot=$(dummy_pot) \
|
||||||
$(srcdir)/po/doc/po4a.cfg
|
po/doc/po4a.cfg
|
||||||
-sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
-sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
||||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||||
-mv "$@.tmp" "$@"
|
-mv "$@.tmp" "$@"
|
||||||
@@ -138,16 +138,16 @@ $(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
|
|||||||
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go
|
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go
|
||||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||||
--variable localized="$@.tmp" \
|
--variable localized="$@.tmp" \
|
||||||
--variable master="$(srcdir)/%D%/contributing.texi" \
|
--variable master="%D%/contributing.texi" \
|
||||||
--variable po="$<" \
|
--variable po="$<" \
|
||||||
--variable pot=$(dummy_pot) \
|
--variable pot=$(dummy_pot) \
|
||||||
$(srcdir)/po/doc/po4a.cfg
|
po/doc/po4a.cfg
|
||||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||||
-mv "$@.tmp" "$@"
|
-mv "$@.tmp" "$@"
|
||||||
|
|
||||||
%D%/os-config-%.texi: gnu/system/examples/%.tmpl
|
%D%/os-config-%.texi: gnu/system/examples/%.tmpl
|
||||||
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
|
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
|
||||||
sed -e s,@,@@,g "$<" > "$@"
|
cp "$<" "$@"
|
||||||
|
|
||||||
infoimagedir = $(infodir)/images
|
infoimagedir = $(infodir)/images
|
||||||
dist_infoimage_DATA = \
|
dist_infoimage_DATA = \
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2020-2022, 2024 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2020-2022, 2024 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2020, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2025 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;;
|
;;;
|
||||||
@@ -61,7 +61,7 @@ TARGET."
|
|||||||
;; from the other package sets.
|
;; from the other package sets.
|
||||||
(fold delete %base-packages
|
(fold delete %base-packages
|
||||||
(append (map specification->package
|
(append (map specification->package
|
||||||
'("kbd" "iproute2" "iw" "wireless-tools"))
|
'("e2fsprogs" "kbd" "iproute2" "iw" "wireless-tools"))
|
||||||
%base-packages-linux)))
|
%base-packages-linux)))
|
||||||
|
|
||||||
(define %system-packages
|
(define %system-packages
|
||||||
|
|||||||
+398
-2088
File diff suppressed because it is too large
Load Diff
+11
-56
@@ -16,7 +16,6 @@ exec $pre_inst_env_maybe guix repl -- "$0" "$@"
|
|||||||
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||||
;;; Copyright © 2025-2026 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2025-2026 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2025 jgart <jgart@dismail.de>
|
;;; Copyright © 2025 jgart <jgart@dismail.de>
|
||||||
;;; Copyright © 2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -514,7 +513,6 @@ of Rebar and Mix build systems and Hex.pm importer."
|
|||||||
"gnu/packages/autogen.scm"
|
"gnu/packages/autogen.scm"
|
||||||
"gnu/packages/autotools.scm"
|
"gnu/packages/autotools.scm"
|
||||||
"gnu/packages/bison.scm"
|
"gnu/packages/bison.scm"
|
||||||
"gnu/packages/compiler-tools.scm"
|
|
||||||
"gnu/packages/m4.scm"
|
"gnu/packages/m4.scm"
|
||||||
"gnu/packages/oyacc.scm"
|
"gnu/packages/oyacc.scm"
|
||||||
"gnu/packages/re2c.scm")))
|
"gnu/packages/re2c.scm")))
|
||||||
@@ -567,7 +565,6 @@ challenges"))
|
|||||||
"guix/docker.scm"
|
"guix/docker.scm"
|
||||||
"guix/download.scm"
|
"guix/download.scm"
|
||||||
"guix/elf.scm"
|
"guix/elf.scm"
|
||||||
"guix/fossil-download.scm"
|
|
||||||
"guix/ftp-client.scm"
|
"guix/ftp-client.scm"
|
||||||
"guix/gexp.scm"
|
"guix/gexp.scm"
|
||||||
"guix/git-authenticate.scm"
|
"guix/git-authenticate.scm"
|
||||||
@@ -662,12 +659,6 @@ challenges"))
|
|||||||
"gnu/system/examples/lightweight-desktop.tmpl"
|
"gnu/system/examples/lightweight-desktop.tmpl"
|
||||||
"gnu/system/examples/desktop.tmpl")))
|
"gnu/system/examples/desktop.tmpl")))
|
||||||
|
|
||||||
(define-team dotnet
|
|
||||||
(team 'dotnet
|
|
||||||
#:name ".NET"
|
|
||||||
#:description ".NET programming environment."
|
|
||||||
#:scope (list "gnu/packages/dotnet.scm")))
|
|
||||||
|
|
||||||
(define-team electronics
|
(define-team electronics
|
||||||
(team 'electronics
|
(team 'electronics
|
||||||
#:name "Electronics team"
|
#:name "Electronics team"
|
||||||
@@ -698,7 +689,6 @@ ecosystem."
|
|||||||
(team 'embedded
|
(team 'embedded
|
||||||
#:name "Embedded"
|
#:name "Embedded"
|
||||||
#:scope (list "gnu/packages/bootloaders.scm"
|
#:scope (list "gnu/packages/bootloaders.scm"
|
||||||
"gnu/packages/coreboot.scm"
|
|
||||||
"gnu/packages/firmware.scm")))
|
"gnu/packages/firmware.scm")))
|
||||||
|
|
||||||
(define-team games
|
(define-team games
|
||||||
@@ -835,7 +825,6 @@ and the maven-build-system."
|
|||||||
(make-regexp* "^gnu/packages/java(-.+|)\\.scm$")
|
(make-regexp* "^gnu/packages/java(-.+|)\\.scm$")
|
||||||
;; Match maven.scm and maven-*.scm
|
;; Match maven.scm and maven-*.scm
|
||||||
(make-regexp* "^gnu/packages/maven(-.+|)\\.scm$")
|
(make-regexp* "^gnu/packages/maven(-.+|)\\.scm$")
|
||||||
"gnu/packages/netbeans.scm"
|
|
||||||
"guix/build/ant-build-system.scm"
|
"guix/build/ant-build-system.scm"
|
||||||
"guix/build/clojure-build-system.scm"
|
"guix/build/clojure-build-system.scm"
|
||||||
"guix/build/clojure-utils.scm"
|
"guix/build/clojure-utils.scm"
|
||||||
@@ -852,8 +841,7 @@ and the maven-build-system."
|
|||||||
#:name "JavaScript team"
|
#:name "JavaScript team"
|
||||||
#:description
|
#:description
|
||||||
"JavaScript/Node.js packages, the node build system."
|
"JavaScript/Node.js packages, the node build system."
|
||||||
#:scope (list "gnu/packages/javascript.scm"
|
#:scope (list "gnu/packages/node-xyz.scm"
|
||||||
"gnu/packages/node-xyz.scm"
|
|
||||||
"gnu/packages/node.scm"
|
"gnu/packages/node.scm"
|
||||||
"guix/build-system/node.scm"
|
"guix/build-system/node.scm"
|
||||||
"guix/build/node-build-system.scm"
|
"guix/build/node-build-system.scm"
|
||||||
@@ -876,8 +864,8 @@ and the maven-build-system."
|
|||||||
"The plasma desktop environment, and KDE Applications."
|
"The plasma desktop environment, and KDE Applications."
|
||||||
#:scope (list (make-regexp* "^gnu/packages/(kde)(-.+|)\\.scm$"))))
|
#:scope (list (make-regexp* "^gnu/packages/(kde)(-.+|)\\.scm$"))))
|
||||||
|
|
||||||
(define-team linux-libre
|
(define-team kernel
|
||||||
(team 'linux-libre
|
(team 'kernel
|
||||||
#:name "Linux-libre kernel team"
|
#:name "Linux-libre kernel team"
|
||||||
#:scope (list "gnu/build/linux-modules.scm"
|
#:scope (list "gnu/build/linux-modules.scm"
|
||||||
(make-regexp* "^gnu/packages/aux-files/linux-libre.*$")
|
(make-regexp* "^gnu/packages/aux-files/linux-libre.*$")
|
||||||
@@ -954,7 +942,6 @@ importer, and the ocaml-build-system."
|
|||||||
#:scope
|
#:scope
|
||||||
(list "gnu/packages/ocaml.scm"
|
(list "gnu/packages/ocaml.scm"
|
||||||
"gnu/packages/coq.scm"
|
"gnu/packages/coq.scm"
|
||||||
"gnu/packages/rocq.scm"
|
|
||||||
"guix/build/ocaml-build-system.scm"
|
"guix/build/ocaml-build-system.scm"
|
||||||
"guix/build/dune-build-system.scm"
|
"guix/build/dune-build-system.scm"
|
||||||
"guix/build-system/ocaml.scm"
|
"guix/build-system/ocaml.scm"
|
||||||
@@ -984,8 +971,7 @@ perl-build-system as well as the rakudo-build-system."
|
|||||||
#:description
|
#:description
|
||||||
"Python, Python packages, the \"pypi\" importer, and the python-build-system."
|
"Python, Python packages, the \"pypi\" importer, and the python-build-system."
|
||||||
#:scope
|
#:scope
|
||||||
(list (make-regexp* "^gnu/packages/aux-files/python/.*\\.py$")
|
(list "gnu/packages/django.scm"
|
||||||
"gnu/packages/django.scm"
|
|
||||||
"gnu/packages/jupyter.scm"
|
"gnu/packages/jupyter.scm"
|
||||||
(make-regexp* "^gnu/packages/python(-.+|)\\.scm$")
|
(make-regexp* "^gnu/packages/python(-.+|)\\.scm$")
|
||||||
"gnu/packages/sphinx.scm"
|
"gnu/packages/sphinx.scm"
|
||||||
@@ -1228,7 +1214,6 @@ the \"texlive\" importer."
|
|||||||
"gnu/tests/version-control.scm"
|
"gnu/tests/version-control.scm"
|
||||||
"guix/build/bzr.scm"
|
"guix/build/bzr.scm"
|
||||||
"guix/build/cvs.scm"
|
"guix/build/cvs.scm"
|
||||||
"guix/build/fossil.scm"
|
|
||||||
"guix/build/git.scm"
|
"guix/build/git.scm"
|
||||||
"guix/build/hg.scm"
|
"guix/build/hg.scm"
|
||||||
"guix/build/svn.scm")))
|
"guix/build/svn.scm")))
|
||||||
@@ -1249,11 +1234,6 @@ the \"texlive\" importer."
|
|||||||
"guix/build-system/zig.scm")))
|
"guix/build-system/zig.scm")))
|
||||||
|
|
||||||
|
|
||||||
(define-member (person "Anderson Torres"
|
|
||||||
"anderson.torres.8519@gmail.com"
|
|
||||||
"AndersonTorres")
|
|
||||||
community translations)
|
|
||||||
|
|
||||||
(define-member (person "Eric Bavier"
|
(define-member (person "Eric Bavier"
|
||||||
"bavier@posteo.net"
|
"bavier@posteo.net"
|
||||||
"bavier")
|
"bavier")
|
||||||
@@ -1264,11 +1244,6 @@ the \"texlive\" importer."
|
|||||||
"jonsger")
|
"jonsger")
|
||||||
mozilla)
|
mozilla)
|
||||||
|
|
||||||
(define-member (person "Denis Carikli"
|
|
||||||
"GNUtoo@cyberdimension.org"
|
|
||||||
"GNUtoo")
|
|
||||||
embedded)
|
|
||||||
|
|
||||||
(define-member (person "Ludovic Courtès"
|
(define-member (person "Ludovic Courtès"
|
||||||
"ludo@gnu.org"
|
"ludo@gnu.org"
|
||||||
"civodul")
|
"civodul")
|
||||||
@@ -1298,7 +1273,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Leo Famulari"
|
(define-member (person "Leo Famulari"
|
||||||
"leo@famulari.name"
|
"leo@famulari.name"
|
||||||
"lfam")
|
"lfam")
|
||||||
linux-libre)
|
kernel)
|
||||||
|
|
||||||
(define-member (person "Efraim Flashner"
|
(define-member (person "Efraim Flashner"
|
||||||
"efraim@flashner.co.il"
|
"efraim@flashner.co.il"
|
||||||
@@ -1383,7 +1358,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Vagrant Cascadian"
|
(define-member (person "Vagrant Cascadian"
|
||||||
"vagrant@debian.org"
|
"vagrant@debian.org"
|
||||||
"vagrantc")
|
"vagrantc")
|
||||||
debian embedded linux-libre)
|
debian embedded kernel)
|
||||||
|
|
||||||
(define-member (person "Vagrant Cascadian" ;XXX: duplicate
|
(define-member (person "Vagrant Cascadian" ;XXX: duplicate
|
||||||
"vagrant@reproducible-builds.org"
|
"vagrant@reproducible-builds.org"
|
||||||
@@ -1537,7 +1512,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Rodion Goritskov"
|
(define-member (person "Rodion Goritskov"
|
||||||
"rodion@goritskov.com"
|
"rodion@goritskov.com"
|
||||||
"rodion-goritskov")
|
"rodion-goritskov")
|
||||||
games java kde linux-libre release)
|
games java kde kernel release)
|
||||||
|
|
||||||
(define-member (person "Jason Conroy"
|
(define-member (person "Jason Conroy"
|
||||||
"jconroy@tscripta.net"
|
"jconroy@tscripta.net"
|
||||||
@@ -1557,7 +1532,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Danny Milosavljevic"
|
(define-member (person "Danny Milosavljevic"
|
||||||
"dannym@friendly-machines.com"
|
"dannym@friendly-machines.com"
|
||||||
"daym")
|
"daym")
|
||||||
bootstrap dotnet hpc python rust science)
|
bootstrap hpc python rust science)
|
||||||
|
|
||||||
(define-member (person "Andy Tai"
|
(define-member (person "Andy Tai"
|
||||||
"atai@atai.org"
|
"atai@atai.org"
|
||||||
@@ -1577,7 +1552,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Nguyễn Gia Phong"
|
(define-member (person "Nguyễn Gia Phong"
|
||||||
"cnx@loang.net"
|
"cnx@loang.net"
|
||||||
"cnx")
|
"cnx")
|
||||||
build-tools lua qa-packages sysadmin vcs)
|
build-tools python qa-packages sysadmin vcs)
|
||||||
|
|
||||||
(define-member (person "Lilah Tascheter"
|
(define-member (person "Lilah Tascheter"
|
||||||
"lilah@lunabee.space"
|
"lilah@lunabee.space"
|
||||||
@@ -1622,7 +1597,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Wilko Meyer"
|
(define-member (person "Wilko Meyer"
|
||||||
"w@wmeyer.eu"
|
"w@wmeyer.eu"
|
||||||
"theesm")
|
"theesm")
|
||||||
linux-libre perl)
|
kernel perl)
|
||||||
|
|
||||||
(define-member (person "Untrusem"
|
(define-member (person "Untrusem"
|
||||||
"mysticmoksh@riseup.net"
|
"mysticmoksh@riseup.net"
|
||||||
@@ -1652,7 +1627,7 @@ the \"texlive\" importer."
|
|||||||
(define-member (person "Thanos Apollo"
|
(define-member (person "Thanos Apollo"
|
||||||
"public@thanosapollo.org"
|
"public@thanosapollo.org"
|
||||||
"thanosapollo")
|
"thanosapollo")
|
||||||
vcs emacs)
|
vcs)
|
||||||
|
|
||||||
(define-member (person "Ashish SHUKLA"
|
(define-member (person "Ashish SHUKLA"
|
||||||
"ashish.is@lostca.se"
|
"ashish.is@lostca.se"
|
||||||
@@ -1674,26 +1649,6 @@ the \"texlive\" importer."
|
|||||||
"tok")
|
"tok")
|
||||||
electronics)
|
electronics)
|
||||||
|
|
||||||
(define-member (person "gemmaro"
|
|
||||||
"gemmaro.dev@gmail.com"
|
|
||||||
"gemmaro")
|
|
||||||
ruby)
|
|
||||||
|
|
||||||
(define-member (person "bdunahu"
|
|
||||||
"bdunahu@operationnull.com"
|
|
||||||
"bdunahu")
|
|
||||||
games)
|
|
||||||
|
|
||||||
(define-member (person "Nomike"
|
|
||||||
"nomike@nomike.com"
|
|
||||||
"nomike")
|
|
||||||
dotnet)
|
|
||||||
|
|
||||||
(define-member (person "Fabio Natali"
|
|
||||||
"me@fabionatali.com"
|
|
||||||
"fnat")
|
|
||||||
emacs)
|
|
||||||
|
|
||||||
|
|
||||||
(define (find-team name)
|
(define (find-team name)
|
||||||
(or (hash-ref %teams (string->symbol name))
|
(or (hash-ref %teams (string->symbol name))
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env -S gawk -f
|
#!/usr/bin/env -S gawk -f
|
||||||
# GNU Guix --- Functional package management for GNU
|
# GNU Guix --- Functional package management for GNU
|
||||||
# Copyright © 2025, 2026 Efraim Flashner <efraim@flashner.co.il>
|
# Copyright © 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||||
#
|
#
|
||||||
# This file is part of GNU Guix.
|
# This file is part of GNU Guix.
|
||||||
#
|
#
|
||||||
@@ -21,22 +21,20 @@
|
|||||||
# ./etc/teams/rust/audit-rust-crates ./path/to/file.scm
|
# ./etc/teams/rust/audit-rust-crates ./path/to/file.scm
|
||||||
# Prints the output of cargo-audit to the shell.
|
# Prints the output of cargo-audit to the shell.
|
||||||
|
|
||||||
|
# Make sure we have cargo-audit in our PATH
|
||||||
BEGIN {
|
BEGIN {
|
||||||
"which cargo-audit" | getline cargoAudit
|
if (system("which cargo-audit 1> /dev/null"))
|
||||||
close("which cargo-audit")
|
exit 1;
|
||||||
cargoAudit = cargoAudit " audit --file -"
|
|
||||||
|
|
||||||
# Parse a record at a time.
|
# Parse a record at a time.
|
||||||
RS = "\n\n"
|
RS = "\n\n"
|
||||||
|
cargoAudit = "cargo-audit audit --file -"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Check the crate-source origin-only inputs, like in rust-crates.scm
|
# Check the crate-source origin-only inputs
|
||||||
/crate-source/ {
|
/crate-source/ {
|
||||||
for(i=3; i <= NF-2; i++) {
|
for(i=3; i <= NF-2; i++) {
|
||||||
if($i == "(crate-source") {
|
if($i == "(crate-source") {
|
||||||
crateName = $(i+1)
|
cargoLock = cargoLock "[[package]]\nname = " $(i+1) "\nversion = " $(i+2) "\n"
|
||||||
crateVersion = $(i+2)
|
|
||||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
|
||||||
next
|
next
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -46,64 +44,27 @@ BEGIN {
|
|||||||
/crate-uri/ {
|
/crate-uri/ {
|
||||||
for(i=3; i <= NF; i++) {
|
for(i=3; i <= NF; i++) {
|
||||||
if($i == "(version")
|
if($i == "(version")
|
||||||
crateVersion = $(i+1)
|
crateVersion = $(i+1)
|
||||||
if($i == "(crate-uri")
|
if($i == "(crate-uri")
|
||||||
crateName = $(i+1)
|
crateName = $(i+1)
|
||||||
}
|
}
|
||||||
gsub(/)/, "", crateVersion)
|
gsub(/)/, "", crateVersion)
|
||||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
||||||
next
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Parse the crates created from packages using 'cargo package'
|
# The xxxx-cargo-input variables have a set style
|
||||||
/package:rust/ {
|
# TODO: Replace the last dash between the name and the version with a space!
|
||||||
pkg = $2
|
# This doesn't take into account swapping between "-" and "_" so we skip it.
|
||||||
split(pkg, name_version, "-")
|
#( $2 ~ /-cargo-inputs/ ) {
|
||||||
crateVersion = name_version[length(name_version)]
|
# sub(/-cargo-inputs/, "", $2)
|
||||||
crateName = substr(pkg, 6, (length(pkg) - length(crateVersion) - 6))
|
# gsub(/)/, "", $0)
|
||||||
split(crateVersion, versionDots, ".")
|
# gsub(/rust-/, "", $0)
|
||||||
if(crateVersion && (crateVersion != "(git-version") && (length(versionDots) == 3) && crateName) {
|
# #gensub(/([[:alpha:]])-([[:digit:]]+)/, "\\1 \\2", "g", $i)
|
||||||
cargoLock = cargoLock "[[package]]\nname = \"" crateName "\"\nversion = \"" crateVersion "\"\n"
|
# print "[[package]]\nname = \"" $2 "\"\nversion = \"1.0.0\"\ndependencies = ["
|
||||||
} else {
|
# for (i = 4; i <= NF; i++) {
|
||||||
untested++
|
# print "\"" $i "\","
|
||||||
#print("Unable to test " $0)
|
# }
|
||||||
}
|
# print "]"
|
||||||
next
|
#}
|
||||||
}
|
|
||||||
|
|
||||||
# We make an attempt to create the crate name from the package name otherwise
|
END { print cargoLock | cargoAudit }
|
||||||
/git-reference/ {
|
|
||||||
for(i=3; i <= NF; i++) {
|
|
||||||
if($i == "(version")
|
|
||||||
crateVersion = $(i+1)
|
|
||||||
if($i == "(name")
|
|
||||||
crateName = $(i+1)
|
|
||||||
if($i == "(git-file-name") {
|
|
||||||
crateName = $(i+1)
|
|
||||||
crateVersion = $(i+2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
gsub(/)/, "", crateVersion)
|
|
||||||
gsub(/)/, "", crateName)
|
|
||||||
sub(/rust-/, "", crateName)
|
|
||||||
# The crate version MUST be major.minor.patch
|
|
||||||
split(crateVersion, versionParts, ".")
|
|
||||||
if(crateVersion && (crateVersion != "(git-version") && (length(versionParts) == 3) && crateName) {
|
|
||||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
|
||||||
} else {
|
|
||||||
untested++
|
|
||||||
#print("Unable to test " $0)
|
|
||||||
}
|
|
||||||
next
|
|
||||||
}
|
|
||||||
|
|
||||||
# Note those which we were unable to parse
|
|
||||||
/define rust/ {
|
|
||||||
if($3 == "#f)")
|
|
||||||
next
|
|
||||||
print("Unable to parse " $0)
|
|
||||||
}
|
|
||||||
|
|
||||||
{ untested++ }
|
|
||||||
|
|
||||||
END { print("Number of crates untested: " untested); print cargoLock | cargoAudit }
|
|
||||||
|
|||||||
@@ -26,6 +26,7 @@
|
|||||||
|
|
||||||
(define %sundry-texlive-packages
|
(define %sundry-texlive-packages
|
||||||
(list bibtool
|
(list bibtool
|
||||||
|
dvisvgm
|
||||||
rubber
|
rubber
|
||||||
texmaker
|
texmaker
|
||||||
texstudio
|
texstudio
|
||||||
|
|||||||
@@ -446,11 +446,9 @@ when booting a root file system on a Btrfs subvolume."
|
|||||||
(modules (menu-entry-multiboot-modules entry)))
|
(modules (menu-entry-multiboot-modules entry)))
|
||||||
#~(format port "
|
#~(format port "
|
||||||
menuentry ~s {
|
menuentry ~s {
|
||||||
~a
|
|
||||||
multiboot ~a root=~a~a~a
|
multiboot ~a root=~a~a~a
|
||||||
}~%"
|
}~%"
|
||||||
#$label
|
#$label
|
||||||
#$(grub-root-search device kernel)
|
|
||||||
#$kernel
|
#$kernel
|
||||||
#$(device-name->hurd-device-name device-name #:disk disk)
|
#$(device-name->hurd-device-name device-name #:disk disk)
|
||||||
(string-join (list #$@arguments) " " 'prefix)
|
(string-join (list #$@arguments) " " 'prefix)
|
||||||
|
|||||||
@@ -1226,12 +1226,10 @@ file name or an nfs-root containing ':/')."
|
|||||||
|
|
||||||
(match spec
|
(match spec
|
||||||
((? string?)
|
((? string?)
|
||||||
(if (string-match "^/dev/[a-zA-Z0-9]+$" spec)
|
(if (string-prefix? "/dev/" spec)
|
||||||
;; Nothing to do, but wait until SPEC shows up.
|
;; Nothing to do, but wait until SPEC shows up.
|
||||||
(resolve device-exists? spec identity)
|
(resolve device-exists? spec identity)
|
||||||
;; Do not resolve NFS / CIFS / tmpfs devices
|
spec)) ; do not resolve NFS / CIFS / tmpfs devices
|
||||||
;; or bcachefs multi-device specifications.
|
|
||||||
spec))
|
|
||||||
((? file-system-label?)
|
((? file-system-label?)
|
||||||
;; Resolve the label.
|
;; Resolve the label.
|
||||||
(resolve find-partition-by-label
|
(resolve find-partition-by-label
|
||||||
|
|||||||
+24
-90
@@ -74,37 +74,16 @@ Return the value associated with OPTION, or #f on failure."
|
|||||||
(loop (absolute target) (+ depth 1))
|
(loop (absolute target) (+ depth 1))
|
||||||
file))))))
|
file))))))
|
||||||
|
|
||||||
(define* (make-hurd-device-nodes #:key (root "/") (hurd "/hurd"))
|
(define* (make-hurd-device-nodes #:optional (root "/"))
|
||||||
"Make some of the nodes needed on GNU/Hurd."
|
"Make some of the nodes needed on GNU/Hurd."
|
||||||
(define (scope dir)
|
(define (scope dir)
|
||||||
(in-vicinity root dir))
|
(string-append root (if (string-suffix? "/" root) "" "/") dir))
|
||||||
|
|
||||||
(define scope-set-translator
|
|
||||||
(match-lambda
|
|
||||||
((file-name command)
|
|
||||||
(scope-set-translator (list file-name command #o600)))
|
|
||||||
((file-name command mode)
|
|
||||||
(let ((mount-point (scope file-name)))
|
|
||||||
(set-translator mount-point command mode)))))
|
|
||||||
|
|
||||||
(mkdir-p (scope "dev"))
|
(mkdir-p (scope "dev"))
|
||||||
;; XXX: We must have `/dev/console` otherwise `console-run` tries to
|
;; Don't create /dev/null etc just yet; the store
|
||||||
;; create it while the file-system is still read-only.
|
;; messes-up the permission bits.
|
||||||
(for-each (lambda (file)
|
;; Don't create /dev/console, /dev/vcs, etc.: they are created by
|
||||||
(call-with-output-file (scope file)
|
;; console-run on first boot.
|
||||||
(lambda (port)
|
|
||||||
(display file port) ;avoid hard-linking
|
|
||||||
(chmod port #o666))))
|
|
||||||
'("dev/console"
|
|
||||||
;; XXX What about vcs?
|
|
||||||
;; Don't create /dev/null etc just yet; the store
|
|
||||||
;; messes-up the permission bits.
|
|
||||||
;; "dev/null"
|
|
||||||
;; "dev/zero"
|
|
||||||
;; "dev/full"
|
|
||||||
;; "dev/random"
|
|
||||||
;; "dev/urandom"
|
|
||||||
))
|
|
||||||
|
|
||||||
(mkdir-p (scope "servers"))
|
(mkdir-p (scope "servers"))
|
||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
@@ -122,47 +101,22 @@ Return the value associated with OPTION, or #f on failure."
|
|||||||
"suspend"))
|
"suspend"))
|
||||||
|
|
||||||
(mkdir-p (scope "servers/socket"))
|
(mkdir-p (scope "servers/socket"))
|
||||||
(mkdir-p (scope "servers/bus/pci"))
|
|
||||||
|
|
||||||
;; Set the 'gnu.translator' extended attribute for passive translator
|
;; Don't create /servers/socket/1 & co: runsystem does that on first boot.
|
||||||
;; settings for pipes (servers/socet/1) and mount information (proc/mounts).
|
|
||||||
;; Pipes are needed for guile-3.0.11 to startup, this enables moving
|
|
||||||
;; "runsystem" to guile.
|
|
||||||
;; XXX TODO: Set more passive xattr translators?
|
|
||||||
(define servers
|
|
||||||
`(
|
|
||||||
;; ("servers/bus/pci" ("/hurd/pci-arbiter"))
|
|
||||||
;; ("servers/crash-dump-core" ("/hurd/crash" "--dump-core"))
|
|
||||||
;; ("servers/crash-kill" ("/hurd/crash" "--kill"))
|
|
||||||
;; ("servers/crash-suspend" ("/hurd/crash" "--suspend"))
|
|
||||||
;; ("servers/password" ("/hurd/password"))
|
|
||||||
;; PIPE -- for running runsystem as Guile
|
|
||||||
("servers/socket/1" (,(in-vicinity hurd "pflocal")))
|
|
||||||
;; /servers/socket/2 and /26 are created by 'static-networking-service'.
|
|
||||||
;; XXX: Spawn pfinet without arguments on these nodes so that a DHCP
|
|
||||||
;; client has someone to talk to?
|
|
||||||
("proc" (,(in-vicinity hurd "procfs") "--stat-mode=444"))))
|
|
||||||
|
|
||||||
(for-each scope-set-translator servers)
|
;; TODO: Set the 'gnu.translator' extended attribute for passive translator
|
||||||
|
;; settings?
|
||||||
(define devices
|
(mkdir-p (scope "servers/bus/pci")))
|
||||||
'())
|
|
||||||
(for-each scope-set-translator devices))
|
|
||||||
|
|
||||||
(define (passive-translator-xattr? file-name)
|
(define (passive-translator-xattr? file-name)
|
||||||
"Return true if FILE-NAME has an extended @code{gnu.translator} attribute
|
"Return true if FILE-NAME has an extended @code{gnu.translator} attribute
|
||||||
set.
|
set."
|
||||||
|
(catch 'system-error
|
||||||
Note that reading \"gnu.*\" xattrs on Linux only work with ext4; for tmpfs,
|
(lambda _ (not (string-null? (getxattr file-name "gnu.translator"))))
|
||||||
used during image creation, linux-7.0 with linux-shmem-hurd-xattr patch is
|
(lambda args
|
||||||
needed."
|
(if (= ENODATA (system-error-errno args))
|
||||||
(and (file-exists? file-name)
|
#f
|
||||||
(catch 'system-error
|
(apply throw args)))))
|
||||||
(lambda _ (not (string-null? (getxattr file-name "gnu.translator"))))
|
|
||||||
(lambda args
|
|
||||||
(if (= ENODATA (system-error-errno args))
|
|
||||||
#f
|
|
||||||
(apply throw args))))))
|
|
||||||
|
|
||||||
(define (passive-translator-installed? file-name)
|
(define (passive-translator-installed? file-name)
|
||||||
"Return true if @file{showtrans} finds a translator installed on FILE-NAME."
|
"Return true if @file{showtrans} finds a translator installed on FILE-NAME."
|
||||||
@@ -182,11 +136,7 @@ needed."
|
|||||||
(passive-translator-installed? file-name)))
|
(passive-translator-installed? file-name)))
|
||||||
|
|
||||||
(define* (set-translator file-name command #:optional (mode #o600))
|
(define* (set-translator file-name command #:optional (mode #o600))
|
||||||
"Setup translator COMMAND on FILE-NAME.
|
"Setup translator COMMAND on FILE-NAME."
|
||||||
|
|
||||||
Note that setting \"gnu.*\" xattrs on Linux only work with ext4; for tmpfs,
|
|
||||||
used during image creation, linux-7.0 with linux-shmem-hurd-xattr patch is
|
|
||||||
needed."
|
|
||||||
(unless (translated? file-name)
|
(unless (translated? file-name)
|
||||||
(let ((dir (dirname file-name)))
|
(let ((dir (dirname file-name)))
|
||||||
(unless (directory-exists? dir)
|
(unless (directory-exists? dir)
|
||||||
@@ -218,7 +168,7 @@ needed."
|
|||||||
"Make some of the device nodes needed on GNU/Hurd."
|
"Make some of the device nodes needed on GNU/Hurd."
|
||||||
|
|
||||||
(define (scope dir)
|
(define (scope dir)
|
||||||
(in-vicinity root dir))
|
(string-append root (if (string-suffix? "/" root) "" "/") dir))
|
||||||
|
|
||||||
(define scope-set-translator
|
(define scope-set-translator
|
||||||
(match-lambda
|
(match-lambda
|
||||||
@@ -230,19 +180,8 @@ needed."
|
|||||||
|
|
||||||
(define (mkdir* dir)
|
(define (mkdir* dir)
|
||||||
(let ((dir (scope dir)))
|
(let ((dir (scope dir)))
|
||||||
(unless (file-exists? dir)
|
(unless (file-exists? dir)
|
||||||
(mkdir-p dir))))
|
(mkdir-p dir))))
|
||||||
|
|
||||||
;; (define random-seed "/var/lib/random-seed")
|
|
||||||
|
|
||||||
;; ;; Create seed file to avoid
|
|
||||||
;; ;; /gnu/store/...-hurd-x.y.z/hurd/random: Warning: Failed to read random seed file /var/lib/random-seed: No such file or directory
|
|
||||||
;; (let ((file (scope random-seed)))
|
|
||||||
;; (mkdir-p (dirname file))
|
|
||||||
;; (call-with-output-file file
|
|
||||||
;; (lambda (port)
|
|
||||||
;; (display (iota 1000) port)
|
|
||||||
;; (chmod port #o600))))
|
|
||||||
|
|
||||||
(define servers
|
(define servers
|
||||||
'(("servers/bus/pci" ("/hurd/pci-arbiter"))
|
'(("servers/bus/pci" ("/hurd/pci-arbiter"))
|
||||||
@@ -259,14 +198,8 @@ needed."
|
|||||||
(define devices
|
(define devices
|
||||||
`(("dev/full" ("/hurd/null" "--full") #o666)
|
`(("dev/full" ("/hurd/null" "--full") #o666)
|
||||||
("dev/null" ("/hurd/null") #o666)
|
("dev/null" ("/hurd/null") #o666)
|
||||||
;; The random translators, especially /dev/urandom, need to be non-passive
|
("dev/random" ("/hurd/random" "--seed-file" "/var/lib/random-seed")
|
||||||
;; When they exist in the file-system and reference /var/lib/random-seed
|
#o644)
|
||||||
;; while / is read-only. console-run will hang.
|
|
||||||
;; ("dev/random" ("/hurd/random" "--seed-file" ,random-seed)
|
|
||||||
;; #o644)
|
|
||||||
;; ("dev/urandom" ("/hurd/random" "--seed-file" ,random-seed
|
|
||||||
;; "--fast")
|
|
||||||
;; #o644)
|
|
||||||
("dev/zero" ("/hurd/storeio" "--store-type=zero") #o666)
|
("dev/zero" ("/hurd/storeio" "--store-type=zero") #o666)
|
||||||
|
|
||||||
("dev/console" ("/hurd/term" "/dev/console" "device" "console"))
|
("dev/console" ("/hurd/term" "/dev/console" "device" "console"))
|
||||||
@@ -351,6 +284,7 @@ needed."
|
|||||||
(rename-file (scope "dev/console") (scope "dev/console-")))
|
(rename-file (scope "dev/console") (scope "dev/console-")))
|
||||||
(for-each scope-set-translator devices)
|
(for-each scope-set-translator devices)
|
||||||
|
|
||||||
|
(false-if-EEXIST (symlink "/dev/random" (scope "dev/urandom")))
|
||||||
(false-if-EEXIST (symlink "/dev/fd/0" (scope "dev/stdin")))
|
(false-if-EEXIST (symlink "/dev/fd/0" (scope "dev/stdin")))
|
||||||
(false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
|
(false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
|
||||||
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
|
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
|
||||||
|
|||||||
+1
-1
@@ -322,7 +322,7 @@ register-closure."
|
|||||||
|
|
||||||
;; Populate /dev.
|
;; Populate /dev.
|
||||||
(when make-device-nodes
|
(when make-device-nodes
|
||||||
(make-device-nodes #:root root))
|
(make-device-nodes root))
|
||||||
|
|
||||||
(when register-closures?
|
(when register-closures?
|
||||||
(unless copy-closures?
|
(unless copy-closures?
|
||||||
|
|||||||
@@ -445,14 +445,10 @@ load path must be adjusted as needed."
|
|||||||
;; Behave like an init process: create a sub-process that calls
|
;; Behave like an init process: create a sub-process that calls
|
||||||
;; THUNK, and wait for child processes. Furthermore, forward
|
;; THUNK, and wait for child processes. Furthermore, forward
|
||||||
;; RELAYED-SIGNALS to the child process.
|
;; RELAYED-SIGNALS to the child process.
|
||||||
;; We presently use `safe-clone` here due to a bug in the interaction
|
(match (primitive-fork)
|
||||||
;; between Guix and `primitive-fork` in Guile 3.0.11:
|
(0
|
||||||
;; https://codeberg.org/guix/guix/issues/7690#issuecomment-12744123
|
|
||||||
(safe-clone
|
|
||||||
SIGCHLD
|
|
||||||
(lambda ()
|
|
||||||
(call-with-clean-exit thunk))
|
(call-with-clean-exit thunk))
|
||||||
(lambda (pid)
|
(pid
|
||||||
(install-signal-handlers pid)
|
(install-signal-handlers pid)
|
||||||
(let loop ()
|
(let loop ()
|
||||||
(match (wait-child-process)
|
(match (wait-child-process)
|
||||||
|
|||||||
+1
-10
@@ -173,16 +173,7 @@ SYSTEM."
|
|||||||
(define (core-packages system)
|
(define (core-packages system)
|
||||||
"Return the 'core' package set suitable for SYSTEM, which might be a system
|
"Return the 'core' package set suitable for SYSTEM, which might be a system
|
||||||
type or a GNU triplet."
|
type or a GNU triplet."
|
||||||
(cond ((target-linux? system)
|
(cond ((target-linux? system) (append %core-packages %linux-packages))
|
||||||
(append %core-packages
|
|
||||||
%linux-packages
|
|
||||||
(cond ((target-arm32? system)
|
|
||||||
(list linux-libre-arm-generic))
|
|
||||||
((target-aarch64? system)
|
|
||||||
(list linux-libre-arm64-generic))
|
|
||||||
((target-riscv64? system)
|
|
||||||
(list linux-libre-riscv64-generic))
|
|
||||||
(else '()))))
|
|
||||||
((target-hurd? system) (append %core-packages %hurd-packages))
|
((target-hurd? system) (append %core-packages %hurd-packages))
|
||||||
((target-mingw? system) %core-packages-for-mingw)
|
((target-mingw? system) %core-packages-for-mingw)
|
||||||
(else '())))
|
(else '())))
|
||||||
|
|||||||
+10
-19
@@ -81,10 +81,7 @@ entry will be expired even if it has been accessed recently.")
|
|||||||
"Maximum time a cache entry for SSH keys is valid, in seconds.")
|
"Maximum time a cache entry for SSH keys is valid, in seconds.")
|
||||||
(extra-content
|
(extra-content
|
||||||
(raw-configuration-string "")
|
(raw-configuration-string "")
|
||||||
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}.")
|
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}."))
|
||||||
(shepherd-requirement
|
|
||||||
(list-of-symbols '())
|
|
||||||
"List of services that should be started before this service."))
|
|
||||||
|
|
||||||
(define (home-gpg-agent-configuration-file config)
|
(define (home-gpg-agent-configuration-file config)
|
||||||
"Return the @file{gpg-agent.conf} file for @var{config}."
|
"Return the @file{gpg-agent.conf} file for @var{config}."
|
||||||
@@ -107,7 +104,7 @@ entry will be expired even if it has been accessed recently.")
|
|||||||
(define (home-gpg-agent-shepherd-services config)
|
(define (home-gpg-agent-shepherd-services config)
|
||||||
"Return the possibly-empty list of Shepherd services for @var{config}."
|
"Return the possibly-empty list of Shepherd services for @var{config}."
|
||||||
(match-record config <home-gpg-agent-configuration>
|
(match-record config <home-gpg-agent-configuration>
|
||||||
(gnupg ssh-support? shepherd-requirement)
|
(gnupg ssh-support?)
|
||||||
;; 'gpg-agent' is started on demand by GnuPG's programs, but it has to be
|
;; 'gpg-agent' is started on demand by GnuPG's programs, but it has to be
|
||||||
;; started explicitly when OpenSSH support is enabled (info "(gnupg) Agent
|
;; started explicitly when OpenSSH support is enabled (info "(gnupg) Agent
|
||||||
;; Options").
|
;; Options").
|
||||||
@@ -122,21 +119,15 @@ entry will be expired even if it has been accessed recently.")
|
|||||||
#:socket-directory-permissions #o700))))
|
#:socket-directory-permissions #o700))))
|
||||||
(list (shepherd-service
|
(list (shepherd-service
|
||||||
(provision '(gpg-agent ssh-agent))
|
(provision '(gpg-agent ssh-agent))
|
||||||
(requirement shepherd-requirement)
|
|
||||||
(modules '((shepherd support))) ;for '%user-runtime-dir'
|
(modules '((shepherd support))) ;for '%user-runtime-dir'
|
||||||
(start
|
(start #~(make-systemd-constructor
|
||||||
#~(lambda args
|
(list #$(file-append gnupg "/bin/gpg-agent")
|
||||||
((make-systemd-constructor
|
"--supervised" "--enable-ssh-support")
|
||||||
(list #$(file-append gnupg "/bin/gpg-agent")
|
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
|
||||||
"--supervised" "--enable-ssh-support")
|
#$(endpoint "browser" "S.gpg-agent.browser")
|
||||||
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
|
#$(endpoint "extra" "S.gpg-agent.extra")
|
||||||
#$(endpoint "browser" "S.gpg-agent.browser")
|
;; #$(endpoint "scdaemon" "S.scdaemon")
|
||||||
#$(endpoint "extra" "S.gpg-agent.extra")
|
#$(endpoint "std" "S.gpg-agent"))))
|
||||||
;; #$(endpoint "scdaemon" "S.scdaemon")
|
|
||||||
#$(endpoint "std" "S.gpg-agent"))
|
|
||||||
;; Inherit graphical session environment.
|
|
||||||
#:environment-variables (environ))
|
|
||||||
args)))
|
|
||||||
(stop #~(make-systemd-destructor))
|
(stop #~(make-systemd-destructor))
|
||||||
(documentation "Start 'gpg-agent', the GnuPG passphrase
|
(documentation "Start 'gpg-agent', the GnuPG passphrase
|
||||||
agent, with support for handling OpenSSH material."))))
|
agent, with support for handling OpenSSH material."))))
|
||||||
|
|||||||
@@ -70,11 +70,6 @@
|
|||||||
openssh-host-proxy-command
|
openssh-host-proxy-command
|
||||||
openssh-host-host-key-algorithms
|
openssh-host-host-key-algorithms
|
||||||
openssh-host-accepted-key-types
|
openssh-host-accepted-key-types
|
||||||
openssh-host-control-master
|
|
||||||
openssh-host-control-file-name
|
|
||||||
openssh-host-control-persist
|
|
||||||
openssh-host-sent-environment-variables
|
|
||||||
openssh-host-environment-variables
|
|
||||||
openssh-host-extra-content
|
openssh-host-extra-content
|
||||||
proxy-jump
|
proxy-jump
|
||||||
proxy-jump-host-name
|
proxy-jump-host-name
|
||||||
@@ -89,9 +84,6 @@
|
|||||||
(define (serialize-field-name name)
|
(define (serialize-field-name name)
|
||||||
(match name
|
(match name
|
||||||
('accepted-key-types "PubkeyAcceptedKeyTypes")
|
('accepted-key-types "PubkeyAcceptedKeyTypes")
|
||||||
('sent-environment-variables "SendEnv")
|
|
||||||
('environment-variables "SetEnv")
|
|
||||||
('control-file-name "ControlPath")
|
|
||||||
(_
|
(_
|
||||||
(let ((name (let ((str (symbol->string name)))
|
(let ((name (let ((str (symbol->string name)))
|
||||||
(if (string-suffix? "?" str)
|
(if (string-suffix? "?" str)
|
||||||
@@ -138,14 +130,6 @@
|
|||||||
(define-maybe string)
|
(define-maybe string)
|
||||||
(define-maybe natural-number)
|
(define-maybe natural-number)
|
||||||
|
|
||||||
(define (serialize-symbol field value)
|
|
||||||
(if (maybe-value-set? value)
|
|
||||||
(string-append " " (serialize-field-name field) " "
|
|
||||||
(symbol->string value) "\n")
|
|
||||||
""))
|
|
||||||
|
|
||||||
(define-maybe symbol)
|
|
||||||
|
|
||||||
(define (serialize-raw-configuration-string field value)
|
(define (serialize-raw-configuration-string field value)
|
||||||
(string-append value "\n"))
|
(string-append value "\n"))
|
||||||
(define raw-configuration-string? string?)
|
(define raw-configuration-string? string?)
|
||||||
@@ -158,33 +142,6 @@
|
|||||||
|
|
||||||
(define-maybe string-list)
|
(define-maybe string-list)
|
||||||
|
|
||||||
(define (env-list? lst)
|
|
||||||
(string-list? lst))
|
|
||||||
|
|
||||||
(define (serialize-env-list field lst)
|
|
||||||
(string-append " " (serialize-field-name field) " "
|
|
||||||
(string-join lst " ") "\n"))
|
|
||||||
|
|
||||||
(define-maybe env-list)
|
|
||||||
|
|
||||||
(define (string-alist? lst)
|
|
||||||
(and (list? lst)
|
|
||||||
(every (lambda (x)
|
|
||||||
(and (pair? x)
|
|
||||||
(string? (car x))
|
|
||||||
(string? (cdr x))))
|
|
||||||
lst)))
|
|
||||||
|
|
||||||
(define (serialize-string-alist field lst)
|
|
||||||
(string-append " " (serialize-field-name field) " "
|
|
||||||
(string-join
|
|
||||||
(map (match-lambda
|
|
||||||
((key . value)
|
|
||||||
(format #nil "~s" (string-append key "=" value))))
|
|
||||||
lst) " ") "\n"))
|
|
||||||
|
|
||||||
(define-maybe string-alist)
|
|
||||||
|
|
||||||
(define-record-type <proxy-command>
|
(define-record-type <proxy-command>
|
||||||
(proxy-command command)
|
(proxy-command command)
|
||||||
proxy-command?
|
proxy-command?
|
||||||
@@ -318,31 +275,6 @@ through before connecting to the server.")
|
|||||||
(accepted-key-types
|
(accepted-key-types
|
||||||
maybe-string-list
|
maybe-string-list
|
||||||
"The list of accepted user public key types.")
|
"The list of accepted user public key types.")
|
||||||
(control-master
|
|
||||||
maybe-symbol
|
|
||||||
"Enables the sharing of multiple sessions over a single network connection.
|
|
||||||
Acceptable values are @code{'no}, @code{'yes}, @code{'auto}, @code{'ask}, and
|
|
||||||
@code{'autoask}.")
|
|
||||||
(control-file-name
|
|
||||||
maybe-string
|
|
||||||
"The file name of the control socket used for connection sharing, or
|
|
||||||
@code{\"none\"} to disable connection sharing.")
|
|
||||||
(control-persist
|
|
||||||
maybe-string
|
|
||||||
"When used in conjunction with @env{control-master}, specifies that the
|
|
||||||
master connection should remain open in the background (waiting for future
|
|
||||||
client connections) after the initial client connection has been closed.")
|
|
||||||
(sent-environment-variables
|
|
||||||
maybe-env-list
|
|
||||||
"Specifies which variables from the local environment should be sent to the
|
|
||||||
server. The server must also support it, and the server must be configured to
|
|
||||||
accept those environment variables.")
|
|
||||||
(environment-variables
|
|
||||||
maybe-string-alist
|
|
||||||
"List of environment variables with corresponding values to send to the
|
|
||||||
server, as an alist of strings of the form @code{'(\"@var{variable}\"
|
|
||||||
. \"@var{value}\")}. The server must also support it, and the server must be
|
|
||||||
configured to accept those environment variables.")
|
|
||||||
(extra-content
|
(extra-content
|
||||||
(raw-configuration-string "")
|
(raw-configuration-string "")
|
||||||
"Extra content appended as-is to this @code{Host} block in
|
"Extra content appended as-is to this @code{Host} block in
|
||||||
|
|||||||
+35
-81
@@ -56,8 +56,7 @@
|
|||||||
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
|
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
|
||||||
# Copyright © 2022 ( <paren@disroot.org>
|
# Copyright © 2022 ( <paren@disroot.org>
|
||||||
# Copyright © 2022, 2026 jgart <jgart@dismail.de>
|
# Copyright © 2022, 2026 jgart <jgart@dismail.de>
|
||||||
# Copyright © 2022-2023, 2025-2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
# Copyright © 2023-2025 Zheng Junjie <z572@z572.online>
|
||||||
# Copyright © 2023-2026 Zheng Junjie <z572@z572.online>
|
|
||||||
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
|
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
|
||||||
# Copyright © 2023 Andy Tai <atai@atai.org>
|
# Copyright © 2023 Andy Tai <atai@atai.org>
|
||||||
# Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
|
# Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
|
||||||
@@ -76,7 +75,6 @@
|
|||||||
# Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
|
# Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
|
||||||
# Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
# Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||||
# Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
# Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||||
# Copyright © 2026 Simen Endsjø <contact@simendsjo.me>
|
|
||||||
#
|
#
|
||||||
# This file is part of GNU Guix.
|
# This file is part of GNU Guix.
|
||||||
#
|
#
|
||||||
@@ -209,7 +207,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/cobol.scm \
|
%D%/packages/cobol.scm \
|
||||||
%D%/packages/code.scm \
|
%D%/packages/code.scm \
|
||||||
%D%/packages/commencement.scm \
|
%D%/packages/commencement.scm \
|
||||||
%D%/packages/compiler-tools.scm \
|
|
||||||
%D%/packages/compression.scm \
|
%D%/packages/compression.scm \
|
||||||
%D%/packages/compton.scm \
|
%D%/packages/compton.scm \
|
||||||
%D%/packages/computer-architecture.scm \
|
%D%/packages/computer-architecture.scm \
|
||||||
@@ -219,7 +216,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/convmv.scm \
|
%D%/packages/convmv.scm \
|
||||||
%D%/packages/codex.scm \
|
%D%/packages/codex.scm \
|
||||||
%D%/packages/coq.scm \
|
%D%/packages/coq.scm \
|
||||||
%D%/packages/coreboot.scm \
|
|
||||||
%D%/packages/cpio.scm \
|
%D%/packages/cpio.scm \
|
||||||
%D%/packages/cpp.scm \
|
%D%/packages/cpp.scm \
|
||||||
%D%/packages/cppi.scm \
|
%D%/packages/cppi.scm \
|
||||||
@@ -236,7 +232,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/darwin.scm \
|
%D%/packages/darwin.scm \
|
||||||
%D%/packages/data-language.scm \
|
%D%/packages/data-language.scm \
|
||||||
%D%/packages/databases.scm \
|
%D%/packages/databases.scm \
|
||||||
%D%/packages/datalog.scm \
|
|
||||||
%D%/packages/datamash.scm \
|
%D%/packages/datamash.scm \
|
||||||
%D%/packages/datastructures.scm \
|
%D%/packages/datastructures.scm \
|
||||||
%D%/packages/dav.scm \
|
%D%/packages/dav.scm \
|
||||||
@@ -344,7 +339,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/golang-check.scm \
|
%D%/packages/golang-check.scm \
|
||||||
%D%/packages/golang-compression.scm \
|
%D%/packages/golang-compression.scm \
|
||||||
%D%/packages/golang-crypto.scm \
|
%D%/packages/golang-crypto.scm \
|
||||||
%D%/packages/golang-graphics.scm \
|
|
||||||
%D%/packages/golang-maths.scm \
|
%D%/packages/golang-maths.scm \
|
||||||
%D%/packages/golang-vcs.scm \
|
%D%/packages/golang-vcs.scm \
|
||||||
%D%/packages/golang-web.scm \
|
%D%/packages/golang-web.scm \
|
||||||
@@ -506,7 +500,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/myrddin.scm \
|
%D%/packages/myrddin.scm \
|
||||||
%D%/packages/ncdu.scm \
|
%D%/packages/ncdu.scm \
|
||||||
%D%/packages/ncurses.scm \
|
%D%/packages/ncurses.scm \
|
||||||
%D%/packages/netbeans.scm \
|
|
||||||
%D%/packages/netpbm.scm \
|
%D%/packages/netpbm.scm \
|
||||||
%D%/packages/nettle.scm \
|
%D%/packages/nettle.scm \
|
||||||
%D%/packages/networking.scm \
|
%D%/packages/networking.scm \
|
||||||
@@ -615,7 +608,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/rocm-apps.scm \
|
%D%/packages/rocm-apps.scm \
|
||||||
%D%/packages/rocm-libs.scm \
|
%D%/packages/rocm-libs.scm \
|
||||||
%D%/packages/rocm-tools.scm \
|
%D%/packages/rocm-tools.scm \
|
||||||
%D%/packages/rocq.scm \
|
|
||||||
%D%/packages/rpc.scm \
|
%D%/packages/rpc.scm \
|
||||||
%D%/packages/rpm.scm \
|
%D%/packages/rpm.scm \
|
||||||
%D%/packages/rrdtool.scm \
|
%D%/packages/rrdtool.scm \
|
||||||
@@ -733,6 +725,7 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/packages/zig.scm \
|
%D%/packages/zig.scm \
|
||||||
%D%/packages/zig-xyz.scm \
|
%D%/packages/zig-xyz.scm \
|
||||||
%D%/packages/zile.scm \
|
%D%/packages/zile.scm \
|
||||||
|
%D%/packages/zwave.scm \
|
||||||
\
|
\
|
||||||
%D%/services.scm \
|
%D%/services.scm \
|
||||||
%D%/services/admin.scm \
|
%D%/services/admin.scm \
|
||||||
@@ -745,8 +738,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/services/cgit.scm \
|
%D%/services/cgit.scm \
|
||||||
%D%/services/ci.scm \
|
%D%/services/ci.scm \
|
||||||
%D%/services/configuration.scm \
|
%D%/services/configuration.scm \
|
||||||
%D%/services/configuration/environment-variables.scm \
|
|
||||||
%D%/services/configuration/utils.scm \
|
|
||||||
%D%/services/containers.scm \
|
%D%/services/containers.scm \
|
||||||
%D%/services/cuirass.scm \
|
%D%/services/cuirass.scm \
|
||||||
%D%/services/cups.scm \
|
%D%/services/cups.scm \
|
||||||
@@ -759,7 +750,6 @@ GNU_SYSTEM_MODULES = \
|
|||||||
%D%/services/docker.scm \
|
%D%/services/docker.scm \
|
||||||
%D%/services/authentication.scm \
|
%D%/services/authentication.scm \
|
||||||
%D%/services/file-sharing.scm \
|
%D%/services/file-sharing.scm \
|
||||||
%D%/services/firmware.scm \
|
|
||||||
%D%/services/games.scm \
|
%D%/services/games.scm \
|
||||||
%D%/services/ganeti.scm \
|
%D%/services/ganeti.scm \
|
||||||
%D%/services/getmail.scm \
|
%D%/services/getmail.scm \
|
||||||
@@ -1004,9 +994,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/akonadi-not-relocatable.patch \
|
%D%/packages/patches/akonadi-not-relocatable.patch \
|
||||||
%D%/packages/patches/akonadi-timestamps.patch \
|
%D%/packages/patches/akonadi-timestamps.patch \
|
||||||
%D%/packages/patches/alure-dumb-2.patch \
|
%D%/packages/patches/alure-dumb-2.patch \
|
||||||
%D%/packages/patches/amd-smi-newer-libdrm.patch \
|
|
||||||
%D%/packages/patches/amd-smi-python.patch \
|
%D%/packages/patches/amd-smi-python.patch \
|
||||||
%D%/packages/patches/angband-remove-nonfree-tile-options.patch \
|
|
||||||
%D%/packages/patches/ibus-anthy-fix-tests.patch \
|
%D%/packages/patches/ibus-anthy-fix-tests.patch \
|
||||||
%D%/packages/patches/ibus-table-paths.patch \
|
%D%/packages/patches/ibus-table-paths.patch \
|
||||||
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
||||||
@@ -1023,7 +1011,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
|
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
|
||||||
%D%/packages/patches/ath9k-htc-firmware-gcc-compat.patch \
|
%D%/packages/patches/ath9k-htc-firmware-gcc-compat.patch \
|
||||||
%D%/packages/patches/atlas-gfortran-compat.patch \
|
%D%/packages/patches/atlas-gfortran-compat.patch \
|
||||||
%D%/packages/patches/aubio-waflib-python312-compat.patch \
|
|
||||||
%D%/packages/patches/audacity-ffmpeg-fallback.patch \
|
%D%/packages/patches/audacity-ffmpeg-fallback.patch \
|
||||||
%D%/packages/patches/audiofile-fix-datatypes-in-tests.patch \
|
%D%/packages/patches/audiofile-fix-datatypes-in-tests.patch \
|
||||||
%D%/packages/patches/audiofile-fix-sign-conversion.patch \
|
%D%/packages/patches/audiofile-fix-sign-conversion.patch \
|
||||||
@@ -1048,7 +1035,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/azr3.patch \
|
%D%/packages/patches/azr3.patch \
|
||||||
%D%/packages/patches/azr3-remove-lash.patch \
|
%D%/packages/patches/azr3-remove-lash.patch \
|
||||||
%D%/packages/patches/barony-fix-textures.patch \
|
%D%/packages/patches/barony-fix-textures.patch \
|
||||||
%D%/packages/patches/bam-python3-compat.patch \
|
|
||||||
%D%/packages/patches/bash-completion-directories.patch \
|
%D%/packages/patches/bash-completion-directories.patch \
|
||||||
%D%/packages/patches/bash-linux-pgrp-pipe.patch \
|
%D%/packages/patches/bash-linux-pgrp-pipe.patch \
|
||||||
%D%/packages/patches/basis-universal-unbundle-libs.patch \
|
%D%/packages/patches/basis-universal-unbundle-libs.patch \
|
||||||
@@ -1101,11 +1087,11 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
|
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
|
||||||
%D%/packages/patches/chez-irregex-import-cond-expand.patch \
|
%D%/packages/patches/chez-irregex-import-cond-expand.patch \
|
||||||
%D%/packages/patches/chez-scheme-bin-sh.patch \
|
%D%/packages/patches/chez-scheme-bin-sh.patch \
|
||||||
%D%/packages/patches/cianna-remove-error-for-missing-cuda.patch \
|
|
||||||
%D%/packages/patches/circos-remove-findbin.patch \
|
%D%/packages/patches/circos-remove-findbin.patch \
|
||||||
%D%/packages/patches/cdparanoia-fpic.patch \
|
%D%/packages/patches/cdparanoia-fpic.patch \
|
||||||
%D%/packages/patches/cdrkit-libre-cross-compile.patch \
|
%D%/packages/patches/cdrkit-libre-cross-compile.patch \
|
||||||
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \
|
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \
|
||||||
|
%D%/packages/patches/ceph-fix-cmake.patch \
|
||||||
%D%/packages/patches/cf-tool-add-languages.patch \
|
%D%/packages/patches/cf-tool-add-languages.patch \
|
||||||
%D%/packages/patches/chmlib-inttypes.patch \
|
%D%/packages/patches/chmlib-inttypes.patch \
|
||||||
%D%/packages/patches/cl-ana-pr-49.patch \
|
%D%/packages/patches/cl-ana-pr-49.patch \
|
||||||
@@ -1138,8 +1124,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/clog-fix-shared-build.patch \
|
%D%/packages/patches/clog-fix-shared-build.patch \
|
||||||
%D%/packages/patches/clucene-gcc-14.patch \
|
%D%/packages/patches/clucene-gcc-14.patch \
|
||||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||||
%D%/packages/patches/codex-acp-0.11.1-disable-code-mode.patch \
|
%D%/packages/patches/coda-use-system-libs.patch \
|
||||||
%D%/packages/patches/codex-acp-0.11.1-remove-patch-sections.patch \
|
%D%/packages/patches/codex-acp-0.9.2-remove-patch-sections.patch \
|
||||||
|
%D%/packages/patches/codex-acp-0.9.2-replace-result-flatten.patch \
|
||||||
|
%D%/packages/patches/codex-0.98.0-remove-patch-sections.patch \
|
||||||
%D%/packages/patches/cogl-fix-double-free.patch \
|
%D%/packages/patches/cogl-fix-double-free.patch \
|
||||||
%D%/packages/patches/collada-dom-boost.patch \
|
%D%/packages/patches/collada-dom-boost.patch \
|
||||||
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
||||||
@@ -1171,6 +1159,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
|
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
|
||||||
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
|
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
|
||||||
%D%/packages/patches/ctranslate2-local-build.patch \
|
%D%/packages/patches/ctranslate2-local-build.patch \
|
||||||
|
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
|
||||||
%D%/packages/patches/cube-nocheck.patch \
|
%D%/packages/patches/cube-nocheck.patch \
|
||||||
%D%/packages/patches/cups-relax-root-ownership-check.patch \
|
%D%/packages/patches/cups-relax-root-ownership-check.patch \
|
||||||
%D%/packages/patches/cura-engine-gcc-14.patch \
|
%D%/packages/patches/cura-engine-gcc-14.patch \
|
||||||
@@ -1181,6 +1170,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/curlftpfs-fix-memory-leak.patch \
|
%D%/packages/patches/curlftpfs-fix-memory-leak.patch \
|
||||||
%D%/packages/patches/curlftpfs-fix-no_verify_hostname.patch \
|
%D%/packages/patches/curlftpfs-fix-no_verify_hostname.patch \
|
||||||
%D%/packages/patches/cursynth-wave-rand.patch \
|
%D%/packages/patches/cursynth-wave-rand.patch \
|
||||||
|
%D%/packages/patches/cvc5-reproducible-build.patch \
|
||||||
%D%/packages/patches/cvs-CVE-2017-12836.patch \
|
%D%/packages/patches/cvs-CVE-2017-12836.patch \
|
||||||
%D%/packages/patches/cyrus-sasl-fix-time-h.patch \
|
%D%/packages/patches/cyrus-sasl-fix-time-h.patch \
|
||||||
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
|
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
|
||||||
@@ -1190,7 +1180,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/date-output-pkg-config-files.patch \
|
%D%/packages/patches/date-output-pkg-config-files.patch \
|
||||||
%D%/packages/patches/dbacl-include-locale.h.patch \
|
%D%/packages/patches/dbacl-include-locale.h.patch \
|
||||||
%D%/packages/patches/dbacl-icheck-multiple-definitions.patch \
|
%D%/packages/patches/dbacl-icheck-multiple-definitions.patch \
|
||||||
%D%/packages/patches/dblatex-importlib.patch \
|
|
||||||
%D%/packages/patches/dblatex-inkscape-1.0.patch \
|
%D%/packages/patches/dblatex-inkscape-1.0.patch \
|
||||||
%D%/packages/patches/dbus-helper-search-path.patch \
|
%D%/packages/patches/dbus-helper-search-path.patch \
|
||||||
%D%/packages/patches/ddd-build.patch \
|
%D%/packages/patches/ddd-build.patch \
|
||||||
@@ -1244,7 +1233,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
|
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
|
||||||
%D%/packages/patches/elm-offline-package-registry.patch \
|
%D%/packages/patches/elm-offline-package-registry.patch \
|
||||||
%D%/packages/patches/elm-reactor-static-files.patch \
|
%D%/packages/patches/elm-reactor-static-files.patch \
|
||||||
%D%/packages/patches/emacs-agent-shell-fix-tests.patch \
|
%D%/packages/patches/emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch \
|
||||||
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
|
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
|
||||||
%D%/packages/patches/emacs-disable-jit-compilation.patch \
|
%D%/packages/patches/emacs-disable-jit-compilation.patch \
|
||||||
%D%/packages/patches/emacs-doc-toc-shell-commands.patch \
|
%D%/packages/patches/emacs-doc-toc-shell-commands.patch \
|
||||||
@@ -1301,7 +1290,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/fbgemm-use-system-libraries.patch \
|
%D%/packages/patches/fbgemm-use-system-libraries.patch \
|
||||||
%D%/packages/patches/fbreader-curl-7.62.patch \
|
%D%/packages/patches/fbreader-curl-7.62.patch \
|
||||||
%D%/packages/patches/fbreader-fix-icon.patch \
|
%D%/packages/patches/fbreader-fix-icon.patch \
|
||||||
%D%/packages/patches/fdroidcl-fix-tests.patch \
|
|
||||||
%D%/packages/patches/fenics-dolfin-algorithm.patch \
|
%D%/packages/patches/fenics-dolfin-algorithm.patch \
|
||||||
%D%/packages/patches/fenics-dolfin-demo-init.patch \
|
%D%/packages/patches/fenics-dolfin-demo-init.patch \
|
||||||
%D%/packages/patches/fenics-dolfin-boost.patch \
|
%D%/packages/patches/fenics-dolfin-boost.patch \
|
||||||
@@ -1368,8 +1356,16 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
|
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
|
||||||
%D%/packages/patches/ganeti-haskell-pythondir.patch \
|
%D%/packages/patches/ganeti-haskell-pythondir.patch \
|
||||||
%D%/packages/patches/ganeti-lens-compat.patch \
|
%D%/packages/patches/ganeti-lens-compat.patch \
|
||||||
|
%D%/packages/patches/ganeti-openssh-test-fix.patch \
|
||||||
|
%D%/packages/patches/ganeti-pyyaml-compat.patch \
|
||||||
|
%D%/packages/patches/ganeti-procps-compat.patch \
|
||||||
|
%D%/packages/patches/ganeti-reorder-arbitrary-definitions.patch \
|
||||||
|
%D%/packages/patches/ganeti-relax-dependencies.patch \
|
||||||
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
|
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
|
||||||
%D%/packages/patches/ganeti-shepherd-support.patch \
|
%D%/packages/patches/ganeti-shepherd-support.patch \
|
||||||
|
%D%/packages/patches/ganeti-sphinx-import.patch \
|
||||||
|
%D%/packages/patches/ganeti-template-haskell-2.17.patch \
|
||||||
|
%D%/packages/patches/ganeti-template-haskell-2.18.patch \
|
||||||
%D%/packages/patches/gawk-shell.patch \
|
%D%/packages/patches/gawk-shell.patch \
|
||||||
%D%/packages/patches/gcc-arm-bug-71399.patch \
|
%D%/packages/patches/gcc-arm-bug-71399.patch \
|
||||||
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
|
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
|
||||||
@@ -1465,6 +1461,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||||
%D%/packages/patches/gimp-fix-metadata-editor.patch \
|
%D%/packages/patches/gimp-fix-metadata-editor.patch \
|
||||||
%D%/packages/patches/gimp-fix-tiff-load.patch \
|
%D%/packages/patches/gimp-fix-tiff-load.patch \
|
||||||
|
%D%/packages/patches/git-clar-path-max.patch \
|
||||||
%D%/packages/patches/git-filter-repo-generate-doc.patch \
|
%D%/packages/patches/git-filter-repo-generate-doc.patch \
|
||||||
%D%/packages/patches/gklib-suitesparse.patch \
|
%D%/packages/patches/gklib-suitesparse.patch \
|
||||||
%D%/packages/patches/glib-appinfo-watch.patch \
|
%D%/packages/patches/glib-appinfo-watch.patch \
|
||||||
@@ -1509,8 +1506,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
|
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
|
||||||
%D%/packages/patches/glibc-supported-locales.patch \
|
%D%/packages/patches/glibc-supported-locales.patch \
|
||||||
%D%/packages/patches/glibc-versioned-locpath.patch \
|
%D%/packages/patches/glibc-versioned-locpath.patch \
|
||||||
%D%/packages/patches/glog-windows-h-nonwindows.patch \
|
|
||||||
%D%/packages/patches/glycin-sandbox-Adapt-bwrap-invocation.patch \
|
|
||||||
%D%/packages/patches/gmime-disable-tests.patch \
|
%D%/packages/patches/gmime-disable-tests.patch \
|
||||||
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
|
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
|
||||||
%D%/packages/patches/gmp-faulty-test.patch \
|
%D%/packages/patches/gmp-faulty-test.patch \
|
||||||
@@ -1585,9 +1580,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
|
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
|
||||||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
|
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
|
||||||
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
|
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
|
||||||
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
|
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
|
||||||
%D%/packages/patches/gtk4-demo-reproducible.patch \
|
|
||||||
%D%/packages/patches/gtk4-needs-udmabuf.patch \
|
|
||||||
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
|
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
|
||||||
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
|
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
|
||||||
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
|
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
|
||||||
@@ -1618,6 +1611,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/hurd-refcounts-assert.patch \
|
%D%/packages/patches/hurd-refcounts-assert.patch \
|
||||||
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
|
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
|
||||||
%D%/packages/patches/hurd-startup.patch \
|
%D%/packages/patches/hurd-startup.patch \
|
||||||
|
%D%/packages/patches/hwloc-1-test-btrfs.patch \
|
||||||
%D%/packages/patches/hwloc-add-with-opencl.patch \
|
%D%/packages/patches/hwloc-add-with-opencl.patch \
|
||||||
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
|
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
|
||||||
%D%/packages/patches/i7z-gcc-10.patch \
|
%D%/packages/patches/i7z-gcc-10.patch \
|
||||||
@@ -1653,7 +1647,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||||
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
||||||
%D%/packages/patches/ilmbase-fix-tests.patch \
|
%D%/packages/patches/ilmbase-fix-tests.patch \
|
||||||
%D%/packages/patches/inetutils-drop-test.patch \
|
|
||||||
%D%/packages/patches/inferno-fix-crash.patch \
|
%D%/packages/patches/inferno-fix-crash.patch \
|
||||||
%D%/packages/patches/iniparser-remove-fetchcontent-usage.patch \
|
%D%/packages/patches/iniparser-remove-fetchcontent-usage.patch \
|
||||||
%D%/packages/patches/inkscape-libxml2.patch \
|
%D%/packages/patches/inkscape-libxml2.patch \
|
||||||
@@ -1665,7 +1658,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
|
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
|
||||||
%D%/packages/patches/ispell-for-linphone-cmake.patch \
|
%D%/packages/patches/ispell-for-linphone-cmake.patch \
|
||||||
%D%/packages/patches/jami-avutil-link.patch \
|
%D%/packages/patches/jami-avutil-link.patch \
|
||||||
%D%/packages/patches/jami-libjami-cmake.patch \
|
|
||||||
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
|
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
|
||||||
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
|
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
|
||||||
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
|
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
|
||||||
@@ -1677,7 +1669,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/java-commons-collections-fix-java8.patch \
|
%D%/packages/patches/java-commons-collections-fix-java8.patch \
|
||||||
%D%/packages/patches/java-guava-remove-annotation-deps.patch \
|
%D%/packages/patches/java-guava-remove-annotation-deps.patch \
|
||||||
%D%/packages/patches/java-jeromq-fix-tests.patch \
|
%D%/packages/patches/java-jeromq-fix-tests.patch \
|
||||||
%D%/packages/patches/java-jtidy-remove-xerces-dependency.patch \
|
|
||||||
%D%/packages/patches/java-openjfx-build-jdk_version.patch \
|
%D%/packages/patches/java-openjfx-build-jdk_version.patch \
|
||||||
%D%/packages/patches/java-powermock-fix-java-files.patch \
|
%D%/packages/patches/java-powermock-fix-java-files.patch \
|
||||||
%D%/packages/patches/java-simple-xml-fix-tests.patch \
|
%D%/packages/patches/java-simple-xml-fix-tests.patch \
|
||||||
@@ -1686,8 +1677,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
|
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
|
||||||
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
|
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
|
||||||
%D%/packages/patches/jbr-17-xcursor-no-dynamic.patch \
|
%D%/packages/patches/jbr-17-xcursor-no-dynamic.patch \
|
||||||
%D%/packages/patches/jbr-25-wayland-drag-icon.patch \
|
|
||||||
%D%/packages/patches/jbr-25-wayland-intra-jvm-dnd.patch \
|
|
||||||
%D%/packages/patches/jdk-currency-time-bomb.patch \
|
%D%/packages/patches/jdk-currency-time-bomb.patch \
|
||||||
%D%/packages/patches/jdk-currency-time-bomb2.patch \
|
%D%/packages/patches/jdk-currency-time-bomb2.patch \
|
||||||
%D%/packages/patches/jfsutils-add-sysmacros.patch \
|
%D%/packages/patches/jfsutils-add-sysmacros.patch \
|
||||||
@@ -1748,8 +1737,9 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
|
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
|
||||||
%D%/packages/patches/kismet-unbundle-boost.patch \
|
%D%/packages/patches/kismet-unbundle-boost.patch \
|
||||||
%D%/packages/patches/kissfft-tflite-micro.patch \
|
%D%/packages/patches/kissfft-tflite-micro.patch \
|
||||||
|
%D%/packages/patches/kitty-fix-wayland-protocols.patch \
|
||||||
%D%/packages/patches/kmod-module-directory.patch \
|
%D%/packages/patches/kmod-module-directory.patch \
|
||||||
%D%/packages/patches/kmscon-8-runtime-keymap-switch.patch \
|
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
|
||||||
%D%/packages/patches/knot-remove-runtime-deps.patch \
|
%D%/packages/patches/knot-remove-runtime-deps.patch \
|
||||||
%D%/packages/patches/kobodeluxe-paths.patch \
|
%D%/packages/patches/kobodeluxe-paths.patch \
|
||||||
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
|
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
|
||||||
@@ -1862,7 +1852,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/linux-libre-arm64-mnt-reform-revert-vop2-display-modes.patch \
|
%D%/packages/patches/linux-libre-arm64-mnt-reform-revert-vop2-display-modes.patch \
|
||||||
%D%/packages/patches/linux-pam-no-setfsuid.patch \
|
%D%/packages/patches/linux-pam-no-setfsuid.patch \
|
||||||
%D%/packages/patches/linux-pam-unix_chkpwd.patch \
|
%D%/packages/patches/linux-pam-unix_chkpwd.patch \
|
||||||
%D%/packages/patches/linux-shmem-hurd-xattr.patch \
|
|
||||||
%D%/packages/patches/lirc-localstatedir.patch \
|
%D%/packages/patches/lirc-localstatedir.patch \
|
||||||
%D%/packages/patches/lirc-reproducible-build.patch \
|
%D%/packages/patches/lirc-reproducible-build.patch \
|
||||||
%D%/packages/patches/llvm-13-gcc-14.patch \
|
%D%/packages/patches/llvm-13-gcc-14.patch \
|
||||||
@@ -1881,10 +1870,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/lua-5.4-pkgconfig.patch \
|
%D%/packages/patches/lua-5.4-pkgconfig.patch \
|
||||||
%D%/packages/patches/lua-5.4-liblua-so.patch \
|
%D%/packages/patches/lua-5.4-liblua-so.patch \
|
||||||
%D%/packages/patches/lua-5.4-search-paths.patch \
|
%D%/packages/patches/lua-5.4-search-paths.patch \
|
||||||
%D%/packages/patches/lua-5.5-search-paths.patch \
|
|
||||||
%D%/packages/patches/lua-5.x-search-path-helpers.patch \
|
%D%/packages/patches/lua-5.x-search-path-helpers.patch \
|
||||||
%D%/packages/patches/lua-lgi-fix-pango.patch \
|
%D%/packages/patches/lua-lgi-fix-pango.patch \
|
||||||
%D%/packages/patches/lua-lgi-fix-ref.patch \
|
%D%/packages/patches/lua-lgi-fix-ref.patch \
|
||||||
|
%D%/packages/patches/luanti-paths.patch \
|
||||||
%D%/packages/patches/lugaru-fix-sound.patch \
|
%D%/packages/patches/lugaru-fix-sound.patch \
|
||||||
%D%/packages/patches/luit-posix.patch \
|
%D%/packages/patches/luit-posix.patch \
|
||||||
%D%/packages/patches/lxc-no-static-bin.patch \
|
%D%/packages/patches/lxc-no-static-bin.patch \
|
||||||
@@ -1943,6 +1932,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/modglue-fix-build.patch \
|
%D%/packages/patches/modglue-fix-build.patch \
|
||||||
%D%/packages/patches/modem-manager-fix-test-wrapper.patch \
|
%D%/packages/patches/modem-manager-fix-test-wrapper.patch \
|
||||||
%D%/packages/patches/module-init-tools-moduledir.patch \
|
%D%/packages/patches/module-init-tools-moduledir.patch \
|
||||||
|
%D%/packages/patches/monero-use-system-miniupnpc.patch \
|
||||||
%D%/packages/patches/mono-1.2.6-bootstrap.patch \
|
%D%/packages/patches/mono-1.2.6-bootstrap.patch \
|
||||||
%D%/packages/patches/mono-1.9.1-add-MONO_CREATE_IMAGE_VERSION.patch \
|
%D%/packages/patches/mono-1.9.1-add-MONO_CREATE_IMAGE_VERSION.patch \
|
||||||
%D%/packages/patches/mono-1.9.1-fixes.patch \
|
%D%/packages/patches/mono-1.9.1-fixes.patch \
|
||||||
@@ -1978,12 +1968,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/netcdf-date-time.patch \
|
%D%/packages/patches/netcdf-date-time.patch \
|
||||||
%D%/packages/patches/netdde-build-fix.patch \
|
%D%/packages/patches/netdde-build-fix.patch \
|
||||||
%D%/packages/patches/netdde-csum.patch \
|
%D%/packages/patches/netdde-csum.patch \
|
||||||
%D%/packages/patches/java-apache-xml-commons-resolver-1.2-netbeans.patch \
|
|
||||||
%D%/packages/patches/java-simplevalidation-1.14.1.patch \
|
|
||||||
%D%/packages/patches/netbeans-25-nativeexecution-paths.patch \
|
|
||||||
%D%/packages/patches/netbeans-25-terminal-no-login-shell.patch \
|
|
||||||
%D%/packages/patches/netbeans-25-source-only-build.patch \
|
|
||||||
%D%/packages/patches/netbeans-25-wayland-font-rendering.patch \
|
|
||||||
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
|
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
|
||||||
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
|
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
|
||||||
%D%/packages/patches/netsurf-message-timestamp.patch \
|
%D%/packages/patches/netsurf-message-timestamp.patch \
|
||||||
@@ -1994,7 +1978,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/nheko-0-12-1-fix-rendering-replies.patch \
|
%D%/packages/patches/nheko-0-12-1-fix-rendering-replies.patch \
|
||||||
%D%/packages/patches/nix-dont-build-html-doc.diff \
|
%D%/packages/patches/nix-dont-build-html-doc.diff \
|
||||||
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
|
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
|
||||||
%D%/packages/patches/neovim-tree-sitter-grammar-path.patch \
|
|
||||||
%D%/packages/patches/network-manager-plugin-ownership.patch \
|
%D%/packages/patches/network-manager-plugin-ownership.patch \
|
||||||
%D%/packages/patches/network-manager-plugin-path.patch \
|
%D%/packages/patches/network-manager-plugin-path.patch \
|
||||||
%D%/packages/patches/newlib-getentropy.patch \
|
%D%/packages/patches/newlib-getentropy.patch \
|
||||||
@@ -2009,13 +1992,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/nss-3.115-disable-broken-tests.patch \
|
%D%/packages/patches/nss-3.115-disable-broken-tests.patch \
|
||||||
%D%/packages/patches/nss-3.115-disable-pkix-ocsp-tests.patch \
|
%D%/packages/patches/nss-3.115-disable-pkix-ocsp-tests.patch \
|
||||||
%D%/packages/patches/ntp-fix-dereferencing-the-wrong-variable.patch \
|
%D%/packages/patches/ntp-fix-dereferencing-the-wrong-variable.patch \
|
||||||
%D%/packages/patches/ntfs-3g-autoconf-sbin-helpers.patch \
|
|
||||||
%D%/packages/patches/ntfs-3g-consistent-sbindir-usage.patch \
|
|
||||||
%D%/packages/patches/nvi-add-function-prototypes.patch \
|
%D%/packages/patches/nvi-add-function-prototypes.patch \
|
||||||
%D%/packages/patches/nvi-assume-preserve-path.patch \
|
%D%/packages/patches/nvi-assume-preserve-path.patch \
|
||||||
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
|
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
|
||||||
%D%/packages/patches/nvi-db4.patch \
|
%D%/packages/patches/nvi-db4.patch \
|
||||||
%D%/packages/patches/obs-advanced-masks-nlohmann-json.patch \
|
|
||||||
%D%/packages/patches/obs-modules-location.patch \
|
%D%/packages/patches/obs-modules-location.patch \
|
||||||
%D%/packages/patches/ocaml-ctypes-test-oo.patch \
|
%D%/packages/patches/ocaml-ctypes-test-oo.patch \
|
||||||
%D%/packages/patches/ocaml-multiple-definitions.patch \
|
%D%/packages/patches/ocaml-multiple-definitions.patch \
|
||||||
@@ -2078,9 +2058,9 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/openssl-3.0-c-rehash-in.patch \
|
%D%/packages/patches/openssl-3.0-c-rehash-in.patch \
|
||||||
%D%/packages/patches/openssl-hurd64.patch \
|
%D%/packages/patches/openssl-hurd64.patch \
|
||||||
%D%/packages/patches/opentaxsolver-file-browser-fix.patch \
|
%D%/packages/patches/opentaxsolver-file-browser-fix.patch \
|
||||||
|
%D%/packages/patches/open-zwave-hidapi.patch \
|
||||||
%D%/packages/patches/opusfile-CVE-2022-47021.patch \
|
%D%/packages/patches/opusfile-CVE-2022-47021.patch \
|
||||||
%D%/packages/patches/orbit2-fix-array-allocation-32bit.patch \
|
%D%/packages/patches/orbit2-fix-array-allocation-32bit.patch \
|
||||||
%D%/packages/patches/orca-fix-gst-init-check-call.patch \
|
|
||||||
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
|
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
|
||||||
%D%/packages/patches/ots-no-include-missing-file.patch \
|
%D%/packages/patches/ots-no-include-missing-file.patch \
|
||||||
%D%/packages/patches/owncloud-disable-updatecheck.patch \
|
%D%/packages/patches/owncloud-disable-updatecheck.patch \
|
||||||
@@ -2111,7 +2091,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/python-3.11-fix-tests.patch \
|
%D%/packages/patches/python-3.11-fix-tests.patch \
|
||||||
%D%/packages/patches/python-3.12-fix-tests.patch \
|
%D%/packages/patches/python-3.12-fix-tests.patch \
|
||||||
%D%/packages/patches/python-anyio-unuse-exceptiongroup-in-test.patch \
|
%D%/packages/patches/python-anyio-unuse-exceptiongroup-in-test.patch \
|
||||||
%D%/packages/patches/python-beangulp-click-8.2-compat.patch \
|
|
||||||
%D%/packages/patches/python-bed-reader-use-store-samples.patch \
|
%D%/packages/patches/python-bed-reader-use-store-samples.patch \
|
||||||
%D%/packages/patches/python-chai-drop-python2.patch \
|
%D%/packages/patches/python-chai-drop-python2.patch \
|
||||||
%D%/packages/patches/python-clarabel-blas.patch \
|
%D%/packages/patches/python-clarabel-blas.patch \
|
||||||
@@ -2129,25 +2108,20 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/python-random2-getrandbits-test.patch \
|
%D%/packages/patches/python-random2-getrandbits-test.patch \
|
||||||
%D%/packages/patches/python-pillow-use-zlib-1.3.patch \
|
%D%/packages/patches/python-pillow-use-zlib-1.3.patch \
|
||||||
%D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch \
|
%D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch \
|
||||||
%D%/packages/patches/python-pynvim-fix-test-command-error.patch \
|
|
||||||
%D%/packages/patches/python-pypytools-python-3-fixes.patch \
|
%D%/packages/patches/python-pypytools-python-3-fixes.patch \
|
||||||
%D%/packages/patches/python-pyreadstat-link-libiconv.patch \
|
%D%/packages/patches/python-pyreadstat-link-libiconv.patch \
|
||||||
%D%/packages/patches/python-sip-include-dirs.patch \
|
%D%/packages/patches/python-sip-include-dirs.patch \
|
||||||
%D%/packages/patches/python-scikit-build-setuptools-compat.patch \
|
%D%/packages/patches/python-scikit-build-setuptools-compat.patch \
|
||||||
%D%/packages/patches/python-scikit-image-fix-python-pillow.patch \
|
|
||||||
%D%/packages/patches/python-sgmllib3k-assertions.patch \
|
%D%/packages/patches/python-sgmllib3k-assertions.patch \
|
||||||
%D%/packages/patches/python-sphobjinv-defer-ssl-import.patch \
|
%D%/packages/patches/python-sphobjinv-defer-ssl-import.patch \
|
||||||
%D%/packages/patches/python-sphinx-prompt-docutils-0.19.patch \
|
%D%/packages/patches/python-sphinx-prompt-docutils-0.19.patch \
|
||||||
%D%/packages/patches/python-sshtunnel-pep518.patch \
|
%D%/packages/patches/python-sshtunnel-pep518.patch \
|
||||||
%D%/packages/patches/python-zeroc-ice-3.6.5-python-3.11-support.patch \
|
%D%/packages/patches/python-zeroc-ice-3.6.5-python-3.11-support.patch \
|
||||||
%D%/packages/patches/python-zeroc-ice-3.6.5-python-3.12-support.patch \
|
|
||||||
%D%/packages/patches/python-zipfile2-python-3.12-support.patch \
|
|
||||||
%D%/packages/patches/qcodeeditor-qt6.patch \
|
%D%/packages/patches/qcodeeditor-qt6.patch \
|
||||||
%D%/packages/patches/qtdeclarative-5-disable-qmlcache.patch \
|
%D%/packages/patches/qtdeclarative-5-disable-qmlcache.patch \
|
||||||
%D%/packages/patches/qtdeclarative-disable-qmlcache.patch \
|
%D%/packages/patches/qtdeclarative-disable-qmlcache.patch \
|
||||||
%D%/packages/patches/qtlocation-5.15.8-mapboxgl-gcc13.patch \
|
%D%/packages/patches/qtlocation-5.15.8-mapboxgl-gcc13.patch \
|
||||||
%D%/packages/patches/qtwebengine-revert-egl.patch \
|
%D%/packages/patches/qtwebengine-revert-egl.patch \
|
||||||
%D%/packages/patches/qtwebengine5-python312-six-compat.patch \
|
|
||||||
%D%/packages/patches/quodlibet-disable-bundled-packages.patch \
|
%D%/packages/patches/quodlibet-disable-bundled-packages.patch \
|
||||||
%D%/packages/patches/qxlsx-fix-include-directory.patch \
|
%D%/packages/patches/qxlsx-fix-include-directory.patch \
|
||||||
%D%/packages/patches/schiffbruch-fix-build-for-gcc-13.patch \
|
%D%/packages/patches/schiffbruch-fix-build-for-gcc-13.patch \
|
||||||
@@ -2188,8 +2162,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/perl-www-curl-remove-symbol.patch \
|
%D%/packages/patches/perl-www-curl-remove-symbol.patch \
|
||||||
%D%/packages/patches/perl-xml-libxml-fix-function-prototypes.patch \
|
%D%/packages/patches/perl-xml-libxml-fix-function-prototypes.patch \
|
||||||
%D%/packages/patches/phoronix-test-suite-fsdg.patch \
|
%D%/packages/patches/phoronix-test-suite-fsdg.patch \
|
||||||
%D%/packages/patches/php-01-fix-expired-certificate.patch \
|
|
||||||
%D%/packages/patches/php-02-fix-sni-tests.patch \
|
|
||||||
%D%/packages/patches/picprog-non-intel-support.patch \
|
%D%/packages/patches/picprog-non-intel-support.patch \
|
||||||
%D%/packages/patches/pidgin-add-search-path.patch \
|
%D%/packages/patches/pidgin-add-search-path.patch \
|
||||||
%D%/packages/patches/pinball-system-ltdl.patch \
|
%D%/packages/patches/pinball-system-ltdl.patch \
|
||||||
@@ -2257,7 +2229,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/python-piexif-fix-tests-with-pillow-7.2.patch \
|
%D%/packages/patches/python-piexif-fix-tests-with-pillow-7.2.patch \
|
||||||
%D%/packages/patches/python-pillow-CVE-2022-45199.patch \
|
%D%/packages/patches/python-pillow-CVE-2022-45199.patch \
|
||||||
%D%/packages/patches/python-libxml2-utf8.patch \
|
%D%/packages/patches/python-libxml2-utf8.patch \
|
||||||
%D%/packages/patches/python-lsp-server-python-3.13-compatibility.patch \
|
|
||||||
%D%/packages/patches/python-memcached-syntax-warnings.patch \
|
%D%/packages/patches/python-memcached-syntax-warnings.patch \
|
||||||
%D%/packages/patches/python-mslice-matplotlib-3.6-compatibility.patch \
|
%D%/packages/patches/python-mslice-matplotlib-3.6-compatibility.patch \
|
||||||
%D%/packages/patches/python-packaging-test-arch.patch \
|
%D%/packages/patches/python-packaging-test-arch.patch \
|
||||||
@@ -2273,14 +2244,12 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/python-pytorch-system-libraries.patch \
|
%D%/packages/patches/python-pytorch-system-libraries.patch \
|
||||||
%D%/packages/patches/python-pytorch-without-kineto.patch \
|
%D%/packages/patches/python-pytorch-without-kineto.patch \
|
||||||
%D%/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch \
|
%D%/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch \
|
||||||
%D%/packages/patches/python-py-ubjson-recursion-test.patch \
|
|
||||||
%D%/packages/patches/python-vaex-core-fix-tsl-use.patch \
|
%D%/packages/patches/python-vaex-core-fix-tsl-use.patch \
|
||||||
%D%/packages/patches/python-vega-datasets-remove-la-riots-code.patch \
|
%D%/packages/patches/python-vega-datasets-remove-la-riots-code.patch \
|
||||||
%D%/packages/patches/python-versioneer-guix-support.patch \
|
%D%/packages/patches/python-versioneer-guix-support.patch \
|
||||||
%D%/packages/patches/python-werkzeug-tests.patch \
|
%D%/packages/patches/python-werkzeug-tests.patch \
|
||||||
%D%/packages/patches/qdigidoc-bundle-config-files.patch \
|
%D%/packages/patches/qdigidoc-bundle-config-files.patch \
|
||||||
%D%/packages/patches/qdigidoc-bundle-tsl-files.patch \
|
%D%/packages/patches/qdigidoc-bundle-tsl-files.patch \
|
||||||
%D%/packages/patches/qdigidoc-fix-icon.patch \
|
|
||||||
%D%/packages/patches/qemu-build-info-manual.patch \
|
%D%/packages/patches/qemu-build-info-manual.patch \
|
||||||
%D%/packages/patches/qemu-fix-agent-paths.patch \
|
%D%/packages/patches/qemu-fix-agent-paths.patch \
|
||||||
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
|
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
|
||||||
@@ -2295,6 +2264,8 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
|
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
|
||||||
%D%/packages/patches/qtscript-disable-tests.patch \
|
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||||
%D%/packages/patches/quagga-reproducible-build.patch \
|
%D%/packages/patches/quagga-reproducible-build.patch \
|
||||||
|
%D%/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch \
|
||||||
|
%D%/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch \
|
||||||
%D%/packages/patches/quilt-grep-compat.patch \
|
%D%/packages/patches/quilt-grep-compat.patch \
|
||||||
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
|
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
|
||||||
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
|
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
|
||||||
@@ -2409,14 +2380,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/rust-1.70-fix-rustix-build.patch \
|
%D%/packages/patches/rust-1.70-fix-rustix-build.patch \
|
||||||
%D%/packages/patches/rust-1.78-unwinding-fix.patch \
|
%D%/packages/patches/rust-1.78-unwinding-fix.patch \
|
||||||
%D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \
|
%D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \
|
||||||
%D%/packages/patches/rust-candle-0.9.1-add-candle-onnx-to-workspace.patch \
|
%D%/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch \
|
||||||
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
|
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
|
||||||
%D%/packages/patches/rust-codex-0.117.0-core-remove-self-dep.patch \
|
%D%/packages/patches/rust-codex-0.98.0-test-timeout.patch \
|
||||||
%D%/packages/patches/rust-codex-0.120.0-remove-libwebrtc.patch \
|
%D%/packages/patches/rust-codex-0.98.0-windows-sandbox-protocol-version.patch \
|
||||||
%D%/packages/patches/rust-codex-0.120.0-test-timeout.patch \
|
|
||||||
%D%/packages/patches/rust-codex-0.124.0-code-mode-stub-toolname.patch \
|
|
||||||
%D%/packages/patches/rust-codex-0.124.0-remove-patch-sections.patch \
|
|
||||||
%D%/packages/patches/rust-librocksdb-sys-unbundled-sources.patch \
|
|
||||||
%D%/packages/patches/rust-ring-0.17-ring-core.patch \
|
%D%/packages/patches/rust-ring-0.17-ring-core.patch \
|
||||||
%D%/packages/patches/rw-igraph-0.10.patch \
|
%D%/packages/patches/rw-igraph-0.10.patch \
|
||||||
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
|
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
|
||||||
@@ -2426,6 +2393,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/sajson-build-with-gcc10.patch \
|
%D%/packages/patches/sajson-build-with-gcc10.patch \
|
||||||
%D%/packages/patches/sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch \
|
%D%/packages/patches/sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch \
|
||||||
%D%/packages/patches/sbc-fix-build-non-x86.patch \
|
%D%/packages/patches/sbc-fix-build-non-x86.patch \
|
||||||
|
%D%/packages/patches/sbcl-fix-arm64-shared-lib.patch \
|
||||||
%D%/packages/patches/sbcl-aserve-add-HTML-5-elements.patch \
|
%D%/packages/patches/sbcl-aserve-add-HTML-5-elements.patch \
|
||||||
%D%/packages/patches/sbcl-aserve-fix-rfe12668.patch \
|
%D%/packages/patches/sbcl-aserve-fix-rfe12668.patch \
|
||||||
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
|
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
|
||||||
@@ -2451,10 +2419,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||||
%D%/packages/patches/libsequoia-fix-ffi-Makefile.patch \
|
%D%/packages/patches/libsequoia-fix-ffi-Makefile.patch \
|
||||||
%D%/packages/patches/libsequoia-remove-store.patch \
|
%D%/packages/patches/libsequoia-remove-store.patch \
|
||||||
|
%D%/packages/patches/shakespeare-spl-fix-grammar.patch \
|
||||||
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
|
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
|
||||||
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
||||||
%D%/packages/patches/showtime-python-3.11-compat.patch \
|
%D%/packages/patches/showtime-python-3.11-compat.patch \
|
||||||
%D%/packages/patches/simpleitk-r-4.6.0.patch \
|
|
||||||
%D%/packages/patches/sipwitch-fix-build-with-exosip5.patch \
|
%D%/packages/patches/sipwitch-fix-build-with-exosip5.patch \
|
||||||
%D%/packages/patches/slim-config.patch \
|
%D%/packages/patches/slim-config.patch \
|
||||||
%D%/packages/patches/slim-gcc-14.patch \
|
%D%/packages/patches/slim-gcc-14.patch \
|
||||||
@@ -2489,7 +2457,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/swift-corelibs-libdispatch-5.7.3-modulemap.patch \
|
%D%/packages/patches/swift-corelibs-libdispatch-5.7.3-modulemap.patch \
|
||||||
%D%/packages/patches/swift-llvm-5.7.3-linux.patch \
|
%D%/packages/patches/swift-llvm-5.7.3-linux.patch \
|
||||||
%D%/packages/patches/swig-support-gcc-12.patch \
|
%D%/packages/patches/swig-support-gcc-12.patch \
|
||||||
%D%/packages/patches/swig-support-r-4.6.0.patch \
|
|
||||||
%D%/packages/patches/swish-e-search.patch \
|
%D%/packages/patches/swish-e-search.patch \
|
||||||
%D%/packages/patches/swish-e-format-security.patch \
|
%D%/packages/patches/swish-e-format-security.patch \
|
||||||
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
|
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
|
||||||
@@ -2522,6 +2489,7 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/texmacs-wayland-hidpi.patch \
|
%D%/packages/patches/texmacs-wayland-hidpi.patch \
|
||||||
%D%/packages/patches/tflite-micro_disable_download.patch \
|
%D%/packages/patches/tflite-micro_disable_download.patch \
|
||||||
%D%/packages/patches/thefuck-test-environ.patch \
|
%D%/packages/patches/thefuck-test-environ.patch \
|
||||||
|
%D%/packages/patches/thefuck-remove-broken-tests.patch \
|
||||||
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
|
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
|
||||||
%D%/packages/patches/timewarrior-time-sensitive-tests.patch \
|
%D%/packages/patches/timewarrior-time-sensitive-tests.patch \
|
||||||
%D%/packages/patches/tinydir-fix-cbehave-test.patch \
|
%D%/packages/patches/tinydir-fix-cbehave-test.patch \
|
||||||
@@ -2537,7 +2505,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/transcode-ffmpeg.patch \
|
%D%/packages/patches/transcode-ffmpeg.patch \
|
||||||
%D%/packages/patches/trytond-add-guix_trytond_path.patch \
|
%D%/packages/patches/trytond-add-guix_trytond_path.patch \
|
||||||
%D%/packages/patches/ttf2eot-cstddef.patch \
|
%D%/packages/patches/ttf2eot-cstddef.patch \
|
||||||
%D%/packages/patches/tuir-python-3.12-support.patch \
|
|
||||||
%D%/packages/patches/tuxpaint-stamps-path.patch \
|
%D%/packages/patches/tuxpaint-stamps-path.patch \
|
||||||
%D%/packages/patches/tvm_fix_cpptest_build.patch \
|
%D%/packages/patches/tvm_fix_cpptest_build.patch \
|
||||||
%D%/packages/patches/twinkle-bcg729.patch \
|
%D%/packages/patches/twinkle-bcg729.patch \
|
||||||
@@ -2547,11 +2514,10 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \
|
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \
|
||||||
%D%/packages/patches/unity-test-set-subdir-correctly.patch \
|
%D%/packages/patches/unity-test-set-subdir-correctly.patch \
|
||||||
%D%/packages/patches/unity-test-support-int64.patch \
|
%D%/packages/patches/unity-test-support-int64.patch \
|
||||||
%D%/packages/patches/ungoogled-chromium-custom-compiler.patch \
|
|
||||||
%D%/packages/patches/ungoogled-chromium-empty-parsed-rustc-args.patch \
|
|
||||||
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
|
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
|
||||||
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
|
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
|
||||||
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
|
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
|
||||||
|
%D%/packages/patches/ungoogled-chromium-unbundle-icu-target.patch \
|
||||||
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
|
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
|
||||||
%D%/packages/patches/unknown-horizons-python-3.9.patch \
|
%D%/packages/patches/unknown-horizons-python-3.9.patch \
|
||||||
%D%/packages/patches/unknown-horizons-python-3.10.patch \
|
%D%/packages/patches/unknown-horizons-python-3.10.patch \
|
||||||
@@ -2615,7 +2581,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
|
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
|
||||||
%D%/packages/patches/webrtc-audio-processing-byte-order-pointer-size.patch \
|
%D%/packages/patches/webrtc-audio-processing-byte-order-pointer-size.patch \
|
||||||
%D%/packages/patches/webrtc-audio-processing-x86-no-sse.patch \
|
%D%/packages/patches/webrtc-audio-processing-x86-no-sse.patch \
|
||||||
%D%/packages/patches/websocketpp-boost-compat.patch \
|
|
||||||
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
|
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
|
||||||
%D%/packages/patches/wmctrl-64-fix.patch \
|
%D%/packages/patches/wmctrl-64-fix.patch \
|
||||||
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
|
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
|
||||||
@@ -2653,17 +2618,6 @@ dist_patch_DATA = \
|
|||||||
%D%/packages/patches/yggdrasil-extra-config.patch \
|
%D%/packages/patches/yggdrasil-extra-config.patch \
|
||||||
%D%/packages/patches/ypsilon-Use-GNU-toolchain-as-default.patch \
|
%D%/packages/patches/ypsilon-Use-GNU-toolchain-as-default.patch \
|
||||||
%D%/packages/patches/zabbix-agent2-test-timezone-fix.patch \
|
%D%/packages/patches/zabbix-agent2-test-timezone-fix.patch \
|
||||||
%D%/packages/patches/zed-0.225.10-add-message-notification-action.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-add-guix-container-support.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-collapse-multiline-git-deps.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-exclude-libwebrtc-from-audio.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-disable-dlopen.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-fix-sqlite-memory-mode.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-fix-test-db-isolation.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-fix-workspace-race.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-keep-regular-file-workspaces.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-remove-patch-crates-io.patch \
|
|
||||||
%D%/packages/patches/zed-0.225.10-use-mock-livekit-on-linux.patch \
|
|
||||||
%D%/packages/patches/zig-0.9-build-respect-PKG_CONFIG-env-var.patch \
|
%D%/packages/patches/zig-0.9-build-respect-PKG_CONFIG-env-var.patch \
|
||||||
%D%/packages/patches/zig-0.9-fix-runpath.patch \
|
%D%/packages/patches/zig-0.9-fix-runpath.patch \
|
||||||
%D%/packages/patches/zig-0.9-riscv-support.patch \
|
%D%/packages/patches/zig-0.9-riscv-support.patch \
|
||||||
|
|||||||
+86
-205
@@ -2,7 +2,6 @@
|
|||||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||||
;;; Copyright © 2025 Owen T. Heisler <writer@owenh.net>
|
;;; Copyright © 2025 Owen T. Heisler <writer@owenh.net>
|
||||||
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
|
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
|
||||||
;;; Copyright © 2026 Maxim Cournoyer <maxim@guixotic.coop>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -37,7 +36,6 @@
|
|||||||
#:use-module (gnu system)
|
#:use-module (gnu system)
|
||||||
#:use-module (guix base32)
|
#:use-module (guix base32)
|
||||||
#:use-module (guix colors)
|
#:use-module (guix colors)
|
||||||
#:use-module (guix deprecation)
|
|
||||||
#:use-module (guix derivations)
|
#:use-module (guix derivations)
|
||||||
#:use-module (guix diagnostics)
|
#:use-module (guix diagnostics)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
@@ -57,7 +55,6 @@
|
|||||||
#:use-module (ice-9 string-fun)
|
#:use-module (ice-9 string-fun)
|
||||||
#:use-module (ice-9 textual-ports)
|
#:use-module (ice-9 textual-ports)
|
||||||
#:use-module (json)
|
#:use-module (json)
|
||||||
#:use-module ((rnrs base) #:select (assert))
|
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
#:use-module (srfi srfi-2)
|
#:use-module (srfi srfi-2)
|
||||||
#:use-module (srfi srfi-34)
|
#:use-module (srfi srfi-34)
|
||||||
@@ -69,10 +66,8 @@
|
|||||||
#:use-module (ssh session)
|
#:use-module (ssh session)
|
||||||
#:use-module (ssh sftp)
|
#:use-module (ssh sftp)
|
||||||
#:use-module (ssh shell)
|
#:use-module (ssh shell)
|
||||||
#:export (%hetzner-os-arm ;deprecated
|
#:export (%hetzner-os-arm
|
||||||
%hetzner-os-x86 ;deprecated
|
%hetzner-os-x86
|
||||||
make-hetzner-os
|
|
||||||
|
|
||||||
deploy-hetzner
|
deploy-hetzner
|
||||||
hetzner-configuration
|
hetzner-configuration
|
||||||
hetzner-configuration-allow-downgrades?
|
hetzner-configuration-allow-downgrades?
|
||||||
@@ -87,7 +82,6 @@
|
|||||||
hetzner-configuration-server-type
|
hetzner-configuration-server-type
|
||||||
hetzner-configuration-ssh-key
|
hetzner-configuration-ssh-key
|
||||||
hetzner-configuration-ssh-public-key
|
hetzner-configuration-ssh-public-key
|
||||||
hetzner-configuration-user
|
|
||||||
hetzner-configuration?
|
hetzner-configuration?
|
||||||
hetzner-environment-type))
|
hetzner-environment-type))
|
||||||
|
|
||||||
@@ -104,7 +98,7 @@
|
|||||||
|
|
||||||
;; Operating system for arm servers using UEFI boot mode.
|
;; Operating system for arm servers using UEFI boot mode.
|
||||||
|
|
||||||
(define %hetzner-os-arm/efi
|
(define %hetzner-os-arm
|
||||||
(operating-system
|
(operating-system
|
||||||
(host-name "guix-arm")
|
(host-name "guix-arm")
|
||||||
(bootloader
|
(bootloader
|
||||||
@@ -134,9 +128,9 @@
|
|||||||
|
|
||||||
;; Operating system for x86 servers using BIOS boot mode.
|
;; Operating system for x86 servers using BIOS boot mode.
|
||||||
|
|
||||||
(define %hetzner-os-x86/bios
|
(define %hetzner-os-x86
|
||||||
(operating-system
|
(operating-system
|
||||||
(inherit %hetzner-os-arm/efi)
|
(inherit %hetzner-os-arm)
|
||||||
(host-name "guix-x86")
|
(host-name "guix-x86")
|
||||||
(bootloader
|
(bootloader
|
||||||
(bootloader-configuration
|
(bootloader-configuration
|
||||||
@@ -152,51 +146,6 @@
|
|||||||
(type "ext4"))
|
(type "ext4"))
|
||||||
%base-file-systems))))
|
%base-file-systems))))
|
||||||
|
|
||||||
(define %hetzner-os-x86/efi
|
|
||||||
(operating-system
|
|
||||||
(inherit %hetzner-os-arm/efi)
|
|
||||||
(host-name "guix-x86")
|
|
||||||
(initrd-modules
|
|
||||||
(cons "virtio_scsi" %base-initrd-modules))))
|
|
||||||
|
|
||||||
(define (server-type-name->arch type-name)
|
|
||||||
"Return a symbol corresponding to the server type architecture, e.g.
|
|
||||||
@code{'x86} or @code{'arm}."
|
|
||||||
(cond
|
|
||||||
((string-prefix-ci? "cax" type-name)
|
|
||||||
'arm)
|
|
||||||
(else
|
|
||||||
'x86)))
|
|
||||||
|
|
||||||
(define (server-type-name->bootloader type-name)
|
|
||||||
"Return a symbol corresponding to the bootloader type, e.g.
|
|
||||||
@code{'efi} or @code{'bios}."
|
|
||||||
(if (eq? 'arm (server-type-name->arch type-name))
|
|
||||||
'efi
|
|
||||||
(cond
|
|
||||||
((string-prefix-ci? "cx" type-name)
|
|
||||||
'bios) ;old, cost-optimized x86 servers
|
|
||||||
(else
|
|
||||||
'efi)))) ;newer, regular performance/general purpose servers
|
|
||||||
|
|
||||||
(define* (make-hetzner-os server-type-name)
|
|
||||||
"Return an operating server customized for SERVER-TYPE-NAME, a string like
|
|
||||||
\"cx23\" or \"cax11\", denoting the Hetzner virtual server type."
|
|
||||||
(match (server-type-name->arch server-type-name)
|
|
||||||
('arm %hetzner-os-arm/efi)
|
|
||||||
('x86
|
|
||||||
(match (server-type-name->bootloader server-type-name)
|
|
||||||
('bios %hetzner-os-x86/bios)
|
|
||||||
('efi %hetzner-os-x86/efi)))))
|
|
||||||
|
|
||||||
(define-deprecated %hetzner-os-x86
|
|
||||||
make-hetzner-os
|
|
||||||
%hetzner-os-x86/bios)
|
|
||||||
|
|
||||||
(define-deprecated %hetzner-os-arm
|
|
||||||
make-hetzner-os
|
|
||||||
%hetzner-os-arm/efi)
|
|
||||||
|
|
||||||
(define (operating-system-authorize os)
|
(define (operating-system-authorize os)
|
||||||
"Authorize the OS with the public signing key of the current machine."
|
"Authorize the OS with the public signing key of the current machine."
|
||||||
(if (file-exists? %public-key-file)
|
(if (file-exists? %public-key-file)
|
||||||
@@ -242,11 +191,6 @@ Have you run 'guix archive --generate-key'?")
|
|||||||
;;; Hetzner configuration.
|
;;; Hetzner configuration.
|
||||||
;;;
|
;;;
|
||||||
|
|
||||||
;;; This parameter overrides the value returned by
|
|
||||||
;;; `hetzner-configuration-ssh-key'.
|
|
||||||
(define %hetzner-ssh-key-file
|
|
||||||
(make-parameter #f))
|
|
||||||
|
|
||||||
(define-record-type* <hetzner-configuration> hetzner-configuration
|
(define-record-type* <hetzner-configuration> hetzner-configuration
|
||||||
make-hetzner-configuration hetzner-configuration? this-hetzner-configuration
|
make-hetzner-configuration hetzner-configuration? this-hetzner-configuration
|
||||||
(allow-downgrades? hetzner-configuration-allow-downgrades? ; boolean
|
(allow-downgrades? hetzner-configuration-allow-downgrades? ; boolean
|
||||||
@@ -258,7 +202,7 @@ Have you run 'guix archive --generate-key'?")
|
|||||||
(build-locally? hetzner-configuration-build-locally? ; boolean
|
(build-locally? hetzner-configuration-build-locally? ; boolean
|
||||||
(default #t))
|
(default #t))
|
||||||
(delete? hetzner-configuration-delete? ; boolean
|
(delete? hetzner-configuration-delete? ; boolean
|
||||||
(default #t))
|
(default #f))
|
||||||
(labels hetzner-configuration-labels ; list of strings
|
(labels hetzner-configuration-labels ; list of strings
|
||||||
(default '()))
|
(default '()))
|
||||||
(location hetzner-configuration-location ; #f | string
|
(location hetzner-configuration-location ; #f | string
|
||||||
@@ -269,39 +213,26 @@ Have you run 'guix archive --generate-key'?")
|
|||||||
(default #t))
|
(default #t))
|
||||||
(ipv6 hetzner-configuration-ipv6 ; boolean | string
|
(ipv6 hetzner-configuration-ipv6 ; boolean | string
|
||||||
(default #t))
|
(default #t))
|
||||||
(ssh-public-key hetzner-configuration-ssh-public-key* ; #f | public-key | string
|
(ssh-public-key hetzner-configuration-ssh-public-key ; public-key | string
|
||||||
(thunked)
|
(thunked)
|
||||||
(default (and=> (hetzner-configuration-ssh-key
|
(default (public-key-from-file (hetzner-configuration-ssh-key this-hetzner-configuration)))
|
||||||
this-hetzner-configuration)
|
(sanitize
|
||||||
public-key-from-file))
|
(lambda (value)
|
||||||
(sanitize (lambda (value)
|
(if (string? value) (public-key-from-file value) value))))
|
||||||
(if (string? value)
|
(ssh-key hetzner-configuration-ssh-key
|
||||||
(public-key-from-file value)
|
(default #f))) ; #f | string
|
||||||
value))))
|
|
||||||
(ssh-key hetzner-configuration-ssh-key* ; #f | string
|
|
||||||
(default #f))
|
|
||||||
(user hetzner-configuration-user ;string
|
|
||||||
(default "root")))
|
|
||||||
|
|
||||||
(define (hetzner-configuration-ssh-key config)
|
(define (hetzner-configuration-ssh-key-fingerprint config)
|
||||||
(or (%hetzner-ssh-key-file)
|
"Return the SSH public key fingerprint of CONFIG as a string."
|
||||||
(hetzner-configuration-ssh-key* config)))
|
(and-let* ((pubkey (hetzner-configuration-ssh-public-key config))
|
||||||
|
(hash (get-public-key-hash pubkey 'md5)))
|
||||||
(define (hetzner-configuration-ssh-public-key config)
|
|
||||||
(or (and=> (%hetzner-ssh-key-file) public-key-from-file)
|
|
||||||
(hetzner-configuration-ssh-public-key* config)))
|
|
||||||
|
|
||||||
(define (public-key->fingerprint public-key)
|
|
||||||
"Return the SSH public key fingerprint of PUBLIC-KEY, a Guile-SSH public key
|
|
||||||
object, in the expected format for the Hetzner API."
|
|
||||||
(let ((hash (get-public-key-hash public-key 'md5)))
|
|
||||||
(bytevector->hex-string hash)))
|
(bytevector->hex-string hash)))
|
||||||
|
|
||||||
(define (public-key->string-with-type public-key)
|
(define (hetzner-configuration-ssh-key-public config)
|
||||||
"Return the SSH public key string of PUBLIC-KEY, a Guile-SSH public key
|
"Return the SSH public key of CONFIG as a string."
|
||||||
object, in the expected format for the Hetzner API."
|
(let ((public-key (hetzner-configuration-ssh-public-key config)))
|
||||||
(format #f "ssh-~a ~a" (get-key-type public-key)
|
(format #f "ssh-~a ~a" (get-key-type public-key)
|
||||||
(public-key->string public-key)))
|
(public-key->string public-key))))
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
@@ -314,26 +245,21 @@ object, in the expected format for the Hetzner API."
|
|||||||
;; Get the operating system WITHOUT the provenance service to avoid a
|
;; Get the operating system WITHOUT the provenance service to avoid a
|
||||||
;; duplicate symlink conflict in the store.
|
;; duplicate symlink conflict in the store.
|
||||||
(os ((@@ (gnu machine) %machine-operating-system) target)))
|
(os ((@@ (gnu machine) %machine-operating-system) target)))
|
||||||
(match-record config <hetzner-configuration>
|
(machine
|
||||||
( authorize? allow-downgrades? build-locally? user)
|
(inherit target)
|
||||||
(machine
|
(operating-system
|
||||||
(inherit target)
|
(if (hetzner-configuration-authorize? config)
|
||||||
(operating-system
|
(operating-system-authorize os)
|
||||||
(if authorize?
|
os))
|
||||||
(operating-system-authorize os)
|
(environment managed-host-environment-type)
|
||||||
os))
|
(configuration
|
||||||
(environment managed-host-environment-type)
|
(machine-ssh-configuration
|
||||||
(configuration
|
(allow-downgrades? (hetzner-configuration-allow-downgrades? config))
|
||||||
(machine-ssh-configuration
|
(authorize? (hetzner-configuration-authorize? config))
|
||||||
(allow-downgrades? allow-downgrades?)
|
(build-locally? (hetzner-configuration-build-locally? config))
|
||||||
(authorize? authorize?)
|
(host-name (hetzner-server-public-ipv4 server))
|
||||||
(build-locally? build-locally?)
|
(identity (hetzner-configuration-ssh-key config))
|
||||||
(host-name (hetzner-server-public-ipv4 server))
|
(system (hetzner-server-system server)))))))
|
||||||
;; XXX: match-record doesn't make use of custom accessors to obtain
|
|
||||||
;; the value, so we can't bind SSH-KEY with it.
|
|
||||||
(identity (hetzner-configuration-ssh-key config))
|
|
||||||
(system (hetzner-server-system server))
|
|
||||||
(user user)))))))
|
|
||||||
|
|
||||||
(define (hetzner-machine-location machine)
|
(define (hetzner-machine-location machine)
|
||||||
"Find the location of MACHINE on the Hetzner API."
|
"Find the location of MACHINE on the Hetzner API."
|
||||||
@@ -437,43 +363,45 @@ Available locations:~%~%~a~%~%For more details, see: ~a")
|
|||||||
"Return the form to bootstrap an operating system on SERVER."
|
"Return the form to bootstrap an operating system on SERVER."
|
||||||
(let* ((os (machine-operating-system machine))
|
(let* ((os (machine-operating-system machine))
|
||||||
(system (hetzner-server-system server))
|
(system (hetzner-server-system server))
|
||||||
(type-name (hetzner-server-type-name (hetzner-server-type server)))
|
|
||||||
(arm? (equal? "arm" (hetzner-server-architecture server)))
|
(arm? (equal? "arm" (hetzner-server-architecture server)))
|
||||||
(x86? (equal? "x86" (hetzner-server-architecture server)))
|
(x86? (equal? "x86" (hetzner-server-architecture server)))
|
||||||
(efi? (equal? 'efi (server-type-name->bootloader type-name)))
|
|
||||||
(root-fs-type (operating-system-root-file-system-type os)))
|
(root-fs-type (operating-system-root-file-system-type os)))
|
||||||
`(operating-system
|
`(operating-system
|
||||||
(host-name ,(operating-system-host-name os))
|
(host-name ,(operating-system-host-name os))
|
||||||
(timezone "Etc/UTC")
|
(timezone "Etc/UTC")
|
||||||
(bootloader (bootloader-configuration
|
(bootloader (bootloader-configuration
|
||||||
(bootloader ,(if efi?
|
(bootloader ,(cond (arm? 'grub-efi-bootloader)
|
||||||
'grub-efi-bootloader
|
(x86? 'grub-bootloader)))
|
||||||
'grub-bootloader))
|
(targets ,(cond (arm? '(list "/boot/efi"))
|
||||||
(targets ,(if efi?
|
(x86? '(list "/dev/sda"))))
|
||||||
'(list "/boot/efi")
|
(terminal-outputs '(console))))
|
||||||
'(list "/dev/sda")))
|
|
||||||
(terminal-outputs '(console))))
|
|
||||||
(initrd-modules (append
|
(initrd-modules (append
|
||||||
,(cond (arm? '(list "sd_mod" "virtio_scsi"))
|
,(cond (arm? '(list "sd_mod" "virtio_scsi"))
|
||||||
(x86? '(list "virtio_scsi")))
|
(x86? '(list "virtio_scsi")))
|
||||||
%base-initrd-modules))
|
%base-initrd-modules))
|
||||||
(file-systems (cons* (file-system
|
(file-systems ,(cond
|
||||||
(mount-point "/")
|
(arm? `(cons* (file-system
|
||||||
(device "/dev/sda1")
|
(mount-point "/")
|
||||||
(type ,root-fs-type))
|
(device "/dev/sda1")
|
||||||
,@(if efi?
|
(type ,root-fs-type))
|
||||||
'((file-system
|
(file-system
|
||||||
(mount-point "/boot/efi")
|
(mount-point "/boot/efi")
|
||||||
(device "/dev/sda15")
|
(device "/dev/sda15")
|
||||||
(type "vfat")))
|
(type "vfat"))
|
||||||
'())
|
%base-file-systems))
|
||||||
%base-file-systems))
|
(x86? `(cons* (file-system
|
||||||
|
(mount-point "/")
|
||||||
|
(device "/dev/sda1")
|
||||||
|
(type ,root-fs-type))
|
||||||
|
%base-file-systems))))
|
||||||
(services
|
(services
|
||||||
(cons* (service dhcpcd-service-type)
|
;; guix 1.4.0 does not have dhcpcd-service-type,
|
||||||
|
;; so we use dhcp-client-service-type here.
|
||||||
|
(cons* (service dhcp-client-service-type)
|
||||||
(service openssh-service-type
|
(service openssh-service-type
|
||||||
(openssh-configuration
|
(openssh-configuration
|
||||||
(openssh openssh-sans-x)
|
(openssh openssh-sans-x)
|
||||||
(permit-root-login 'prohibit-password)))
|
(permit-root-login 'prohibit-password)))
|
||||||
%base-services)))))
|
%base-services)))))
|
||||||
|
|
||||||
(define (rexec-verbose session cmd)
|
(define (rexec-verbose session cmd)
|
||||||
@@ -495,9 +423,8 @@ values: list of output lines returned by CMD and its exit code."
|
|||||||
|
|
||||||
(define (hetzner-machine-ssh-key machine)
|
(define (hetzner-machine-ssh-key machine)
|
||||||
"Find the SSH key for MACHINE on the Hetzner API."
|
"Find the SSH key for MACHINE on the Hetzner API."
|
||||||
(and-let* ((config (machine-configuration machine))
|
(let* ((config (machine-configuration machine))
|
||||||
(public-key (hetzner-configuration-ssh-public-key config))
|
(expected (hetzner-configuration-ssh-key-fingerprint config)))
|
||||||
(expected (public-key->fingerprint public-key)))
|
|
||||||
(find (lambda (ssh-key)
|
(find (lambda (ssh-key)
|
||||||
(equal? expected (hetzner-ssh-key-fingerprint ssh-key)))
|
(equal? expected (hetzner-ssh-key-fingerprint ssh-key)))
|
||||||
(hetzner-api-ssh-keys
|
(hetzner-api-ssh-keys
|
||||||
@@ -510,12 +437,10 @@ values: list of output lines returned by CMD and its exit code."
|
|||||||
(format #t "creating ssh key for '~a'...\n" name)
|
(format #t "creating ssh key for '~a'...\n" name)
|
||||||
(let* ((config (machine-configuration machine))
|
(let* ((config (machine-configuration machine))
|
||||||
(api (hetzner-configuration-api config))
|
(api (hetzner-configuration-api config))
|
||||||
(pubkey (hetzner-configuration-ssh-public-key config))
|
|
||||||
(_ (assert pubkey))
|
|
||||||
(ssh-key (hetzner-api-ssh-key-create
|
(ssh-key (hetzner-api-ssh-key-create
|
||||||
api
|
(hetzner-configuration-api config)
|
||||||
(public-key->fingerprint pubkey)
|
(hetzner-configuration-ssh-key-fingerprint config)
|
||||||
(public-key->string-with-type pubkey)
|
(hetzner-configuration-ssh-key-public config)
|
||||||
#:labels (hetzner-configuration-labels config))))
|
#:labels (hetzner-configuration-labels config))))
|
||||||
(format #t "successfully created ssh key for '~a'\n" name)
|
(format #t "successfully created ssh key for '~a'\n" name)
|
||||||
ssh-key)))
|
ssh-key)))
|
||||||
@@ -541,16 +466,6 @@ values: list of output lines returned by CMD and its exit code."
|
|||||||
(formatted-message (G_ "primary ip '~a' does not exist.")
|
(formatted-message (G_ "primary ip '~a' does not exist.")
|
||||||
name))))
|
name))))
|
||||||
|
|
||||||
(define temporary-ssh-key-file
|
|
||||||
(let ((ssh-key-file (port-filename (mkstemp "/tmp/hetzner-key-XXXXXX")))
|
|
||||||
(ssh-key #f))
|
|
||||||
(lambda ()
|
|
||||||
"Return a dynamically created, temporary private SSH key."
|
|
||||||
(unless ssh-key
|
|
||||||
(set! ssh-key (make-keypair 'ed25519))
|
|
||||||
(private-key-to-file ssh-key ssh-key-file))
|
|
||||||
ssh-key-file)))
|
|
||||||
|
|
||||||
(define (hetzner-machine-create-server machine)
|
(define (hetzner-machine-create-server machine)
|
||||||
"Create the Hetzner server for MACHINE."
|
"Create the Hetzner server for MACHINE."
|
||||||
(let* ((config (machine-configuration machine))
|
(let* ((config (machine-configuration machine))
|
||||||
@@ -558,14 +473,13 @@ values: list of output lines returned by CMD and its exit code."
|
|||||||
(server-type (hetzner-configuration-server-type config)))
|
(server-type (hetzner-configuration-server-type config)))
|
||||||
(format #t "creating '~a' server for '~a'...\n" server-type name)
|
(format #t "creating '~a' server for '~a'...\n" server-type name)
|
||||||
(let* ((ssh-key (hetzner-machine-ssh-key machine))
|
(let* ((ssh-key (hetzner-machine-ssh-key machine))
|
||||||
(_ (assert ssh-key)) ;required during provisioning
|
|
||||||
(ipv4 (hetzner-configuration-ipv4 config))
|
(ipv4 (hetzner-configuration-ipv4 config))
|
||||||
(ipv6 (hetzner-configuration-ipv6 config))
|
(ipv6 (hetzner-configuration-ipv6 config))
|
||||||
(api (hetzner-configuration-api config))
|
(api (hetzner-configuration-api config))
|
||||||
(server (hetzner-api-server-create
|
(server (hetzner-api-server-create
|
||||||
api
|
api
|
||||||
(machine-display-name machine)
|
(machine-display-name machine)
|
||||||
#:ssh-keys (list ssh-key)
|
(list ssh-key)
|
||||||
#:ipv4 (if (string? ipv4)
|
#:ipv4 (if (string? ipv4)
|
||||||
(hetzner-primary-ip-id (hetzner-resolve-ip api ipv4))
|
(hetzner-primary-ip-id (hetzner-resolve-ip api ipv4))
|
||||||
ipv4)
|
ipv4)
|
||||||
@@ -613,15 +527,13 @@ values: list of output lines returned by CMD and its exit code."
|
|||||||
(write-known-host! ssh-session)))
|
(write-known-host! ssh-session)))
|
||||||
|
|
||||||
(define (hetzner-machine-enable-rescue-system machine server)
|
(define (hetzner-machine-enable-rescue-system machine server)
|
||||||
"Enable the rescue system on the Hetzner SERVER for MACHINE, provisioning it
|
"Enable the rescue system on the Hetzner SERVER for MACHINE."
|
||||||
with the configured SSH key, or a dynamically created temporary one."
|
|
||||||
(let* ((name (machine-display-name machine))
|
(let* ((name (machine-display-name machine))
|
||||||
(config (machine-configuration machine))
|
(config (machine-configuration machine))
|
||||||
(api (hetzner-configuration-api config))
|
(api (hetzner-configuration-api config))
|
||||||
(ssh-keys (and=> (hetzner-machine-ssh-key machine) list)))
|
(ssh-keys (list (hetzner-machine-ssh-key machine))))
|
||||||
(format #t "enabling rescue system on '~a'...\n" name)
|
(format #t "enabling rescue system on '~a'...\n" name)
|
||||||
(let ((action (hetzner-api-server-enable-rescue-system
|
(let ((action (hetzner-api-server-enable-rescue-system api server ssh-keys)))
|
||||||
api server #:ssh-keys ssh-keys)))
|
|
||||||
(format #t "successfully enabled rescue system on '~a'\n" name)
|
(format #t "successfully enabled rescue system on '~a'\n" name)
|
||||||
action)))
|
action)))
|
||||||
|
|
||||||
@@ -657,7 +569,6 @@ with the configured SSH key, or a dynamically created temporary one."
|
|||||||
(set! hetzner-machine-ssh-run-script hetzner-machine-ssh-run-script)
|
(set! hetzner-machine-ssh-run-script hetzner-machine-ssh-run-script)
|
||||||
|
|
||||||
(define (hetzner-machine-rescue-install-os machine ssh-session server)
|
(define (hetzner-machine-rescue-install-os machine ssh-session server)
|
||||||
"Init a minimal Guix System to bootstrap from."
|
|
||||||
(let ((name (machine-display-name machine))
|
(let ((name (machine-display-name machine))
|
||||||
(os (hetzner-machine-bootstrap-os-form machine server)))
|
(os (hetzner-machine-bootstrap-os-form machine server)))
|
||||||
(format #t "installing guix operating system on '~a'...\n" name)
|
(format #t "installing guix operating system on '~a'...\n" name)
|
||||||
@@ -676,9 +587,9 @@ chmod 600 /mnt/root/.ssh/authorized_keys
|
|||||||
|
|
||||||
# Small instance don't have much disk space. Bind mount the store of the
|
# Small instance don't have much disk space. Bind mount the store of the
|
||||||
# rescue system to the tmp directory of the new Guix system.
|
# rescue system to the tmp directory of the new Guix system.
|
||||||
mkdir -p /mnt/tmp/gnu
|
mkdir -p /mnt/tmp/gnu/store
|
||||||
mkdir -p /gnu
|
mkdir -p /gnu/store
|
||||||
mount --bind /mnt/tmp/gnu /gnu
|
mount --bind /mnt/tmp/gnu/store /gnu/store
|
||||||
|
|
||||||
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
|
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
|
||||||
chmod +x /tmp/guix-install.sh
|
chmod +x /tmp/guix-install.sh
|
||||||
@@ -754,8 +665,7 @@ apt-get install cloud-initramfs-growroot uidmap --assume-yes"))
|
|||||||
action)))
|
action)))
|
||||||
|
|
||||||
(define (hetzner-machine-provision machine)
|
(define (hetzner-machine-provision machine)
|
||||||
"Provision a Guix System bootstrap server for MACHINE on the Hetzner Cloud
|
"Provision a server for MACHINE on the Hetzner Cloud service."
|
||||||
service."
|
|
||||||
(with-exception-handler
|
(with-exception-handler
|
||||||
(lambda (exception)
|
(lambda (exception)
|
||||||
(let ((config (machine-configuration machine))
|
(let ((config (machine-configuration machine))
|
||||||
@@ -770,10 +680,12 @@ service."
|
|||||||
(let ((ssh-session (hetzner-machine-wait-for-ssh machine server)))
|
(let ((ssh-session (hetzner-machine-wait-for-ssh machine server)))
|
||||||
(hetzner-machine-rescue-install-packages machine ssh-session)
|
(hetzner-machine-rescue-install-packages machine ssh-session)
|
||||||
(hetzner-machine-rescue-partition machine ssh-session)
|
(hetzner-machine-rescue-partition machine ssh-session)
|
||||||
(hetzner-machine-rescue-install-os machine ssh-session server))
|
(hetzner-machine-rescue-install-os machine ssh-session server)
|
||||||
(hetzner-machine-reboot machine server)
|
(hetzner-machine-reboot machine server)
|
||||||
(hetzner-machine-authenticate-host machine server)
|
(sleep 5)
|
||||||
server))))
|
(hetzner-machine-authenticate-host machine server)
|
||||||
|
server)))
|
||||||
|
#:unwind? #t))
|
||||||
|
|
||||||
(define (machine-not-provisioned machine)
|
(define (machine-not-provisioned machine)
|
||||||
(formatted-message
|
(formatted-message
|
||||||
@@ -799,47 +711,16 @@ an environment type of 'hetzner-environment-type'."
|
|||||||
;;; System deployment.
|
;;; System deployment.
|
||||||
;;;
|
;;;
|
||||||
|
|
||||||
(define (cleanup-temporary-ssh-key/maybe api ssh-key)
|
|
||||||
"Delete the temporary SSH private key file from the file system and the
|
|
||||||
Hetzner API, if one was created used."
|
|
||||||
(when (%hetzner-ssh-key-file)
|
|
||||||
(format #t "cleaning up temporary ssh key~%")
|
|
||||||
(delete-file (%hetzner-ssh-key-file))
|
|
||||||
(%hetzner-ssh-key-file #f)
|
|
||||||
(hetzner-api-ssh-key-delete api ssh-key)))
|
|
||||||
|
|
||||||
(define (deploy-hetzner machine)
|
(define (deploy-hetzner machine)
|
||||||
"Internal implementation of 'deploy-machine' for 'machine' instances with an
|
"Internal implementation of 'deploy-machine' for 'machine' instances with an
|
||||||
environment type of 'hetzner-environment-type'."
|
environment type of 'hetzner-environment-type'."
|
||||||
(hetzner-machine-validate machine)
|
(hetzner-machine-validate machine)
|
||||||
|
(unless (hetzner-machine-ssh-key machine)
|
||||||
|
(hetzner-machine-ssh-key-create machine))
|
||||||
|
(let ((server (or (hetzner-machine-server machine)
|
||||||
|
(hetzner-machine-provision machine))))
|
||||||
|
(deploy-machine (hetzner-machine-delegate machine server))))
|
||||||
|
|
||||||
(define server (hetzner-machine-server machine))
|
|
||||||
(define config (machine-configuration machine))
|
|
||||||
(define api (hetzner-configuration-api config))
|
|
||||||
(define ssh-key #f) ;hetzner API key
|
|
||||||
|
|
||||||
;; Provisioning requires uploading an SSH key via the Hetzner API to
|
|
||||||
;; authenticate non-interactively with the newly created server.
|
|
||||||
(unless server ;provisioning?
|
|
||||||
(unless (hetzner-configuration-ssh-public-key config)
|
|
||||||
(format #t "using a temporary ssh key for provisioning~%")
|
|
||||||
(%hetzner-ssh-key-file (temporary-ssh-key-file)))
|
|
||||||
(set! ssh-key (or (hetzner-machine-ssh-key machine)
|
|
||||||
(hetzner-machine-ssh-key-create machine))))
|
|
||||||
|
|
||||||
;; Cleaning-up here is a bit tricky, as `deploy-machine' returns a monadic
|
|
||||||
;; value immediately, to be executed later; this means the clean-up must be
|
|
||||||
;; delayed until monadic evaluation time.
|
|
||||||
(let* ((server (or server (hetzner-machine-provision machine)))
|
|
||||||
(delegate-machine (hetzner-machine-delegate machine server)))
|
|
||||||
;; FIXME: The clean-up in the guard does not run even when
|
|
||||||
;; `deploy-machine' fails.
|
|
||||||
(guard (c (#t (cleanup-temporary-ssh-key/maybe api ssh-key)
|
|
||||||
(raise c)))
|
|
||||||
(mlet %store-monad
|
|
||||||
((value (deploy-machine delegate-machine)))
|
|
||||||
(cleanup-temporary-ssh-key/maybe api ssh-key)
|
|
||||||
(return value)))))
|
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||||
;;; Copyright © 2026 Maxim Cournoyer <maxim@guixotic.coop>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -20,7 +19,6 @@
|
|||||||
(define-module (gnu machine hetzner http)
|
(define-module (gnu machine hetzner http)
|
||||||
#:use-module (guix diagnostics)
|
#:use-module (guix diagnostics)
|
||||||
#:use-module (guix i18n)
|
#:use-module (guix i18n)
|
||||||
#:use-module (guix memoization)
|
|
||||||
#:use-module (guix records)
|
#:use-module (guix records)
|
||||||
#:use-module (ice-9 iconv)
|
#:use-module (ice-9 iconv)
|
||||||
#:use-module (ice-9 match)
|
#:use-module (ice-9 match)
|
||||||
@@ -53,7 +51,6 @@
|
|||||||
hetzner-api-action-wait
|
hetzner-api-action-wait
|
||||||
hetzner-api-actions
|
hetzner-api-actions
|
||||||
hetzner-api-create-ssh-key
|
hetzner-api-create-ssh-key
|
||||||
hetzner-api-images
|
|
||||||
hetzner-api-locations
|
hetzner-api-locations
|
||||||
hetzner-api-primary-ips
|
hetzner-api-primary-ips
|
||||||
hetzner-api-request-body
|
hetzner-api-request-body
|
||||||
@@ -84,23 +81,6 @@
|
|||||||
hetzner-error-code
|
hetzner-error-code
|
||||||
hetzner-error-message
|
hetzner-error-message
|
||||||
hetzner-error?
|
hetzner-error?
|
||||||
hetzner-image?
|
|
||||||
hetzner-image-id
|
|
||||||
hetzner-image-type
|
|
||||||
hetzner-image-status
|
|
||||||
hetzner-image-name
|
|
||||||
hetzner-image-description
|
|
||||||
hetzner-image-disk-size
|
|
||||||
hetzner-image-created
|
|
||||||
hetzner-image-created-from
|
|
||||||
hetzner-image-bound-to
|
|
||||||
hetzner-image-os-flavor
|
|
||||||
hetzner-image-os-version
|
|
||||||
hetzner-image-rapid-deploy
|
|
||||||
hetzner-image-protection
|
|
||||||
hetzner-image-deprecated
|
|
||||||
hetzner-image-deleted
|
|
||||||
hetzner-image-architecture
|
|
||||||
hetzner-ipv4-blocked?
|
hetzner-ipv4-blocked?
|
||||||
hetzner-ipv4-dns-ptr
|
hetzner-ipv4-dns-ptr
|
||||||
hetzner-ipv4-id
|
hetzner-ipv4-id
|
||||||
@@ -168,7 +148,6 @@
|
|||||||
hetzner-ssh-key?
|
hetzner-ssh-key?
|
||||||
make-hetzner-action
|
make-hetzner-action
|
||||||
make-hetzner-error
|
make-hetzner-error
|
||||||
make-hetzner-image
|
|
||||||
make-hetzner-ipv4
|
make-hetzner-ipv4
|
||||||
make-hetzner-ipv6
|
make-hetzner-ipv6
|
||||||
make-hetzner-location
|
make-hetzner-location
|
||||||
@@ -189,19 +168,7 @@
|
|||||||
(make-parameter (getenv "GUIX_HETZNER_API_TOKEN")))
|
(make-parameter (getenv "GUIX_HETZNER_API_TOKEN")))
|
||||||
|
|
||||||
;; Ideally this would be a Guix image. Maybe one day.
|
;; Ideally this would be a Guix image. Maybe one day.
|
||||||
(define %hetzner-default-server-image
|
(define %hetzner-default-server-image "debian-11")
|
||||||
(mlambda (api)
|
|
||||||
"Return the latest Debian image available. This image gets used for the
|
|
||||||
initial system provisioning phase, before Guix System takes over."
|
|
||||||
(let ((debian-images (filter (lambda (image)
|
|
||||||
(string=? "debian"
|
|
||||||
(hetzner-image-os-flavor image)))
|
|
||||||
(hetzner-api-images api))))
|
|
||||||
(hetzner-image-name
|
|
||||||
(last (sort debian-images
|
|
||||||
(lambda (x y)
|
|
||||||
(< (string->number (hetzner-image-os-version x))
|
|
||||||
(string->number (hetzner-image-os-version y))))))))))
|
|
||||||
|
|
||||||
;; Falkenstein, Germany
|
;; Falkenstein, Germany
|
||||||
(define %hetzner-default-server-location "fsn1")
|
(define %hetzner-default-server-location "fsn1")
|
||||||
@@ -323,43 +290,6 @@ initial system provisioning phase, before Guix System takes over."
|
|||||||
(server-type hetzner-server-type "server_type"
|
(server-type hetzner-server-type "server_type"
|
||||||
json->hetzner-server-type)) ; <hetzner-server-type>
|
json->hetzner-server-type)) ; <hetzner-server-type>
|
||||||
|
|
||||||
(define-json-mapping <hetzner-image>
|
|
||||||
make-hetzner-image hetzner-image? json->hetzner-image
|
|
||||||
(id hetzner-image-id) ;integer
|
|
||||||
(type hetzner-image-type) ;string
|
|
||||||
(status hetzner-image-status) ;string
|
|
||||||
(name hetzner-image-name "name" (null-or identity)) ;string | null
|
|
||||||
(description hetzner-image-description) ;string
|
|
||||||
(image-size hetzner-image-size "image_size" ;number | null (GiB)
|
|
||||||
(null-or identity))
|
|
||||||
(disk-size hetzner-image-disk-size "disk_size") ;number (GiB)
|
|
||||||
(created hetzner-image-created) ;string (date)
|
|
||||||
(created-from hetzner-image-created-from "created_from" ;object | null
|
|
||||||
(null-or json->hetzner-image-created-from))
|
|
||||||
(bound-to hetzner-image-bound-to "bound_to" (null-or identity)) ;integer | null
|
|
||||||
(os-flavor hetzner-image-os-flavor "os_flavor") ;string
|
|
||||||
(os-version hetzner-image-os-version "os_version" ;string | null
|
|
||||||
(null-or identity))
|
|
||||||
(rapid-deploy hetzner-image-rapid-deploy "rapid_deploy") ;boolean
|
|
||||||
(protection hetzner-image-protection "protection" ;object
|
|
||||||
json->hetzner-image-protection)
|
|
||||||
(deprecated hetzner-image-deprecated) ;string
|
|
||||||
(deleted hetzner-image-deleted "deleted" (null-or identity)) ;null | string
|
|
||||||
(architecture hetzner-image-architecture)) ;string
|
|
||||||
|
|
||||||
(define (null-or parser)
|
|
||||||
(lambda (value)
|
|
||||||
(if (eq? 'null value)
|
|
||||||
*unspecified*
|
|
||||||
(parser value))))
|
|
||||||
|
|
||||||
(define-json-type <hetzner-image-created-from>
|
|
||||||
(id) ;integer
|
|
||||||
(name)) ;string
|
|
||||||
|
|
||||||
(define-json-type <hetzner-image-protection>
|
|
||||||
(delete)) ;boolean
|
|
||||||
|
|
||||||
(define-json-mapping <hetzner-server-type>
|
(define-json-mapping <hetzner-server-type>
|
||||||
make-hetzner-server-type hetzner-server-type? json->hetzner-server-type
|
make-hetzner-server-type hetzner-server-type? json->hetzner-server-type
|
||||||
(architecture hetzner-server-type-architecture) ; string
|
(architecture hetzner-server-type-architecture) ; string
|
||||||
@@ -668,11 +598,11 @@ initial system provisioning phase, before Guix System takes over."
|
|||||||
(apply hetzner-api-list api "/locations" "locations" json->hetzner-location options))
|
(apply hetzner-api-list api "/locations" "locations" json->hetzner-location options))
|
||||||
|
|
||||||
(define* (hetzner-api-server-create
|
(define* (hetzner-api-server-create
|
||||||
api name #:key
|
api name ssh-keys
|
||||||
ssh-keys
|
#:key
|
||||||
(ipv4 #f)
|
(ipv4 #f)
|
||||||
(ipv6 #f)
|
(ipv6 #f)
|
||||||
(image (%hetzner-default-server-image api))
|
(image %hetzner-default-server-image)
|
||||||
(labels '())
|
(labels '())
|
||||||
(location %hetzner-default-server-location)
|
(location %hetzner-default-server-location)
|
||||||
(server-type %hetzner-default-server-type)
|
(server-type %hetzner-default-server-type)
|
||||||
@@ -690,11 +620,7 @@ initial system provisioning phase, before Guix System takes over."
|
|||||||
,@(if (integer? ipv6) `(("ipv6" . ,ipv6)) '())))
|
,@(if (integer? ipv6) `(("ipv6" . ,ipv6)) '())))
|
||||||
("location" . ,location)
|
("location" . ,location)
|
||||||
("server_type" . ,server-type)
|
("server_type" . ,server-type)
|
||||||
,@(if ssh-keys
|
("ssh_keys" . ,(apply vector (map hetzner-ssh-key-id ssh-keys)))
|
||||||
`(("ssh_keys" .
|
|
||||||
,(apply vector (map hetzner-ssh-key-id
|
|
||||||
ssh-keys))))
|
|
||||||
'())
|
|
||||||
("start_after_create" . ,start-after-create?)))))
|
("start_after_create" . ,start-after-create?)))))
|
||||||
(hetzner-api-action-wait api (hetzner-api-body-action body))
|
(hetzner-api-action-wait api (hetzner-api-body-action body))
|
||||||
(json->hetzner-server (assoc-ref body "server"))))
|
(json->hetzner-server (assoc-ref body "server"))))
|
||||||
@@ -705,15 +631,12 @@ initial system provisioning phase, before Guix System takes over."
|
|||||||
(hetzner-api-action-wait api (hetzner-api-body-action body))))
|
(hetzner-api-action-wait api (hetzner-api-body-action body))))
|
||||||
|
|
||||||
(define* (hetzner-api-server-enable-rescue-system
|
(define* (hetzner-api-server-enable-rescue-system
|
||||||
api server #:key ssh-keys (type "linux64"))
|
api server ssh-keys #:key (type "linux64"))
|
||||||
"Enable the rescue system for SERVER with the Hetzner API."
|
"Enable the rescue system for SERVER with the Hetzner API."
|
||||||
(let* ((ssh-keys (and ssh-keys
|
(let* ((ssh-keys (apply vector (map hetzner-ssh-key-id ssh-keys)))
|
||||||
(apply vector (map hetzner-ssh-key-id ssh-keys))))
|
|
||||||
(body (hetzner-api-post
|
(body (hetzner-api-post
|
||||||
api (hetzner-server-path server "/actions/enable_rescue")
|
api (hetzner-server-path server "/actions/enable_rescue")
|
||||||
#:body `(,@(if ssh-keys
|
#:body `(("ssh_keys" . ,ssh-keys)
|
||||||
`(("ssh_keys" . ,ssh-keys))
|
|
||||||
'())
|
|
||||||
("type" . ,type)))))
|
("type" . ,type)))))
|
||||||
(hetzner-api-action-wait api (hetzner-api-body-action body))))
|
(hetzner-api-action-wait api (hetzner-api-body-action body))))
|
||||||
|
|
||||||
@@ -764,8 +687,3 @@ initial system provisioning phase, before Guix System takes over."
|
|||||||
"Get server types from the Hetzner API."
|
"Get server types from the Hetzner API."
|
||||||
(apply hetzner-api-list api "/server_types" "server_types"
|
(apply hetzner-api-list api "/server_types" "server_types"
|
||||||
json->hetzner-server-type options))
|
json->hetzner-server-type options))
|
||||||
|
|
||||||
(define* (hetzner-api-images api . options)
|
|
||||||
"Get image types from the Hetzner API."
|
|
||||||
(apply hetzner-api-list api "/images" "images"
|
|
||||||
json->hetzner-image options))
|
|
||||||
|
|||||||
+1
-7
@@ -164,12 +164,6 @@ flags."
|
|||||||
%default-package-module-path
|
%default-package-module-path
|
||||||
channels-scm))))
|
channels-scm))))
|
||||||
|
|
||||||
(define (strip-trailing-slash s)
|
|
||||||
;; Strip the trailing slash of a string, if present.
|
|
||||||
(if (string-suffix? "/" s)
|
|
||||||
(string-drop-right s 1)
|
|
||||||
s))
|
|
||||||
|
|
||||||
(define %patch-path
|
(define %patch-path
|
||||||
;; Define it after '%package-module-path' so that '%load-path' contains user
|
;; Define it after '%package-module-path' so that '%load-path' contains user
|
||||||
;; directories, allowing patches in $GUIX_PACKAGE_PATH to be found.
|
;; directories, allowing patches in $GUIX_PACKAGE_PATH to be found.
|
||||||
@@ -178,7 +172,7 @@ flags."
|
|||||||
(if (string=? directory %distro-root-directory)
|
(if (string=? directory %distro-root-directory)
|
||||||
(string-append directory "/gnu/packages/patches")
|
(string-append directory "/gnu/packages/patches")
|
||||||
directory))
|
directory))
|
||||||
(map strip-trailing-slash %load-path))))
|
%load-path)))
|
||||||
|
|
||||||
;; This procedure is used by Emacs-Guix up to 0.5.1.1, so keep it for now.
|
;; This procedure is used by Emacs-Guix up to 0.5.1.1, so keep it for now.
|
||||||
;; See <https://github.com/alezost/guix.el/issues/30>.
|
;; See <https://github.com/alezost/guix.el/issues/30>.
|
||||||
|
|||||||
@@ -51,7 +51,6 @@
|
|||||||
#:use-module (gnu packages libusb)
|
#:use-module (gnu packages libusb)
|
||||||
#:use-module (gnu packages java)
|
#:use-module (gnu packages java)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-build)
|
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages tcl)
|
#:use-module (gnu packages tcl)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
@@ -186,9 +185,7 @@ terminals.")
|
|||||||
(native-inputs
|
(native-inputs
|
||||||
(append
|
(append
|
||||||
(list clisp
|
(list clisp
|
||||||
;; See: <https://bugzilla.redhat.com/show_bug.cgi?id=2231865>.
|
python-cython
|
||||||
python-cython-0
|
|
||||||
python-setuptools ;remove with next update
|
|
||||||
doxygen
|
doxygen
|
||||||
gettext-minimal)
|
gettext-minimal)
|
||||||
;; icedtea doesn't build reliably on all architectures.
|
;; icedtea doesn't build reliably on all architectures.
|
||||||
|
|||||||
@@ -37,6 +37,7 @@
|
|||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix utils))
|
#:use-module (guix utils))
|
||||||
|
|
||||||
(define-public acl
|
(define-public acl
|
||||||
|
|||||||
+110
-168
@@ -1,5 +1,5 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012-2026 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012-2025 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
||||||
;;; Copyright © 2014, 2015, 2016, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2016, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2014, 2015-2018, 2020-2023 Eric Bavier <bavier@posteo.net>
|
;;; Copyright © 2014, 2015-2018, 2020-2023 Eric Bavier <bavier@posteo.net>
|
||||||
@@ -109,6 +109,7 @@
|
|||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system ruby)
|
#:use-module (guix build-system ruby)
|
||||||
@@ -743,7 +744,7 @@ manager.")
|
|||||||
(define-public swineherd
|
(define-public swineherd
|
||||||
(package
|
(package
|
||||||
(name "swineherd")
|
(name "swineherd")
|
||||||
(version "0.0.5")
|
(version "0.0.4")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -752,7 +753,7 @@ manager.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1w3fvkdmqvbzqfx3xindm8qgam54wja46isgwasaiqmmhnla7p52"))))
|
"0iij1pl0y410k1dk1ifa56dxmjb1blv0y3k5rxy794gwg6w6c480"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags '("--localstatedir=/var")
|
'(#:configure-flags '("--localstatedir=/var")
|
||||||
@@ -766,7 +767,7 @@ manager.")
|
|||||||
guile-netlink
|
guile-netlink
|
||||||
guile-3.0
|
guile-3.0
|
||||||
guix
|
guix
|
||||||
shepherd-1.0))
|
shepherd-0.10))
|
||||||
(home-page "https://github.com/BIMSBbioinfo/swineherd")
|
(home-page "https://github.com/BIMSBbioinfo/swineherd")
|
||||||
(synopsis "System container manager")
|
(synopsis "System container manager")
|
||||||
(description
|
(description
|
||||||
@@ -1084,7 +1085,7 @@ console.")
|
|||||||
(define-public btop
|
(define-public btop
|
||||||
(package
|
(package
|
||||||
(name "btop")
|
(name "btop")
|
||||||
(version "1.4.7")
|
(version "1.4.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -1093,7 +1094,7 @@ console.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0d3cr5l6gpcwhxgnrizny5b5kg6fys2hy9a58bc68w4n2hc040fy"))))
|
"1nj58dbv3c0rj8fngldkyrmdmacmjnbg8ch1c07ik97kqnnzd3l7"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs (list lowdown))
|
(native-inputs (list lowdown))
|
||||||
(arguments
|
(arguments
|
||||||
@@ -1157,7 +1158,7 @@ on memory usage on GNU/Linux systems.")
|
|||||||
(define-public htop
|
(define-public htop
|
||||||
(package
|
(package
|
||||||
(name "htop")
|
(name "htop")
|
||||||
(version "3.5.1")
|
(version "3.4.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1165,7 +1166,7 @@ on memory usage on GNU/Linux systems.")
|
|||||||
(url "https://github.com/htop-dev/htop")
|
(url "https://github.com/htop-dev/htop")
|
||||||
(commit version)))
|
(commit version)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "187gyj081n6qsidll5wdri3jkr4m2i4m461z3xv03y342f5yj3lv"))
|
(base32 "058y4a4mvx9m179dyr4wi8mlm6i4ybywshadaj4cvfn9fv0r0nkx"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
@@ -1308,8 +1309,7 @@ re-executing them as necessary.")
|
|||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))
|
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))))
|
||||||
(patches (search-patches "inetutils-drop-test.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -1971,7 +1971,7 @@ maintenance releases.")
|
|||||||
(define-public dhcpcd
|
(define-public dhcpcd
|
||||||
(package
|
(package
|
||||||
(name "dhcpcd")
|
(name "dhcpcd")
|
||||||
(version "10.3.2")
|
(version "10.3.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1980,7 +1980,7 @@ maintenance releases.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1z5rpi0n2vwhkh3c4d0dxwp38fl18br58jpy7kzh97gzg3gpk5dl"))))
|
(base32 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
|
||||||
(inputs (list bash-minimal coreutils-minimal eudev sed))
|
(inputs (list bash-minimal coreutils-minimal eudev sed))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
@@ -3405,7 +3405,7 @@ provides the following commands:
|
|||||||
;; variable in the tests/import/cpan.scm test.
|
;; variable in the tests/import/cpan.scm test.
|
||||||
(list (search-path-specification
|
(list (search-path-specification
|
||||||
(variable "GUIX_PYTHONPATH")
|
(variable "GUIX_PYTHONPATH")
|
||||||
(files (list "lib/python3.12/site-packages")))))
|
(files (list "lib/python3.11/site-packages")))))
|
||||||
(home-page "https://www.ansible.com/")
|
(home-page "https://www.ansible.com/")
|
||||||
(synopsis "Radically simple IT automation")
|
(synopsis "Radically simple IT automation")
|
||||||
(description "Ansible aims to be a radically simple IT automation system.
|
(description "Ansible aims to be a radically simple IT automation system.
|
||||||
@@ -3423,7 +3423,7 @@ modules and plugins that extend Ansible.")
|
|||||||
(define-public debops
|
(define-public debops
|
||||||
(package
|
(package
|
||||||
(name "debops")
|
(name "debops")
|
||||||
(version "3.3.0")
|
(version "3.2.5")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -3432,7 +3432,7 @@ modules and plugins that extend Ansible.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0z6wck5kax5h2bjv1vw8pbd7fdcdhx87bj9fakh3h0rar9d2qksj"))
|
(base32 "15wfhha2b315i15l40j3sylyvs3mdrfw5awzq4cix51l5jppx8z5"))
|
||||||
(patches
|
(patches
|
||||||
(search-patches "debops-setup-py-avoid-git.patch"))))
|
(search-patches "debops-setup-py-avoid-git.patch"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
@@ -3441,7 +3441,7 @@ modules and plugins that extend Ansible.")
|
|||||||
(list ansible
|
(list ansible
|
||||||
bash-minimal
|
bash-minimal
|
||||||
encfs
|
encfs
|
||||||
fuse
|
fuse-2
|
||||||
util-linux ;; for umount
|
util-linux ;; for umount
|
||||||
findutils
|
findutils
|
||||||
git
|
git
|
||||||
@@ -3454,8 +3454,8 @@ modules and plugins that extend Ansible.")
|
|||||||
python-future
|
python-future
|
||||||
python-gitpython
|
python-gitpython
|
||||||
python-jinja2
|
python-jinja2
|
||||||
python-pyxdg
|
|
||||||
python-pyyaml
|
python-pyyaml
|
||||||
|
python-pyxdg
|
||||||
python-toml))
|
python-toml))
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -3470,7 +3470,7 @@ modules and plugins that extend Ansible.")
|
|||||||
`("PATH" ":" prefix
|
`("PATH" ":" prefix
|
||||||
,(map dirname
|
,(map dirname
|
||||||
(map (cut search-input-file inputs <>)
|
(map (cut search-input-file inputs <>)
|
||||||
(list ;; "bin/ansible" ;see above
|
(list "bin/ansible"
|
||||||
"bin/gpg"
|
"bin/gpg"
|
||||||
"bin/git"
|
"bin/git"
|
||||||
"bin/git-crypt"
|
"bin/git-crypt"
|
||||||
@@ -3750,68 +3750,59 @@ summarizes network bandwidth by process and remote host.")
|
|||||||
(define-public munge
|
(define-public munge
|
||||||
(package
|
(package
|
||||||
(name "munge")
|
(name "munge")
|
||||||
(version "0.5.18")
|
(version "0.5.14")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (string-append "https://github.com/dun/munge/releases/"
|
||||||
(url "https://github.com/dun/munge")
|
"download/munge-" version "/munge-"
|
||||||
(commit (string-append "munge-" version))))
|
version ".tar.xz"))
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1b7gm680dlvmgvj9vxy7n0cqmnv1rl9n4563vasxdxx54f78j30s"))
|
"0h06sghb4rqvv1ywyd6mzsmbcgh712v6ygrff0gzm440y4ca41k6"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Don't insist on write access to /var.
|
'(begin
|
||||||
#~(substitute* "src/etc/Makefile.am"
|
;; Don't insist on write access to /var.
|
||||||
(("\\$\\(MKDIR_P\\) .*(local|run)statedir.*" all)
|
(substitute* "src/etc/Makefile.in"
|
||||||
(string-append ": " all))))))
|
(("\\$\\(INSTALL\\)(.*)localstatedir" _ middle)
|
||||||
|
(string-append "-$(INSTALL)" middle "localstatedir"))
|
||||||
|
(("\\$\\(MKDIR_P\\) .*(local|run)statedir.*")
|
||||||
|
""))
|
||||||
|
#t))))
|
||||||
(inputs
|
(inputs
|
||||||
(list openssl libgcrypt))
|
(list openssl libgcrypt))
|
||||||
(native-inputs
|
|
||||||
(list autoconf
|
|
||||||
automake
|
|
||||||
libtool
|
|
||||||
procps)) ;for tests
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list #:configure-flags
|
`(#:configure-flags
|
||||||
#~(list "--localstatedir=/var"
|
(list "--localstatedir=/var"
|
||||||
"--disable-static"
|
(string-append "--with-pkgconfigdir="
|
||||||
#$@(if (%current-target-system)
|
(assoc-ref %outputs "out") "/lib/pkgconfig")
|
||||||
;; Assume yes on pipes when cross compiling.
|
(string-append "--with-libgcrypt-prefix="
|
||||||
`("ac_cv_file__dev_spx=yes"
|
(assoc-ref %build-inputs "libgcrypt"))
|
||||||
"x_ac_cv_check_fifo_recvfd=yes")
|
,@(if (%current-target-system)
|
||||||
'())
|
;; Assume yes on pipes when cross compiling.
|
||||||
|
`("ac_cv_file__dev_spx=yes"
|
||||||
;; The '.pc' file is not installed when omitting this flag.
|
"x_ac_cv_check_fifo_recvfd=yes")
|
||||||
(string-append "--with-pkgconfigdir="
|
'()))
|
||||||
#$output "/lib/pkgconfig"))
|
#:phases
|
||||||
#:phases
|
(modify-phases %standard-phases
|
||||||
#~(modify-phases %standard-phases
|
;; XXX Many test series fail. Some might be fixable, others do no-no
|
||||||
(add-before 'bootstrap 'pre-bootstrap
|
;; things like invoking ‘sudo’.
|
||||||
(lambda _
|
(add-after 'unpack 'skip-failing-tests
|
||||||
(for-each patch-shebang (find-files "build-aux"))))
|
(lambda _
|
||||||
(add-after 'unpack 'skip-failing-tests
|
(for-each (lambda (test)
|
||||||
(lambda _
|
(substitute* "t/Makefile.in"
|
||||||
;; Pass '--force' to 'munged'; without it, it fails with "Socket
|
(((string-append test "\\.t ")) "")))
|
||||||
;; is inaccessible" due to the build directory not being
|
(list "0100-munged-lock"
|
||||||
;; world-readable.
|
"0010-basic"
|
||||||
(substitute* "tests/sharness.d/03-munged.sh"
|
"0011-munged-cmdline"
|
||||||
(("--group-update-time=-1" all)
|
"0012-munge-cmdline"
|
||||||
(string-append all " --force")))
|
"0013-unmunge-cmdline"
|
||||||
|
"0101-munged-security-socket"
|
||||||
;; The tests below invoke 'sudo' or have special expectations
|
"0102-munged-security-keyfile"
|
||||||
;; about network interfaces.
|
"0103-munged-security-logfile"
|
||||||
(for-each (lambda (test)
|
"0110-munged-origin-addr"))
|
||||||
(substitute* "tests/Makefile.am"
|
#t)))))
|
||||||
(((string-append test "\\.t "))
|
|
||||||
"")))
|
|
||||||
(list "0100-munged-lock"
|
|
||||||
"0101-munged-security-socket"
|
|
||||||
"0102-munged-security-keyfile"
|
|
||||||
"0103-munged-security-logfile"
|
|
||||||
"0110-munged-origin-addr")))))))
|
|
||||||
(home-page "https://dun.github.io/munge/")
|
(home-page "https://dun.github.io/munge/")
|
||||||
(synopsis "Cluster computing authentication service")
|
(synopsis "Cluster computing authentication service")
|
||||||
(description
|
(description
|
||||||
@@ -3926,18 +3917,6 @@ rules is done with the @code{auditctl} utility.")
|
|||||||
(wrap-program (string-append ndiff "/bin/ndiff")
|
(wrap-program (string-append ndiff "/bin/ndiff")
|
||||||
`("GUIX_PYTHONPATH" prefix
|
`("GUIX_PYTHONPATH" prefix
|
||||||
(,(python-path ndiff)))))))
|
(,(python-path ndiff)))))))
|
||||||
(add-before 'check 'fix-tests-for-python-3.12
|
|
||||||
(lambda _
|
|
||||||
(substitute* "ndiff/ndifftest.py"
|
|
||||||
(("import imp")
|
|
||||||
"import importlib.util")
|
|
||||||
(("ndiff = imp\\.load_source\\(\"ndiff\", \"ndiff\\.py\"\\)")
|
|
||||||
(string-join
|
|
||||||
'("spec = \
|
|
||||||
importlib.util.spec_from_file_location(\"ndiff\", \"ndiff.py\")"
|
|
||||||
"ndiff = importlib.util.module_from_spec(spec)"
|
|
||||||
"spec.loader.exec_module(ndiff)")
|
|
||||||
"\n")))))
|
|
||||||
;; These are the tests that do not require network access.
|
;; These are the tests that do not require network access.
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
(lambda* (#:key tests? #:allow-other-keys)
|
||||||
@@ -4067,59 +4046,51 @@ plug-in architecture to allow monitoring other system metrics.")
|
|||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public thefuck
|
(define-public thefuck
|
||||||
;; Latest release, 3.32, is not compatible with Python 3.12.
|
(package
|
||||||
(let ((revision "0")
|
(name "thefuck")
|
||||||
(commit "c7e7e1d884d3bb241ea6448f72a989434c2a35ec"))
|
(version "3.32")
|
||||||
(package
|
(source
|
||||||
(name "thefuck")
|
(origin
|
||||||
(version (git-version "3.32" revision commit))
|
(method git-fetch)
|
||||||
(source
|
(uri (git-reference
|
||||||
(origin
|
(url "https://github.com/nvbn/thefuck")
|
||||||
(method git-fetch)
|
(commit version)))
|
||||||
(uri (git-reference
|
(file-name (git-file-name name version))
|
||||||
(url "https://github.com/nvbn/thefuck")
|
(sha256
|
||||||
(commit commit)))
|
(base32 "18ipa1bm6q1n5drbi8i65726hhqhl1g41390lfqrc11hkbvv443d"))
|
||||||
(file-name (git-file-name name version))
|
(patches (search-patches "thefuck-test-environ.patch"
|
||||||
(sha256
|
"thefuck-remove-broken-tests.patch"))))
|
||||||
(base32 "1l3i2cpdf3vznpbzqw7b18l23xikqs7andx6yzqvm5415snaqg06"))
|
(build-system pyproject-build-system)
|
||||||
(patches (search-patches "thefuck-test-environ.patch"))))
|
(arguments
|
||||||
(build-system pyproject-build-system)
|
(list
|
||||||
(arguments
|
#:phases
|
||||||
(list
|
#~(modify-phases %standard-phases
|
||||||
#:test-flags
|
(add-before 'check 'pre-check
|
||||||
#~(list
|
(lambda _
|
||||||
"--deselect=tests/test_utils.py::TestGetValidHistoryWithoutCurrent"
|
;; Tests look for installed package
|
||||||
"--ignore=tests/functional/conftest.py")
|
;; Some tests need write access to $HOME.
|
||||||
#:phases
|
(setenv "HOME" "/tmp")
|
||||||
#~(modify-phases %standard-phases
|
;; Even with that, this function tries to mkdir /.config.
|
||||||
(add-before 'check 'pre-check
|
(substitute* "tests/test_utils.py"
|
||||||
(lambda _
|
(("settings\\.init\\(\\)") "")))))))
|
||||||
;; ModuleNotFoundError: No module named 'pytest_docker_pexpect'
|
(native-inputs
|
||||||
(delete-file "tests/functional/conftest.py")
|
(list go
|
||||||
;; Tests look for installed package
|
python-mock
|
||||||
;; Some tests need write access to $HOME.
|
python-pytest-8
|
||||||
(setenv "HOME" "/tmp")
|
python-pytest-mock
|
||||||
;; Even with that, this function tries to mkdir /.config.
|
python-setuptools
|
||||||
(substitute* "tests/test_utils.py"
|
python-wheel))
|
||||||
(("settings\\.init\\(\\)") "")))))))
|
(inputs
|
||||||
(native-inputs
|
(list python-colorama
|
||||||
(list go
|
python-decorator
|
||||||
python-mock
|
python-psutil
|
||||||
;; Uses test markers that are incompatible with pytest 9.
|
python-pyte))
|
||||||
python-pytest-8
|
(home-page "https://github.com/nvbn/thefuck")
|
||||||
python-pytest-mock
|
(synopsis "Correct mistyped console command")
|
||||||
python-setuptools))
|
(description
|
||||||
(inputs
|
"The Fuck tries to match a rule for a previous, mistyped command, creates
|
||||||
(list python-colorama
|
|
||||||
python-decorator
|
|
||||||
python-psutil
|
|
||||||
python-pyte))
|
|
||||||
(home-page "https://github.com/nvbn/thefuck")
|
|
||||||
(synopsis "Correct mistyped console command")
|
|
||||||
(description
|
|
||||||
"The Fuck tries to match a rule for a previous, mistyped command, creates
|
|
||||||
a new command using the matched rule, and runs it.")
|
a new command using the matched rule, and runs it.")
|
||||||
(license license:x11))))
|
(license license:x11)))
|
||||||
|
|
||||||
(define-public di
|
(define-public di
|
||||||
(package
|
(package
|
||||||
@@ -4730,7 +4701,7 @@ information tool.")
|
|||||||
(define-public fastfetch-minimal
|
(define-public fastfetch-minimal
|
||||||
(package
|
(package
|
||||||
(name "fastfetch-minimal")
|
(name "fastfetch-minimal")
|
||||||
(version "2.63.1")
|
(version "2.60.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -4739,7 +4710,7 @@ information tool.")
|
|||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "13a5maf8jxyga5bga96s40binqp2i54pjlipsnqgfj85q01yzkg9"))
|
(base32 "089577qgxd63zqzd00fz381bfpmj6pwlmy2zfan9r6gbm1jvj4i8"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet '(begin
|
(snippet '(begin
|
||||||
(delete-file-recursively "src/3rdparty")
|
(delete-file-recursively "src/3rdparty")
|
||||||
@@ -7071,7 +7042,7 @@ network, which causes enabled computers to power on.")
|
|||||||
(define-public witr
|
(define-public witr
|
||||||
(package
|
(package
|
||||||
(name "witr")
|
(name "witr")
|
||||||
(version "0.3.1")
|
(version "0.1.7")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -7080,7 +7051,7 @@ network, which causes enabled computers to power on.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "03v9n4mdvqm0knqjl4s64321i5clqpmlrlkkdb87glzb9p28sg00"))))
|
(base32 "18xx01lxd5j019gy9jmpms3awv4snlr028w01bfkyfid6hlwxbq2"))))
|
||||||
(build-system go-build-system)
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -7198,35 +7169,6 @@ stored in an SQL database.")
|
|||||||
(connects via USB OTG).")
|
(connects via USB OTG).")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public yoctofetch
|
|
||||||
(package
|
|
||||||
(name "yoctofetch")
|
|
||||||
(version "2.0.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://codeberg.org/Phosphenius/yoctofetch.git")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0smkaydv74p2231gafibvqbwsy469w56hya8gz8wq0gw7m2l7zh3"))))
|
|
||||||
; Support for other platforms not available per upstream:
|
|
||||||
; https://codeberg.org/Phosphenius/yoctofetch#supported-platforms
|
|
||||||
(supported-systems '("x86_64-linux" "aarch64-linux"))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f)) ; No tests available.
|
|
||||||
(home-page "https://codeberg.org/Phosphenius/yoctofetch")
|
|
||||||
(synopsis "Fast and low footprint system fetch tool for the Linux UAPI")
|
|
||||||
(description
|
|
||||||
"This package provides a system fetch tool, similar to
|
|
||||||
@command{neofetch}, @command{fastfetch}, etc. It is lightweight and
|
|
||||||
has a focus on performance. It can be used as a greeter by starting
|
|
||||||
it from @file{~/.bashrc} for example.")
|
|
||||||
(license license:agpl3+)))
|
|
||||||
|
|
||||||
(define-public zzz
|
(define-public zzz
|
||||||
(package
|
(package
|
||||||
(name "zzz")
|
(name "zzz")
|
||||||
|
|||||||
+160
-12
@@ -1,4 +1,9 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
|
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
|
;;; Copyright © 2019, 2021 Marius Bakke <marius@gnu.org>
|
||||||
|
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
|
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
@@ -17,20 +22,163 @@
|
|||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages adns)
|
(define-module (gnu packages adns)
|
||||||
#:use-module (gnu packages dns)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix deprecation))
|
#:use-module (gnu packages m4)
|
||||||
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix utils))
|
||||||
|
|
||||||
(define-deprecated/public-alias adns
|
(define-public adns
|
||||||
(@ (gnu packages dns) adns))
|
(package
|
||||||
|
(name "adns")
|
||||||
|
(version "1.6.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "git://git.chiark.greenend.org.uk/~ianmdlvl/adns.git")
|
||||||
|
(commit (string-append "adns-" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0ln3l5j7wb1xazrzl76p9xar52p6l2k1cwy7jazxw1acl71k9h5n"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
;; INFO: Tests expect real name resolution to work.
|
||||||
|
#:tests? #f
|
||||||
|
#:configure-flags
|
||||||
|
#~(list
|
||||||
|
;; Make sure the programs under bin/ find libadns.so.
|
||||||
|
(string-append "LDFLAGS=-Wl,-rpath -Wl,"
|
||||||
|
#$output:out
|
||||||
|
"/lib"))))
|
||||||
|
(native-inputs
|
||||||
|
(list m4))
|
||||||
|
(home-page "https://www.gnu.org/software/adns/")
|
||||||
|
(synopsis "Asynchronous DNS client library and utilities")
|
||||||
|
(description
|
||||||
|
"GNU adns is a C library that provides easy-to-use @acronym{DNS, Domain
|
||||||
|
Name System} resolution functionality. The library is asynchronous, allowing
|
||||||
|
several concurrent calls. The package also includes several command-line
|
||||||
|
utilities for use in scripts.")
|
||||||
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-deprecated/public-alias c-ares
|
(define-public c-ares
|
||||||
(@ (gnu packages dns) c-ares))
|
(package
|
||||||
|
(name "c-ares")
|
||||||
|
(version "1.34.4")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/c-ares/c-ares/releases/download/v"
|
||||||
|
version "/" name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0br2msk3bpl5myhjp9vr5j2scpspvbg2fpnz69dcrr4ycpnxnf7s"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-before 'check 'filter-live-tests
|
||||||
|
(lambda _
|
||||||
|
;; Filter tests that require internet access.
|
||||||
|
(setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))
|
||||||
|
#$@(if (system-hurd?)
|
||||||
|
#~((add-after 'unpack 'skip-tests
|
||||||
|
(lambda _
|
||||||
|
(substitute* "test/ares-test-main.cc"
|
||||||
|
(("(^| )main *\\(.*" all)
|
||||||
|
(string-append all " exit (77);\n")))))
|
||||||
|
(add-after 'filter-live-tests 'filter-hurd-tests
|
||||||
|
(lambda _
|
||||||
|
(setenv "GTEST_FILTER"
|
||||||
|
(string-append
|
||||||
|
(getenv "GTEST_FILTER")
|
||||||
|
":.*Basic/2"
|
||||||
|
":.*CancelImmediate/2"
|
||||||
|
":.*CancelImmediateGetHostByAddr/2"
|
||||||
|
":.*CancelLater/1"
|
||||||
|
":.*FamilyUnspecified/2"
|
||||||
|
":.*FamilyV6/2"
|
||||||
|
":.*GetAddrInfoParallelLookups/1"
|
||||||
|
":.*GetHostByAddrDestroy/2"
|
||||||
|
":.*GetHostByNameCNAMENoData/2"
|
||||||
|
":.*GetHostByNameDestroyAbsolute/2"
|
||||||
|
":.*GetHostByNameDestroyRelative/2"
|
||||||
|
":.*GetHostByNameParallelLookups/1"
|
||||||
|
":.*HostAlias/2"
|
||||||
|
":.*HostAliasMissing/2"
|
||||||
|
":.*HostAliasMissingFile/2"
|
||||||
|
":.*NotImplResponse/2"
|
||||||
|
":.*RefusedResponse/2"
|
||||||
|
":.*Resend/1"
|
||||||
|
":.*RetryWithoutEDNS/2"
|
||||||
|
":.*SearchDomains/2"
|
||||||
|
":.*SearchDomainsBare/2"
|
||||||
|
":.*SearchDomainsServFailOnAAAA/2"
|
||||||
|
":.*SearchDomainsWithResentReply/1"
|
||||||
|
":.*SearchHighNdots/2"
|
||||||
|
":.*SearchNoDataThenFail/2"
|
||||||
|
":.*SearchNoDataThenNoDataBare/2"
|
||||||
|
":.*SearchNoDataThenSuccess/2"
|
||||||
|
":.*ServFailResponse/2"
|
||||||
|
":.*SimpleQuery/2"
|
||||||
|
":.*SockCallback/2"
|
||||||
|
":.*SockConfigureCallback/2"
|
||||||
|
":.*SortListV4/2"
|
||||||
|
":.*SortListV6/2"
|
||||||
|
":.*ThirdServer/2"
|
||||||
|
":.*TruncationRetry/1"
|
||||||
|
":.*UnspecifiedFamilyCname6A4/2"
|
||||||
|
":.*UnspecifiedFamilyV4/2"
|
||||||
|
":.*UnspecifiedFamilyV6/2")))))
|
||||||
|
#~()))))
|
||||||
|
(native-inputs
|
||||||
|
(list pkg-config))
|
||||||
|
(home-page "https://c-ares.haxx.se/")
|
||||||
|
(synopsis "C library for asynchronous DNS requests")
|
||||||
|
(description
|
||||||
|
"C-ares is a C library that performs DNS requests and name resolution
|
||||||
|
asynchronously. It is intended for applications which need to perform DNS
|
||||||
|
queries without blocking, or need to perform multiple DNS queries in parallel.
|
||||||
|
The primary examples of such applications are servers which communicate with
|
||||||
|
multiple clients and programs with graphical user interfaces.")
|
||||||
|
(license (license:x11-style "https://c-ares.haxx.se/license.html"))))
|
||||||
|
|
||||||
(define-deprecated/public-alias c-ares-for-node-lts
|
(define-public c-ares-for-node-lts
|
||||||
(@ (gnu packages dns) c-ares-for-node-lts))
|
(hidden-package c-ares))
|
||||||
|
|
||||||
(define-deprecated/public-alias c-ares-for-node-bootstrap
|
(define-public c-ares-for-node-bootstrap
|
||||||
(@ (gnu packages dns) c-ares-for-node-bootstrap))
|
(hidden-package
|
||||||
|
(package
|
||||||
|
(inherit c-ares)
|
||||||
|
(version "1.18.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://c-ares.haxx.se/download/c-ares-" version
|
||||||
|
".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))))))
|
||||||
|
|
||||||
(define-deprecated/public-alias c-ares/cmake
|
;; gRPC requires a c-ares built with CMake in order to get the .cmake modules.
|
||||||
(@ (gnu packages dns) c-ares/cmake))
|
;; We can not build c-ares itself with CMake because that would introduce a
|
||||||
|
;; circular dependency through nghttp2.
|
||||||
|
;; XXX: It would be nice if we could extract the modules somehow and make them
|
||||||
|
;; work with the "normal" c-ares package instead of building a whole new library.
|
||||||
|
(define-public c-ares/cmake
|
||||||
|
(hidden-package
|
||||||
|
(package
|
||||||
|
(inherit c-ares)
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
`(;; XXX: Tests require name resolution (the normal variant runs no tests).
|
||||||
|
#:tests? #f)))))
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ Features:
|
|||||||
(define-public python-zbarlight
|
(define-public python-zbarlight
|
||||||
(package
|
(package
|
||||||
(name "python-zbarlight")
|
(name "python-zbarlight")
|
||||||
(version "4.0")
|
(version "3.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -126,7 +126,7 @@ Features:
|
|||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1q1nfc7g7bl9y63fwvnq1fcgqk79inc2hhw3ilvyw0nk0g74v8cm"))))
|
(base32 "1radfpfhfhkx3xnz01bqr5l9pl2zv70zis6l2kw1gwqbfw65r6w6"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(propagated-inputs (list python-pillow))
|
(propagated-inputs (list python-pillow))
|
||||||
(inputs (list zbar))
|
(inputs (list zbar))
|
||||||
@@ -370,7 +370,7 @@ This package includes the following programs:
|
|||||||
libjpeg-turbo
|
libjpeg-turbo
|
||||||
perl
|
perl
|
||||||
python
|
python
|
||||||
v4l-utils))
|
v4l-utils-minimal))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
;; These are in 'requires' field of .pc files.
|
;; These are in 'requires' field of .pc files.
|
||||||
(list glib gtk+))
|
(list glib gtk+))
|
||||||
|
|||||||
@@ -88,6 +88,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module ((guix build-system python) #:select (pypi-uri))
|
||||||
#:use-module (guix build-system r)
|
#:use-module (guix build-system r)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
@@ -457,7 +458,7 @@ precision.")
|
|||||||
(inputs
|
(inputs
|
||||||
;; TODO: Unbundle "libmicropython.a".
|
;; TODO: Unbundle "libmicropython.a".
|
||||||
(list ao
|
(list ao
|
||||||
fltk
|
fltk-1.3
|
||||||
glpk
|
glpk
|
||||||
gmp
|
gmp
|
||||||
gsl
|
gsl
|
||||||
|
|||||||
+36
-34
@@ -41,6 +41,7 @@
|
|||||||
#:use-module (guix build-system emacs)
|
#:use-module (guix build-system emacs)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
@@ -764,7 +765,7 @@ file system.")
|
|||||||
(sha256
|
(sha256
|
||||||
(base32 "0r3xwk8xsfxvmxyw3d57sy2i9by24g0l1jl40735jiac9mypcg7n"))))
|
(base32 "0r3xwk8xsfxvmxyw3d57sy2i9by24g0l1jl40735jiac9mypcg7n"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(propagated-inputs (list python-requests python-argcomplete python-urllib3
|
(inputs (list python-requests python-argcomplete python-urllib3
|
||||||
python-looseversion gnupg))
|
python-looseversion gnupg))
|
||||||
(native-inputs (list python-setuptools python-wheel python-requests-cache
|
(native-inputs (list python-setuptools python-wheel python-requests-cache
|
||||||
python-defusedxml))
|
python-defusedxml))
|
||||||
@@ -772,7 +773,8 @@ file system.")
|
|||||||
(list $SSL_CERT_FILE))
|
(list $SSL_CERT_FILE))
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:test-backend #~'unittest
|
#:test-flags
|
||||||
|
#~(list "-k" "test_*")
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'patch-tests
|
(add-after 'unpack 'patch-tests
|
||||||
@@ -791,7 +793,11 @@ file system.")
|
|||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "sdkmanager.py"
|
(substitute* "sdkmanager.py"
|
||||||
(("gpgv")
|
(("gpgv")
|
||||||
(string-append #$(this-package-input "gnupg") "/bin/gpgv"))))))))
|
(string-append #$(this-package-input "gnupg") "/bin/gpgv")))))
|
||||||
|
(replace 'check
|
||||||
|
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||||
|
(when tests?
|
||||||
|
(apply invoke "python" "-m" "unittest" test-flags)))))))
|
||||||
(home-page "https://gitlab.com/fdroid/sdkmanager")
|
(home-page "https://gitlab.com/fdroid/sdkmanager")
|
||||||
(synopsis "Replacement for Android sdkmanager written in Python")
|
(synopsis "Replacement for Android sdkmanager written in Python")
|
||||||
(description
|
(description
|
||||||
@@ -1176,16 +1182,14 @@ for communicating with Xiaomi smart appliances over miIO and MIoT protocols.")
|
|||||||
(define-public fdroidserver
|
(define-public fdroidserver
|
||||||
(package
|
(package
|
||||||
(name "fdroidserver")
|
(name "fdroidserver")
|
||||||
(version "2.4.3")
|
(version "2.4.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (pypi-uri "fdroidserver" version))
|
||||||
(url "https://gitlab.com/fdroid/fdroidserver")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1745fqxr2qfrls4wr6x9w1262b9pxmw9yvzd9b71ya2qmj74q17n"))))
|
(base32
|
||||||
|
"06xybginrwi5c7bw000wz5s5hzi0aqrxskzwh8qc6wv463w2djax"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -1196,17 +1200,22 @@ for communicating with Xiaomi smart appliances over miIO and MIoT protocols.")
|
|||||||
(lambda _
|
(lambda _
|
||||||
(setenv "HOME" "/tmp"))))))
|
(setenv "HOME" "/tmp"))))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list python-platformdirs
|
(list python-androguard
|
||||||
python-androguard
|
|
||||||
python-apache-libcloud
|
python-apache-libcloud
|
||||||
|
python-argcomplete
|
||||||
python-asn1crypto
|
python-asn1crypto
|
||||||
python-clint
|
python-clint
|
||||||
python-defusedxml
|
python-defusedxml
|
||||||
|
python-docker
|
||||||
python-gitpython
|
python-gitpython
|
||||||
|
python-mwclient
|
||||||
python-oscrypto
|
python-oscrypto
|
||||||
python-paramiko
|
python-paramiko
|
||||||
python-pillow
|
python-pillow
|
||||||
|
python-platformdirs
|
||||||
python-puremagic
|
python-puremagic
|
||||||
|
python-pyasn1
|
||||||
|
python-pyasn1-modules
|
||||||
python-pyyaml
|
python-pyyaml
|
||||||
python-qrcode
|
python-qrcode
|
||||||
python-requests
|
python-requests
|
||||||
@@ -1229,35 +1238,28 @@ main repository.")
|
|||||||
(define-public fdroidcl
|
(define-public fdroidcl
|
||||||
(package
|
(package
|
||||||
(name "fdroidcl")
|
(name "fdroidcl")
|
||||||
(version "0.8.1")
|
(version "0.7.0")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method git-fetch)
|
||||||
(method git-fetch)
|
(uri (git-reference
|
||||||
(uri (git-reference
|
(url "https://github.com/mvdan/fdroidcl")
|
||||||
(url "https://github.com/Hoverth/fdroidcl")
|
(commit (string-append "v" version))))
|
||||||
(commit (string-append "v" version))))
|
(file-name (git-file-name name version))
|
||||||
(file-name (git-file-name name version))
|
(sha256
|
||||||
(sha256
|
(base32
|
||||||
(base32 "1bflahcsjarv4v6r61knl5gc5iydh1lwvqjgffhxr4pis4qfsqsa"))
|
"1s3fszlyyab9gbdrg52zcbafsb1mgb770skg7b3gj7f3pzfnra5n"))))
|
||||||
;; XXX: Reported upstream.
|
|
||||||
;; See: <https://github.com/Hoverth/fdroidcl/pull/92>.
|
|
||||||
(patches (search-patches "fdroidcl-fix-tests.patch"))))
|
|
||||||
(build-system go-build-system)
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
`(#:import-path "mvdan.cc/fdroidcl"
|
||||||
#:install-source? #f
|
#:tests? #f ;requires internet access
|
||||||
#:import-path "mvdan.cc/fdroidcl"))
|
#:install-source? #f))
|
||||||
(inputs
|
(inputs (list go-github-com-kr-pretty go-github-com-schollz-progressbar-v3))
|
||||||
(list go-github-com-kr-pretty
|
|
||||||
go-github-com-pelletier-go-toml-v2
|
|
||||||
go-github-com-rogpeppe-go-internal
|
|
||||||
go-github-com-schollz-progressbar-v3))
|
|
||||||
(home-page "https://github.com/Hoverth/fdroidcl")
|
|
||||||
(synopsis "F-Droid desktop client")
|
(synopsis "F-Droid desktop client")
|
||||||
(description
|
(description
|
||||||
"While the Android client integrates with the system with regular update
|
"While the Android client integrates with the system with regular update
|
||||||
checks and notifications, this is a simple command line client that talks to
|
checks and notifications, this is a simple command line client that talks to
|
||||||
connected devices via ADB.")
|
connected devices via ADB.")
|
||||||
|
(home-page "https://github.com/mvdan/fdroidcl")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public emacs-fdroid
|
(define-public emacs-fdroid
|
||||||
|
|||||||
@@ -238,12 +238,12 @@ contains the graphical user interface for synfig.")
|
|||||||
(when tests?
|
(when tests?
|
||||||
(invoke "./tests")))))))
|
(invoke "./tests")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(cons* gettext-minimal
|
(list gettext-minimal
|
||||||
`(,glib "bin")
|
`(,glib "bin")
|
||||||
perl
|
nasm
|
||||||
pkg-config
|
perl
|
||||||
python-wrapper
|
pkg-config
|
||||||
(maybe-nasm)))
|
python-wrapper))
|
||||||
(inputs
|
(inputs
|
||||||
(list cairo
|
(list cairo
|
||||||
curl
|
curl
|
||||||
|
|||||||
@@ -33,8 +33,9 @@
|
|||||||
;; The URI does not appear to be easily guessable. For
|
;; The URI does not appear to be easily guessable. For
|
||||||
;; example, you cannot download version "9100g" simply
|
;; example, you cannot download version "9100g" simply
|
||||||
;; by replacing "9100h" in the URI.
|
;; by replacing "9100h" in the URI.
|
||||||
(uri (string-append "https://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
|
(uri (list (string-append "https://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
|
||||||
"distfiles/31/anthy-9100h.tar.gz"))
|
"distfiles/31/anthy-9100h.tar.gz")
|
||||||
|
"https://osdn.dl.osdn.net/anthy/37536/anthy-9100h.tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0ism4zibcsa5nl77wwi12vdsfjys3waxcphn1p5s7d0qy1sz0mnj"))))
|
(base32 "0ism4zibcsa5nl77wwi12vdsfjys3waxcphn1p5s7d0qy1sz0mnj"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
|||||||
@@ -180,7 +180,7 @@ supported by Canonical since 2009.")
|
|||||||
(list libapparmor))
|
(list libapparmor))
|
||||||
;; Python module `readline' needed
|
;; Python module `readline' needed
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison flex gettext-minimal perl python python-setuptools which))
|
(list bison flex gettext-minimal perl python which))
|
||||||
(license license:gpl2))))
|
(license license:gpl2))))
|
||||||
|
|
||||||
(define-public pam-apparmor
|
(define-public pam-apparmor
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2016, 2020, 2021, 2025, 2026 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2020, 2021, 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
|
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
|
||||||
;;; Copyright © 2019, 2022, 2024 Andy Tai <atai@atai.org>
|
;;; Copyright © 2019, 2022, 2024 Andy Tai <atai@atai.org>
|
||||||
@@ -43,7 +43,6 @@
|
|||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix utils)
|
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages admin)
|
#:use-module (gnu packages admin)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
@@ -249,16 +248,6 @@ complex. It supports all currently known x86 architectural extensions, and
|
|||||||
has strong support for macros.")
|
has strong support for macros.")
|
||||||
(license license:bsd-2)))
|
(license license:bsd-2)))
|
||||||
|
|
||||||
(define* (maybe-nasm #:optional
|
|
||||||
(system (or (%current-target-system)
|
|
||||||
(%current-system))))
|
|
||||||
;; For some packages nasm is only needed when compiling to/for x86/x86_64.
|
|
||||||
(if (target-x86? system)
|
|
||||||
(list nasm)
|
|
||||||
'()))
|
|
||||||
|
|
||||||
(export maybe-nasm)
|
|
||||||
|
|
||||||
(define-public yasm
|
(define-public yasm
|
||||||
(package
|
(package
|
||||||
(name "yasm")
|
(name "yasm")
|
||||||
|
|||||||
+341
-1063
File diff suppressed because it is too large
Load Diff
+150
-365
@@ -51,7 +51,7 @@
|
|||||||
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
|
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
|
||||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||||
;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
|
;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
|
||||||
;;; Copyright © 2025, 2026 Junker <dk@junkeria.club>
|
;;; Copyright © 2025 Junker <dk@junkeria.club>
|
||||||
;;; Copyright © 2025 Sughosha <sughosha@disroot.org>
|
;;; Copyright © 2025 Sughosha <sughosha@disroot.org>
|
||||||
;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
|
;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
|
||||||
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
|
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
|
||||||
@@ -62,8 +62,6 @@
|
|||||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||||
;;; Copyright © 2026 Noé Lopez <noelopez@free.fr>
|
;;; Copyright © 2026 Noé Lopez <noelopez@free.fr>
|
||||||
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
|
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
|
||||||
;;; Copyright © 2026 Daniel Martins <email@danielfm.me>
|
|
||||||
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -128,7 +126,6 @@
|
|||||||
#:use-module (gnu packages linphone)
|
#:use-module (gnu packages linphone)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages logging)
|
|
||||||
#:use-module (gnu packages machine-learning)
|
#:use-module (gnu packages machine-learning)
|
||||||
#:use-module (gnu packages man)
|
#:use-module (gnu packages man)
|
||||||
#:use-module (gnu packages maths)
|
#:use-module (gnu packages maths)
|
||||||
@@ -137,6 +134,7 @@
|
|||||||
#:use-module (gnu packages music)
|
#:use-module (gnu packages music)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages networking)
|
#:use-module (gnu packages networking)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages onc-rpc)
|
#:use-module (gnu packages onc-rpc)
|
||||||
#:use-module (gnu packages oneapi)
|
#:use-module (gnu packages oneapi)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
@@ -145,7 +143,6 @@
|
|||||||
#:use-module (gnu packages pretty-print)
|
#:use-module (gnu packages pretty-print)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-build)
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-check)
|
|
||||||
#:use-module (gnu packages python-crypto)
|
#:use-module (gnu packages python-crypto)
|
||||||
#:use-module (gnu packages python-science)
|
#:use-module (gnu packages python-science)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
@@ -181,6 +178,7 @@
|
|||||||
#:use-module (guix build-system glib-or-gtk)
|
#:use-module (guix build-system glib-or-gtk)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
@@ -195,45 +193,6 @@
|
|||||||
#:use-module (srfi srfi-26)
|
#:use-module (srfi srfi-26)
|
||||||
#:use-module (ice-9 match))
|
#:use-module (ice-9 match))
|
||||||
|
|
||||||
(define-public adplug
|
|
||||||
(package
|
|
||||||
(name "adplug")
|
|
||||||
(version "2.4")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/adplug/adplug")
|
|
||||||
(commit (string-append "adplug-" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0l31ya42g3q7ry2m0y5djgjb9ax8ciy8jn86252vdjkjswwqgscd"))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:configure-flags
|
|
||||||
#~(list "-DBUILD_SHARED_LIBS=ON")
|
|
||||||
#:modules
|
|
||||||
'((guix build cmake-build-system)
|
|
||||||
(guix build utils)
|
|
||||||
(srfi srfi-26)) ;for cute
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'install 'install-headers
|
|
||||||
(lambda _
|
|
||||||
(for-each (cute install-file <>
|
|
||||||
(string-append #$output "/include/adplug"))
|
|
||||||
(find-files "../source/src" "\\.h$")))))))
|
|
||||||
(propagated-inputs
|
|
||||||
(list libbinio))
|
|
||||||
(home-page "https://adplug.github.io/")
|
|
||||||
(synopsis "AdLib sound player library")
|
|
||||||
(description
|
|
||||||
"AdPlug is a hardware independent AdLib sound player library, mainly
|
|
||||||
written in C++. AdPlug plays sound data, originally created for the AdLib
|
|
||||||
(OPL2/3) audio board, on top of an OPL2/3 emulator or by using the real
|
|
||||||
hardware. No OPL2/3 chips are required for playback.")
|
|
||||||
(license license:lgpl2.1+)))
|
|
||||||
|
|
||||||
(define-public opensles
|
(define-public opensles
|
||||||
(package
|
(package
|
||||||
(name "opensles")
|
(name "opensles")
|
||||||
@@ -820,8 +779,7 @@ Filter) modules follow the convention of 1V / Octave.")
|
|||||||
"https://aubio.org/pub/aubio-" version ".tar.bz2"))
|
"https://aubio.org/pub/aubio-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1npks71ljc48w6858l9bq30kaf5nph8z0v61jkfb70xb9np850nl"))
|
"1npks71ljc48w6858l9bq30kaf5nph8z0v61jkfb70xb9np850nl"))))
|
||||||
(patches (search-patches "aubio-waflib-python312-compat.patch"))))
|
|
||||||
(build-system waf-build-system)
|
(build-system waf-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -1251,7 +1209,7 @@ PulseAudio clients, featuring:
|
|||||||
(define-public ardour
|
(define-public ardour
|
||||||
(package
|
(package
|
||||||
(name "ardour")
|
(name "ardour")
|
||||||
(version "9.2")
|
(version "9.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -1268,7 +1226,7 @@ PulseAudio clients, featuring:
|
|||||||
namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }")))))
|
namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }")))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"14s6cq3x7l7b682ah9k8cdr6plfirlgm882dc2nm51lxwl91zcfd"))
|
"00bramm8dq0ihr376n7l9rg0mjzxmzw6lxvsbsdlrdsimfwsy16p"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system waf-build-system)
|
(build-system waf-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
@@ -2135,17 +2093,7 @@ envelope follower, distortion effects, tape effects and more.")
|
|||||||
(base32
|
(base32
|
||||||
"01hnx4hhbz3ap3bw15s42q4q1mw1mhdjwygq4550wvjfg6k4ga8w"))))
|
"01hnx4hhbz3ap3bw15s42q4q1mw1mhdjwygq4550wvjfg6k4ga8w"))))
|
||||||
(build-system waf-build-system)
|
(build-system waf-build-system)
|
||||||
(arguments
|
(arguments (list #:tests? #false)) ;There are no tests.
|
||||||
(list
|
|
||||||
#:tests? #false ;There are no tests.
|
|
||||||
#:phases
|
|
||||||
'(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'python3.12-compatibility
|
|
||||||
(lambda _
|
|
||||||
(substitute* "waflib/Context.py"
|
|
||||||
(("imp.new_module") "types.ModuleType")
|
|
||||||
(("import os, re, imp, sys")
|
|
||||||
"import os, re, types, sys")))))))
|
|
||||||
(inputs (list lv2))
|
(inputs (list lv2))
|
||||||
(native-inputs (list pkg-config))
|
(native-inputs (list pkg-config))
|
||||||
(home-page "https://git.drobilla.net/cgit.cgi/omins.lv2.git/")
|
(home-page "https://git.drobilla.net/cgit.cgi/omins.lv2.git/")
|
||||||
@@ -3289,27 +3237,30 @@ synchronous execution of all clients, and low latency operation.")
|
|||||||
(package
|
(package
|
||||||
(inherit jack-1)
|
(inherit jack-1)
|
||||||
(name "jack2")
|
(name "jack2")
|
||||||
;; 1.9.22 does not compile with Python 3.12, use the latest commit instead.
|
(version "1.9.21")
|
||||||
(properties '((commit . "17959465a722225a36a8b612aed26764036f258e")
|
|
||||||
(revision . "0")))
|
|
||||||
(version (git-version "1.9.22"
|
|
||||||
(assoc-ref properties 'revision)
|
|
||||||
(assoc-ref properties 'commit)))
|
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/jackaudio/jack2")
|
(url "https://github.com/jackaudio/jack2")
|
||||||
(commit (assoc-ref properties 'commit))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"18dbjq9y8mcp27j9aaqdlg4976hrisr7b88lk84ck09gmzlwqalp"))))
|
"0sbrffmdbajvrk7iqvsvrnwnpvmicvbjyq3f52r6ashdsznsz03b"))))
|
||||||
(build-system waf-build-system)
|
(build-system waf-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; no check target
|
`(#:tests? #f ; no check target
|
||||||
#:configure-flags '("--dbus" "--alsa")
|
#:configure-flags '("--dbus" "--alsa")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
;; Python 3.11 has removed the 'U' (universal newline) mode. It has
|
||||||
|
;; been the default since Python 3.3.
|
||||||
|
(add-after 'unpack 'python-compatibility
|
||||||
|
(lambda _
|
||||||
|
(substitute* '("waflib/Context.py"
|
||||||
|
"waflib/ConfigSet.py")
|
||||||
|
(("m='rU'") "m='r'")
|
||||||
|
(("read\\('rU'") "read('r'"))))
|
||||||
(add-before 'configure 'set-linkflags
|
(add-before 'configure 'set-linkflags
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp
|
;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp
|
||||||
@@ -3335,7 +3286,7 @@ synchronous execution of all clients, and low latency operation.")
|
|||||||
expat
|
expat
|
||||||
libsamplerate
|
libsamplerate
|
||||||
opus
|
opus
|
||||||
python-dbus
|
python-dbus-1.2
|
||||||
readline))
|
readline))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
@@ -3478,7 +3429,7 @@ from being able to mix multiple JACK audio streams.")
|
|||||||
(define-public pipemixer
|
(define-public pipemixer
|
||||||
(package
|
(package
|
||||||
(name "pipemixer")
|
(name "pipemixer")
|
||||||
(version "0.5.0")
|
(version "0.4.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -3487,8 +3438,19 @@ from being able to mix multiple JACK audio streams.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "104h2zdhqx5gdddnb7v7rhrflznh4v7d4g3s6vk2mxwf938zgm72"))))
|
(base32 "08ji4lg24flzi6g3yaavfq8hz3kr98q2ripk5m4qk9z172qxbbc9"))))
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'fix-pw-device
|
||||||
|
(lambda _
|
||||||
|
(substitute* "src/pw/device.c"
|
||||||
|
;; TODO: Report upstream:
|
||||||
|
;; ../source/src/pw/device.c:328:80: error: expected
|
||||||
|
;; ‘;’ before ‘{’ token
|
||||||
|
(("iter\\) \\{") "iter); {")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
@@ -3741,44 +3703,6 @@ compensation, (de)interleaving, and byte-swapping
|
|||||||
;; original developer.
|
;; original developer.
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public rtcqs
|
|
||||||
(package
|
|
||||||
(name "rtcqs")
|
|
||||||
(version "0.6.7")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://codeberg.org/rtcqs/rtcqs")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1kc3niyaq4m8di68832pgfb1b0m54q5gm68dwlzwwilgxi61ifzc"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ;no test suite
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'remove-gui
|
|
||||||
(lambda _
|
|
||||||
(substitute* "pyproject.toml"
|
|
||||||
(("\"FreeSimpleGUI\",?")
|
|
||||||
"")
|
|
||||||
(("rtcqs_gui = \"rtcqs\\.rtcqs_gui:main\"")
|
|
||||||
""))
|
|
||||||
(delete-file "src/rtcqs/rtcqs_gui.py")
|
|
||||||
(delete-file "src/rtcqs/rtcqs_qt_gui.py"))))))
|
|
||||||
(native-inputs (list python-setuptools))
|
|
||||||
(home-page "https://codeberg.org/rtcqs/rtcqs")
|
|
||||||
(synopsis "Linux audio real-time performance analyzer")
|
|
||||||
(description
|
|
||||||
"rtcqs analyzes a Linux system to detect possible bottlenecks that could
|
|
||||||
have a negative impact on real-time audio performance. It checks kernel
|
|
||||||
configuration, IRQ priorities, CPU governor, swappiness, and other settings
|
|
||||||
relevant to low-latency audio work.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public rtosc
|
(define-public rtosc
|
||||||
(package
|
(package
|
||||||
(name "rtosc")
|
(name "rtosc")
|
||||||
@@ -3888,58 +3812,6 @@ provided by Pipewire.")
|
|||||||
cross-platform audio input/output stream library.")
|
cross-platform audio input/output stream library.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public python-pyroomacoustics
|
|
||||||
(package
|
|
||||||
(name "python-pyroomacoustics")
|
|
||||||
(version "0.10.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/LCAV/pyroomacoustics")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0546506lg93nrybvilc4wgrgvn317w9zxv2jwikhpfy1i0qyrnkk"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:test-flags
|
|
||||||
#~(list
|
|
||||||
;; Want to download data from the internet:
|
|
||||||
"--ignore"
|
|
||||||
"pyroomacoustics/directivities/tests/test_sofa_directivities.py"
|
|
||||||
"--ignore"
|
|
||||||
"pyroomacoustics/datasets/tests/test_download_uncompress.py"
|
|
||||||
;; May fail because of slight numerical imprecision.
|
|
||||||
"--ignore"
|
|
||||||
"pyroomacoustics/experimental/tests/test_measure_rt60.py")
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-before 'build 'set-extra-include-paths
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(setenv "CPLUS_INCLUDE_PATH"
|
|
||||||
(string-append
|
|
||||||
(search-input-directory inputs "include/eigen3")
|
|
||||||
":"
|
|
||||||
(or (getenv "CPLUS_INCLUDE_PATH") ""))))))))
|
|
||||||
(propagated-inputs (list python-scipy))
|
|
||||||
(native-inputs (list eigen
|
|
||||||
pybind11
|
|
||||||
python-cython
|
|
||||||
python-matplotlib
|
|
||||||
python-numpy
|
|
||||||
python-pytest
|
|
||||||
python-setuptools
|
|
||||||
python-sofa))
|
|
||||||
(inputs (list nanoflann))
|
|
||||||
(home-page "https://github.com/LCAV/pyroomacoustics")
|
|
||||||
(synopsis "Python library for room acoustics")
|
|
||||||
(description "@code{pyroomacoustics} is a framework for simulating the
|
|
||||||
acustic behaviour of rooms, such as computing the impulse response using
|
|
||||||
different simulation methods.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public python-pulsectl
|
(define-public python-pulsectl
|
||||||
(package
|
(package
|
||||||
(name "python-pulsectl")
|
(name "python-pulsectl")
|
||||||
@@ -4044,40 +3916,6 @@ to send and receive OSC messages using a nice and simple Python API. Also
|
|||||||
included are the command line utilities @code{send_osc} and @code{dump_osc}.")
|
included are the command line utilities @code{send_osc} and @code{dump_osc}.")
|
||||||
(license license:lgpl2.1+)))
|
(license license:lgpl2.1+)))
|
||||||
|
|
||||||
(define-public python-sofa
|
|
||||||
(package
|
|
||||||
(name "python-sofa")
|
|
||||||
(version "0.2.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/spatialaudio/python-sofa/")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0n6mdck2dawfm6napqhhxi8gjyvs6121pblcr7zjl37a8ldqvg29"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ;No tests
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'remove-wrong-dependency
|
|
||||||
(lambda _
|
|
||||||
(substitute* "setup.py"
|
|
||||||
(("'datetime'")
|
|
||||||
"")))))))
|
|
||||||
(propagated-inputs (list python-netcdf4 python-numpy python-scipy))
|
|
||||||
(native-inputs (list python-setuptools))
|
|
||||||
(home-page "https://github.com/spatialaudio/python-sofa/")
|
|
||||||
(synopsis
|
|
||||||
"Python @acronym{Spatially Oriented Format for Acoustics, SOFA} API")
|
|
||||||
(description
|
|
||||||
"Python API for @acronym{Spatially Oriented Format for Acoustics, SOFA} files
|
|
||||||
as specified in @url{https://www.sofaconventions.org, SOFA conventions}.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public python-soundfile
|
(define-public python-soundfile
|
||||||
(package
|
(package
|
||||||
(name "python-soundfile")
|
(name "python-soundfile")
|
||||||
@@ -4213,7 +4051,9 @@ one-dimensional sample-rate conversion library.")
|
|||||||
(string-append "'" #$(this-package-input "libsndfile")
|
(string-append "'" #$(this-package-input "libsndfile")
|
||||||
"/lib/libsndfile"))))))))
|
"/lib/libsndfile"))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest python-setuptools))
|
(list python-pytest
|
||||||
|
python-pytest-cov
|
||||||
|
python-setuptools))
|
||||||
(inputs
|
(inputs
|
||||||
(list libsndfile
|
(list libsndfile
|
||||||
portaudio))
|
portaudio))
|
||||||
@@ -4586,33 +4426,6 @@ This includes device enumeration and initialization, file loading, and
|
|||||||
streaming.")
|
streaming.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public wp-notifyd
|
|
||||||
(package
|
|
||||||
(name "wp-notifyd")
|
|
||||||
(version "1.1.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/LDAP/wp-notifyd")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1nkndz0li15maf0dc9x631p0dr8085wzz5358552wljv7chywrza"))))
|
|
||||||
(build-system meson-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:tests? #f)) ;there are no tests
|
|
||||||
(inputs (list libnotify
|
|
||||||
wireplumber-minimal
|
|
||||||
pipewire
|
|
||||||
spdlog))
|
|
||||||
(native-inputs (list pkg-config))
|
|
||||||
(home-page "https://github.com/LDAP/wp-notifyd")
|
|
||||||
(synopsis "Notification daemon for Wireplumber")
|
|
||||||
(description "@command{wp-notifyd} is a lightweight notification daemon for
|
|
||||||
@dfn{WirePlumber} (the session and policy manager for PipeWire).")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public pa-notify
|
(define-public pa-notify
|
||||||
(package
|
(package
|
||||||
(name "pa-notify")
|
(name "pa-notify")
|
||||||
@@ -5017,42 +4830,6 @@ using Guix System.")
|
|||||||
;; GNU Library (not Lesser) General Public License.
|
;; GNU Library (not Lesser) General Public License.
|
||||||
(license license:lgpl2.0+)))
|
(license license:lgpl2.0+)))
|
||||||
|
|
||||||
(define-public hiir
|
|
||||||
(let ((commit "4a9a1e67fa6f8ce7688e1c0c8a2b017cecd206a3")
|
|
||||||
(revision "0"))
|
|
||||||
(package
|
|
||||||
(name "hiir")
|
|
||||||
(version (git-version "0" revision commit))
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/LostRobotMusic/hiir")
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1wzlg0di768mzcik6fij4pd6dnpmbw8q236h478c057d10qfp44g"))))
|
|
||||||
(build-system copy-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:install-plan
|
|
||||||
#~`(("." "/include/hiir"))))
|
|
||||||
(home-page "https://github.com/LostRobotMusic/hiir")
|
|
||||||
(synopsis "Header-only version of Laurent de Soras's HIIR 1.40 library")
|
|
||||||
(description
|
|
||||||
"This package provides a header-only version of the
|
|
||||||
@uref{http://ldesoras.free.fr/prod.html#src_hiir, HIIR library by Laurent De
|
|
||||||
Soras}, updated to version 1.40. HIIR is a C++ library for changing the
|
|
||||||
sampling rate of a signal by a factor two, in both directions (upsampling and
|
|
||||||
downsampling), obtaining two signals with a π/2 phase difference (Hilbert
|
|
||||||
transform). It is made of a two-path polyphase IIR filter, implemented with
|
|
||||||
FPU, 3DNow!, SSE, SSE2, AVX, AVX-512 and NEON instruction sets.
|
|
||||||
|
|
||||||
This package contains the same as the original library, except with the
|
|
||||||
contents of one source file moved into a header file (and set as inline) to
|
|
||||||
make the library header-only, and with the test folder removed.")
|
|
||||||
(license license:wtfpl2))))
|
|
||||||
|
|
||||||
(define-public redumper
|
(define-public redumper
|
||||||
(package
|
(package
|
||||||
(name "redumper")
|
(name "redumper")
|
||||||
@@ -6713,23 +6490,22 @@ on the ALSA software PCM plugin.")
|
|||||||
(define-public snd
|
(define-public snd
|
||||||
(package
|
(package
|
||||||
(name "snd")
|
(name "snd")
|
||||||
(version "26.3")
|
(version "25.2")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method url-fetch)
|
||||||
(method url-fetch)
|
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
|
||||||
(uri (string-append "https://ccrma.stanford.edu/software/snd/snd-"
|
"snd-" version ".tar.gz"))
|
||||||
version ".tar.gz"))
|
(sha256
|
||||||
(sha256
|
(base32
|
||||||
(base32
|
"0fgxqk0byxdj6059mb9d5qic2dqjabz49j0szsrn2y3c9nz6iyq4"))))
|
||||||
"1d573mjlrn9rhl9g0a3d1rkar34q60ln8mwlbibfalpn8lsz59a0"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:tests? #f ; No tests.
|
#:tests? #f ; no tests
|
||||||
#:out-of-source? #f ; Required by 'install-doc'.
|
#:out-of-source? #f ; for the 'install-doc' phase
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
#~(let
|
#~(let ((docdir (string-append #$output "/share/doc/"
|
||||||
((docdir (string-append #$output "/share/doc/snd-" #$version)))
|
#$name "-" #$version)))
|
||||||
(list "--with-alsa"
|
(list "--with-alsa"
|
||||||
"--with-jack"
|
"--with-jack"
|
||||||
"--with-gmp"
|
"--with-gmp"
|
||||||
@@ -6737,20 +6513,18 @@ on the ALSA software PCM plugin.")
|
|||||||
(string-append "--with-doc-dir=" docdir)))
|
(string-append "--with-doc-dir=" docdir)))
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'install 'install-s7-h
|
(add-after 'install 'install-s7
|
||||||
(lambda _
|
(lambda _
|
||||||
(install-file "s7.h" (string-append #$output
|
(install-file "s7.h" (string-append #$output "/include"))))
|
||||||
"/include"))))
|
|
||||||
(add-after 'install 'install-doc
|
(add-after 'install 'install-doc
|
||||||
(lambda _
|
(lambda _
|
||||||
(let
|
(let ((doc (string-append #$output "/share/doc/"
|
||||||
((docdir (string-append #$output "/share/doc/snd-"
|
#$name "-" #$version)))
|
||||||
#$version)))
|
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (f)
|
(lambda (f)
|
||||||
(install-file f docdir))
|
(install-file f doc))
|
||||||
(find-files "." "\\.html$"))
|
(find-files "." "\\.html$"))
|
||||||
(copy-recursively "pix" (string-append docdir "/pix"))))))))
|
(copy-recursively "pix" (string-append doc "/pix"))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
@@ -6769,16 +6543,13 @@ on the ALSA software PCM plugin.")
|
|||||||
timidity++
|
timidity++
|
||||||
vorbis-tools
|
vorbis-tools
|
||||||
wavpack))
|
wavpack))
|
||||||
(home-page "https://ccrma.stanford.edu/software/snd/snd/snd.html")
|
|
||||||
(synopsis "Sound editor")
|
(synopsis "Sound editor")
|
||||||
|
(home-page "https://ccrma.stanford.edu/software/snd/")
|
||||||
(description
|
(description
|
||||||
"Snd is a sound editor modelled loosely after Emacs. It can be
|
"Snd is a sound editor modelled loosely after Emacs. It can be
|
||||||
customized and extended using either the s7 Scheme implementation (included in
|
customized and extended using either the s7 Scheme implementation (included in
|
||||||
the Snd sources), Ruby, or Forth.")
|
the Snd sources), Ruby, or Forth.")
|
||||||
(license
|
(license (license:non-copyleft "file://COPYING"))))
|
||||||
;; INFO: pkgsrc classifies this as `esdl-license', a license not included
|
|
||||||
;; in OSI or FSF lists, despite being similar to ISC.
|
|
||||||
(license:non-copyleft "file://COPYING"))))
|
|
||||||
|
|
||||||
(define-public libspecbleach
|
(define-public libspecbleach
|
||||||
(package
|
(package
|
||||||
@@ -7213,6 +6984,32 @@ developing fully accurate DirectX Audio runtime libraries.")
|
|||||||
license:expat
|
license:expat
|
||||||
license:public-domain))))
|
license:public-domain))))
|
||||||
|
|
||||||
|
(define-public gnaural
|
||||||
|
(package
|
||||||
|
(name "gnaural")
|
||||||
|
(version "20110606")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://sourceforge/gnaural/Gnaural/gnaural_"
|
||||||
|
version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1gq519c0imsh57zklyi0f8h64l3ai48lh672c834470z8c6kvbfi"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(inputs
|
||||||
|
(list alsa-lib gtk+-2 libsndfile portaudio))
|
||||||
|
(native-inputs
|
||||||
|
(list pkg-config))
|
||||||
|
(home-page "https://gnaural.sourceforge.net/")
|
||||||
|
(synopsis "Binaural beat synthesizer")
|
||||||
|
(description "Gnaural is a programmable auditory binaural beat synthesizer
|
||||||
|
intended to be used for brainwave entrainment. Gnaural supports creation of
|
||||||
|
binaural beat tracks of different frequencies and exporting of tracks into
|
||||||
|
different audio formats. Gnaural can also be linked over the internet with
|
||||||
|
other Gnaural instances, allowing synchronous sessions between many users.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public darkice
|
(define-public darkice
|
||||||
(package
|
(package
|
||||||
(name "darkice")
|
(name "darkice")
|
||||||
@@ -7423,7 +7220,6 @@ as is the case with audio plugins.")
|
|||||||
(find-files "bin")))))))))
|
(find-files "bin")))))))))
|
||||||
(inputs
|
(inputs
|
||||||
(list alsa-lib
|
(list alsa-lib
|
||||||
bash-minimal
|
|
||||||
ffmpeg
|
ffmpeg
|
||||||
fluidsynth
|
fluidsynth
|
||||||
file
|
file
|
||||||
@@ -7481,8 +7277,8 @@ default and preferred audio driver but also supports native drivers like ALSA.")
|
|||||||
|
|
||||||
;;; This package variant tracks the latest in-development 2.6 release.
|
;;; This package variant tracks the latest in-development 2.6 release.
|
||||||
(define-public carla-2.6
|
(define-public carla-2.6
|
||||||
(let ((commit "294a80145e39c0755ab9073d90fd8b9524fbfc84")
|
(let ((commit "aa400535b31c67f4b6c1b28e6e20e4d4f82111a3")
|
||||||
(revision "1"))
|
(revision "0"))
|
||||||
(package
|
(package
|
||||||
(inherit carla)
|
(inherit carla)
|
||||||
(name "carla")
|
(name "carla")
|
||||||
@@ -7496,12 +7292,7 @@ default and preferred audio driver but also supports native drivers like ALSA.")
|
|||||||
(commit commit)))
|
(commit commit)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "053yfwf9l9vqvq95c354by6nm8ym0wgkv3fr1434x5w9n1344z0z"))))
|
(base32 "0cnj2sgr60f5h6wdfmihc214wf3n74686sipl3iyzmylqrcyhbjn")))))))
|
||||||
(inputs
|
|
||||||
(modify-inputs (package-inputs carla)
|
|
||||||
(replace "python-pyqt" python-pyqt-6)
|
|
||||||
(replace "qtbase" qtbase)
|
|
||||||
(replace "qtwayland" qtwayland))))))
|
|
||||||
|
|
||||||
;; This source is a fork of vst3sdk with the documentation and VSTGUI
|
;; This source is a fork of vst3sdk with the documentation and VSTGUI
|
||||||
;; submodules removed and a dummy `meson.build` file that just lists all
|
;; submodules removed and a dummy `meson.build` file that just lists all
|
||||||
@@ -7991,59 +7782,60 @@ Rate} 3600x2250 bit/s vocoder used in various radio systems.")
|
|||||||
(delete-file-recursively "third_party")
|
(delete-file-recursively "third_party")
|
||||||
(delete-file-recursively "modules")))))
|
(delete-file-recursively "modules")))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:configure-flags
|
|
||||||
#~(list "-DLINK_BUILD_QT_EXAMPLES=ON"
|
|
||||||
"-DLINK_BUILD_JACK=ON")
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(replace 'check
|
|
||||||
(lambda* (#:key inputs tests? #:allow-other-keys)
|
|
||||||
(when tests?
|
|
||||||
(let* ((python (search-input-file inputs "/bin/python3"))
|
|
||||||
(run-tests "../source/ci/run-tests.py"))
|
|
||||||
(invoke python run-tests "--target" "LinkCoreTest")
|
|
||||||
(invoke python run-tests "--target" "LinkDiscoveryTest")))))
|
|
||||||
(add-before 'install 'patch-cmake
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(let* ((source "../source/"))
|
|
||||||
(substitute* (string-append source
|
|
||||||
"cmake_include/AsioStandaloneConfig.cmake")
|
|
||||||
(((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
|
|
||||||
"modules/asio-standalone/asio/include"))
|
|
||||||
(dirname (search-input-file inputs "include/asio.hpp"))))
|
|
||||||
(substitute* (string-append source "AbletonLinkConfig.cmake")
|
|
||||||
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
|
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/../../../include")
|
|
||||||
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
|
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp")))))
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(let* ((out #$output)
|
|
||||||
(lib-cmake (string-append out "/lib/cmake/ableton-link"))
|
|
||||||
(source "../source"))
|
|
||||||
(for-each delete-file
|
|
||||||
'("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
|
|
||||||
(copy-recursively "bin" (string-append out "/bin"))
|
|
||||||
(copy-recursively (string-append source "/include/ableton")
|
|
||||||
(string-append out "/include/ableton"))
|
|
||||||
(install-file (string-append source "/AbletonLinkConfig.cmake")
|
|
||||||
lib-cmake)
|
|
||||||
(install-file (string-append source
|
|
||||||
"/cmake_include/AsioStandaloneConfig.cmake")
|
|
||||||
(string-append lib-cmake "/cmake_include"))))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list catch-framework
|
(list catch-framework
|
||||||
portaudio ;for portaudio examples
|
python ;for running tests
|
||||||
python ;for running tests
|
portaudio)) ;for portaudio examples
|
||||||
python-setuptools)) ;for running tests
|
|
||||||
(inputs
|
(inputs
|
||||||
(list jack-1)) ;for JACK examples
|
(list jack-1)) ;for JACK examples
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
;; This is because include/ableton/platforms/asio/AsioWrapper.hpp
|
;; This is because include/ableton/platforms/asio/AsioWrapper.hpp
|
||||||
;; contains '#include <asio.hpp>'.
|
;; contains '#include <asio.hpp>'.
|
||||||
(list asio-1.28))
|
(list asio-1.28))
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags
|
||||||
|
'("-DLINK_BUILD_QT_EXAMPLES=ON"
|
||||||
|
"-DLINK_BUILD_JACK=ON")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'check
|
||||||
|
(lambda* (#:key inputs tests? #:allow-other-keys)
|
||||||
|
(when tests?
|
||||||
|
(let* ((python (search-input-file inputs "/bin/python3"))
|
||||||
|
(run-tests "../source/ci/run-tests.py"))
|
||||||
|
(invoke python run-tests "--target" "LinkCoreTest")
|
||||||
|
(invoke python run-tests "--target" "LinkDiscoveryTest")))))
|
||||||
|
(add-before 'install 'patch-cmake
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let* ((source "../source/"))
|
||||||
|
(substitute* (string-append source
|
||||||
|
"cmake_include/AsioStandaloneConfig.cmake")
|
||||||
|
(((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
|
||||||
|
"modules/asio-standalone/asio/include"))
|
||||||
|
(string-append (assoc-ref inputs "asio")
|
||||||
|
"/include")))
|
||||||
|
(substitute* (string-append source "AbletonLinkConfig.cmake")
|
||||||
|
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
|
||||||
|
"${CMAKE_CURRENT_LIST_DIR}/../../../include")
|
||||||
|
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
|
||||||
|
"${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp")))))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin"))
|
||||||
|
(lib-cmake (string-append out "/lib/cmake/ableton-link"))
|
||||||
|
(source "../source"))
|
||||||
|
(for-each (lambda (test-file)
|
||||||
|
(delete-file test-file))
|
||||||
|
'("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
|
||||||
|
(copy-recursively "bin" bin)
|
||||||
|
(copy-recursively (string-append source "/include/ableton")
|
||||||
|
(string-append out "/include/ableton"))
|
||||||
|
(install-file (string-append source "/AbletonLinkConfig.cmake")
|
||||||
|
lib-cmake)
|
||||||
|
(install-file (string-append source
|
||||||
|
"/cmake_include/AsioStandaloneConfig.cmake")
|
||||||
|
(string-append lib-cmake "/cmake_include"))))))))
|
||||||
(home-page "https://github.com/Ableton/link")
|
(home-page "https://github.com/Ableton/link")
|
||||||
(synopsis "Synchronize musical beat, tempo, and phase across multiple applications")
|
(synopsis "Synchronize musical beat, tempo, and phase across multiple applications")
|
||||||
(description
|
(description
|
||||||
@@ -8141,16 +7933,7 @@ Icecast server.")
|
|||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "misc.c"
|
(substitute* "misc.c"
|
||||||
(("#include <stdio.h>\n" all)
|
(("#include <stdio.h>\n" all)
|
||||||
(string-append all "#include <string.h>\n")))
|
(string-append all "#include <string.h>\n")))))
|
||||||
(substitute* "wavsubs.c"
|
|
||||||
(("#include \"wavsubs.h\"\n" all)
|
|
||||||
(string-append all "#include <stdlib.h>")))
|
|
||||||
(substitute* "wavfile.c"
|
|
||||||
(("#include \"wavsubs.h\"\n" all)
|
|
||||||
(string-append all "#include <stdlib.h>")))
|
|
||||||
(substitute* "generator.c"
|
|
||||||
(("#include \"wavsubs.h\"\n" all)
|
|
||||||
(string-append all "#include <stdlib.h>")))))
|
|
||||||
(delete 'configure)
|
(delete 'configure)
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key make-flags outputs #:allow-other-keys)
|
(lambda* (#:key make-flags outputs #:allow-other-keys)
|
||||||
@@ -8162,8 +7945,7 @@ Icecast server.")
|
|||||||
(inputs
|
(inputs
|
||||||
(list ncurses))
|
(list ncurses))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gcc" ,gcc-9)
|
`(("groff" ,groff-minimal) ; for nroff
|
||||||
("groff" ,groff-minimal) ; for nroff
|
|
||||||
("util-linux" ,util-linux))) ; for col
|
("util-linux" ,util-linux))) ; for col
|
||||||
(home-page "https://github.com/bleskodev/siggen")
|
(home-page "https://github.com/bleskodev/siggen")
|
||||||
(synopsis "Signal generation tools")
|
(synopsis "Signal generation tools")
|
||||||
@@ -8239,7 +8021,7 @@ as sample rate, determining whether an audio file is silent, and much more.")
|
|||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list python-numba python-numpy python-scipy python-six))
|
(list python-numba python-numpy python-scipy python-six))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest python-setuptools python-wheel))
|
(list python-pytest python-pytest-cov python-setuptools python-wheel))
|
||||||
(home-page "https://github.com/bmcfee/resampy")
|
(home-page "https://github.com/bmcfee/resampy")
|
||||||
(synopsis "Efficient signal resampling")
|
(synopsis "Efficient signal resampling")
|
||||||
(description
|
(description
|
||||||
@@ -8257,10 +8039,10 @@ Home Page}.")
|
|||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/librosa/librosa/")
|
(url "https://github.com/librosa/librosa/")
|
||||||
(commit version)
|
(commit version)
|
||||||
;; TODO: Package test data.
|
;; For test files.
|
||||||
(recursive? #true)))
|
(recursive? #true)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "065x43hx670rjrclxi4hiqxscllb16v9s7myjvg7rd5pd3y0k7sg"))))
|
(base32 "065x43hx670rjrclxi4hiqxscllb16v9s7myjvg7rd5pd3y0k7sg"))))
|
||||||
@@ -8268,13 +8050,15 @@ Home Page}.")
|
|||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:test-flags
|
#:test-flags
|
||||||
#~(list "-k" (string-append
|
;; Ignore --mpl flag.
|
||||||
;; Resampling tests require python-samplerate.
|
'(list "-c" "/dev/null"
|
||||||
"not resample"
|
"-k" (string-append
|
||||||
;; These tests use Pooch and download data files.
|
;; Resampling tests require python-samplerate.
|
||||||
" and not example and not test_cite"
|
"not resample"
|
||||||
;; XXX assert 22050 == 31744
|
;; These tests use Pooch and download data files.
|
||||||
" and not test_stream"))))
|
" and not example and not test_cite"
|
||||||
|
;; XXX assert 22050 == 31744
|
||||||
|
" and not test_stream"))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list python-audioread
|
(list python-audioread
|
||||||
python-decorator
|
python-decorator
|
||||||
@@ -8293,9 +8077,10 @@ Home Page}.")
|
|||||||
(list python-matplotlib
|
(list python-matplotlib
|
||||||
python-packaging
|
python-packaging
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-mpl
|
python-pytest-cov
|
||||||
python-resampy
|
python-resampy
|
||||||
python-setuptools))
|
python-setuptools
|
||||||
|
python-wheel))
|
||||||
(home-page "https://librosa.org")
|
(home-page "https://librosa.org")
|
||||||
(synopsis "Python module for audio and music processing")
|
(synopsis "Python module for audio and music processing")
|
||||||
(description
|
(description
|
||||||
|
|||||||
@@ -1989,7 +1989,7 @@ CONFIG_SCSI_LOWLEVEL=y
|
|||||||
# CONFIG_SCSI_DEBUG is not set
|
# CONFIG_SCSI_DEBUG is not set
|
||||||
# CONFIG_SCSI_PMCRAID is not set
|
# CONFIG_SCSI_PMCRAID is not set
|
||||||
# CONFIG_SCSI_PM8001 is not set
|
# CONFIG_SCSI_PM8001 is not set
|
||||||
CONFIG_SCSI_VIRTIO=m
|
# CONFIG_SCSI_VIRTIO is not set
|
||||||
# CONFIG_SCSI_DH is not set
|
# CONFIG_SCSI_DH is not set
|
||||||
# end of SCSI device support
|
# end of SCSI device support
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,58 +0,0 @@
|
|||||||
# GNU Guix --- Functional package management for GNU
|
|
||||||
# Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
|
||||||
#
|
|
||||||
# This file is part of GNU Guix.
|
|
||||||
#
|
|
||||||
# GNU Guix is free software; you can redistribute it and/or modify it
|
|
||||||
# under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; either version 3 of the License, or (at
|
|
||||||
# your option) any later version.
|
|
||||||
#
|
|
||||||
# GNU Guix is distributed in the hope that it will be useful, but
|
|
||||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
import importlib.util
|
|
||||||
import json
|
|
||||||
|
|
||||||
|
|
||||||
def pytest_addoption(parser):
|
|
||||||
"""Add stub options to be ignored by pytest.
|
|
||||||
|
|
||||||
More precisely, inject all options provided in .pytest_guix_options.json,
|
|
||||||
except options whose plugin is indeed installed.
|
|
||||||
|
|
||||||
For example, if the json file records --cov:
|
|
||||||
if the pytest_cov module is installed, its --cov will be used.
|
|
||||||
otherwise, --cov is ignored (read by this parser, but nothing is done
|
|
||||||
with it).
|
|
||||||
|
|
||||||
Flags can be given with additional keyword arguments in a json object.
|
|
||||||
If the json object is not given, fallback to the default
|
|
||||||
{"action": "append", "nargs": "?"}. In practice, these arguments are only
|
|
||||||
mandatory for the store_true and store_const actions to avoid eating other
|
|
||||||
arguments.
|
|
||||||
|
|
||||||
This allows to remove development packages, which are not required at build
|
|
||||||
time while at the same time avoiding the need to adjust test options in
|
|
||||||
pyproject.toml or other configuration files.
|
|
||||||
"""
|
|
||||||
with open(".pytest_guix_options.json", "r") as options_file:
|
|
||||||
plugin_options = json.load(options_file)
|
|
||||||
group = parser.getgroup(
|
|
||||||
"guix", "Options ignored by the Guix pyproject-build-system"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Only add options for plugins that are not present.
|
|
||||||
for key, options in plugin_options.items():
|
|
||||||
if importlib.util.find_spec(f"pytest_{key}") is None:
|
|
||||||
# Plugin not found, add stub options
|
|
||||||
for option, kwargs in options.items():
|
|
||||||
if kwargs:
|
|
||||||
group.addoption(option, **kwargs)
|
|
||||||
else:
|
|
||||||
group.addoption(option, action="append", nargs="?")
|
|
||||||
+68
-69
@@ -50,6 +50,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
@@ -106,7 +107,6 @@
|
|||||||
#:use-module (gnu packages rsync)
|
#:use-module (gnu packages rsync)
|
||||||
#:use-module (gnu packages ruby-xyz)
|
#:use-module (gnu packages ruby-xyz)
|
||||||
#:use-module (gnu packages serialization)
|
#:use-module (gnu packages serialization)
|
||||||
#:use-module (gnu packages sphinx)
|
|
||||||
#:use-module (gnu packages ssh)
|
#:use-module (gnu packages ssh)
|
||||||
#:use-module (gnu packages time)
|
#:use-module (gnu packages time)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
@@ -137,6 +137,7 @@
|
|||||||
python-paramiko
|
python-paramiko
|
||||||
python-pexpect
|
python-pexpect
|
||||||
python-pytest
|
python-pytest
|
||||||
|
python-pytest-runner
|
||||||
python-setuptools-scm
|
python-setuptools-scm
|
||||||
tzdata-for-tests
|
tzdata-for-tests
|
||||||
python-mock))
|
python-mock))
|
||||||
@@ -631,26 +632,41 @@ rsnapshot uses hard links to deduplicate identical files.")
|
|||||||
(define-public borg
|
(define-public borg
|
||||||
(package
|
(package
|
||||||
(name "borg")
|
(name "borg")
|
||||||
(version "1.4.4")
|
(version "1.4.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (pypi-uri "borgbackup" version))
|
||||||
(url "https://github.com/borgbackup/borg")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0bk302lbjjz1y8dg78wqqys80bm7mzkj5yf6wgyqdwvbqpsnpim4"))))
|
(base32 "07s4jqcv03s98hi6lvqpvmnnhl532qnvv11mjy2xc08rbmsgmfvr"))
|
||||||
|
(snippet
|
||||||
|
#~(begin
|
||||||
|
;; Delete files generated by Cython. We used to have a regex that
|
||||||
|
;; created the list of generated files but Borg has added new
|
||||||
|
;; non-generated C files that cause the regex to generate the
|
||||||
|
;; wrong list.
|
||||||
|
(for-each delete-file
|
||||||
|
'("src/borg/algorithms/checksums.c"
|
||||||
|
"src/borg/chunker.c"
|
||||||
|
"src/borg/compress.c"
|
||||||
|
"src/borg/crypto/low_level.c"
|
||||||
|
"src/borg/hashindex.c"
|
||||||
|
"src/borg/item.c"
|
||||||
|
"src/borg/platform/darwin.c"
|
||||||
|
"src/borg/platform/freebsd.c"
|
||||||
|
"src/borg/platform/linux.c"
|
||||||
|
"src/borg/platform/posix.c"
|
||||||
|
"src/borg/platform/syncfilerange.c"
|
||||||
|
"src/borg/platform/windows.c"))))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:modules '((srfi srfi-26) ; for cut
|
#:modules '((srfi srfi-26) ; for cut
|
||||||
(guix build utils)
|
(guix build utils)
|
||||||
(guix build pyproject-build-system))
|
(guix build pyproject-build-system))
|
||||||
;; tests: 1318 passed, 293 skipped
|
|
||||||
#:test-flags
|
#:test-flags
|
||||||
#~(list "--benchmark-skip"
|
#~(list "--benchmark-skip"
|
||||||
"--numprocesses" (number->string (min 8 (parallel-job-count)))
|
"--numprocesses" (number->string (parallel-job-count))
|
||||||
"--pyargs" "borg.testsuite"
|
"--pyargs" "borg.testsuite"
|
||||||
"-k" (string-join
|
"-k" (string-join
|
||||||
;; These tests need to write to '/var'.
|
;; These tests need to write to '/var'.
|
||||||
@@ -671,15 +687,7 @@ rsnapshot uses hard links to deduplicate identical files.")
|
|||||||
"test_mount_hardlinks "
|
"test_mount_hardlinks "
|
||||||
"test_readonly_mount "
|
"test_readonly_mount "
|
||||||
"test_fuse_versions_view "
|
"test_fuse_versions_view "
|
||||||
"test_migrate_lock_alive"
|
"test_migrate_lock_alive")
|
||||||
;; Test files are not in /gnu/store
|
|
||||||
"test_convert_all[False]"
|
|
||||||
"test_convert_all[True]"
|
|
||||||
"test_convert_segments[False]"
|
|
||||||
"test_convert_segments[True]"
|
|
||||||
"test_detect_attic_repo"
|
|
||||||
"test_key_export_qr"
|
|
||||||
"test_keys")
|
|
||||||
" and not "))
|
" and not "))
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
@@ -695,58 +703,46 @@ rsnapshot uses hard links to deduplicate identical files.")
|
|||||||
(setenv "BORG_LIBLZ4_PREFIX" lz4)
|
(setenv "BORG_LIBLZ4_PREFIX" lz4)
|
||||||
(setenv "BORG_LIBXXHASH_PREFIX" xxhash)
|
(setenv "BORG_LIBXXHASH_PREFIX" xxhash)
|
||||||
(setenv "BORG_LIBZSTD_PREFIX" zstd))))
|
(setenv "BORG_LIBZSTD_PREFIX" zstd))))
|
||||||
(add-before 'build 'fix-testsuite-setuid-mode
|
(add-after 'install 'install-doc
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "src/borg/testsuite/archiver.py"
|
(let ((man (string-append #$output "/share/man/man1"))
|
||||||
(("0o4755") "0o0755"))))
|
(misc (string-append #$output "/share/doc/borg-"
|
||||||
(add-after 'install 'build-and-install-docs
|
#$(package-version this-package))))
|
||||||
(lambda _
|
|
||||||
(let* ((doc (string-append #$output "/share/doc/borg-" #$version))
|
|
||||||
(html (string-append doc "/html"))
|
|
||||||
(txt (string-append doc "/txt"))
|
|
||||||
(misc (string-append doc "/misc"))
|
|
||||||
(man (string-append #$output "/share/man/man1")))
|
|
||||||
(with-directory-excursion "docs"
|
|
||||||
(invoke "make" "text" "man" "singlehtml"))
|
|
||||||
(for-each (cut install-file <> misc)
|
(for-each (cut install-file <> misc)
|
||||||
'("docs/misc/create_chunker-params.txt"
|
'("docs/misc/create_chunker-params.txt"
|
||||||
"docs/misc/borg-data-flow.png"
|
"docs/misc/borg-data-flow.png"
|
||||||
"docs/misc/internals-picture.txt"
|
"docs/misc/internals-picture.txt"
|
||||||
"docs/misc/prune-example.txt"))
|
"docs/misc/prune-example.txt"))
|
||||||
(copy-recursively "docs/_build/man" man)
|
(copy-recursively "docs/man" man))))
|
||||||
(copy-recursively "docs/_build/singlehtml" html)
|
(add-after 'install-doc 'install-shell-completions
|
||||||
(copy-recursively "docs/_build/text" txt))))
|
|
||||||
(add-after 'build-and-install-docs 'install-shell-completions
|
|
||||||
(lambda _
|
(lambda _
|
||||||
(let* ((etc (string-append #$output "/etc"))
|
(let ((etc (string-append #$output "/etc"))
|
||||||
(share (string-append #$output "/share"))
|
(share (string-append #$output "/share")))
|
||||||
(bash (string-append etc "/bash_completion.d"))
|
|
||||||
(zsh (string-append share "/zsh/site-functions"))
|
|
||||||
(fish (string-append share "/fish/vendor_completions.d")))
|
|
||||||
(with-directory-excursion "scripts/shell_completions"
|
(with-directory-excursion "scripts/shell_completions"
|
||||||
(install-file "bash/borg" bash)
|
(install-file "bash/borg"
|
||||||
(install-file "zsh/_borg" zsh)
|
(string-append etc "/bash_completion.d"))
|
||||||
(install-file "fish/borg.fish" fish))))))))
|
(install-file "zsh/_borg"
|
||||||
|
(string-append share "/zsh/site-functions"))
|
||||||
|
(install-file "fish/borg.fish"
|
||||||
|
(string-append share "/fish/vendor_completions.d")))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-cython
|
(list python-cython
|
||||||
python-guzzle-sphinx-theme
|
python-dateutil
|
||||||
python-pkgconfig
|
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-benchmark
|
python-pytest-benchmark
|
||||||
python-pytest-xdist
|
python-pytest-xdist
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-setuptools-scm
|
python-setuptools-scm
|
||||||
python-sphinx
|
python-wheel))
|
||||||
python-sphinxcontrib-jquery))
|
|
||||||
(inputs
|
(inputs
|
||||||
(list acl
|
(list acl
|
||||||
lz4
|
lz4
|
||||||
openssl
|
openssl
|
||||||
python-msgpack
|
;; This is the latest version of msgpack accepted by 'setup.py'.
|
||||||
|
python-msgpack-for-borg
|
||||||
;; FUSE 3 isn't working well, so we stick with FUSE 2 for now:
|
;; FUSE 3 isn't working well, so we stick with FUSE 2 for now:
|
||||||
;; <https://issues.guix.gnu.org/53407>
|
;; <https://issues.guix.gnu.org/53407>
|
||||||
python-llfuse
|
python-llfuse
|
||||||
python-packaging
|
|
||||||
xxhash
|
xxhash
|
||||||
`(,zstd "lib")))
|
`(,zstd "lib")))
|
||||||
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
|
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
|
||||||
@@ -897,7 +893,7 @@ is like a time machine for your data.")
|
|||||||
(define-public restic
|
(define-public restic
|
||||||
(package
|
(package
|
||||||
(name "restic")
|
(name "restic")
|
||||||
(version "0.18.1")
|
(version "0.17.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -906,7 +902,7 @@ is like a time machine for your data.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0gxhknn022bwg2s8hababqg3vjkzflq59vr67y7r1c8fjnlsgf4l"))))
|
(base32 "1wsgq7f0bfi0i5iiwcc3hlf2lhxcnz3zfs8p8bc6l913r9hvyg1x"))))
|
||||||
(build-system go-build-system)
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -915,18 +911,15 @@ is like a time machine for your data.")
|
|||||||
#:import-path "github.com/restic/restic/cmd/restic"
|
#:import-path "github.com/restic/restic/cmd/restic"
|
||||||
#:unpack-path "github.com/restic/restic"
|
#:unpack-path "github.com/restic/restic"
|
||||||
#:embed-files #~(list "children" "nodes" "text")
|
#:embed-files #~(list "children" "nodes" "text")
|
||||||
|
#:test-flags
|
||||||
|
;; Python is required.
|
||||||
|
#~(list "-skip" "TestStdinFromCommand|TestStdinFromCommandNoOutput")
|
||||||
#:test-subdirs #~(list "../../...")
|
#:test-subdirs #~(list "../../...")
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'fix-python-path
|
|
||||||
(lambda* (#:key inputs unpack-path #:allow-other-keys)
|
|
||||||
(with-directory-excursion (string-append "src/" unpack-path)
|
|
||||||
(substitute* "cmd/restic/cmd_backup_integration_test.go"
|
|
||||||
(("python")
|
|
||||||
(search-input-file inputs "/bin/python3"))))))
|
|
||||||
(add-after 'install 'install-docs
|
(add-after 'install 'install-docs
|
||||||
(lambda* (#:key unpack-path #:allow-other-keys)
|
(lambda* (#:key import-path #:allow-other-keys)
|
||||||
(with-directory-excursion (string-append "src/" unpack-path)
|
(with-directory-excursion (string-append "src/" import-path)
|
||||||
(let* ((man "/share/man")
|
(let* ((man "/share/man")
|
||||||
(man-section (string-append man "/man")))
|
(man-section (string-append man "/man")))
|
||||||
;; Install all the man pages to "out".
|
;; Install all the man pages to "out".
|
||||||
@@ -949,12 +942,12 @@ is like a time machine for your data.")
|
|||||||
go-github-com-cenkalti-backoff-v4
|
go-github-com-cenkalti-backoff-v4
|
||||||
go-github-com-cespare-xxhash-v2
|
go-github-com-cespare-xxhash-v2
|
||||||
go-github-com-elithrar-simple-scrypt
|
go-github-com-elithrar-simple-scrypt
|
||||||
;; go-github-com-go-ole-go-ole ;Windows only
|
;; go-github-com-go-ole-go-ole ;windows only
|
||||||
go-github-com-google-go-cmp
|
go-github-com-google-go-cmp
|
||||||
go-github-com-hashicorp-golang-lru-v2
|
go-github-com-hashicorp-golang-lru-v2
|
||||||
go-github-com-klauspost-compress
|
go-github-com-klauspost-compress
|
||||||
;; go-github-com-microsoft-go-winio ;Windows only
|
|
||||||
go-github-com-minio-minio-go-v7
|
go-github-com-minio-minio-go-v7
|
||||||
|
go-github-com-minio-sha256-simd
|
||||||
go-github-com-ncw-swift-v2
|
go-github-com-ncw-swift-v2
|
||||||
go-github-com-peterbourgon-unixtransport
|
go-github-com-peterbourgon-unixtransport
|
||||||
go-github-com-pkg-errors
|
go-github-com-pkg-errors
|
||||||
@@ -974,7 +967,6 @@ is like a time machine for your data.")
|
|||||||
go-golang-org-x-text
|
go-golang-org-x-text
|
||||||
go-golang-org-x-time
|
go-golang-org-x-time
|
||||||
go-google-golang-org-api
|
go-google-golang-org-api
|
||||||
python-minimal
|
|
||||||
|
|
||||||
;; XXX: These packages have to be bootstrapped to break cycle with
|
;; XXX: These packages have to be bootstrapped to break cycle with
|
||||||
;; go-google-golang-org-grpc.
|
;; go-google-golang-org-grpc.
|
||||||
@@ -1268,9 +1260,10 @@ compression parameters used by Gzip.")
|
|||||||
(define-public borgmatic
|
(define-public borgmatic
|
||||||
(package
|
(package
|
||||||
(name "borgmatic")
|
(name "borgmatic")
|
||||||
(version "2.1.5")
|
(version "2.1.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
|
;; PyPI archive does not contain NEWS file needed for one test.
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://projects.torsion.org/borgmatic-collective/borgmatic")
|
(url "https://projects.torsion.org/borgmatic-collective/borgmatic")
|
||||||
@@ -1278,11 +1271,10 @@ compression parameters used by Gzip.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"17i15ysg0wbcnfvki8wz2z9gx3zx99czv3czjh83y2m1xppvqbl5"))))
|
"0vrpl21n6hf3pj0di4n7s36jq64sx24c93j48cmbdgczs8jiwi36"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
;; tests: 2609 passed
|
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'configure
|
(add-after 'unpack 'configure
|
||||||
@@ -1297,12 +1289,19 @@ compression parameters used by Gzip.")
|
|||||||
(("(module.get_local_path.+ == )'borg'" all start)
|
(("(module.get_local_path.+ == )'borg'" all start)
|
||||||
(string-append start "'"
|
(string-append start "'"
|
||||||
(search-input-file inputs "bin/borg")
|
(search-input-file inputs "bin/borg")
|
||||||
"'"))))))))
|
"'")))))
|
||||||
|
(add-before 'check 'set-path
|
||||||
|
(lambda _
|
||||||
|
;; Tests require the installed executable.
|
||||||
|
(setenv "PATH"
|
||||||
|
(string-append #$output "/bin" ":"
|
||||||
|
(getenv "PATH"))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-flexmock
|
(list python-flexmock
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-timeout
|
python-pytest-cov
|
||||||
python-setuptools))
|
python-setuptools
|
||||||
|
python-wheel))
|
||||||
(inputs
|
(inputs
|
||||||
(list borg
|
(list borg
|
||||||
python-apprise
|
python-apprise
|
||||||
@@ -1364,9 +1363,9 @@ borgmatic is powered by borg.")
|
|||||||
(assoc-ref qt:%standard-phases 'qt-wrap)))))
|
(assoc-ref qt:%standard-phases 'qt-wrap)))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-platformdirs
|
(list python-platformdirs
|
||||||
python-pytest
|
|
||||||
python-pytest-mock
|
python-pytest-mock
|
||||||
python-pytest-qt
|
python-pytest-qt
|
||||||
|
python-pytest-runner
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-setuptools-git))
|
python-setuptools-git))
|
||||||
(inputs
|
(inputs
|
||||||
|
|||||||
+26
-45
@@ -13,8 +13,7 @@
|
|||||||
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
|
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
|
||||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||||
;;; Copyright © 2025-2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||||
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
|
|
||||||
;;; Copyright © 2023 Advanced Micro Devices, Inc.
|
;;; Copyright © 2023 Advanced Micro Devices, Inc.
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
@@ -42,8 +41,8 @@
|
|||||||
#:use-module (guix amd-gpu)
|
#:use-module (guix amd-gpu)
|
||||||
#:use-module (guix search-paths)
|
#:use-module (guix search-paths)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system qt)
|
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
@@ -679,26 +678,20 @@ the user is too low. To raise such limit on a Guix System, refer to
|
|||||||
"0ifnw8vnkcgrksx7g5d9ii4kjppqnk32lvrybdybmibyvag6zfdc"))))
|
"0ifnw8vnkcgrksx7g5d9ii4kjppqnk32lvrybdybmibyvag6zfdc"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list #:tests? #f ; no tests
|
`(#:tests? #f ; no tests
|
||||||
#:make-flags
|
#:phases
|
||||||
#~(list "CFLAGS=-g -O2 -Wno-error=implicit-function-declaration"
|
(modify-phases %standard-phases
|
||||||
(string-append "CC=" #$(cc-for-target)))
|
(add-after 'unpack 'fix-broken-makefile
|
||||||
#:phases
|
(lambda _
|
||||||
#~(modify-phases %standard-phases
|
;; Remove erroneous "-lm" target
|
||||||
(add-after 'unpack 'fix-broken-makefile
|
(substitute* "Makefile"
|
||||||
(lambda _
|
(("hackbench.o -lm") "hackbench.o"))))
|
||||||
;; Remove erroneous "-lm" target
|
(delete 'configure)
|
||||||
(substitute* "Makefile"
|
(replace 'install
|
||||||
(("hackbench.o -lm") "hackbench.o"))))
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(delete 'configure)
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(replace 'install
|
(install-file "interbench" (string-append out "/bin"))
|
||||||
(lambda _
|
(install-file "interbench.8" (string-append out "/share/man/man8"))))))))
|
||||||
(install-file "interbench"
|
|
||||||
(string-append #$output "/bin"))
|
|
||||||
(install-file "interbench.8"
|
|
||||||
(string-append #$output
|
|
||||||
"/share/man/man8")))))))
|
|
||||||
(native-inputs (list gcc-10))
|
|
||||||
(home-page "http://users.on.net/~ckolivas/interbench/")
|
(home-page "http://users.on.net/~ckolivas/interbench/")
|
||||||
(synopsis "Interactivity benchmark")
|
(synopsis "Interactivity benchmark")
|
||||||
(description "interbench is designed to benchmark interactivity on Linux.
|
(description "interbench is designed to benchmark interactivity on Linux.
|
||||||
@@ -737,7 +730,7 @@ and options. With careful benchmarking, different hardware can be compared.")
|
|||||||
(define-public kdiskmark
|
(define-public kdiskmark
|
||||||
(package
|
(package
|
||||||
(name "kdiskmark")
|
(name "kdiskmark")
|
||||||
(version "3.2.0")
|
(version "3.1.4")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -746,13 +739,14 @@ and options. With careful benchmarking, different hardware can be compared.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"161yyy4fcy5bnzhbcd7p90nlcslcsfp7n3m3bz9bygch7bdjw46g"))))
|
"1x8vd6swmf0i7f6m6wl2154n6plx8jkmcqfq6zxbdy255f1da74c"))))
|
||||||
(build-system qt-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:qtbase qtbase
|
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
#~(list (string-append "-DPOLKITQT-1_INSTALL_DIR=" #$output))
|
;; Drop runtime dependency on KDE's KFAuth.
|
||||||
|
#~(list "-DPERFORM_PAGECACHE_CLEARING_USING_KF5AUTH=no"
|
||||||
|
(string-append "-DPOLKITQT-1_INSTALL_DIR=" #$output))
|
||||||
#:tests? #f ;no test suite
|
#:tests? #f ;no test suite
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
@@ -765,10 +759,10 @@ and options. With careful benchmarking, different hardware can be compared.")
|
|||||||
(lambda _
|
(lambda _
|
||||||
(rmdir "src/singleapplication")
|
(rmdir "src/singleapplication")
|
||||||
(symlink #$(package-source
|
(symlink #$(package-source
|
||||||
(this-package-input "single-application"))
|
(this-package-input "single-application-qt5"))
|
||||||
"src/singleapplication"))))))
|
"src/singleapplication"))))))
|
||||||
(native-inputs (list extra-cmake-modules qttools))
|
(native-inputs (list extra-cmake-modules qttools-5))
|
||||||
(inputs (list fio polkit-qt6 single-application qtwayland))
|
(inputs (list fio polkit-qt qtbase-5 single-application-qt5))
|
||||||
(home-page "https://github.com/JonMagon/KDiskMark")
|
(home-page "https://github.com/JonMagon/KDiskMark")
|
||||||
(synopsis "Simple disk benchmark tool")
|
(synopsis "Simple disk benchmark tool")
|
||||||
(description "KDiskMark is an HDD and SSD benchmark tool. KDiskMark
|
(description "KDiskMark is an HDD and SSD benchmark tool. KDiskMark
|
||||||
@@ -950,20 +944,7 @@ configurable through a set of options.")
|
|||||||
#~(list (string-append
|
#~(list (string-append
|
||||||
"CC=" #$(this-package-input "openmpi") "/bin/mpicc")
|
"CC=" #$(this-package-input "openmpi") "/bin/mpicc")
|
||||||
(string-append
|
(string-append
|
||||||
"CXX=" #$(this-package-input "openmpi") "/bin/mpicxx"))
|
"CXX=" #$(this-package-input "openmpi") "/bin/mpicxx"))))
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
;; OSU installs its binaries to /libexec. Have a symlink in /bin to
|
|
||||||
;; improve user experience.
|
|
||||||
(add-after 'install 'symlink-binaries-in-bin
|
|
||||||
(lambda _
|
|
||||||
(mkdir-p (string-append #$output "/bin"))
|
|
||||||
(for-each (lambda (file)
|
|
||||||
(symlink file
|
|
||||||
(string-append #$output "/bin/"
|
|
||||||
(basename file))))
|
|
||||||
(find-files (string-append #$output
|
|
||||||
"/libexec"))))))))
|
|
||||||
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
|
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
|
||||||
(synopsis "Benchmarking suite from the MVAPICH project")
|
(synopsis "Benchmarking suite from the MVAPICH project")
|
||||||
(description
|
(description
|
||||||
|
|||||||
+2082
-2077
File diff suppressed because it is too large
Load Diff
+533
-434
File diff suppressed because it is too large
Load Diff
+46
-47
@@ -41,16 +41,32 @@
|
|||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages bittorrent)
|
(define-module (gnu packages bittorrent)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system meson)
|
||||||
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
|
#:use-module (guix build-system qt)
|
||||||
|
#:use-module (guix build-system glib-or-gtk)
|
||||||
|
#:use-module ((guix licenses) #:prefix l:)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (guix utils)
|
||||||
|
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
||||||
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages adns)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages boost)
|
#:use-module (gnu packages boost)
|
||||||
|
#:use-module (gnu packages nss)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages cmake)
|
#:use-module (gnu packages cmake)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages crypto)
|
#:use-module (gnu packages crypto)
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
#:use-module (gnu packages cyrus-sasl)
|
#:use-module (gnu packages cyrus-sasl)
|
||||||
#:use-module (gnu packages dns)
|
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
@@ -60,9 +76,8 @@
|
|||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
#:use-module (gnu packages libevent)
|
#:use-module (gnu packages libevent)
|
||||||
#:use-module (gnu packages multiprecision)
|
#:use-module (gnu packages multiprecision)
|
||||||
#:use-module (gnu packages ncurses)
|
|
||||||
#:use-module (gnu packages nettle)
|
#:use-module (gnu packages nettle)
|
||||||
#:use-module (gnu packages nss)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
@@ -71,29 +86,15 @@
|
|||||||
#:use-module (gnu packages python-crypto)
|
#:use-module (gnu packages python-crypto)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages qt)
|
|
||||||
#:use-module (gnu packages serialization)
|
#:use-module (gnu packages serialization)
|
||||||
|
#:use-module (gnu packages qt)
|
||||||
#:use-module (gnu packages sqlite)
|
#:use-module (gnu packages sqlite)
|
||||||
#:use-module (gnu packages ssh)
|
#:use-module (gnu packages ssh)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages version-control)
|
#:use-module (gnu packages version-control)
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg))
|
||||||
#:use-module (gnu packages)
|
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix build-system glib-or-gtk)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system meson)
|
|
||||||
#:use-module (guix build-system pyproject)
|
|
||||||
#:use-module (guix build-system qt)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
|
||||||
#:use-module (guix utils))
|
|
||||||
|
|
||||||
(define-public transmission
|
(define-public transmission
|
||||||
(package
|
(package
|
||||||
@@ -193,7 +194,7 @@ DHT, µTP, PEX and Magnet Links.")
|
|||||||
;; or any future license endorsed by Mnemosyne LLC.
|
;; or any future license endorsed by Mnemosyne LLC.
|
||||||
;;
|
;;
|
||||||
;; A few files files carry an MIT/X11 license header.
|
;; A few files files carry an MIT/X11 license header.
|
||||||
(license (list license:gpl2 license:gpl3))))
|
(license (list l:gpl2 l:gpl3))))
|
||||||
|
|
||||||
(define-public transmission-remote-gtk
|
(define-public transmission-remote-gtk
|
||||||
(package
|
(package
|
||||||
@@ -223,7 +224,7 @@ DHT, µTP, PEX and Magnet Links.")
|
|||||||
(description "transmission-remote-gtk is a GTK client for remote management
|
(description "transmission-remote-gtk is a GTK client for remote management
|
||||||
of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
||||||
(home-page "https://github.com/transmission-remote-gtk/transmission-remote-gtk")
|
(home-page "https://github.com/transmission-remote-gtk/transmission-remote-gtk")
|
||||||
(license license:gpl2+)))
|
(license l:gpl2+)))
|
||||||
|
|
||||||
(define-public stig
|
(define-public stig
|
||||||
(package
|
(package
|
||||||
@@ -266,7 +267,7 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
|
|||||||
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command
|
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command
|
||||||
Line Interface} client for the BitTorrent client Transmission.")
|
Line Interface} client for the BitTorrent client Transmission.")
|
||||||
(home-page "https://github.com/rndusr/stig")
|
(home-page "https://github.com/rndusr/stig")
|
||||||
(license license:gpl3)))
|
(license l:gpl3)))
|
||||||
|
|
||||||
(define-public libtorrent
|
(define-public libtorrent
|
||||||
(package
|
(package
|
||||||
@@ -290,7 +291,7 @@ Line Interface} client for the BitTorrent client Transmission.")
|
|||||||
with the BitTorrent client rtorrent. It is written in C++ with emphasis on
|
with the BitTorrent client rtorrent. It is written in C++ with emphasis on
|
||||||
speed and efficiency.")
|
speed and efficiency.")
|
||||||
(home-page "https://github.com/rakshasa/libtorrent")
|
(home-page "https://github.com/rakshasa/libtorrent")
|
||||||
(license license:gpl2+)))
|
(license l:gpl2+)))
|
||||||
|
|
||||||
(define-public rtorrent
|
(define-public rtorrent
|
||||||
(package
|
(package
|
||||||
@@ -319,7 +320,7 @@ speed and efficiency.")
|
|||||||
full encryption, DHT, PEX, and Magnet Links. It can also be controlled via
|
full encryption, DHT, PEX, and Magnet Links. It can also be controlled via
|
||||||
XML-RPC over SCGI.")
|
XML-RPC over SCGI.")
|
||||||
(home-page "https://github.com/rakshasa/rtorrent")
|
(home-page "https://github.com/rakshasa/rtorrent")
|
||||||
(license license:gpl2+)))
|
(license l:gpl2+)))
|
||||||
|
|
||||||
(define-public tremc
|
(define-public tremc
|
||||||
(let ((commit "d8deaa5ac25bb45a2ca3a930309d6ecc74836a54")
|
(let ((commit "d8deaa5ac25bb45a2ca3a930309d6ecc74836a54")
|
||||||
@@ -353,25 +354,25 @@ XML-RPC over SCGI.")
|
|||||||
(description "Tremc is a console client, with a curses interface, for the
|
(description "Tremc is a console client, with a curses interface, for the
|
||||||
Transmission BitTorrent daemon.")
|
Transmission BitTorrent daemon.")
|
||||||
(home-page "https://github.com/tremc/tremc")
|
(home-page "https://github.com/tremc/tremc")
|
||||||
(license license:gpl3+))))
|
(license l:gpl3+))))
|
||||||
|
|
||||||
(define-public aria2
|
(define-public aria2
|
||||||
(package
|
(package
|
||||||
(name "aria2")
|
(name "aria2")
|
||||||
(version "1.37.0")
|
(version "1.37.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (string-append "https://github.com/aria2/aria2/releases/"
|
||||||
(url "https://github.com/aria2/aria2")
|
"download/release-" version
|
||||||
(commit (string-append "release-" version))))
|
"/aria2-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1yr9yxr7z3bdg51afpzj0i63xl2rdk1prl20qws21y6r1x58vf65"))
|
"0sxng4pynhj2qinranpv6wyzys3d42kz1gg2nrn63sw5f2nj1930"))
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(patches (search-patches "aria2-unbundle-wslay.patch"))
|
(patches (search-patches "aria2-unbundle-wslay.patch"))
|
||||||
(snippet
|
(snippet
|
||||||
#~(begin (use-modules (guix build utils))
|
#~(begin (use-modules (guix build utils))
|
||||||
(delete-file-recursively "deps")))))
|
(delete-file-recursively "deps")
|
||||||
|
(delete-file "configure")))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -381,13 +382,10 @@ Transmission BitTorrent daemon.")
|
|||||||
#$output "/etc/bash_completion.d/"))
|
#$output "/etc/bash_completion.d/"))
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'update-gettext-version
|
(add-after 'unpack 'patch-configure
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "configure.ac"
|
(substitute* "configure.ac"
|
||||||
(("AM_GNU_GETTEXT_VERSION\\(.*\\)")
|
(("0[.]18") "0.19.6"))))
|
||||||
(format #f "AM_GNU_GETTEXT_VERSION([~a])"
|
|
||||||
#$(package-version (this-package-native-input
|
|
||||||
"gettext-minimal")))))))
|
|
||||||
(add-after 'unpack 'delete-socket-tests
|
(add-after 'unpack 'delete-socket-tests
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "test/LpdMessageDispatcherTest.cc"
|
(substitute* "test/LpdMessageDispatcherTest.cc"
|
||||||
@@ -419,7 +417,9 @@ Transmission BitTorrent daemon.")
|
|||||||
"Aria2 is a lightweight, multi-protocol & multi-source command-line
|
"Aria2 is a lightweight, multi-protocol & multi-source command-line
|
||||||
download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
|
download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
|
||||||
Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
|
Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
|
||||||
(license license:gpl2+)))
|
(properties
|
||||||
|
'((release-monitoring-url . "https://github.com/aria2/aria2/releases")))
|
||||||
|
(license l:gpl2+)))
|
||||||
|
|
||||||
(define-public uget
|
(define-public uget
|
||||||
(package
|
(package
|
||||||
@@ -453,7 +453,7 @@ Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
|
|||||||
"uGet is portable download manager with GTK+ interface supporting
|
"uGet is portable download manager with GTK+ interface supporting
|
||||||
HTTP, HTTPS, BitTorrent and Metalink, supporting multi-connection
|
HTTP, HTTPS, BitTorrent and Metalink, supporting multi-connection
|
||||||
downloads, download scheduling, download rate limiting.")
|
downloads, download scheduling, download rate limiting.")
|
||||||
(license license:lgpl2.1+)))
|
(license l:lgpl2.1+)))
|
||||||
|
|
||||||
(define-public mktorrent
|
(define-public mktorrent
|
||||||
(package
|
(package
|
||||||
@@ -488,8 +488,8 @@ files and whole directories. It can add multiple trackers and web seed URLs,
|
|||||||
and set the @code{private} flag to disallow advertisement through the
|
and set the @code{private} flag to disallow advertisement through the
|
||||||
distributed hash table (@dfn{DHT}) and Peer Exchange. Hashing is multi-threaded
|
distributed hash table (@dfn{DHT}) and Peer Exchange. Hashing is multi-threaded
|
||||||
and will take advantage of multiple processor cores where possible.")
|
and will take advantage of multiple processor cores where possible.")
|
||||||
(license (list license:public-domain ; sha1.*, used to build without OpenSSL
|
(license (list l:public-domain ; sha1.*, used to build without OpenSSL
|
||||||
license:gpl2+)))) ; with permission to link with OpenSSL
|
l:gpl2+)))) ; with permission to link with OpenSSL
|
||||||
|
|
||||||
(define-public libtorrent-rasterbar
|
(define-public libtorrent-rasterbar
|
||||||
(package
|
(package
|
||||||
@@ -533,16 +533,15 @@ and will take advantage of multiple processor cores where possible.")
|
|||||||
(inputs (list boost-1.83 openssl))
|
(inputs (list boost-1.83 openssl))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list libfaketime
|
(list libfaketime
|
||||||
pkg-config
|
python-wrapper
|
||||||
python-setuptools
|
pkg-config))
|
||||||
python-wrapper))
|
|
||||||
(home-page "https://www.libtorrent.org/")
|
(home-page "https://www.libtorrent.org/")
|
||||||
(synopsis "Feature-complete BitTorrent implementation")
|
(synopsis "Feature-complete BitTorrent implementation")
|
||||||
(description
|
(description
|
||||||
"libtorrent-rasterbar is a feature-complete C++ BitTorrent implementation
|
"libtorrent-rasterbar is a feature-complete C++ BitTorrent implementation
|
||||||
focusing on efficiency and scalability. It runs on embedded devices as well as
|
focusing on efficiency and scalability. It runs on embedded devices as well as
|
||||||
desktops.")
|
desktops.")
|
||||||
(license license:bsd-2)))
|
(license l:bsd-2)))
|
||||||
|
|
||||||
(define-public qbittorrent
|
(define-public qbittorrent
|
||||||
(package
|
(package
|
||||||
@@ -586,7 +585,7 @@ libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
|
|||||||
It aims to be a good alternative to all other BitTorrent clients out there.
|
It aims to be a good alternative to all other BitTorrent clients out there.
|
||||||
qBittorrent is fast, stable and provides unicode support as well as many
|
qBittorrent is fast, stable and provides unicode support as well as many
|
||||||
features.")
|
features.")
|
||||||
(license license:gpl2+)))
|
(license l:gpl2+)))
|
||||||
|
|
||||||
(define-public qbittorrent-no-x
|
(define-public qbittorrent-no-x
|
||||||
(let ((base qbittorrent))
|
(let ((base qbittorrent))
|
||||||
@@ -728,4 +727,4 @@ Protocol Encryption, DHT, Local Peer Discovery (LSD), Peer Exchange
|
|||||||
speed limits. Deluge heavily utilises the libtorrent library. It is
|
speed limits. Deluge heavily utilises the libtorrent library. It is
|
||||||
designed to run as both a normal standalone desktop application and as a
|
designed to run as both a normal standalone desktop application and as a
|
||||||
client-server.")
|
client-server.")
|
||||||
(license license:gpl3+)))
|
(license l:gpl3+)))
|
||||||
|
|||||||
@@ -334,7 +334,7 @@ parallel study, and original language study.")
|
|||||||
(define-public book-emacs-lisp-elements
|
(define-public book-emacs-lisp-elements
|
||||||
(package
|
(package
|
||||||
(name "book-emacs-lisp-elements")
|
(name "book-emacs-lisp-elements")
|
||||||
(version "2.0.4")
|
(version "2.0.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -343,7 +343,7 @@ parallel study, and original language study.")
|
|||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "06mhrb16h93n3s3srcfgmzsyh2lxx4ffj1di6qvczfg4039pi3c8"))))
|
(base32 "0774zycgx3zspn6f8pszap1751xgrlv2h3x66kksnj589nfnwzil"))))
|
||||||
(build-system emacs-build-system)
|
(build-system emacs-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
|
|||||||
+37
-53
@@ -83,6 +83,9 @@
|
|||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
|
#:imported-modules %pyproject-build-system-modules
|
||||||
|
#:modules `(((guix build pyproject-build-system) #:select (python-version))
|
||||||
|
,@%default-gnu-modules)
|
||||||
#:tests? #f
|
#:tests? #f
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
#~(let ((icu (dirname (dirname (search-input-file
|
#~(let ((icu (dirname (dirname (search-input-file
|
||||||
@@ -91,26 +94,17 @@
|
|||||||
;; Auto-detection looks for ICU only in traditional
|
;; Auto-detection looks for ICU only in traditional
|
||||||
;; install locations.
|
;; install locations.
|
||||||
(string-append "--with-icu=" icu)
|
(string-append "--with-icu=" icu)
|
||||||
;; Ditto for Python. The Gexp can't be evaluated if python is not
|
;; Ditto for Python.
|
||||||
;; in the inputs (e.g. boost-for-mysql), so delay its evaluation
|
#$@(if (%current-target-system)
|
||||||
;; after checking for python, rather than concurrently.
|
#~()
|
||||||
#$@(force
|
#~((let ((python (dirname (dirname (search-input-file
|
||||||
(if (or (%current-target-system)
|
%build-inputs
|
||||||
(not (this-package-input "python-minimal-wrapper")))
|
"bin/python")))))
|
||||||
(delay
|
(string-append "--with-python-root=" python)
|
||||||
#~())
|
(string-append "--with-python=" python
|
||||||
(delay
|
"/bin/python")
|
||||||
#~((let ((python (dirname (dirname (search-input-file
|
(string-append "--with-python-version="
|
||||||
%build-inputs
|
(python-version python)))))
|
||||||
"bin/python")))))
|
|
||||||
(string-append "--with-python-root=" python)
|
|
||||||
(string-append "--with-python=" python
|
|
||||||
"/bin/python")
|
|
||||||
(string-append "--with-python-version="
|
|
||||||
#$(version-major+minor
|
|
||||||
(package-version
|
|
||||||
(this-package-input
|
|
||||||
"python-minimal-wrapper")))))))))
|
|
||||||
"--with-toolset=gcc"))
|
"--with-toolset=gcc"))
|
||||||
#:make-flags
|
#:make-flags
|
||||||
#~(list "threading=multi" "link=shared"
|
#~(list "threading=multi" "link=shared"
|
||||||
@@ -206,39 +200,29 @@
|
|||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(apply invoke "./b2" "install" make-flags)))
|
(apply invoke "./b2" "install" make-flags)))
|
||||||
#$@(force ; See above for why the force is necessary.
|
#$@(if (%current-target-system)
|
||||||
(if (or (%current-target-system)
|
#~()
|
||||||
(not (this-package-input "python-minimal-wrapper")))
|
#~((add-after 'install 'provide-libboost_python
|
||||||
(delay
|
(lambda* (#:key make-flags inputs outputs #:allow-other-keys)
|
||||||
#~())
|
(let* ((static? (member "link=static" make-flags))
|
||||||
(delay
|
(libext (if static? ".a" ".so"))
|
||||||
#~((add-after 'install 'provide-libboost_python
|
(python (dirname (dirname (search-input-file
|
||||||
(lambda* (#:key make-flags inputs outputs
|
inputs "bin/python"))))
|
||||||
#:allow-other-keys)
|
(python-version (python-version python))
|
||||||
(let* ((static? (member "link=static" make-flags))
|
(libboost_pythonNN
|
||||||
(ext (if static? ".a" ".so"))
|
(string-append "libboost_python"
|
||||||
(python (dirname
|
(string-join (string-split
|
||||||
(dirname (search-input-file
|
python-version #\.)
|
||||||
inputs "bin/python"))))
|
"")
|
||||||
(python-version
|
libext)))
|
||||||
#$(version-major+minor
|
(with-directory-excursion (string-append #$output "/lib")
|
||||||
(package-version
|
(symlink libboost_pythonNN
|
||||||
(this-package-input
|
(string-append "libboost_python" libext))
|
||||||
"python-minimal-wrapper"))))
|
;; Some packages only look for the major version.
|
||||||
(NN (string-join (string-split
|
(symlink libboost_pythonNN
|
||||||
python-version #\.)
|
(string-append "libboost_python"
|
||||||
""))
|
(string-take python-version 1)
|
||||||
(libboost_pythonNN
|
libext)))))))))))
|
||||||
(string-append "libboost_python" NN ext))
|
|
||||||
(major (string-take python-version 1)))
|
|
||||||
(with-directory-excursion
|
|
||||||
(string-append #$output "/lib")
|
|
||||||
(symlink libboost_pythonNN
|
|
||||||
(string-append "libboost_python" ext))
|
|
||||||
;; Some packages only look for the major version.
|
|
||||||
(symlink libboost_pythonNN
|
|
||||||
(string-append "libboost_python"
|
|
||||||
major ext)))))))))))))
|
|
||||||
(inputs
|
(inputs
|
||||||
(append
|
(append
|
||||||
(list icu4c zlib)
|
(list icu4c zlib)
|
||||||
|
|||||||
@@ -48,7 +48,6 @@
|
|||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages disk)
|
#:use-module (gnu packages disk)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages build-tools)
|
|
||||||
#:use-module (gnu packages cdrom)
|
#:use-module (gnu packages cdrom)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
@@ -66,6 +65,7 @@
|
|||||||
#:use-module (gnu packages man)
|
#:use-module (gnu packages man)
|
||||||
#:use-module (gnu packages mtools)
|
#:use-module (gnu packages mtools)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages package-management)
|
#:use-module (gnu packages package-management)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
@@ -267,8 +267,8 @@
|
|||||||
;; rebooting.
|
;; rebooting.
|
||||||
(if (member (or (%current-target-system)
|
(if (member (or (%current-target-system)
|
||||||
(%current-system))
|
(%current-system))
|
||||||
(package-supported-systems fuse))
|
(package-supported-systems fuse-2))
|
||||||
(list fuse)
|
(list fuse-2)
|
||||||
'())))
|
'())))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(append (list pkg-config
|
(append (list pkg-config
|
||||||
@@ -1815,68 +1815,63 @@ For more information, refer to
|
|||||||
(define-public os-prober
|
(define-public os-prober
|
||||||
(package
|
(package
|
||||||
(name "os-prober")
|
(name "os-prober")
|
||||||
(version "1.84")
|
(version "1.81")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (string-append "mirror://debian/pool/main/o/os-prober/os-prober_"
|
||||||
(url "https://salsa.debian.org/installer-team/os-prober.git")
|
version ".tar.xz"))
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1bji3w6nbqaz8zqrbmy8b1j5dph9xn7bdh1cd2z8ia1q125i6mgp"))))
|
(base32 "10w8jz6mqhp0skdcam9mpgv79vx1sv7lkpra3rqjg0jkhvn2in9g"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
`(#:modules ((guix build gnu-build-system)
|
||||||
#:tests? #f ; No tests.
|
|
||||||
#:modules '((guix build gnu-build-system)
|
|
||||||
(guix build utils)
|
(guix build utils)
|
||||||
(ice-9 regex) ; string-match
|
(ice-9 regex) ; for string-match
|
||||||
(srfi srfi-26)) ; cut
|
(srfi srfi-26)) ; for cut
|
||||||
#:make-flags
|
#:make-flags
|
||||||
#~(list (string-append "CC=" #$(cc-for-target)))
|
(list ,(string-append "CC=" (cc-for-target)))
|
||||||
#:phases
|
#:tests? #f ; no tests
|
||||||
#~(modify-phases %standard-phases
|
#:phases
|
||||||
(replace 'configure
|
(modify-phases %standard-phases
|
||||||
(lambda _
|
(replace 'configure
|
||||||
(substitute* (find-files ".")
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(("/usr") #$output))
|
(substitute* (find-files ".")
|
||||||
(substitute* (find-files "." "50mounted-tests$")
|
(("/usr") (assoc-ref outputs "out")))
|
||||||
(("mkdir") "mkdir -p -v"))))
|
(substitute* (find-files "." "50mounted-tests$")
|
||||||
(replace 'install
|
(("mkdir") "mkdir -p"))))
|
||||||
(lambda _
|
(replace 'install
|
||||||
(define (find-files-non-recursive directory)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(find-files directory
|
(define (find-files-non-recursive directory)
|
||||||
(lambda (file stat)
|
(find-files directory
|
||||||
(string-match (string-append "^" directory "/[^/]*$")
|
(lambda (file stat)
|
||||||
file))
|
(string-match (string-append "^" directory "/[^/]*$")
|
||||||
#:directories? #t))
|
file))
|
||||||
|
#:directories? #t))
|
||||||
|
|
||||||
(let ((bin (string-append #$output "/bin"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(lib (string-append #$output "/lib"))
|
(bin (string-append out "/bin"))
|
||||||
(share (string-append #$output "/share")))
|
(lib (string-append out "/lib"))
|
||||||
(for-each (cut install-file <> bin)
|
(share (string-append out "/share")))
|
||||||
(list "linux-boot-prober" "os-prober"))
|
(for-each (cut install-file <> bin)
|
||||||
(install-file "newns" (string-append lib "/os-prober"))
|
(list "linux-boot-prober" "os-prober"))
|
||||||
(install-file "common.sh" (string-append share "/os-prober"))
|
(install-file "newns" (string-append lib "/os-prober"))
|
||||||
(install-file "os-probes/mounted/powerpc/20macosx"
|
(install-file "common.sh" (string-append share "/os-prober"))
|
||||||
(string-append lib "/os-probes/mounted"))
|
(install-file "os-probes/mounted/powerpc/20macosx"
|
||||||
(for-each
|
(string-append lib "/os-probes/mounted"))
|
||||||
(lambda (directory)
|
(for-each
|
||||||
(for-each
|
(lambda (directory)
|
||||||
(lambda (file)
|
(for-each
|
||||||
(let ((destination (string-append lib "/" directory
|
(lambda (file)
|
||||||
"/" (basename file))))
|
(let ((destination (string-append lib "/" directory
|
||||||
(mkdir-p (dirname destination))
|
"/" (basename file))))
|
||||||
(copy-recursively file destination)))
|
(mkdir-p (dirname destination))
|
||||||
(append (find-files-non-recursive (string-append directory "/common"))
|
(copy-recursively file destination)))
|
||||||
(find-files-non-recursive (string-append directory "/x86")))))
|
(append (find-files-non-recursive (string-append directory "/common"))
|
||||||
(list "linux-boot-probes"
|
(find-files-non-recursive (string-append directory "/x86")))))
|
||||||
"linux-boot-probes/mounted"
|
(list "os-probes" "os-probes/mounted" "os-probes/init"
|
||||||
"os-probes"
|
"linux-boot-probes" "linux-boot-probes/mounted"))))))))
|
||||||
"os-probes/init"
|
(home-page "https://joeyh.name/code/os-prober")
|
||||||
"os-probes/mounted"))))))))
|
|
||||||
(home-page "https://joeyh.name/code/os-prober/")
|
|
||||||
(synopsis "Detect other operating systems")
|
(synopsis "Detect other operating systems")
|
||||||
(description "os-prober probes disks on the system for other operating
|
(description "os-prober probes disks on the system for other operating
|
||||||
systems so that they can be added to the bootloader. It also works out how to
|
systems so that they can be added to the bootloader. It also works out how to
|
||||||
|
|||||||
@@ -69,55 +69,6 @@ match website theme.")
|
|||||||
(define-public adaptive-tab-bar-colour/icecat
|
(define-public adaptive-tab-bar-colour/icecat
|
||||||
(make-icecat-extension adaptive-tab-bar-colour))
|
(make-icecat-extension adaptive-tab-bar-colour))
|
||||||
|
|
||||||
(define canvasblocker
|
|
||||||
(package
|
|
||||||
(name "canvasblocker")
|
|
||||||
(version "1.12")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/kkapsner/CanvasBlocker")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0xxs6s7nrl4y4qiw2cpkqh170mbv78n0ixd874a72jjvczw2vpg7"))
|
|
||||||
(modules '((guix build utils) (ice-9 match) (ice-9 ftw)))
|
|
||||||
(snippet
|
|
||||||
#~(begin
|
|
||||||
(for-each delete-file
|
|
||||||
'("canvasblocker.xpi" "package-lock.json"))
|
|
||||||
;; Delete all hidden files/directories except .tools.
|
|
||||||
(for-each
|
|
||||||
(match-lambda
|
|
||||||
((or "." ".tools" ".."
|
|
||||||
(? (lambda (name)
|
|
||||||
(not (string-prefix? "." name)))))
|
|
||||||
#t)
|
|
||||||
((? file-is-directory? dir)
|
|
||||||
(delete-file-recursively dir))
|
|
||||||
(file
|
|
||||||
(delete-file file)))
|
|
||||||
(scandir "."))))))
|
|
||||||
(build-system copy-build-system)
|
|
||||||
(properties '((addon-id . "CanvasBlocker@kkapsner.de")))
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:install-plan ;deduced from .tools/build.js
|
|
||||||
#~'(("." #$(assq-ref properties 'addon-id)
|
|
||||||
#:exclude ("crowdin.yml" "package.json" "releaseNotes.txt")
|
|
||||||
#:exclude-regexp ("test/.*" "versions/.*" ".tools/*")))))
|
|
||||||
(home-page "https://github.com/kkapsner/CanvasBlocker")
|
|
||||||
(synopsis "Firefox extension to protect from being fingerprinted")
|
|
||||||
(description "This extension allows users to prevent websites from using
|
|
||||||
some Javascript APIs to fingerprint them. Users can choose to block the APIs
|
|
||||||
entirely on some or all websites (which may break some websites) or just block
|
|
||||||
or fake its fingerprinting-friendly readout API.")
|
|
||||||
(license license:mpl2.0)))
|
|
||||||
|
|
||||||
(define-public canvasblocker/icecat
|
|
||||||
(make-icecat-extension canvasblocker))
|
|
||||||
|
|
||||||
(define play-to-kodi
|
(define play-to-kodi
|
||||||
(package
|
(package
|
||||||
(name "play-to-kodi")
|
(name "play-to-kodi")
|
||||||
@@ -144,8 +95,8 @@ supported content to the Kodi media center.")
|
|||||||
;; Arbitrary commit of branch master,
|
;; Arbitrary commit of branch master,
|
||||||
;; Update when updating uBlockOrigin.
|
;; Update when updating uBlockOrigin.
|
||||||
(let* ((name "ublock-main-assets")
|
(let* ((name "ublock-main-assets")
|
||||||
(commit "004af606e6a0efc22bc65ab1016b553441cacb71")
|
(commit "011eef4a5b36a7ebf4adedc486d96b77cfa25c54")
|
||||||
(revision "6")
|
(revision "5")
|
||||||
(version (git-version "0" revision commit)))
|
(version (git-version "0" revision commit)))
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -154,14 +105,14 @@ supported content to the Kodi media center.")
|
|||||||
(commit commit)))
|
(commit commit)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1bfd2d53flrkgvjcr1kj9nbxj4y9a4pcr7m3dycccdhd21x6k0ln")))))
|
(base32 "0ng8a88zdvrxg30fz83gswjy27b3hfx9q11n2i715id7az7kqf9x")))))
|
||||||
|
|
||||||
(define ublock-prod-assets
|
(define ublock-prod-assets
|
||||||
;; Arbitrary commit of branch gh-pages,
|
;; Arbitrary commit of branch gh-pages,
|
||||||
;; Update when updating uBlockOrigin.
|
;; Update when updating uBlockOrigin.
|
||||||
(let* ((name "ublock-prod-assets")
|
(let* ((name "ublock-prod-assets")
|
||||||
(commit "6c15e4ef91888c610caf73829dc78ae9549ed24a")
|
(commit "6844322800de647da0c4fe06dd6a0b212a3942e4")
|
||||||
(revision "6")
|
(revision "5")
|
||||||
(version (git-version "0" revision commit)))
|
(version (git-version "0" revision commit)))
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -170,12 +121,12 @@ supported content to the Kodi media center.")
|
|||||||
(commit commit)))
|
(commit commit)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0n2h6drqh44b1zgl729bfr70n08mkm536a2vqgivw7dm5dmi8zd3")))))
|
(base32 "13vxq4z1wxivz5xklncxd2sj5aqkyhq919vzbbfp0fgh0imhikib")))))
|
||||||
|
|
||||||
(define ublock-origin
|
(define ublock-origin
|
||||||
(package
|
(package
|
||||||
(name "ublock-origin")
|
(name "ublock-origin")
|
||||||
(version "1.70.0")
|
(version "1.66.2")
|
||||||
(home-page "https://github.com/gorhill/uBlock")
|
(home-page "https://github.com/gorhill/uBlock")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -185,7 +136,7 @@ supported content to the Kodi media center.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0j1m80nz86yc69c42hv5di5zza0vkycqmjaydb9jgx0abcvi19x5"))))
|
"16ph031hb8bf4rxyxvm6jr0bxmy0snza11jfrbjgfb390gax9r63"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("xpi" "firefox" "chromium"))
|
(outputs '("xpi" "firefox" "chromium"))
|
||||||
(properties '((addon-id . "uBlock0@raymondhill.net")))
|
(properties '((addon-id . "uBlock0@raymondhill.net")))
|
||||||
@@ -312,7 +263,7 @@ fill and submit login forms if a matching password entry is found.")
|
|||||||
(define keepassxc-browser
|
(define keepassxc-browser
|
||||||
(package
|
(package
|
||||||
(name "keepassxc-browser")
|
(name "keepassxc-browser")
|
||||||
(version "1.9.10")
|
(version "1.9.9.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -322,7 +273,7 @@ fill and submit login forms if a matching password entry is found.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"18kgmdvsq1kv9px8a1m7i10r4m0iik72qlnw9k2ijxmn1xikfyfb"))
|
"1chw1y1332zn69s7kf5mkljc1bp2xfvl3zzvafnalv3zj2jsa5cs"))
|
||||||
;; Default 'manifest.json' targets chromium based browsers and
|
;; Default 'manifest.json' targets chromium based browsers and
|
||||||
;; depends on background.service_worker support.
|
;; depends on background.service_worker support.
|
||||||
;; See: <https://bugzilla.mozilla.org/show_bug.cgi?id=1573659>
|
;; See: <https://bugzilla.mozilla.org/show_bug.cgi?id=1573659>
|
||||||
@@ -377,15 +328,15 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
|
|||||||
(define noscript
|
(define noscript
|
||||||
(package
|
(package
|
||||||
(name "noscript")
|
(name "noscript")
|
||||||
(version "13.6.19.1984")
|
(version "13.2.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch/zipbomb)
|
(method url-fetch/zipbomb)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://archive.torproject.org/tor-package-archive/torbrowser/noscript/noscript-"
|
"https://noscript.net/download/releases/noscript-" version
|
||||||
version ".xpi"))
|
".xpi"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1lb3855w34avs7idvycv8cfpjnpic2mnsh9yqkidrdw7msr0na74"))))
|
"0w2w0a76dk01bkh83mqwgs9ky02rjqk15z5sxg4a6mw0hpr81bpm"))))
|
||||||
(build-system copy-build-system)
|
(build-system copy-build-system)
|
||||||
(properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}")))
|
(properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}")))
|
||||||
(arguments
|
(arguments
|
||||||
|
|||||||
+35
-180
@@ -44,17 +44,37 @@
|
|||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages build-tools)
|
(define-module (gnu packages build-tools)
|
||||||
|
#:use-module (ice-9 optargs)
|
||||||
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
|
#:use-module (gnu packages c)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system copy)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system guile)
|
||||||
|
#:use-module (guix build-system hare)
|
||||||
|
#:use-module (guix build-system meson)
|
||||||
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
|
#:use-module (guix build-system trivial)
|
||||||
|
#:use-module (guix deprecation)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (guix modules)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix search-paths)
|
||||||
|
#:use-module (guix utils)
|
||||||
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages adns)
|
||||||
#:use-module (gnu packages algebra)
|
#:use-module (gnu packages algebra)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages c)
|
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages code)
|
#:use-module (gnu packages code)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages cpp)
|
#:use-module (gnu packages cpp)
|
||||||
#:use-module (gnu packages cppi)
|
#:use-module (gnu packages cppi)
|
||||||
#:use-module (gnu packages dns)
|
|
||||||
#:use-module (gnu packages elf)
|
#:use-module (gnu packages elf)
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
@@ -64,6 +84,7 @@
|
|||||||
#:use-module (gnu packages logging)
|
#:use-module (gnu packages logging)
|
||||||
#:use-module (gnu packages lua)
|
#:use-module (gnu packages lua)
|
||||||
#:use-module (gnu packages man)
|
#:use-module (gnu packages man)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages package-management)
|
#:use-module (gnu packages package-management)
|
||||||
#:use-module (gnu packages pcre)
|
#:use-module (gnu packages pcre)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
@@ -76,7 +97,6 @@
|
|||||||
#:use-module (gnu packages python-crypto)
|
#:use-module (gnu packages python-crypto)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages re2c)
|
|
||||||
#:use-module (gnu packages regex)
|
#:use-module (gnu packages regex)
|
||||||
#:use-module (gnu packages rpc)
|
#:use-module (gnu packages rpc)
|
||||||
#:use-module (gnu packages serialization)
|
#:use-module (gnu packages serialization)
|
||||||
@@ -85,27 +105,7 @@
|
|||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages unicode)
|
#:use-module (gnu packages unicode)
|
||||||
#:use-module (gnu packages version-control)
|
#:use-module (gnu packages version-control)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml))
|
||||||
#:use-module (gnu packages)
|
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix build-system copy)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system guile)
|
|
||||||
#:use-module (guix build-system hare)
|
|
||||||
#:use-module (guix build-system meson)
|
|
||||||
#:use-module (guix build-system pyproject)
|
|
||||||
#:use-module (guix build-system trivial)
|
|
||||||
#:use-module (guix deprecation)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix modules)
|
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module (guix search-paths)
|
|
||||||
#:use-module (guix utils)
|
|
||||||
#:use-module (ice-9 optargs)
|
|
||||||
#:use-module (srfi srfi-1))
|
|
||||||
|
|
||||||
(define-public acr
|
(define-public acr
|
||||||
(package
|
(package
|
||||||
@@ -196,8 +196,7 @@ according to the system capabilities and the user-selected options.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6"))
|
"13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6"))))
|
||||||
(patches (search-patches "bam-python3-compat.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags `(,(string-append "CC=" ,(cc-for-target))
|
`(#:make-flags `(,(string-append "CC=" ,(cc-for-target))
|
||||||
@@ -208,7 +207,7 @@ according to the system capabilities and the user-selected options.")
|
|||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(delete 'configure))))
|
(delete 'configure))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-minimal-wrapper))
|
`(("python" ,python-2)))
|
||||||
(inputs
|
(inputs
|
||||||
(list lua))
|
(list lua))
|
||||||
(home-page "https://matricks.github.io/bam/")
|
(home-page "https://matricks.github.io/bam/")
|
||||||
@@ -275,14 +274,14 @@ generate such a compilation database.")
|
|||||||
(define-public bmake
|
(define-public bmake
|
||||||
(package
|
(package
|
||||||
(name "bmake")
|
(name "bmake")
|
||||||
(version "20260508")
|
(version "20260313")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
|
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0b58j7l53jbqaxcfggimdbylf71hbyfm44m6s4646ry7mf8fl7kv"))
|
(base32 "0xgryknmv625idw37rq89mpl5rymwdb15j5w8zxwy1gf8b6z7j3n"))
|
||||||
(patches (search-patches "bmake-run-check-separately.patch"))))
|
(patches (search-patches "bmake-run-check-separately.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
@@ -345,8 +344,8 @@ programs and other files depend.")
|
|||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public gn
|
(define-public gn
|
||||||
(let ((commit "6e8dcdebbadf4f8aa75e6a4b6e0bdf89dce1513a")
|
(let ((commit "ee5b7e32b961a9da1933e9f46a018ba6cac8ef60")
|
||||||
(revision "2354")) ;as returned by `git describe`, used below
|
(revision "2277")) ;as returned by `git describe`, used below
|
||||||
(package
|
(package
|
||||||
(name "gn")
|
(name "gn")
|
||||||
(version (git-version "0.0" revision commit))
|
(version (git-version "0.0" revision commit))
|
||||||
@@ -356,7 +355,7 @@ programs and other files depend.")
|
|||||||
(uri (git-reference (url home-page) (commit commit)))
|
(uri (git-reference (url home-page) (commit commit)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0yz38czmbc72q1hkiv3cwxqh2i8ji2vkkvvk5ws2cjplmn2vj0x9"))
|
"19kkvwxl66vlzlfppbq03fmi59i5g8a1yc71fsfgwqqmx4wywd6w"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
@@ -366,8 +365,7 @@ programs and other files depend.")
|
|||||||
(lambda _
|
(lambda _
|
||||||
(setenv "CC" "gcc")
|
(setenv "CC" "gcc")
|
||||||
(setenv "CXX" "g++")
|
(setenv "CXX" "g++")
|
||||||
(setenv "CXXFLAGS"
|
(setenv "CXXFLAGS" "-g -O2 -Wno-error=redundant-move")
|
||||||
"-g -O2 -Wno-error=redundant-move -Wno-error=comment")
|
|
||||||
(setenv "AR" "ar")))
|
(setenv "AR" "ar")))
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda _
|
(lambda _
|
||||||
@@ -432,8 +430,9 @@ files and generates build instructions for the Ninja build system.")
|
|||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:tests? #f ;disabled to avoid extra dependencies
|
#:tests? #f ;disabled to avoid extra dependencies
|
||||||
;; Custom build steps to prevent using pyproject-build-system which
|
;; Essentially a lighter copy of the former python-build-system.
|
||||||
;; allows to edit the latter without a C++ world rebuild.
|
;; Using it rather than pyproject-build-system allows to edit the latter
|
||||||
|
;; without a C++ world rebuild.
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(delete 'bootstrap)
|
(delete 'bootstrap)
|
||||||
@@ -1451,147 +1450,3 @@ It is an alternative to e.g. @command{make(1)} and @command{redo(1)}. Features:
|
|||||||
@end itemize
|
@end itemize
|
||||||
")
|
")
|
||||||
(license license:wtfpl2)))
|
(license license:wtfpl2)))
|
||||||
|
|
||||||
(define-public xmake
|
|
||||||
(package
|
|
||||||
(name "xmake")
|
|
||||||
(version "3.0.8")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/xmake-io/xmake.git")
|
|
||||||
(commit (string-append "v" version))
|
|
||||||
;; Requires some dependencies from "xmake-core-*" repos
|
|
||||||
(recursive? #t)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1pdjz52w9lzfbcpx9wmzy0bsjg7i19xz43f63czk7jz9v0xba6gi"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
;; No check rule in make
|
|
||||||
;; TODO: find how to run Lua tests in "test" directory
|
|
||||||
#:tests? #f))
|
|
||||||
(home-page "https://xmake.io/")
|
|
||||||
(synopsis "Cross-platform build utility based on Lua")
|
|
||||||
(description "@command{xmake} is a cross-platform build utility based on Lua.
|
|
||||||
Features:
|
|
||||||
@itemize
|
|
||||||
@item Built-in caching and parallel compilation,
|
|
||||||
@item Concise Lua syntax,
|
|
||||||
@item Custom rules, plugins and modules,
|
|
||||||
@item Support for C++20 modules and compile_commands.json,
|
|
||||||
@item Support for languages outside C/C++ (e.g. Go, Rust, Zig).
|
|
||||||
@end itemize")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public ninja/pinned
|
|
||||||
(hidden-package
|
|
||||||
(package
|
|
||||||
(name "ninja")
|
|
||||||
(version "1.13.2")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/ninja-build/ninja")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0lp9dmxbjyjwv089i8mgq3nvnhpbnsn01ifm05m9s47w7cifrl8g"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(inputs (list python-wrapper re2c))
|
|
||||||
(arguments
|
|
||||||
'(; Tests now require googletest, which is a circular dependency.
|
|
||||||
#:tests? #f
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(replace 'configure
|
|
||||||
(lambda _
|
|
||||||
(substitute* "src/subprocess-posix.cc"
|
|
||||||
(("/bin/sh") (which "sh")))
|
|
||||||
(substitute* "src/subprocess_test.cc"
|
|
||||||
(("/bin/echo") (which "echo")))))
|
|
||||||
(replace 'build
|
|
||||||
(lambda _
|
|
||||||
(invoke "./configure.py" "--bootstrap")))
|
|
||||||
(replace 'check
|
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
|
||||||
(when tests?
|
|
||||||
(invoke "./configure.py")
|
|
||||||
(invoke "./ninja" "ninja_test")
|
|
||||||
(invoke "./ninja_test"))))
|
|
||||||
(replace 'install
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(bin (string-append out "/bin"))
|
|
||||||
(doc (string-append out "/share/doc/ninja")))
|
|
||||||
(install-file "ninja" bin)
|
|
||||||
(install-file "doc/manual.asciidoc" doc)))))))
|
|
||||||
(home-page "https://ninja-build.org/")
|
|
||||||
(synopsis "Small build system")
|
|
||||||
(description
|
|
||||||
"Ninja is a small build system with a focus on speed. It differs from
|
|
||||||
other build systems in two major respects: it is designed to have its input
|
|
||||||
files generated by a higher-level build system, and it is designed to run
|
|
||||||
builds as fast as possible.")
|
|
||||||
(license license:asl2.0))))
|
|
||||||
|
|
||||||
(define-public ninja
|
|
||||||
(package/inherit ninja/pinned
|
|
||||||
(properties (alist-delete 'hidden? (package-properties ninja/pinned)))))
|
|
||||||
|
|
||||||
(define-public samurai
|
|
||||||
(package
|
|
||||||
(name "samurai")
|
|
||||||
(version "1.2")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/michaelforney/samurai")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"04iw18hgkm72yrl83a2xh1jc47w9rilpb95kwick0j37b4q3gxj4"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:tests? #f ;no test suite
|
|
||||||
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
|
|
||||||
(string-append "PREFIX=" #$output))
|
|
||||||
#:phases #~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'patch-/bin/sh
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(substitute* "build.c"
|
|
||||||
(("/bin/sh")
|
|
||||||
(search-input-file inputs "bin/sh")))))
|
|
||||||
(delete 'configure))))
|
|
||||||
(inputs (list bash-minimal))
|
|
||||||
(home-page "https://github.com/michaelforney/samurai")
|
|
||||||
(synopsis "Ninja-compatible build tool written in C")
|
|
||||||
(description "@code{samurai} is a ninja-compatible build tool written in
|
|
||||||
C99 with a focus on simplicity, speed, and portability. It is
|
|
||||||
feature-complete and supports most of the same options as ninja. This package
|
|
||||||
provides the command @command{samu}. For a @command{ninja} command
|
|
||||||
replacement, use the @code{samu-as-ninja-wrapper} package.")
|
|
||||||
(license (list license:asl2.0 ;for the most part
|
|
||||||
license:expat)))) ;htab.h, htab.c and tree.c
|
|
||||||
|
|
||||||
(define-public samu-as-ninja-wrapper
|
|
||||||
(package/inherit samurai
|
|
||||||
(name "samu-as-ninja-wrapper")
|
|
||||||
(build-system trivial-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:builder
|
|
||||||
(with-imported-modules '((guix build utils))
|
|
||||||
#~(begin
|
|
||||||
(use-modules (guix build utils))
|
|
||||||
(let ((bindir (string-append #$output "/bin"))
|
|
||||||
(samu (string-append #$(this-package-input "samurai")
|
|
||||||
"/bin/samu")))
|
|
||||||
(mkdir-p bindir)
|
|
||||||
(symlink samu (string-append bindir "/ninja")))))))
|
|
||||||
(inputs (list samurai))
|
|
||||||
(description "This package provides the @command{ninja} command,
|
|
||||||
implemented as a symbolic link to the @command{samu} command of @code{samurai}
|
|
||||||
package.")))
|
|
||||||
|
|||||||
+49
-50
@@ -23,7 +23,7 @@
|
|||||||
;;; Copyright © 2023, 2024 David Elsing <david.elsing@posteo.net>
|
;;; Copyright © 2023, 2024 David Elsing <david.elsing@posteo.net>
|
||||||
;;; Copyright @ 2022, Kitzman <kitzman@disroot.org>
|
;;; Copyright @ 2022, Kitzman <kitzman@disroot.org>
|
||||||
;;; Copyright @ 2025 Dariqq <dariqq@posteo.net>
|
;;; Copyright @ 2025 Dariqq <dariqq@posteo.net>
|
||||||
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
|
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||||
;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
|
;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
@@ -47,7 +47,6 @@
|
|||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix deprecation)
|
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
@@ -55,6 +54,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix store)
|
#:use-module (guix store)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
@@ -62,7 +62,6 @@
|
|||||||
#:use-module (gnu packages bootstrap)
|
#:use-module (gnu packages bootstrap)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compiler-tools)
|
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages gawk)
|
#:use-module (gnu packages gawk)
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
@@ -82,7 +81,6 @@
|
|||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages sqlite)
|
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xml))
|
#:use-module (gnu packages xml))
|
||||||
@@ -1095,8 +1093,32 @@ portability.")
|
|||||||
(license (list license:bsd-2 ;all files except...
|
(license (list license:bsd-2 ;all files except...
|
||||||
license:bsd-3)))) ;...the unidef.1 manual page
|
license:bsd-3)))) ;...the unidef.1 manual page
|
||||||
|
|
||||||
(define-deprecated/public-alias byacc
|
(define-public byacc
|
||||||
(@ (gnu packages compiler-tools) byacc))
|
(package
|
||||||
|
(name "byacc")
|
||||||
|
(version "20240109")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://invisible-mirror.net/archives/byacc/byacc-"
|
||||||
|
version ".tgz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0il4w1vwbglayakywyghiqhcjpg1yvv5ww2p8ylz32bi05wpg2gj"))
|
||||||
|
(snippet
|
||||||
|
#~(begin (delete-file "btyaccpar.c")
|
||||||
|
(delete-file "yaccpar.c")))))
|
||||||
|
(native-inputs
|
||||||
|
(list gawk))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(home-page "https://invisible-island.net/byacc/byacc.html")
|
||||||
|
(synopsis "Berkeley Yacc LALR parser generator")
|
||||||
|
(description
|
||||||
|
"Berkeley Yacc is an LALR(1) parser generator. Yacc reads the grammar
|
||||||
|
specification from a file and generates an LALR(1) parser for it. The parsers
|
||||||
|
consist of a set of LALR(1) parsing tables and a driver routine written in the
|
||||||
|
C programming language.")
|
||||||
|
(license license:public-domain)))
|
||||||
|
|
||||||
(define-public argparse
|
(define-public argparse
|
||||||
(package
|
(package
|
||||||
@@ -1305,6 +1327,25 @@ for the @acronym{AWS,Amazon Web Services} SDK.")
|
|||||||
(home-page "https://github.com/awslabs/aws-c-sdkutils")
|
(home-page "https://github.com/awslabs/aws-c-sdkutils")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public pcl
|
||||||
|
(package
|
||||||
|
(name "pcl")
|
||||||
|
(version "1.12")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"http://www.xmailserver.org/pcl-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"06ly65rq4iyj2p4704i215c8y4rgspwl8sxfaifmf4ahfr30bcz7"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(home-page "http://www.xmailserver.org/libpcl.html")
|
||||||
|
(synopsis "Portable Coroutine Library")
|
||||||
|
(description "The @acronym{PCL, Portable Coroutine Library} implements the
|
||||||
|
low level functionality for coroutines.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public aws-c-http
|
(define-public aws-c-http
|
||||||
(package
|
(package
|
||||||
(name "aws-c-http")
|
(name "aws-c-http")
|
||||||
@@ -1478,48 +1519,6 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
|
|||||||
(home-page "https://microsoft.github.io/mimalloc/")
|
(home-page "https://microsoft.github.io/mimalloc/")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public mps
|
|
||||||
(package
|
|
||||||
(name "mps")
|
|
||||||
(version "1.118.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/Ravenbrook/mps")
|
|
||||||
(commit (string-append "release-" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "078iv3fsz0dnfwb7g63apkvcksczbqfxrxm73k80jwnwca6pgafy"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'patch-cflags
|
|
||||||
;; The recursive make call in the test suite doesn't pass CFLAGS
|
|
||||||
;; down properly so we need to do it ourselves
|
|
||||||
(lambda _
|
|
||||||
(substitute* "Makefile.in"
|
|
||||||
(("CFLAGS=\"(.*)\"" _ flags)
|
|
||||||
(string-append "CFLAGS=\"" flags " $(CFLAGS)\""))))))
|
|
||||||
#:parallel-build? #f ;Parallel build fails
|
|
||||||
#:test-target "test"
|
|
||||||
#:make-flags
|
|
||||||
#~(list "CFLAGS=-Wno-error=dangling-pointer -Wno-maybe-uninitialized"
|
|
||||||
;; These flags are needed for the recursive make calls in testing
|
|
||||||
(string-append "CC=" #$(cc-for-target)) "-j" "1")))
|
|
||||||
(inputs (list sqlite))
|
|
||||||
(home-page "http://www.ravenbrook.com/project/mps")
|
|
||||||
(synopsis "Memory pool system")
|
|
||||||
(description
|
|
||||||
"This package provides a cross-platform memory management system. It
|
|
||||||
permits the flexible combination of memory management techniques, supporting
|
|
||||||
manual and automatic memory management, in-line allocation, finalization,
|
|
||||||
weakness, and multiple concurrent co-operating incremental generational
|
|
||||||
garbage collections. It also includes a library of memory pool classes
|
|
||||||
implementing specialized memory management policies.")
|
|
||||||
(license license:bsd-2)))
|
|
||||||
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
|
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
|
||||||
(define-public orangeduck-mpc
|
(define-public orangeduck-mpc
|
||||||
;; The last release lacks an 'install' target.
|
;; The last release lacks an 'install' target.
|
||||||
@@ -1763,7 +1762,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
|||||||
(define-public simdutf
|
(define-public simdutf
|
||||||
(package
|
(package
|
||||||
(name "simdutf")
|
(name "simdutf")
|
||||||
(version "9.0.0")
|
(version "7.7.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1772,7 +1771,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0f5ccvqj7pfa69m9y1kxp2v1lybx6x8i9pykdqfkr7dydqbhrhx6"))))
|
(base32 "0kw4j4qqcfjaii667xa745pklj50m70nqq8cj5agj714acczbk7y"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
|
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
|
||||||
(synopsis "SIMD Unicode validation and transcoding")
|
(synopsis "SIMD Unicode validation and transcoding")
|
||||||
|
|||||||
@@ -45,6 +45,7 @@
|
|||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module ((guix build-system python) #:select (pypi-uri))
|
||||||
#:use-module (gnu packages admin)
|
#:use-module (gnu packages admin)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
|
|||||||
+43
-36
@@ -337,7 +337,7 @@ reconstruction capability.")
|
|||||||
(define-public cdrdao
|
(define-public cdrdao
|
||||||
(package
|
(package
|
||||||
(name "cdrdao")
|
(name "cdrdao")
|
||||||
(version "1.2.6")
|
(version "1.2.5")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -347,18 +347,30 @@ reconstruction capability.")
|
|||||||
(string-append "rel_" (string-replace-substring version "." "_")))))
|
(string-append "rel_" (string-replace-substring version "." "_")))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0hb8dfb88zk01yk5nfl8m5hsg4x2scb2899pxb717zywznr8jijw"))))
|
(base32 "1hh1lm4wr1vhsq2brczn94h88h3bppvjidj9cfqkl20jhaj38968"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
'(#:configure-flags
|
||||||
#:configure-flags
|
(list
|
||||||
#~(list
|
;; GCDMaster depends on obsolete libgnomeuimm, see
|
||||||
;; Use the native SCSI interface.
|
;; <https://github.com/cdrdao/cdrdao/issues/3>.
|
||||||
"--without-scglib")))
|
"--without-gcdmaster"
|
||||||
|
;; Use the native SCSI interface.
|
||||||
|
"--without-scglib")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'bootstrap 'fix-configure.ac
|
||||||
|
(lambda _
|
||||||
|
;; Remove references to missing macros.
|
||||||
|
(substitute* "configure.ac"
|
||||||
|
(("^AM_GCONF_SOURCE_2.*") "")
|
||||||
|
;; This was introduced in autoconf-2.70, but is described
|
||||||
|
;; as usually not needed in the autoconf documentation.
|
||||||
|
(("^AC_CHECK_INCLUDES_DEFAULT") "")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list autoconf-2.72 automake `(,glib "bin") pkg-config))
|
(list autoconf automake pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list ao gtkmm-3 lame libmad libsigc++-2 libvorbis))
|
(list ao lame libmad libvorbis))
|
||||||
(home-page "https://cdrdao.sourceforge.net")
|
(home-page "https://cdrdao.sourceforge.net")
|
||||||
(synopsis "Read and write CDs in disk-at-once mode")
|
(synopsis "Read and write CDs in disk-at-once mode")
|
||||||
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
|
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
|
||||||
@@ -583,11 +595,7 @@ capacity is user-selectable.")
|
|||||||
version "/DVDStyler-" version ".tar.bz2"))
|
version "/DVDStyler-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0n3mfjsazvlzk9hl23q3iz7bmxjq7b5lx0ab8nbk1jgl763k9cqb"))
|
"0n3mfjsazvlzk9hl23q3iz7bmxjq7b5lx0ab8nbk1jgl763k9cqb"))))
|
||||||
(snippet
|
|
||||||
#~(begin (delete-file "src/dvdvml.c")
|
|
||||||
(delete-file "src/dvdvmy.c")
|
|
||||||
(delete-file "src/dvdvmy.h")))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
@@ -617,28 +625,27 @@ capacity is user-selectable.")
|
|||||||
#t)))
|
#t)))
|
||||||
#:tests? #f)) ; No tests.
|
#:tests? #f)) ; No tests.
|
||||||
(inputs ; TODO package bundled wxvillalib
|
(inputs ; TODO package bundled wxvillalib
|
||||||
(list bash-minimal ; for wrap-program
|
`(("wxwidgets" ,wxwidgets)
|
||||||
cdrtools
|
("wssvg" ,wxsvg)
|
||||||
dbus
|
("bash" ,bash-minimal) ; for wrap-program
|
||||||
dvd+rw-tools
|
("dbus" ,dbus)
|
||||||
dvdauthor
|
("cdrtools" ,cdrtools)
|
||||||
eudev
|
("dvd+rw-tools" ,dvd+rw-tools)
|
||||||
ffmpeg-4
|
("dvdauthor" ,dvdauthor)
|
||||||
fontconfig
|
("eudev" ,eudev)
|
||||||
libexif
|
("fontconfig" ,fontconfig)
|
||||||
libjpeg-turbo
|
("libexif" ,libexif)
|
||||||
wxsvg
|
("libjpeg" ,libjpeg-turbo)
|
||||||
wxwidgets))
|
("ffmpeg" ,ffmpeg-4)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison
|
`(("pkg-config" ,pkg-config)
|
||||||
docbook-xml
|
("flex" ,flex)
|
||||||
docbook-xsl
|
("python" ,python-2)
|
||||||
flex
|
("xmlto" ,xmlto)
|
||||||
gettext-minimal
|
("gettext" ,gettext-minimal)
|
||||||
pkg-config
|
("docbook-xml" ,docbook-xml)
|
||||||
python-minimal-wrapper
|
("docbook-xsl" ,docbook-xsl)
|
||||||
xmlto
|
("zip" ,zip)))
|
||||||
zip))
|
|
||||||
(synopsis "DVD authoring application")
|
(synopsis "DVD authoring application")
|
||||||
(description "DVDStyler is a DVD authoring application which allows users
|
(description "DVDStyler is a DVD authoring application which allows users
|
||||||
to burn video files in many formats to DVD discs, complete with individually
|
to burn video files in many formats to DVD discs, complete with individually
|
||||||
|
|||||||
+74
-19
@@ -131,6 +131,7 @@
|
|||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (ice-9 match)
|
#:use-module (ice-9 match)
|
||||||
#:use-module (srfi srfi-1))
|
#:use-module (srfi srfi-1))
|
||||||
@@ -1881,6 +1882,7 @@ http server.")
|
|||||||
(arguments (list #:tests? #false)) ;no tests included
|
(arguments (list #:tests? #false)) ;no tests included
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest
|
(list python-pytest
|
||||||
|
python-pytest-cov
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-wheel
|
python-wheel
|
||||||
python-xmlschema))
|
python-xmlschema))
|
||||||
@@ -1913,6 +1915,42 @@ XML output")
|
|||||||
decorators from external files.")
|
decorators from external files.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public python-pytest-random-order
|
||||||
|
(package
|
||||||
|
(name "python-pytest-random-order")
|
||||||
|
(version "1.1.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "pytest-random-order" version))
|
||||||
|
(sha256
|
||||||
|
(base32 "104hww3b86jchk41kjhyycr541pd2dfgqkww6lx5y70z9z9xfwj4"))))
|
||||||
|
(build-system pyproject-build-system)
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:test-flags
|
||||||
|
;; AttributeError: module 'py' has no attribute 'code'.
|
||||||
|
#~(list "-k" (string-append "not test_it_works_with_actual_tests"
|
||||||
|
" and not test_failed_first"
|
||||||
|
" and not test_doctests"))))
|
||||||
|
(native-inputs
|
||||||
|
(list python-pytest-xdist
|
||||||
|
python-setuptools
|
||||||
|
python-py
|
||||||
|
python-wheel))
|
||||||
|
(propagated-inputs
|
||||||
|
(list python-pytest))
|
||||||
|
(home-page "https://github.com/jbasko/pytest-random-order")
|
||||||
|
(synopsis "Pytest plugin to randomize the order of tests")
|
||||||
|
(description "@code{pytest-random-order} is a Pytest plugin that
|
||||||
|
randomizes the order of tests. This can be useful to detect a test that
|
||||||
|
passes just because it happens to run after an unrelated test that leaves the
|
||||||
|
system in a favourable state. The plugin allows user to control the level of
|
||||||
|
randomness they want to introduce and to disable reordering on subsets of
|
||||||
|
tests. Tests can be rerun in a specific order by passing a seed value
|
||||||
|
reported in a previous test run.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public python-pytest-runner
|
(define-public python-pytest-runner
|
||||||
(package
|
(package
|
||||||
(name "python-pytest-runner")
|
(name "python-pytest-runner")
|
||||||
@@ -2695,11 +2733,7 @@ failures and errors instantly.")
|
|||||||
"test_is_not_identity"
|
"test_is_not_identity"
|
||||||
"test_resolves_builtin_types[object]"
|
"test_resolves_builtin_types[object]"
|
||||||
"test_resolves_forwardrefs_to_builtin_types[object]"
|
"test_resolves_forwardrefs_to_builtin_types[object]"
|
||||||
"test_timezone_lookup[tzinfo]"
|
"test_timezone_lookup[tzinfo]")
|
||||||
;; hypothesis.errors.FailedHealthCheck: Input generation is slow
|
|
||||||
#$@(if (target-riscv64?)
|
|
||||||
'("test_can_run_with_no_db")
|
|
||||||
'()))
|
|
||||||
" and not "))
|
" and not "))
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
@@ -2922,8 +2956,12 @@ mypy plugins.")
|
|||||||
"and not upstream_url"))))
|
"and not upstream_url"))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest
|
(list python-pytest
|
||||||
|
python-pytest-black
|
||||||
python-pytest-checkdocs
|
python-pytest-checkdocs
|
||||||
|
python-pytest-cov
|
||||||
python-pytest-enabler
|
python-pytest-enabler
|
||||||
|
python-pytest-flake8
|
||||||
|
python-pytest-mypy
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-wheel))
|
python-wheel))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
@@ -3030,28 +3068,21 @@ possible to write plugins to add your own checks.")
|
|||||||
(define-public behave
|
(define-public behave
|
||||||
(package
|
(package
|
||||||
(name "behave")
|
(name "behave")
|
||||||
;; 1.3.3 (2025-09-04), the latest changes provide support for Python
|
(version "1.3.3")
|
||||||
;; 3.12+; move back to git tag when released.
|
|
||||||
(properties '((commit . "43d0a93240c0b25b0cbf59bdc196b74fb8a2353e")
|
|
||||||
(revision . "0")))
|
|
||||||
(version (git-version "1.3.3"
|
|
||||||
(assoc-ref properties 'revision)
|
|
||||||
(assoc-ref properties 'commit)))
|
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/behave/behave")
|
(url "https://github.com/behave/behave")
|
||||||
(commit (assoc-ref properties 'commit))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "05671jf7scpgqr8chzgs9bxidvf12nlkqqiqxa5qwmykqfvc8nk4"))))
|
(base32 "1fxj51kailsdakqi7qbw700k258n7r3lv75mgxs45ld5xh2jfyxh"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
;; tests: 1638 passed, 3 skipped, 2 xfailed
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-chardet
|
(list python-assertpy
|
||||||
python-freezegun
|
python-chardet
|
||||||
python-charset-normalizer
|
python-mock
|
||||||
python-path
|
python-path
|
||||||
python-pyhamcrest
|
python-pyhamcrest
|
||||||
python-pytest
|
python-pytest
|
||||||
@@ -3100,7 +3131,7 @@ time by mocking the datetime module.")
|
|||||||
(define-public python-flaky
|
(define-public python-flaky
|
||||||
(package
|
(package
|
||||||
(name "python-flaky")
|
(name "python-flaky")
|
||||||
(version "3.8.1") ; On bump, remove some skipped tests in python-cherrypy.
|
(version "3.8.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "flaky" version))
|
(uri (pypi-uri "flaky" version))
|
||||||
@@ -3688,6 +3719,30 @@ system. The code under test requires no modification to work with pyfakefs.")
|
|||||||
directories and files.")
|
directories and files.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public python-pytest-tornado5
|
||||||
|
(package
|
||||||
|
(name "python-pytest-tornado5")
|
||||||
|
(version "2.0.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "pytest-tornado5" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
|
||||||
|
(build-system pyproject-build-system)
|
||||||
|
(arguments
|
||||||
|
;; Tests require pytest < 6
|
||||||
|
(list #:tests? #f))
|
||||||
|
(propagated-inputs (list python-pytest python-tornado))
|
||||||
|
(native-inputs (list python-setuptools python-wheel))
|
||||||
|
(home-page "https://github.com/vidartf/pytest-tornado")
|
||||||
|
(synopsis
|
||||||
|
"Fixtures and markers to simplify testing of Tornado applications")
|
||||||
|
(description
|
||||||
|
"This package provides a @code{py.test} plugin supplying fixtures and
|
||||||
|
markers to simplify testing of asynchronous tornado applications.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public guile-proba
|
(define-public guile-proba
|
||||||
(package
|
(package
|
||||||
(name "guile-proba")
|
(name "guile-proba")
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
@@ -579,7 +580,7 @@ stored with user-specified precision.")
|
|||||||
python-sphinx))
|
python-sphinx))
|
||||||
(inputs
|
(inputs
|
||||||
(list fftwf
|
(list fftwf
|
||||||
`(,hwloc "lib")
|
`(,hwloc-2 "lib")
|
||||||
libtirpc
|
libtirpc
|
||||||
lmfit
|
lmfit
|
||||||
muparser
|
muparser
|
||||||
|
|||||||
+12
-11
@@ -302,7 +302,7 @@ will name the threaded machine type unless THREADS? is provided as #f."
|
|||||||
(name "chez-scheme-for-racket")
|
(name "chez-scheme-for-racket")
|
||||||
;; The version should match `(scheme-version #t)`.
|
;; The version should match `(scheme-version #t)`.
|
||||||
;; See s/cmacros.ss c. line 360.
|
;; See s/cmacros.ss c. line 360.
|
||||||
(version "10.4.0-pre-release.1-1") ; expect a chez-nanopass-bootstrap update
|
(version "10.3.0-pre-release.2") ; expect a chez-nanopass-bootstrap update
|
||||||
(source #f)
|
(source #f)
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(,@(if (nix-system->native-chez-machine-type)
|
(inputs `(,@(if (nix-system->native-chez-machine-type)
|
||||||
@@ -507,7 +507,7 @@ version of Chez Scheme.")
|
|||||||
(name "chez-scheme")
|
(name "chez-scheme")
|
||||||
;; The version should match `(scheme-version-number #t)`.
|
;; The version should match `(scheme-version-number #t)`.
|
||||||
;; See s/cmacros.ss c. line 360.
|
;; See s/cmacros.ss c. line 360.
|
||||||
(version "10.4.0") ; expect a chez-nanopass-bootstrap update
|
(version "10.2.0") ; expect a chez-nanopass-bootstrap update
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -515,7 +515,7 @@ version of Chez Scheme.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"079vlkl27qdvsg1rsynmd828m42n98c2dnldkhsxf2slfsqd9kv5"))
|
"14iv4kfkyvrkigr1n2prf71n2l3vs0sf0549rvh6y4x2faa2l329"))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(patches (search-patches "chez-scheme-bin-sh.patch"))
|
(patches (search-patches "chez-scheme-bin-sh.patch"))
|
||||||
(snippet #~(begin
|
(snippet #~(begin
|
||||||
@@ -840,9 +840,9 @@ User's Guix}, among other documents.")
|
|||||||
(define-public chez-nanopass-bootstrap
|
(define-public chez-nanopass-bootstrap
|
||||||
(hidden-package
|
(hidden-package
|
||||||
(package
|
(package
|
||||||
(name "chez-nanopass-bootstrap")
|
(name "chez-nanopass")
|
||||||
(version "1.9.4")
|
(version "1.9.2")
|
||||||
(properties '((chez-nanopass-release-date . "December 29, 2025")))
|
(properties `((chez-nanopass-release-date . "October 18, 2020")))
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -850,7 +850,7 @@ User's Guix}, among other documents.")
|
|||||||
(url "https://github.com/nanopass/nanopass-framework-scheme")
|
(url "https://github.com/nanopass/nanopass-framework-scheme")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1qq0vnbrvcialgjgnblfq3qp1ilqg94h0kg896ksd9v4g7ipj9v0"))
|
(base32 "16vjsik9rrzbabbhbxbaha51ppi3f9n8rk59pc6zdyffs0vziy4i"))
|
||||||
(file-name (git-file-name "nanopass-framework-scheme" version))
|
(file-name (git-file-name "nanopass-framework-scheme" version))
|
||||||
(snippet
|
(snippet
|
||||||
#~(begin
|
#~(begin
|
||||||
@@ -929,9 +929,10 @@ create compilers, making them easier to understand and maintain.")
|
|||||||
(define-public chez-nanopass
|
(define-public chez-nanopass
|
||||||
(package
|
(package
|
||||||
(inherit chez-nanopass-bootstrap)
|
(inherit chez-nanopass-bootstrap)
|
||||||
(name "chez-nanopass")
|
;; This release has a significant bug fix. Expect the next releases of
|
||||||
(version "1.9.4")
|
;; chez-scheme{,-for-racket} to want this for chez-nanopass-bootstrap.
|
||||||
(properties '((chez-nanopass-release-date . "December 29, 2025")))
|
(version "1.9.3")
|
||||||
|
(properties '((chez-nanopass-release-date . "August 24, 2025")))
|
||||||
(source
|
(source
|
||||||
(let ((bootstrap-origin (package-source chez-nanopass-bootstrap)))
|
(let ((bootstrap-origin (package-source chez-nanopass-bootstrap)))
|
||||||
(origin
|
(origin
|
||||||
@@ -940,7 +941,7 @@ create compilers, making them easier to understand and maintain.")
|
|||||||
(url (git-reference-url (origin-uri bootstrap-origin)))
|
(url (git-reference-url (origin-uri bootstrap-origin)))
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1qq0vnbrvcialgjgnblfq3qp1ilqg94h0kg896ksd9v4g7ipj9v0"))
|
(base32 "0757x3a3b4kcd3jk52h4ikqzv7cc1mvphlw592f0r5pz99bkxiin"))
|
||||||
(file-name (git-file-name "nanopass-framework-scheme" version)))))
|
(file-name (git-file-name "nanopass-framework-scheme" version)))))
|
||||||
(native-inputs (list chez-scheme stex))))
|
(native-inputs (list chez-scheme stex))))
|
||||||
|
|
||||||
|
|||||||
+74
-116
@@ -53,6 +53,7 @@
|
|||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages kerberos)
|
#:use-module (gnu packages kerberos)
|
||||||
#:use-module (gnu packages maths)
|
#:use-module (gnu packages maths)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages node)
|
#:use-module (gnu packages node)
|
||||||
#:use-module (gnu packages nss)
|
#:use-module (gnu packages nss)
|
||||||
#:use-module (gnu packages pciutils)
|
#:use-module (gnu packages pciutils)
|
||||||
@@ -82,6 +83,7 @@
|
|||||||
"base/third_party/symbolize" ;BSD-3
|
"base/third_party/symbolize" ;BSD-3
|
||||||
"base/third_party/xdg_user_dirs" ;Expat
|
"base/third_party/xdg_user_dirs" ;Expat
|
||||||
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
|
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
|
||||||
|
"net/third_party/nss" ;MPL-2.0
|
||||||
"net/third_party/quiche" ;BSD-3
|
"net/third_party/quiche" ;BSD-3
|
||||||
"net/third_party/uri_template" ;ASL2.0
|
"net/third_party/uri_template" ;ASL2.0
|
||||||
"third_party/abseil-cpp" ;ASL2.0
|
"third_party/abseil-cpp" ;ASL2.0
|
||||||
@@ -102,11 +104,8 @@
|
|||||||
"third_party/catapult" ;BSD-3
|
"third_party/catapult" ;BSD-3
|
||||||
"third_party/catapult/common/py_vulcanize/third_party/rcssmin" ;ASL2.0
|
"third_party/catapult/common/py_vulcanize/third_party/rcssmin" ;ASL2.0
|
||||||
"third_party/catapult/common/py_vulcanize/third_party/rjsmin" ;ASL2.0
|
"third_party/catapult/common/py_vulcanize/third_party/rjsmin" ;ASL2.0
|
||||||
"third_party/catapult/third_party/beautifulsoup4-4.9.3" ;Expat
|
|
||||||
"third_party/catapult/third_party/html5lib-1.1" ;Expat
|
|
||||||
"third_party/catapult/third_party/polymer" ;BSD-3
|
"third_party/catapult/third_party/polymer" ;BSD-3
|
||||||
"third_party/catapult/third_party/six" ;Expat
|
"third_party/catapult/third_party/six" ;Expat
|
||||||
"third_party/catapult/third_party/typ" ;ASL2.0
|
|
||||||
;; XXX: This is a minified version of <https://d3js.org/>.
|
;; XXX: This is a minified version of <https://d3js.org/>.
|
||||||
"third_party/catapult/tracing/third_party/d3" ;BSD-3
|
"third_party/catapult/tracing/third_party/d3" ;BSD-3
|
||||||
"third_party/catapult/tracing/third_party/gl-matrix" ;Expat
|
"third_party/catapult/tracing/third_party/gl-matrix" ;Expat
|
||||||
@@ -121,12 +120,19 @@
|
|||||||
"third_party/cld_3" ;ASL2.0
|
"third_party/cld_3" ;ASL2.0
|
||||||
"third_party/closure_compiler" ;ASL2.0
|
"third_party/closure_compiler" ;ASL2.0
|
||||||
"third_party/compiler-rt" ;ASL2.0
|
"third_party/compiler-rt" ;ASL2.0
|
||||||
|
"third_party/compiler-rt/src/lib" ;ASL2.0
|
||||||
|
"third_party/compiler-rt/src/lib/builtins" ;ASL2.0
|
||||||
"third_party/content_analysis_sdk" ;BSD-3
|
"third_party/content_analysis_sdk" ;BSD-3
|
||||||
"third_party/cpuinfo" ;BSD-2
|
"third_party/cpuinfo" ;BSD-2
|
||||||
"third_party/crabbyavif" ;ASL2.0
|
"third_party/crabbyavif" ;ASL2.0
|
||||||
|
"third_party/crabbyavif/src/sys/dav1d-sys" ;ASL2.0
|
||||||
|
"third_party/crabbyavif/src/sys/aom-sys" ;ASL2.0
|
||||||
|
"third_party/crabbyavif/src/sys/libgav1-sys" ;ASL2.0
|
||||||
|
"third_party/crabbyavif/src/sys/libyuv-sys" ;ASL2.0
|
||||||
|
"third_party/crabbyavif/src/sys/ndk-sys" ;ASL2.0
|
||||||
"third_party/crashpad" ;ASL2.0
|
"third_party/crashpad" ;ASL2.0
|
||||||
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
|
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
|
||||||
"third_party/crashpad/crashpad/third_party/zlib" ;Zlib
|
"third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h" ;Zlib
|
||||||
"third_party/crc32c" ;BSD-3
|
"third_party/crc32c" ;BSD-3
|
||||||
"third_party/cros_system_api" ;BSD-3
|
"third_party/cros_system_api" ;BSD-3
|
||||||
"third_party/dav1d" ;BSD-2
|
"third_party/dav1d" ;BSD-2
|
||||||
@@ -134,25 +140,19 @@
|
|||||||
;; TODO: can likely be unbundled when Vulkan is updated.
|
;; TODO: can likely be unbundled when Vulkan is updated.
|
||||||
"third_party/dawn/third_party/khronos" ;ASL2.0
|
"third_party/dawn/third_party/khronos" ;ASL2.0
|
||||||
"third_party/dawn/third_party/gn/webgpu-cts" ;BSD-3
|
"third_party/dawn/third_party/gn/webgpu-cts" ;BSD-3
|
||||||
"third_party/dawn/third_party/renderdoc" ;Expat
|
|
||||||
"third_party/dawn/third_party/webgpu-headers" ;BSD-3
|
|
||||||
"third_party/depot_tools" ;BSD-3
|
|
||||||
"third_party/devscripts" ;GPL2.0
|
|
||||||
"third_party/devtools-frontend" ;BSD-3
|
"third_party/devtools-frontend" ;BSD-3
|
||||||
"third_party/devtools-frontend/src/front_end"
|
"third_party/devtools-frontend/src/front_end"
|
||||||
"third_party/devtools-frontend/src/front_end/third_party"
|
"third_party/devtools-frontend/src/front_end/third_party"
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
|
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party\
|
"third_party/devtools-frontend/src/front_end/third_party\
|
||||||
/additional_readme_paths.json" ;no explicit license; trivial
|
/additional_readme_paths.json" ;no explicit license; trivial
|
||||||
|
"third_party/devtools-frontend/src/front_end/third_party/json5" ;Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/axe-core" ;MPL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/axe-core" ;MPL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
|
"third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
|
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/csp_evaluator" ;BSD-3
|
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/diff" ;ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/diff" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/i18n" ;ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/i18n" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/intl-messageformat" ;BSD-3
|
"third_party/devtools-frontend/src/front_end/third_party/intl-messageformat" ;BSD-3
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/json5" ;Expat
|
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/legacy-javascript" ;ASL-2.0
|
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/lighthouse" ;ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/lighthouse" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/lit" ;BSD-3
|
"third_party/devtools-frontend/src/front_end/third_party/lit" ;BSD-3
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
|
"third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
|
||||||
@@ -164,12 +164,10 @@
|
|||||||
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/parsel" ; Expat
|
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/parsel" ; Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/rxjs" ; ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/rxjs" ; ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/puppeteer-replay" ;ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/puppeteer-replay" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/source-map-scopes-codec" ;BSD-3
|
|
||||||
"third_party/devtools-frontend/src/front_end/third_party\
|
"third_party/devtools-frontend/src/front_end/third_party\
|
||||||
/vscode.web-custom-data" ;Expat
|
/vscode.web-custom-data" ;Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/third-party-web" ;Expat
|
"third_party/devtools-frontend/src/front_end/third_party/third-party-web" ;Expat
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
|
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/front_end/third_party/web-vitals" ;Expat
|
|
||||||
"third_party/devtools-frontend/src/third_party/i18n" ;ASL2.0
|
"third_party/devtools-frontend/src/third_party/i18n" ;ASL2.0
|
||||||
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
|
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
|
||||||
|
|
||||||
@@ -181,7 +179,6 @@
|
|||||||
"third_party/farmhash" ;Expat
|
"third_party/farmhash" ;Expat
|
||||||
"third_party/fast_float" ;ASL2.0, Boost1.0, Expat
|
"third_party/fast_float" ;ASL2.0, Boost1.0, Expat
|
||||||
"third_party/fdlibm" ;non-copyleft
|
"third_party/fdlibm" ;non-copyleft
|
||||||
"third_party/federated_compute/chromium/fcp/confidentialcompute" ;ASL2.0
|
|
||||||
"third_party/federated_compute/src/fcp/base" ;ASL2.0
|
"third_party/federated_compute/src/fcp/base" ;ASL2.0
|
||||||
"third_party/federated_compute/src/fcp/confidentialcompute" ;ASL2.0
|
"third_party/federated_compute/src/fcp/confidentialcompute" ;ASL2.0
|
||||||
"third_party/federated_compute/src/fcp/protos/confidentialcompute" ;ASL2.0
|
"third_party/federated_compute/src/fcp/protos/confidentialcompute" ;ASL2.0
|
||||||
@@ -190,9 +187,7 @@
|
|||||||
"third_party/fft2d" ;non-copyleft
|
"third_party/fft2d" ;non-copyleft
|
||||||
"third_party/flatbuffers" ;ASL2.0
|
"third_party/flatbuffers" ;ASL2.0
|
||||||
"third_party/fp16" ;Expat
|
"third_party/fp16" ;Expat
|
||||||
"third_party/freetype" ;GPL2.0
|
|
||||||
"third_party/fusejs" ;ASL2.0
|
"third_party/fusejs" ;ASL2.0
|
||||||
"third_party/fxdiv" ;Expat
|
|
||||||
"third_party/gemmlowp" ;ASL2.0
|
"third_party/gemmlowp" ;ASL2.0
|
||||||
"third_party/google_input_tools" ;ASL2.0
|
"third_party/google_input_tools" ;ASL2.0
|
||||||
"third_party/google_input_tools/third_party/closure_library" ;ASL2.0
|
"third_party/google_input_tools/third_party/closure_library" ;ASL2.0
|
||||||
@@ -201,9 +196,6 @@
|
|||||||
"third_party/harfbuzz-ng" ;Expat
|
"third_party/harfbuzz-ng" ;Expat
|
||||||
"third_party/highway" ;ASL2.0
|
"third_party/highway" ;ASL2.0
|
||||||
"third_party/hunspell" ;MPL1.1/GPL2+/LGPL2.1+
|
"third_party/hunspell" ;MPL1.1/GPL2+/LGPL2.1+
|
||||||
"third_party/hyphenation-patterns" ;Expat
|
|
||||||
;; FIXME: Our icu does not have some headers such as udatamem.h.
|
|
||||||
"third_party/icu" ;Unicode3.0
|
|
||||||
"third_party/ink" ;ASL2.0
|
"third_party/ink" ;ASL2.0
|
||||||
"third_party/ink_stroke_modeler" ;ASL2.0
|
"third_party/ink_stroke_modeler" ;ASL2.0
|
||||||
"third_party/inspector_protocol" ;BSD-3
|
"third_party/inspector_protocol" ;BSD-3
|
||||||
@@ -216,13 +208,12 @@
|
|||||||
"third_party/libaddressinput" ;ASL2.0
|
"third_party/libaddressinput" ;ASL2.0
|
||||||
"third_party/libaom" ;BSD-2 or "Alliance for Open Media Patent License 1.0"
|
"third_party/libaom" ;BSD-2 or "Alliance for Open Media Patent License 1.0"
|
||||||
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
|
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
|
||||||
|
"third_party/libaom/source/libaom/third_party/SVT-AV1" ;BSD-3
|
||||||
"third_party/libaom/source/libaom/third_party/vector" ;Expat
|
"third_party/libaom/source/libaom/third_party/vector" ;Expat
|
||||||
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
|
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
|
||||||
"third_party/libdrm" ; Expat
|
"third_party/libdrm" ; Expat
|
||||||
"third_party/libgav1" ;ASL2.0
|
"third_party/libgav1" ;ASL2.0
|
||||||
"third_party/libjingle_xmpp" ;BSD-3
|
"third_party/libjingle_xmpp" ;BSD-3
|
||||||
"third_party/libpfm4" ;BSD
|
|
||||||
"third_party/libpng" ;PNG2.0
|
|
||||||
"third_party/libphonenumber" ;ASL2.0
|
"third_party/libphonenumber" ;ASL2.0
|
||||||
"third_party/libsecret" ;LGPL2.1+
|
"third_party/libsecret" ;LGPL2.1+
|
||||||
"third_party/libsrtp" ;BSD-3
|
"third_party/libsrtp" ;BSD-3
|
||||||
@@ -236,8 +227,6 @@
|
|||||||
"third_party/libvpx/source/libvpx/third_party/x86inc" ;Expat
|
"third_party/libvpx/source/libvpx/third_party/x86inc" ;Expat
|
||||||
|
|
||||||
"third_party/libwebm" ;BSD-3
|
"third_party/libwebm" ;BSD-3
|
||||||
"third_party/libx11" ;BSD
|
|
||||||
"third_party/libxcb-keysyms" ;BSD
|
|
||||||
"third_party/libxml/chromium" ;BSD-3
|
"third_party/libxml/chromium" ;BSD-3
|
||||||
"third_party/libyuv" ;BSD-3
|
"third_party/libyuv" ;BSD-3
|
||||||
"third_party/libzip" ;BSD-3
|
"third_party/libzip" ;BSD-3
|
||||||
@@ -255,7 +244,6 @@
|
|||||||
"third_party/modp_b64" ;BSD-3
|
"third_party/modp_b64" ;BSD-3
|
||||||
"third_party/nasm" ;BSD-2
|
"third_party/nasm" ;BSD-2
|
||||||
"third_party/nearby" ;ASL2.0
|
"third_party/nearby" ;ASL2.0
|
||||||
"third_party/neon_2_sse" ;BSD-2
|
|
||||||
"third_party/node" ;Expat
|
"third_party/node" ;Expat
|
||||||
"third_party/oak/chromium/proto" ;ASL2.0
|
"third_party/oak/chromium/proto" ;ASL2.0
|
||||||
"third_party/oak/chromium/proto/attestation" ;ASL2.0
|
"third_party/oak/chromium/proto/attestation" ;ASL2.0
|
||||||
@@ -263,20 +251,14 @@
|
|||||||
"third_party/one_euro_filter" ;BSD-3
|
"third_party/one_euro_filter" ;BSD-3
|
||||||
"third_party/openscreen" ;BSD-3
|
"third_party/openscreen" ;BSD-3
|
||||||
"third_party/openscreen/src/third_party/tinycbor" ;Expat
|
"third_party/openscreen/src/third_party/tinycbor" ;Expat
|
||||||
"third_party/opus" ;BSD-3
|
|
||||||
"third_party/ots" ;BSD-3
|
"third_party/ots" ;BSD-3
|
||||||
"third_party/pdfium" ;BSD-3
|
"third_party/pdfium" ;BSD-3
|
||||||
"third_party/pdfium/third_party/agg23" ;Expat
|
"third_party/pdfium/third_party/agg23" ;Expat
|
||||||
"third_party/pdfium/third_party/bigint" ;Public domain, BSD-3
|
"third_party/pdfium/third_party/bigint" ;Public domain, BSD-3
|
||||||
"third_party/pdfium/third_party/lcms" ;Expat
|
|
||||||
"third_party/pdfium/third_party/libopenjpeg" ;BDS-2
|
|
||||||
"third_party/pdfium/third_party/libtiff" ;non-copyleft
|
"third_party/pdfium/third_party/libtiff" ;non-copyleft
|
||||||
"third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType
|
"third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType
|
||||||
"third_party/perfetto" ;ASL2.0
|
"third_party/perfetto" ;ASL2.0
|
||||||
"third_party/perfetto/protos/third_party/chromium" ;BSD-3
|
"third_party/perfetto/protos/third_party/chromium" ;BSD-3
|
||||||
"third_party/perfetto/protos/third_party/pprof" ;ASL2.0
|
|
||||||
"third_party/perfetto/protos/third_party/primes" ;ASL2.0
|
|
||||||
"third_party/perfetto/protos/third_party/simpleperf" ;ASL2.0
|
|
||||||
"third_party/pffft" ;the "FFTPACK" license
|
"third_party/pffft" ;the "FFTPACK" license
|
||||||
"third_party/ply" ;BSD-3
|
"third_party/ply" ;BSD-3
|
||||||
"third_party/polymer" ;BSD-3
|
"third_party/polymer" ;BSD-3
|
||||||
@@ -286,7 +268,6 @@
|
|||||||
"third_party/protobuf/third_party/utf8_range" ; Expat
|
"third_party/protobuf/third_party/utf8_range" ; Expat
|
||||||
"third_party/pthreadpool" ;BSD-2
|
"third_party/pthreadpool" ;BSD-2
|
||||||
"third_party/puffin" ;Non-copyleft
|
"third_party/puffin" ;Non-copyleft
|
||||||
"third_party/pyyaml" ;Expat
|
|
||||||
"third_party/pyjson5" ;ASL2.0
|
"third_party/pyjson5" ;ASL2.0
|
||||||
"third_party/rapidhash" ;BSD-2
|
"third_party/rapidhash" ;BSD-2
|
||||||
"third_party/readability" ;ASL2.0
|
"third_party/readability" ;ASL2.0
|
||||||
@@ -298,14 +279,11 @@
|
|||||||
"third_party/search_engines_data" ;BSD-3
|
"third_party/search_engines_data" ;BSD-3
|
||||||
"third_party/securemessage" ;ASL2.0
|
"third_party/securemessage" ;ASL2.0
|
||||||
"third_party/selenium-atoms" ;ASL2.0
|
"third_party/selenium-atoms" ;ASL2.0
|
||||||
"third_party/sentencepiece" ;ASL2.0
|
|
||||||
"third_party/sentencepiece/src/third_party/darts_clone" ;BSD-3
|
|
||||||
"third_party/shell-encryption" ;ASL2.0
|
"third_party/shell-encryption" ;ASL2.0
|
||||||
"third_party/simdutf" ;Non-copyleft
|
"third_party/simdutf" ;Non-copyleft
|
||||||
"third_party/simplejson" ; Non-copyleft
|
"third_party/simplejson" ; Non-copyleft
|
||||||
"third_party/six" ;Expat
|
|
||||||
"third_party/skia" ;BSD-3
|
"third_party/skia" ;BSD-3
|
||||||
"third_party/skia/include/third_party/vulkan" ;BSD-3
|
"third_party/skia/third_party/vulkanmemoryallocator" ;BSD-3, Expat
|
||||||
"third_party/smhasher" ;Expat, public domain
|
"third_party/smhasher" ;Expat, public domain
|
||||||
|
|
||||||
;; FIXME: the snappy "replacement" shim (see replace_gn_files.py below) does
|
;; FIXME: the snappy "replacement" shim (see replace_gn_files.py below) does
|
||||||
@@ -360,6 +338,7 @@
|
|||||||
"third_party/webrtc/modules/third_party/fft" ;Non-copyleft
|
"third_party/webrtc/modules/third_party/fft" ;Non-copyleft
|
||||||
"third_party/webrtc/modules/third_party/g711" ;Public domain
|
"third_party/webrtc/modules/third_party/g711" ;Public domain
|
||||||
"third_party/webrtc/modules/third_party/g722" ;Public domain
|
"third_party/webrtc/modules/third_party/g722" ;Public domain
|
||||||
|
"third_party/webrtc/rtc_base/third_party/sigslot" ;Public domain
|
||||||
"third_party/widevine/cdm/widevine_cdm_common.h" ;BSD-3
|
"third_party/widevine/cdm/widevine_cdm_common.h" ;BSD-3
|
||||||
"third_party/woff2" ;ASL2.0
|
"third_party/woff2" ;ASL2.0
|
||||||
"third_party/wuffs" ;ASL2.0
|
"third_party/wuffs" ;ASL2.0
|
||||||
@@ -393,7 +372,7 @@
|
|||||||
;; run the Blink performance tests, just remove everything to save ~70MiB.
|
;; run the Blink performance tests, just remove everything to save ~70MiB.
|
||||||
'("third_party/blink/perf_tests"))
|
'("third_party/blink/perf_tests"))
|
||||||
|
|
||||||
(define %chromium-version "147.0.7727.137")
|
(define %chromium-version "141.0.7390.65")
|
||||||
(define %ungoogled-revision (string-append %chromium-version "-1"))
|
(define %ungoogled-revision (string-append %chromium-version "-1"))
|
||||||
(define %debian-revision (string-append "debian/" %ungoogled-revision))
|
(define %debian-revision (string-append "debian/" %ungoogled-revision))
|
||||||
|
|
||||||
@@ -405,7 +384,7 @@
|
|||||||
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
|
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1ha84j3zckdv2l8dpicqhmr6a8mq3bqwalw0bmgamvlmns9i7nrj"))))
|
"1hk4rww2gccly1qv0xnswd77haj02rlza82403dxdjm8fkdfndy6"))))
|
||||||
|
|
||||||
(define %debian-origin
|
(define %debian-origin
|
||||||
(origin
|
(origin
|
||||||
@@ -418,7 +397,7 @@
|
|||||||
((_ version) version))))
|
((_ version) version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"04lqbclkvn9nsksgjpjilh78a8y17mwwq4pmhr6h8gvpp2y3bhhc"))))
|
"06s3kvwb3490xb28n6r3q5n1c0ylsvchiw6s4h1rrp8jqzwjbmc6"))))
|
||||||
|
|
||||||
(define (origin-file origin file)
|
(define (origin-file origin file)
|
||||||
(computed-file
|
(computed-file
|
||||||
@@ -431,38 +410,26 @@
|
|||||||
|
|
||||||
(define %debian-patches
|
(define %debian-patches
|
||||||
(map debian-patch
|
(map debian-patch
|
||||||
'("bookworm/foreach.patch"
|
'("bookworm/clang19.patch"
|
||||||
"debianization/safe-libcxx.patch"
|
"bookworm/foreach.patch"
|
||||||
"disable/enterprise-tests.patch"
|
|
||||||
"disable/node-version-ck.patch"
|
"disable/node-version-ck.patch"
|
||||||
"disable/rustc-allow-features.patch"
|
|
||||||
"fixes/bytemuck.patch"
|
|
||||||
"fixes/gentoo-stylesheet.patch"
|
"fixes/gentoo-stylesheet.patch"
|
||||||
"fixes/libcpp-headers.patch"
|
"fixes/libcpp-headers.patch"
|
||||||
"fixes/libpng-testonly.patch"
|
|
||||||
"fixes/rust-clanglib.patch"
|
"fixes/rust-clanglib.patch"
|
||||||
"llvm-19/clang19.patch"
|
|
||||||
"llvm-19/clone-traits.patch"
|
|
||||||
"llvm-19/keyfactory.patch"
|
|
||||||
"llvm-19/value-or.patch"
|
|
||||||
"llvm-22/ignore-for-ubsan.patch"
|
|
||||||
"system/openjpeg.patch"
|
"system/openjpeg.patch"
|
||||||
"trixie/cookie-string-view.patch"
|
;; Remove after rust is past
|
||||||
"trixie/nodejs-main.patch")))
|
;; <https://github.com/rust-lang/rust/pull/141061>.
|
||||||
|
"trixie/rust-no-alloc-shim.patch")))
|
||||||
|
|
||||||
(define %guix-patches
|
(define %guix-patches
|
||||||
(list (local-file
|
(list (local-file
|
||||||
(assume-valid-file-name
|
|
||||||
(search-patch
|
|
||||||
"ungoogled-chromium-custom-compiler.patch")))
|
|
||||||
(local-file
|
|
||||||
(assume-valid-file-name
|
|
||||||
(search-patch
|
|
||||||
"ungoogled-chromium-empty-parsed-rustc-args.patch")))
|
|
||||||
(local-file
|
|
||||||
(assume-valid-file-name
|
(assume-valid-file-name
|
||||||
(search-patch
|
(search-patch
|
||||||
"ungoogled-chromium-extension-search-path.patch")))
|
"ungoogled-chromium-extension-search-path.patch")))
|
||||||
|
(local-file
|
||||||
|
(assume-valid-file-name
|
||||||
|
(search-patch
|
||||||
|
"ungoogled-chromium-unbundle-icu-target.patch")))
|
||||||
(local-file
|
(local-file
|
||||||
(assume-valid-file-name
|
(assume-valid-file-name
|
||||||
(search-patch
|
(search-patch
|
||||||
@@ -533,8 +500,9 @@
|
|||||||
"#if 0"))
|
"#if 0"))
|
||||||
(invoke "python" "build/linux/unbundle/replace_gn_files.py"
|
(invoke "python" "build/linux/unbundle/replace_gn_files.py"
|
||||||
"--system-libraries" "flac" "fontconfig" "freetype"
|
"--system-libraries" "flac" "fontconfig" "freetype"
|
||||||
"harfbuzz-ng" "libjpeg" "libpng" "libwebp" "libxml"
|
"harfbuzz-ng" "icu" "libjpeg"
|
||||||
"libxslt" "openh264" "opus" "zlib")))))
|
"libpng" "libwebp" "libxml" "libxslt" "openh264" "opus"
|
||||||
|
"zlib")))))
|
||||||
|
|
||||||
(define opus+custom
|
(define opus+custom
|
||||||
(package/inherit opus
|
(package/inherit opus
|
||||||
@@ -563,7 +531,7 @@
|
|||||||
%chromium-version "-lite.tar.xz"))
|
%chromium-version "-lite.tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1m22whg5n9lw9gqhalm95jwfm45lqp4a7cs3mn3f4n8w0rvr0r5j"))
|
"09iwglswnr6d45zz3zsjw7jpm1xlwwkxlz9h5nlhqxyd933a04fq"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet (force ungoogled-chromium-snippet))))
|
(snippet (force ungoogled-chromium-snippet))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
@@ -580,7 +548,6 @@
|
|||||||
;; directory for an exhaustive list of supported flags.
|
;; directory for an exhaustive list of supported flags.
|
||||||
;; (Note: The 'configure' phase will do that for you.)
|
;; (Note: The 'configure' phase will do that for you.)
|
||||||
#~(list "is_debug=false"
|
#~(list "is_debug=false"
|
||||||
"is_component_build=false"
|
|
||||||
;; Use the "official" release optimizations, as opposed to
|
;; Use the "official" release optimizations, as opposed to
|
||||||
;; a developer build.
|
;; a developer build.
|
||||||
"is_official_build=true"
|
"is_official_build=true"
|
||||||
@@ -588,8 +555,6 @@
|
|||||||
"use_clang_modules=false"
|
"use_clang_modules=false"
|
||||||
"use_custom_libcxx=false" ; support for this is deprecated and to be removed.
|
"use_custom_libcxx=false" ; support for this is deprecated and to be removed.
|
||||||
"optimize_webui=false"
|
"optimize_webui=false"
|
||||||
"webnn_use_tflite=false"
|
|
||||||
"build_tflite_with_xnnpack=false"
|
|
||||||
"safe_browsing_use_unrar=false"
|
"safe_browsing_use_unrar=false"
|
||||||
"chrome_pgo_phase=0"
|
"chrome_pgo_phase=0"
|
||||||
"use_sysroot=false"
|
"use_sysroot=false"
|
||||||
@@ -607,10 +572,12 @@
|
|||||||
"enable_service_discovery=false"
|
"enable_service_discovery=false"
|
||||||
"enable_vr=false"
|
"enable_vr=false"
|
||||||
"enable_enterprise_companion=false"
|
"enable_enterprise_companion=false"
|
||||||
|
"enable_glic=false"
|
||||||
"enable_iterator_debugging=false"
|
"enable_iterator_debugging=false"
|
||||||
"enable_hangout_services_extension=false"
|
"enable_hangout_services_extension=false"
|
||||||
"enable_widevine=false"
|
"enable_widevine=false"
|
||||||
"fatal_linker_warnings=false"
|
;; Disable type-checking for the Web UI to avoid a Java dependency.
|
||||||
|
"enable_js_type_check=false"
|
||||||
;; Disable code using TensorFlow until it has been scrutinized
|
;; Disable code using TensorFlow until it has been scrutinized
|
||||||
;; by the ungoogled project.
|
;; by the ungoogled project.
|
||||||
"build_with_tflite_lib=false"
|
"build_with_tflite_lib=false"
|
||||||
@@ -622,11 +589,6 @@
|
|||||||
"angle_has_histograms=false"
|
"angle_has_histograms=false"
|
||||||
"angle_build_tests=false"
|
"angle_build_tests=false"
|
||||||
"build_angle_perftests=false"
|
"build_angle_perftests=false"
|
||||||
"enable_perfetto_unittests=false"
|
|
||||||
"skia_enable_skshapper_tests=false"
|
|
||||||
"tint_build_unittests=false"
|
|
||||||
"enable_nocompile_tests=false"
|
|
||||||
"enable_screen_ai_browsertests=false"
|
|
||||||
|
|
||||||
"clang_warning_suppression_file=\"\""
|
"clang_warning_suppression_file=\"\""
|
||||||
|
|
||||||
@@ -635,8 +597,6 @@
|
|||||||
"is_cfi=false"
|
"is_cfi=false"
|
||||||
|
|
||||||
"symbol_level=0"
|
"symbol_level=0"
|
||||||
"blink_symbol_level=0"
|
|
||||||
"v8_symbol_level=0"
|
|
||||||
"v8_enable_backtrace=false"
|
"v8_enable_backtrace=false"
|
||||||
|
|
||||||
;; Define a custom toolchain that simply looks up CC, AR and
|
;; Define a custom toolchain that simply looks up CC, AR and
|
||||||
@@ -668,10 +628,26 @@
|
|||||||
;; invokation and fails if it's just the version number.
|
;; invokation and fails if it's just the version number.
|
||||||
" (f6e511eec 2024-10-15) (built from a source tarball)\"")
|
" (f6e511eec 2024-10-15) (built from a source tarball)\"")
|
||||||
|
|
||||||
|
;; Chromium's build/rust/std/BUILD.gn has a hardcoded
|
||||||
|
;; list of stdlib rlibs (stdlib_files) that GN uses to
|
||||||
|
;; declare build outputs. GN requires static output
|
||||||
|
;; declarations, so the list must exactly match what
|
||||||
|
;; rlibs exist in the Rust sysroot. Chromium's list
|
||||||
|
;; includes unicode_width because their bundled
|
||||||
|
;; toolchain (Rust 1.89) ships it as a dependency of
|
||||||
|
;; getopts 0.2.23. Our Rust 1.93 has getopts 0.2.24
|
||||||
|
;; which dropped that dependency, so unicode_width is
|
||||||
|
;; not in our sysroot. This GN arg removes it from
|
||||||
|
;; the list. (Chromium's own use of unicode_width via
|
||||||
|
;; codespan-reporting is a separate vendored copy under
|
||||||
|
;; third_party/rust/chromium_crates_io/ and is
|
||||||
|
;; unaffected.)
|
||||||
|
"removed_rust_stdlib_libs=[\"unicode_width\"]"
|
||||||
|
|
||||||
;; Prefer system libraries.
|
;; Prefer system libraries.
|
||||||
"use_system_freetype=true"
|
"use_system_freetype=true"
|
||||||
"use_system_harfbuzz=true"
|
"use_system_harfbuzz=true"
|
||||||
"use_system_icu=false"
|
"use_system_icu=true"
|
||||||
"use_system_lcms2=true"
|
"use_system_lcms2=true"
|
||||||
"use_system_libffi=true"
|
"use_system_libffi=true"
|
||||||
"use_system_libjpeg=true"
|
"use_system_libjpeg=true"
|
||||||
@@ -682,7 +658,7 @@
|
|||||||
"use_gnome_keyring=false" ;deprecated by libsecret
|
"use_gnome_keyring=false" ;deprecated by libsecret
|
||||||
"use_pulseaudio=true"
|
"use_pulseaudio=true"
|
||||||
"link_pulseaudio=true"
|
"link_pulseaudio=true"
|
||||||
"icu_use_data_file=true"
|
"icu_use_data_file=false"
|
||||||
|
|
||||||
;; VA-API acceleration is currently only supported on x86_64-linux.
|
;; VA-API acceleration is currently only supported on x86_64-linux.
|
||||||
#$@(if (string-prefix? "x86_64" (or (%current-target-system)
|
#$@(if (string-prefix? "x86_64" (or (%current-target-system)
|
||||||
@@ -690,13 +666,6 @@
|
|||||||
'("use_vaapi=true")
|
'("use_vaapi=true")
|
||||||
'())
|
'())
|
||||||
|
|
||||||
#$@(if (string-prefix? "aarch64" (or (%current-target-system)
|
|
||||||
(%current-system)))
|
|
||||||
'("use_v4l2_codec=true"
|
|
||||||
"use_vaapi=false"
|
|
||||||
"use_av1_hw_decoder=true")
|
|
||||||
'())
|
|
||||||
|
|
||||||
;; Do not artificially restrict formats supported by system ffmpeg.
|
;; Do not artificially restrict formats supported by system ffmpeg.
|
||||||
"proprietary_codecs=true"
|
"proprietary_codecs=true"
|
||||||
"ffmpeg_branding=\"Chrome\""
|
"ffmpeg_branding=\"Chrome\""
|
||||||
@@ -744,9 +713,9 @@
|
|||||||
|
|
||||||
;; Many files try to include ICU headers from "third_party/icu/...".
|
;; Many files try to include ICU headers from "third_party/icu/...".
|
||||||
;; Remove the "third_party/" prefix to use system headers instead.
|
;; Remove the "third_party/" prefix to use system headers instead.
|
||||||
;(substitute* (find-files "chrome" "\\.cc$")
|
(substitute* (find-files "chrome" "\\.cc$")
|
||||||
; (("third_party/icu/source/(common|i18n)/")
|
(("third_party/icu/source/(common|i18n)/")
|
||||||
; ""))
|
""))
|
||||||
|
|
||||||
;; XXX: Should be unnecessary when use_system_lcms2=true.
|
;; XXX: Should be unnecessary when use_system_lcms2=true.
|
||||||
(substitute* "third_party/pdfium/core/fxcodec/icc/icc_transform.h"
|
(substitute* "third_party/pdfium/core/fxcodec/icc/icc_transform.h"
|
||||||
@@ -763,13 +732,15 @@
|
|||||||
(("include \"third_party/curl")
|
(("include \"third_party/curl")
|
||||||
"include \"curl"))
|
"include \"curl"))
|
||||||
|
|
||||||
;; Our clang libs and rustfmt are not under bindgen root directory.
|
;; Unknown flags as of clang-19, can be removed when building with
|
||||||
(substitute* '("build/rust/rust_bindgen_generator.gni"
|
;; newer clang.
|
||||||
"build/rust/rust_bindgen.gni")
|
(substitute* "build/config/compiler/BUILD.gn"
|
||||||
|
(("-gsimple-template-names") ""))
|
||||||
|
|
||||||
|
;; Clang libs are not under bindgen root directory.
|
||||||
|
(substitute* "build/rust/rust_bindgen_generator.gni"
|
||||||
(("(_libclang_path = )rust_bindgen_root" _ libclang)
|
(("(_libclang_path = )rust_bindgen_root" _ libclang)
|
||||||
(string-append libclang "clang_base_path"))
|
(string-append libclang "clang_base_path"))))))
|
||||||
(("(_rustfmt_path = \")\\$\\{rust_bindgen_root\\}" _ rustfmt)
|
|
||||||
(string-append rustfmt "${rust_sysroot_absolute}"))))))
|
|
||||||
(add-after 'patch-stuff 'add-absolute-references
|
(add-after 'patch-stuff 'add-absolute-references
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let ((cups-config (search-input-file inputs "/bin/cups-config"))
|
(let ((cups-config (search-input-file inputs "/bin/cups-config"))
|
||||||
@@ -792,22 +763,13 @@
|
|||||||
(add-after 'add-absolute-references 'adjust-CPLUS_INCLUDE_PATH
|
(add-after 'add-absolute-references 'adjust-CPLUS_INCLUDE_PATH
|
||||||
;; The libcxx include/c++/v1 directory is not exposed via
|
;; The libcxx include/c++/v1 directory is not exposed via
|
||||||
;; CPLUS_INCLUDE_PATH by default, causing errors like
|
;; CPLUS_INCLUDE_PATH by default, causing errors like
|
||||||
;; "fatal error: 'format' file not found". Also clang is
|
;; "fatal error: 'format' file not found".
|
||||||
;; unable to find gcc's bits/c++config.h which is machine
|
|
||||||
;; dependent.
|
|
||||||
(lambda* (#:key native-inputs inputs #:allow-other-keys)
|
(lambda* (#:key native-inputs inputs #:allow-other-keys)
|
||||||
(let* ((libcxx-v1 (search-input-directory inputs
|
(setenv "CPLUS_INCLUDE_PATH"
|
||||||
"include/c++/v1"))
|
(string-append
|
||||||
(target-system #$(nix-system->gnu-triplet
|
(search-input-directory inputs
|
||||||
(or (%current-target-system)
|
"/include/c++/v1")
|
||||||
(%current-system))))
|
":" (getenv "CPLUS_INCLUDE_PATH")))))
|
||||||
(target-include (string-append "include/c++/"
|
|
||||||
target-system))
|
|
||||||
(gcc-bits (search-input-directory inputs
|
|
||||||
target-include)))
|
|
||||||
(setenv "CPLUS_INCLUDE_PATH"
|
|
||||||
(string-append libcxx-v1 ":" gcc-bits ":"
|
|
||||||
(getenv "CPLUS_INCLUDE_PATH"))))))
|
|
||||||
(add-before 'configure 'prepare-build-environment
|
(add-before 'configure 'prepare-build-environment
|
||||||
(lambda* (#:key native-inputs inputs #:allow-other-keys)
|
(lambda* (#:key native-inputs inputs #:allow-other-keys)
|
||||||
(let ((node (search-input-file (or native-inputs inputs)
|
(let ((node (search-input-file (or native-inputs inputs)
|
||||||
@@ -888,15 +850,13 @@
|
|||||||
"resources.pak"
|
"resources.pak"
|
||||||
"v8_context_snapshot.bin"
|
"v8_context_snapshot.bin"
|
||||||
"chrome_crashpad_handler"
|
"chrome_crashpad_handler"
|
||||||
"icudtl.dat"
|
|
||||||
|
|
||||||
;; Swiftshader ICD.
|
;; Swiftshader ICD.
|
||||||
"libvk_swiftshader.so"
|
"libvk_swiftshader.so"
|
||||||
"vk_swiftshader_icd.json"
|
"vk_swiftshader_icd.json"
|
||||||
|
|
||||||
;; Chromium ships its own libGL and
|
;; Chromium ships its own libGL
|
||||||
;; vulkan implementation called ANGLE.
|
;; implementation called ANGLE.
|
||||||
"libvulkan.so.1"
|
|
||||||
"libEGL.so" "libGLESv2.so"))
|
"libEGL.so" "libGLESv2.so"))
|
||||||
(locales (string-append lib "/locales"))
|
(locales (string-append lib "/locales"))
|
||||||
(resources (string-append lib "/resources"))
|
(resources (string-append lib "/resources"))
|
||||||
@@ -912,11 +872,9 @@
|
|||||||
|
|
||||||
(substitute* '("chrome/app/resources/manpage.1.in"
|
(substitute* '("chrome/app/resources/manpage.1.in"
|
||||||
"chrome/installer/linux/common/desktop.template")
|
"chrome/installer/linux/common/desktop.template")
|
||||||
(("@@MENUNAME") "Chromium")
|
(("@@MENUNAME@@") "Chromium")
|
||||||
(("@@PACKAGE") "chromium")
|
(("@@PACKAGE@@") "chromium")
|
||||||
(("/usr/bin/@@usr_bin_symlink_name") exe)
|
(("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
|
||||||
(("@@uri_scheme") "x-scheme-handler/chromium;")
|
|
||||||
(("@@extra_desktop_entries") ""))
|
|
||||||
|
|
||||||
(mkdir-p man)
|
(mkdir-p man)
|
||||||
(copy-file "chrome/app/resources/manpage.1.in"
|
(copy-file "chrome/app/resources/manpage.1.in"
|
||||||
@@ -997,7 +955,7 @@
|
|||||||
glib
|
glib
|
||||||
gtk+
|
gtk+
|
||||||
harfbuzz
|
harfbuzz
|
||||||
icu4c-77
|
icu4c
|
||||||
lcms
|
lcms
|
||||||
libcxx
|
libcxx
|
||||||
libffi
|
libffi
|
||||||
|
|||||||
@@ -30,6 +30,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages admin)
|
#:use-module (gnu packages admin)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
|
|||||||
+27
-53
@@ -377,14 +377,14 @@ designs.")
|
|||||||
(define-public clojure-tools
|
(define-public clojure-tools
|
||||||
(package
|
(package
|
||||||
(name "clojure-tools")
|
(name "clojure-tools")
|
||||||
(version "1.12.4.1618")
|
(version "1.12.4.1582")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://download.clojure.org/install/clojure-tools-"
|
(uri (string-append "https://download.clojure.org/install/clojure-tools-"
|
||||||
version
|
version
|
||||||
".tar.gz"))
|
".tar.gz"))
|
||||||
(sha256 (base32 "08fy3k248sbsrbgl0lq3q4d23vp4chdawy230ardx61sssk9sxhk"))
|
(sha256 (base32 "08gzfblnz0zhnk6pwr9vcm6y168psgrwmqww3wqk1v7j5gr68n7x"))
|
||||||
;; Remove AOT compiled JAR. The other JAR only contains uncompiled
|
;; Remove AOT compiled JAR. The other JAR only contains uncompiled
|
||||||
;; Clojure source code.
|
;; Clojure source code.
|
||||||
(snippet
|
(snippet
|
||||||
@@ -512,7 +512,7 @@ defining and using monads and useful monadic functions.")
|
|||||||
(define-public clojure-core-async
|
(define-public clojure-core-async
|
||||||
(package
|
(package
|
||||||
(name "clojure-core-async")
|
(name "clojure-core-async")
|
||||||
(version "1.9.865")
|
(version "1.8.741")
|
||||||
(home-page "https://github.com/clojure/core.async")
|
(home-page "https://github.com/clojure/core.async")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -522,7 +522,7 @@ defining and using monads and useful monadic functions.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"15pc2m58fscix85gsiwl9dlvw2x6alvc4qni46rry2sr00nfzd3r"))))
|
"1m6lir2xr119yxz483cz0rfw4k3a40qmmsiwl2y7kyxy65vab60z"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure")
|
'(#:source-dirs '("src/main/clojure")
|
||||||
@@ -546,7 +546,7 @@ work on Communicating Sequential Processes (CSP).")
|
|||||||
(define-public clojure-core-cache
|
(define-public clojure-core-cache
|
||||||
(package
|
(package
|
||||||
(name "clojure-core-cache")
|
(name "clojure-core-cache")
|
||||||
(version "1.2.263")
|
(version "1.2.249")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -555,7 +555,7 @@ work on Communicating Sequential Processes (CSP).")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"19q81aki8wb120v6jfylwqgf965mwkhrpcsrs5zazjfjv8vq6glx"))))
|
"0hdwv5dsx49i12riz3frzshwkgw26ah43667lzga2n6zgpmrh8ii"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure")
|
'(#:source-dirs '("src/main/clojure")
|
||||||
@@ -598,7 +598,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
|||||||
(define-public clojure-core-memoize
|
(define-public clojure-core-memoize
|
||||||
(package
|
(package
|
||||||
(name "clojure-core-memoize")
|
(name "clojure-core-memoize")
|
||||||
(version "1.2.281")
|
(version "1.2.273")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -607,7 +607,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0bnlqs7m69svhfadwy46wgc88j9ma9fhdk4586b4xxppamj6c5j4"))))
|
"009fj19y464an66pryygmqbnx2dqk5wkp40rbkbgkir0ax0k6j3y"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure")
|
'(#:source-dirs '("src/main/clojure")
|
||||||
@@ -734,7 +734,7 @@ maps also support conj/peek/pop operations.")
|
|||||||
(define-public clojure-data-xml
|
(define-public clojure-data-xml
|
||||||
(package
|
(package
|
||||||
(name "clojure-data-xml")
|
(name "clojure-data-xml")
|
||||||
(version "0.2.0-alpha11")
|
(version "0.2.0-alpha10")
|
||||||
(home-page "https://github.com/clojure/data.xml")
|
(home-page "https://github.com/clojure/data.xml")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -744,7 +744,7 @@ maps also support conj/peek/pop operations.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0k7hq3s4zbk0ryhgycivl1dk22fzh60522a57az8ykmixhqjxwhg"))))
|
"0mnhgrh20p2wwmq8a4631dkpxbgbijwi6sfhw5v784hzkjkfgkh6"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure")
|
'(#:source-dirs '("src/main/clojure")
|
||||||
@@ -862,7 +862,7 @@ tree.
|
|||||||
(define-public clojure-tools-analyzer
|
(define-public clojure-tools-analyzer
|
||||||
(package
|
(package
|
||||||
(name "clojure-tools-analyzer")
|
(name "clojure-tools-analyzer")
|
||||||
(version "1.2.2")
|
(version "1.2.1")
|
||||||
(home-page "https://github.com/clojure/tools.analyzer")
|
(home-page "https://github.com/clojure/tools.analyzer")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -872,7 +872,7 @@ tree.
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"07cxphrmd6a3clnalrdqxlyin8l0lw0xhjy2rh9gaizxfv5c23jp"))))
|
"0apa3gc45rmdj19plbvglpj6i9dadkgvvidj5mcnkzi9y3h0nr27"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure")
|
'(#:source-dirs '("src/main/clojure")
|
||||||
@@ -938,7 +938,7 @@ tools.analyzer, providing additional JVM-specific passes.")
|
|||||||
(define-public clojure-tools-cli
|
(define-public clojure-tools-cli
|
||||||
(package
|
(package
|
||||||
(name "clojure-tools-cli")
|
(name "clojure-tools-cli")
|
||||||
(version "1.4.256")
|
(version "1.3.250")
|
||||||
(home-page "https://github.com/clojure/tools.cli")
|
(home-page "https://github.com/clojure/tools.cli")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -947,7 +947,7 @@ tools.analyzer, providing additional JVM-specific passes.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1kr1cpypzgzh8pkih5qamsaq8c96jfpcvmn9f330sic2shb53m55"))))
|
(base32 "1nyw33w83gd7xlbpma03p4jwcdcp38h8y99x2rqw4zcnw19gsz4p"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:source-dirs '("src/main/clojure/")
|
'(#:source-dirs '("src/main/clojure/")
|
||||||
@@ -959,25 +959,29 @@ tools.analyzer, providing additional JVM-specific passes.")
|
|||||||
work with command-line arguments.")
|
work with command-line arguments.")
|
||||||
(license license:epl1.0)))
|
(license license:epl1.0)))
|
||||||
|
|
||||||
(define-public clojure-tools-deps-edn
|
(define-public clojure-tools-deps
|
||||||
(package
|
(package
|
||||||
(name "clojure-tools-deps-edn")
|
(name "clojure-tools-deps")
|
||||||
(version "0.9.22")
|
(version "0.28.1578")
|
||||||
(home-page "https://github.com/clojure/tools.deps.edn")
|
(home-page "https://github.com/clojure/tools.deps")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url home-page)
|
(url home-page)
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"082p6zpbb8vvdc9ncc0d66h3g7sax4pp0h4fymwiv0lakzyq3g9g"))))
|
"1w3f8cl81q4kln6iz74fnfzms4c4x279ivh1962pcg22q8l1w8d5"))))
|
||||||
(build-system clojure-build-system)
|
(build-system clojure-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
||||||
|
#:java-source-dirs '("src/main/java")
|
||||||
#:test-dirs '("src/test/clojure")
|
#:test-dirs '("src/test/clojure")
|
||||||
#:doc-dirs '()
|
#:doc-dirs '()
|
||||||
|
;; FIXME: Could not initialize class
|
||||||
|
;; org.eclipse.aether.transport.http.SslSocketFactory
|
||||||
|
#:tests? #f
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'build 'reference-clojure-jar-input
|
(add-before 'build 'reference-clojure-jar-input
|
||||||
@@ -988,42 +992,12 @@ work with command-line arguments.")
|
|||||||
(string-append "org.clojure/clojure {:local/root \""
|
(string-append "org.clojure/clojure {:local/root \""
|
||||||
(assoc-ref inputs "clojure")
|
(assoc-ref inputs "clojure")
|
||||||
"/share/java/clojure.jar\"}"))))))))
|
"/share/java/clojure.jar\"}"))))))))
|
||||||
(synopsis "Reader for @file{deps.edn}")
|
|
||||||
(description "This package provides support for reading and manipulating
|
|
||||||
@file{deps.edn} files and data structures. It can be used in scenarios where
|
|
||||||
the @code{tools.deps} library is not needed for dep expansion.")
|
|
||||||
(license license:epl1.0)))
|
|
||||||
|
|
||||||
(define-public clojure-tools-deps
|
|
||||||
(package
|
|
||||||
(name "clojure-tools-deps")
|
|
||||||
(version "0.29.1598")
|
|
||||||
(home-page "https://github.com/clojure/tools.deps")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url home-page)
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1qds0ri6y8s7419x3pzl9yhhr19qli3l52yg9a78w47h0w6dd1kv"))))
|
|
||||||
(build-system clojure-build-system)
|
|
||||||
(arguments
|
|
||||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
|
||||||
#:java-source-dirs '("src/main/java")
|
|
||||||
#:test-dirs '("src/test/clojure")
|
|
||||||
#:doc-dirs '()
|
|
||||||
;; FIXME: Could not initialize class
|
|
||||||
;; org.eclipse.aether.transport.http.SslSocketFactory
|
|
||||||
#:tests? #f))
|
|
||||||
(propagated-inputs (list maven-3.8-core
|
(propagated-inputs (list maven-3.8-core
|
||||||
maven-resolver-1.6-connector-basic
|
maven-resolver-1.6-connector-basic
|
||||||
maven-resolver-1.6-transport-http
|
maven-resolver-1.6-transport-http
|
||||||
maven-resolver-1.6-transport-file
|
maven-resolver-1.6-transport-file
|
||||||
clojure-tools-gitlibs
|
clojure-tools-gitlibs
|
||||||
clojure-tools-cli
|
clojure-tools-cli
|
||||||
clojure-tools-deps-edn
|
|
||||||
clojure-data-xml
|
clojure-data-xml
|
||||||
cognitect-aws-api))
|
cognitect-aws-api))
|
||||||
(synopsis "Clojure library supporting clojure-tools")
|
(synopsis "Clojure library supporting clojure-tools")
|
||||||
@@ -1201,7 +1175,7 @@ asynchronous support.")
|
|||||||
(define-public cognitect-aws-api
|
(define-public cognitect-aws-api
|
||||||
(package
|
(package
|
||||||
(name "cognitect-aws-api")
|
(name "cognitect-aws-api")
|
||||||
(version "0.8.824")
|
(version "0.8.800")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -1210,7 +1184,7 @@ asynchronous support.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ivlcmsr7rvr7741k9wzniv2zxijida0b588nqngm5vrgna816yl"))
|
"17sxj3mvq4iasr0kchbx2anmrh25v8bvmpam4si704vksmnm28p3"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
|||||||
@@ -47,6 +47,7 @@
|
|||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system emacs)
|
#:use-module (guix build-system emacs)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages backup)
|
#:use-module (gnu packages backup)
|
||||||
|
|||||||
+3
-42
@@ -1,8 +1,8 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012-2013, 2015, 2018, 2020, 2021, 2023, 2025 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2015, 2018, 2020, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2016, 2017, 2018, 2019-2024 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017, 2019-2024 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
|
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
|
||||||
@@ -49,6 +49,7 @@
|
|||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module ((guix build-system python) #:select (pypi-uri))
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
@@ -865,46 +866,6 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
|
|||||||
the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.")
|
the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.")
|
||||||
(license license:lgpl3+)))
|
(license license:lgpl3+)))
|
||||||
|
|
||||||
(define-public idutils
|
|
||||||
(package
|
|
||||||
(name "idutils")
|
|
||||||
(version "4.6")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "mirror://gnu/idutils/idutils-" version ".tar.xz"))
|
|
||||||
(sha256
|
|
||||||
(base32 "1hmai3422iaqnp34kkzxdnywl7n7pvlxp11vrw66ybxn9wxg90c1"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
(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")))
|
|
||||||
|
|
||||||
;; 'gets' is deprecated in glibc 2.33 and its declaration is
|
|
||||||
;; no longer visible by default from <stdio.h>.
|
|
||||||
(substitute* "lib/stdio.in.h"
|
|
||||||
(("_GL_WARN_ON_USE \\(gets.*")
|
|
||||||
""))))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(native-inputs (list emacs-minimal))
|
|
||||||
(home-page "https://www.gnu.org/software/idutils/")
|
|
||||||
(synopsis "Identifier database utilities")
|
|
||||||
(description
|
|
||||||
"The GNU idutils package includes tools to create an index of textual
|
|
||||||
tokens used in a list of file names and then to query that index. Thus, it
|
|
||||||
allows the user to, for example, find all the uses of a particular function
|
|
||||||
in a large programming project. In addition to handling textual tokens, it
|
|
||||||
can also handle numeric constants and the contents of character strings.")
|
|
||||||
(license license:gpl3+)))
|
|
||||||
|
|
||||||
(define-public indent
|
(define-public indent
|
||||||
;; XXX: Not released anymore, but some patches fix CVEs.
|
;; XXX: Not released anymore, but some patches fix CVEs.
|
||||||
(let ((commit "1737c929cbe2ec8a181107df9742894a44c57f71")
|
(let ((commit "1737c929cbe2ec8a181107df9742894a44c57f71")
|
||||||
|
|||||||
+128
-633
@@ -18,10 +18,10 @@
|
|||||||
|
|
||||||
;;; This module is separate from (gnu packages rust-apps) to avoid a
|
;;; This module is separate from (gnu packages rust-apps) to avoid a
|
||||||
;;; circular module dependency: (gnu packages rust-sources), which
|
;;; circular module dependency: (gnu packages rust-sources), which
|
||||||
;;; defines rust-codex-0.124.0, transitively loads (gnu packages
|
;;; defines rust-codex-0.98.0, transitively loads (gnu packages
|
||||||
;;; rust-apps) through its #:use-module chain. If the codex package
|
;;; rust-apps) through its #:use-module chain. If the codex package
|
||||||
;;; lived in rust-apps.scm, loading rust-sources would trigger loading
|
;;; lived in rust-apps.scm, loading rust-sources would trigger loading
|
||||||
;;; rust-apps before rust-codex-0.124.0 is defined, causing an unbound
|
;;; rust-apps before rust-codex-0.98.0 is defined, causing an unbound
|
||||||
;;; variable error.
|
;;; variable error.
|
||||||
|
|
||||||
(define-module (gnu packages codex)
|
(define-module (gnu packages codex)
|
||||||
@@ -36,46 +36,33 @@
|
|||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages cmake)
|
#:use-module (gnu packages cmake)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages linux)
|
|
||||||
#:use-module (gnu packages libunwind)
|
#:use-module (gnu packages libunwind)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages lsof)
|
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages rust-sources)
|
#:use-module (gnu packages rust-sources)
|
||||||
#:use-module (gnu packages sqlite)
|
#:use-module (gnu packages sqlite)
|
||||||
#:use-module (gnu packages textutils)
|
|
||||||
#:use-module (gnu packages nss)
|
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages version-control)
|
#:use-module (gnu packages version-control))
|
||||||
#:use-module (gnu packages virtualization))
|
|
||||||
|
|
||||||
(define-public codex
|
(define-public codex
|
||||||
(package
|
(package
|
||||||
(name "codex")
|
(name "codex")
|
||||||
(version (package-version rust-codex-0.124.0))
|
(version (package-version rust-codex-0.98.0))
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(inherit (package-source rust-codex-0.124.0))
|
(inherit (package-source rust-codex-0.98.0))
|
||||||
(patches (search-patches
|
(patches (search-patches
|
||||||
"codex-acp-0.11.1-disable-code-mode.patch"
|
"codex-0.98.0-remove-patch-sections.patch"
|
||||||
"rust-codex-0.124.0-code-mode-stub-toolname.patch"
|
|
||||||
"rust-codex-0.124.0-remove-patch-sections.patch"
|
|
||||||
"rust-codex-0.120.0-remove-libwebrtc.patch"
|
|
||||||
"rust-codex-0.98.0-test-shebangs.patch"
|
"rust-codex-0.98.0-test-shebangs.patch"
|
||||||
"rust-codex-0.120.0-test-timeout.patch"))))
|
"rust-codex-0.98.0-test-timeout.patch"))))
|
||||||
(build-system cargo-build-system)
|
(build-system cargo-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:install-source? #f
|
#:install-source? #f
|
||||||
;; exec-server is library-only in 0.124 (no [[bin]] in
|
#:cargo-install-paths '(list "cli" "exec" "exec-server"
|
||||||
;; exec-server/Cargo.toml); cargo install --path exec-server fails
|
"linux-sandbox" "mcp-server" "network-proxy"
|
||||||
;; with "no packages found with binaries or examples". Drop it
|
|
||||||
;; from the install paths -- the library is consumed via the
|
|
||||||
;; workspace by other binaries here, not installed standalone.
|
|
||||||
#:cargo-install-paths '(list "cli" "exec"
|
|
||||||
"linux-sandbox" "mcp-server"
|
|
||||||
"app-server" "tui")
|
"app-server" "tui")
|
||||||
;; schema_fixtures_match_generated (upstream fixture is stale:
|
;; schema_fixtures_match_generated (upstream fixture is stale:
|
||||||
;; FileChange::Update in codex-protocol gained old_content,
|
;; FileChange::Update in codex-protocol gained old_content,
|
||||||
@@ -84,55 +71,72 @@
|
|||||||
#:cargo-test-flags '(list "--workspace"
|
#:cargo-test-flags '(list "--workspace"
|
||||||
"--exclude" "codex-app-server-protocol"
|
"--exclude" "codex-app-server-protocol"
|
||||||
"--"
|
"--"
|
||||||
;;; BEGIN Landlock returns NotEnforced
|
;; These tests exercise sandbox denial and
|
||||||
;;; in the build container; the sandbox
|
;; escalation, which requires Landlock to
|
||||||
;;; binary panics instead of cleanly
|
;; cleanly deny filesystem access. Inside the
|
||||||
;;; denying filesystem access.
|
;; build container Landlock returns NotEnforced
|
||||||
;; Sandbox denial and escalation tests.
|
;; and the sandbox binary panics instead.
|
||||||
|
;; Disabling Landlock would not help either,
|
||||||
|
;; since these tests need a working sandbox to
|
||||||
|
;; have anything to deny and escalate.
|
||||||
"--skip" "sandbox_denied_shell_returns_original_output"
|
"--skip" "sandbox_denied_shell_returns_original_output"
|
||||||
;; Sandbox denial and escalation tests.
|
|
||||||
"--skip" "shell_escalated_permissions_rejected_then_ok"
|
"--skip" "shell_escalated_permissions_rejected_then_ok"
|
||||||
;; Sandbox denial and escalation tests.
|
|
||||||
"--skip" "unified_exec_runs_under_sandbox"
|
"--skip" "unified_exec_runs_under_sandbox"
|
||||||
;; codex-exec: spawn_command_under_linux_sandbox
|
;; These tests (in codex-exec) directly call
|
||||||
;; panics with LandlockRestrict (exit 101).
|
;; spawn_command_under_linux_sandbox to verify
|
||||||
|
;; that python and bash work correctly inside
|
||||||
|
;; the Landlock sandbox. The sandbox binary
|
||||||
|
;; (codex-exec) panics with LandlockRestrict
|
||||||
|
;; (exit code 101) before the inner command
|
||||||
|
;; even starts.
|
||||||
"--skip" "python_getpwuid_works_under_sandbox"
|
"--skip" "python_getpwuid_works_under_sandbox"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "python_multiprocessing_lock_works_under_sandbox"
|
"--skip" "python_multiprocessing_lock_works_under_sandbox"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "sandbox_distinguishes_command_and_policy_cwds"
|
"--skip" "sandbox_distinguishes_command_and_policy_cwds"
|
||||||
;; linux-sandbox: process_exec_tool_call
|
;; These linux-sandbox tests directly invoke
|
||||||
;; invokes Landlock; same panic.
|
;; the Landlock sandbox via
|
||||||
|
;; process_exec_tool_call; same root cause.
|
||||||
"--skip" "test_writable_root"
|
"--skip" "test_writable_root"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "test_timeout"
|
"--skip" "test_timeout"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "test_root_read"
|
"--skip" "test_root_read"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "test_dev_null_write"
|
"--skip" "test_dev_null_write"
|
||||||
;; Same as above.
|
|
||||||
"--skip" "test_no_new_privs_is_enabled"
|
"--skip" "test_no_new_privs_is_enabled"
|
||||||
;; One scenario runs through Landlock
|
;; This test iterates many approval scenarios;
|
||||||
;; which panics; cargo --skip cannot
|
;; one of them
|
||||||
;; target individual scenarios.
|
;; (danger_full_access_on_request_allows_network)
|
||||||
|
;; runs a command through the Landlock sandbox
|
||||||
|
;; binary, which panics with LandlockRestrict
|
||||||
|
;; inside the build container. Cargo --skip
|
||||||
|
;; cannot target individual scenarios, so we
|
||||||
|
;; skip the entire matrix.
|
||||||
"--skip" "approval_matrix_covers_all_modes"
|
"--skip" "approval_matrix_covers_all_modes"
|
||||||
;; Landlock panic triggers escalation-retry
|
;; This test verifies session-level patch
|
||||||
;; which interferes with the approval cache.
|
;; approval caching: approve once, skip
|
||||||
|
;; future prompts for the same file. When
|
||||||
|
;; Landlock is unavailable (as in the Guix
|
||||||
|
;; build container) the sandbox binary panics,
|
||||||
|
;; triggering the escalation-retry path, which
|
||||||
|
;; interferes with the approval cache and
|
||||||
|
;; causes a spurious re-prompt on the second
|
||||||
|
;; patch.
|
||||||
"--skip" "approving_apply_patch_for_session_skips_future_prompts_for_same_file"
|
"--skip" "approving_apply_patch_for_session_skips_future_prompts_for_same_file"
|
||||||
;; These tests expect to interrupt a
|
;; These tests expect to interrupt a
|
||||||
;; long-running 'sleep 60' and receive
|
;; long-running 'sleep 60' and receive
|
||||||
;; TurnAborted. What happens:
|
;; TurnAborted. Default test config is
|
||||||
|
;; OnRequest + ReadOnly. What happens:
|
||||||
;;
|
;;
|
||||||
;; 1. ReadOnly wraps the command with
|
;; 1. ReadOnly wraps the command with
|
||||||
;; codex-linux-sandbox (Landlock-based).
|
;; codex-linux-sandbox (Landlock-based).
|
||||||
;; 2. Landlock is unavailable, so the
|
;; 2. Landlock is unavailable in the Guix
|
||||||
;; sandbox binary exits instantly.
|
;; build container, so the sandbox
|
||||||
|
;; binary exits instantly (~1 ms).
|
||||||
;; 3. Orchestrator gets SandboxErr::Denied.
|
;; 3. Orchestrator gets SandboxErr::Denied.
|
||||||
;; wants_no_sandbox_approval(OnRequest)
|
;; wants_no_sandbox_approval(OnRequest)
|
||||||
;; returns false, so no escalation --
|
;; returns false (sandboxing.rs:222),
|
||||||
;; denial returned directly.
|
;; so no escalation -- denial returned
|
||||||
|
;; directly.
|
||||||
;; 4. ToolEmitter::finish sends the error
|
;; 4. ToolEmitter::finish sends the error
|
||||||
;; to the mock model.
|
;; to the mock model as
|
||||||
|
;; function_call_output.
|
||||||
;; 5. Second mock SSE response fires,
|
;; 5. Second mock SSE response fires,
|
||||||
;; turn finishes with TurnComplete.
|
;; turn finishes with TurnComplete.
|
||||||
;; 6. Op::Interrupt arrives 100 ms later,
|
;; 6. Op::Interrupt arrives 100 ms later,
|
||||||
@@ -146,370 +150,74 @@
|
|||||||
;; has only one mock response (so the turn
|
;; has only one mock response (so the turn
|
||||||
;; cannot complete first).
|
;; cannot complete first).
|
||||||
"--skip" "interrupt_persists_turn_aborted_marker_in_next_request"
|
"--skip" "interrupt_persists_turn_aborted_marker_in_next_request"
|
||||||
;; Same causal chain as above.
|
|
||||||
"--skip" "interrupt_tool_records_history_entries"
|
"--skip" "interrupt_tool_records_history_entries"
|
||||||
;; WorkspaceWrite sandbox policy wraps
|
;; Upstream bug: test hardcodes "0.0.0" in the
|
||||||
;; commands with codex-linux-sandbox;
|
;; expected user-agent string but the workspace
|
||||||
;; Landlock panics, command never runs,
|
;; version is "0.98.0".
|
||||||
;; exit_code is None instead of Some(0).
|
"--skip" "get_user_agent_returns_current_codex_user_agent"
|
||||||
"--skip" "request_permissions_grants_apply_to_later_exec_command_calls"
|
;; Same upstream bug: mcp-server tests
|
||||||
;; Same root cause.
|
;; check the initialize response which
|
||||||
"--skip" "request_permissions_grants_apply_to_later_shell_command_calls"
|
;; includes "version": "0.0.0" but the
|
||||||
;; Same root cause.
|
;; server returns "0.98.0".
|
||||||
"--skip" "partial_request_permissions_grants_do_not_preapprove_new_permissions"
|
|
||||||
;;; END Landlock
|
|
||||||
;;; BEGIN mcp_process.rs initialize
|
|
||||||
;;; assertion expects "version":"0.0.0"
|
|
||||||
;;; but the server returns "0.120.0".
|
|
||||||
"--skip" "test_codex_tool_passes_base_instructions"
|
"--skip" "test_codex_tool_passes_base_instructions"
|
||||||
"--skip" "test_shell_command_approval_triggers_elicitation"
|
"--skip" "test_shell_command_approval_triggers_elicitation"
|
||||||
"--skip" "test_patch_approval_triggers_elicitation"
|
"--skip" "test_patch_approval_triggers_elicitation"
|
||||||
;;; END version mismatch
|
;; These codex-exec-server tests need
|
||||||
;;; BEGIN Test isolation bug:
|
;; "dotslash", a Meta tool that lazily
|
||||||
;;; unique_temp_dir() in
|
;; downloads pre-built binaries from a
|
||||||
;;; state/src/runtime.rs names dirs
|
;; JSON manifest. The test helper
|
||||||
;;; using nanosecond timestamps, so
|
;; create_transport runs
|
||||||
;;; parallel tests can collide. The
|
;; `dotslash -- fetch <path>` to obtain a
|
||||||
;;; SQLite migration runs CREATE TABLE
|
;; custom bash binary described in
|
||||||
;;; threads (without IF NOT EXISTS),
|
;; exec-server/tests/suite/bash.
|
||||||
;;; so the second init panics with
|
;; dotslash is not available in the build
|
||||||
;;; "table threads already exists".
|
;; container.
|
||||||
|
"--skip" "list_tools"
|
||||||
|
"--skip" "accept_elicitation_for_prompt_rule"
|
||||||
|
;;; Test isolation bug: each test in
|
||||||
|
;;; state/src/runtime.rs calls
|
||||||
|
;;; unique_temp_dir() to get its own
|
||||||
|
;;; temporary directory (and thus its
|
||||||
|
;;; own SQLite database). That function
|
||||||
|
;;; names directories using the current
|
||||||
|
;;; nanosecond timestamp, so when tests
|
||||||
|
;;; run in parallel several can receive
|
||||||
|
;;; the same name and open the same
|
||||||
|
;;; database. The initial SQLite
|
||||||
|
;;; migration runs CREATE TABLE threads
|
||||||
|
;;; (without IF NOT EXISTS), so any init
|
||||||
|
;;; after the first panics with "table
|
||||||
|
;;; threads already exists". Any of
|
||||||
|
;;; these tests
|
||||||
|
;;; can be the victim.
|
||||||
"--skip" "init_removes_legacy_state_db_files"
|
"--skip" "init_removes_legacy_state_db_files"
|
||||||
"--skip" "upsert_and_get_thread_memory"
|
"--skip" "upsert_and_get_thread_memory"
|
||||||
"--skip" "get_last_n_thread_memories_for_cwd_matches_exactly"
|
"--skip" "get_last_n_thread_memories_for_cwd_matches_exactly"
|
||||||
"--skip" "upsert_thread_memory_errors_for_unknown_thread"
|
"--skip" "upsert_thread_memory_errors_for_unknown_thread"
|
||||||
"--skip" "get_last_n_thread_memories_for_cwd_zero_returns_empty"
|
"--skip" "get_last_n_thread_memories_for_cwd_zero_returns_empty"
|
||||||
"--skip" "get_last_n_thread_memories_for_cwd_does_not_prefix_match"
|
"--skip" "get_last_n_thread_memories_for_cwd_does_not_prefix_match"
|
||||||
"--skip" "deleting_thread_cascades_thread_memory"
|
"--skip" "deleting_thread_cascades_thread_memory")
|
||||||
;;; END SQLite test isolation
|
|
||||||
;; The test spawns 'sh' after
|
|
||||||
;; env_clear() with an empty env map;
|
|
||||||
;; glibc execvp uses confstr(_CS_PATH)
|
|
||||||
;; ("/bin:/usr/bin") when PATH is
|
|
||||||
;; unset, but /bin/sh does not exist
|
|
||||||
;; in the build container.
|
|
||||||
"--skip" "cancellation_expiration_keeps_process_alive_until_terminated"
|
|
||||||
;; Proxy baseline_policy returns 403
|
|
||||||
;; "not_allowed_local" for example.com;
|
|
||||||
;; test expects 200.
|
|
||||||
"--skip" "managed_network_proxy_decider_survives_full_access_start"
|
|
||||||
;;; BEGIN bash_snapshot_script() uses
|
|
||||||
;;; "compgen -e" to list exports but
|
|
||||||
;;; bash-minimal lacks programmable
|
|
||||||
;;; completion; export section is empty.
|
|
||||||
;; stdout.contains("VALID_NAME") fails.
|
|
||||||
"--skip" "bash_snapshot_filters_invalid_exports"
|
|
||||||
;; stdout.contains("MULTILINE_CERT") fails.
|
|
||||||
"--skip" "bash_snapshot_preserves_multiline_exports"
|
|
||||||
;; snapshot.contains("PATH") fails.
|
|
||||||
"--skip" "linux_bash_snapshot_includes_sections"
|
|
||||||
;;; END compgen
|
|
||||||
;; substitute* patches PAGER to store
|
|
||||||
;; path of cat; test expects bare "cat".
|
|
||||||
"--skip" "unified_exec_env_injects_defaults"
|
|
||||||
;;; BEGIN V8 disabled (codex-code-mode
|
|
||||||
;;; default-features = false).
|
|
||||||
"--skip" "suite::code_mode::"
|
|
||||||
"--skip" "suite::js_repl::"
|
|
||||||
"--skip" "suite::view_image::js_repl_"
|
|
||||||
;;; END V8 disabled
|
|
||||||
;;; BEGIN same compgen root cause:
|
|
||||||
;;; assert_posix_snapshot_sections
|
|
||||||
;;; asserts snapshot.contains("PATH").
|
|
||||||
"--skip" "linux_shell_command_uses_shell_snapshot"
|
|
||||||
"--skip" "linux_unified_exec_uses_shell_snapshot"
|
|
||||||
"--skip" "shell_command_snapshot_still_intercepts_apply_patch"
|
|
||||||
;;; END compgen / shell snapshot
|
|
||||||
;;; BEGIN These sandbox tests set
|
|
||||||
;;; exclude_slash_tmp: true which makes
|
|
||||||
;;; bwrap exclude /tmp from its mount
|
|
||||||
;;; namespace. Since Guix builds under
|
|
||||||
;;; /tmp, the codex-linux-sandbox binary
|
|
||||||
;;; becomes invisible to bwrap even though
|
|
||||||
;;; the test adds the helper dir as a
|
|
||||||
;;; filesystem carve-out -- the parent /tmp
|
|
||||||
;;; bind-mount is absent so the carve-out
|
|
||||||
;;; has nothing to carve out of.
|
|
||||||
"--skip" "sandbox_reenables_writable_subpaths_under_unreadable_parents"
|
|
||||||
"--skip" "managed_proxy_mode_routes_through_bridge_and_blocks_direct_egress"
|
|
||||||
;;; END exclude_slash_tmp
|
|
||||||
;; Expects 3 TerminalInteraction events
|
|
||||||
;; across timed poll windows; under CPU
|
|
||||||
;; contention events merge into 2.
|
|
||||||
"--skip" "unified_exec_terminal_interaction_captures_delayed_output"
|
|
||||||
;;; BEGIN assert_parallel_duration
|
|
||||||
;;; requires < 1600 ms for parallel ops.
|
|
||||||
;; Two 300 ms test_sync_tool calls.
|
|
||||||
"--skip" "read_file_tools_run_in_parallel"
|
|
||||||
;; Two "sleep 0.25" shell commands.
|
|
||||||
"--skip" "shell_tools_run_in_parallel"
|
|
||||||
;; One test_sync_tool + one shell sleep.
|
|
||||||
"--skip" "mixed_parallel_tools_run_in_parallel"
|
|
||||||
;;; END assert_parallel_duration
|
|
||||||
;; Asserts elapsed >= 4500 ms and
|
|
||||||
;; < 5800 ms for a 5 s timeout; under
|
|
||||||
;; contention elapsed drifts past 5800.
|
|
||||||
"--skip" "remote_models_request_times_out_after_5s"
|
|
||||||
;; Queued inter-agent mail must be
|
|
||||||
;; injected between the reasoning/
|
|
||||||
;; commentary item and the gate release;
|
|
||||||
;; under contention the gate fires before
|
|
||||||
;; the mail is processed, so the snapshot
|
|
||||||
;; shows the stale function_call instead
|
|
||||||
;; of the expected mail message.
|
|
||||||
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_commentary_message_item"
|
|
||||||
;; Same root cause: snapshot mismatch at
|
|
||||||
;; pending_input.rs assert_two_responses_
|
|
||||||
;; input_snapshot; expects mail at position
|
|
||||||
;; 04 but gets function_call/shell instead.
|
|
||||||
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_reasoning_item"
|
|
||||||
;;; BEGIN DNS for hostnames like
|
|
||||||
;;; example.com fails in the build
|
|
||||||
;;; sandbox. host_resolves_to_non_
|
|
||||||
;;; public_ip() in runtime.rs treats
|
|
||||||
;;; failed DNS as non-public and
|
|
||||||
;;; returns NotAllowedLocal, so tests
|
|
||||||
;;; expecting Allowed or Decider get
|
|
||||||
;;; Deny/BaselinePolicy instead.
|
|
||||||
"--skip" "host_blocked_requires_allowlist_match"
|
|
||||||
"--skip" "add_allowed_domain_removes_matching_deny_entry"
|
|
||||||
"--skip" "host_blocked_subdomain_wildcards_exclude_apex"
|
|
||||||
"--skip" "host_blocked_global_wildcard_allowlist_allows_public_hosts_except_denylist"
|
|
||||||
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_ask"
|
|
||||||
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_allow_override"
|
|
||||||
"--skip" "http_connect_accept_blocks_in_limited_mode"
|
|
||||||
"--skip" "http_connect_accept_allows_allowlisted_host_in_full_mode"
|
|
||||||
"--skip" "mitm_policy_blocks_disallowed_method_and_records_telemetry"
|
|
||||||
;;; END DNS failure / NotAllowedLocal
|
|
||||||
;;; BEGIN Flaky: wiremock mock expects
|
|
||||||
;;; 1 POST to /codex/safety/arc but
|
|
||||||
;;; receives 0. Passes in some builds,
|
|
||||||
;;; fails in others with identical code
|
|
||||||
;;; and env. The identical custom_
|
|
||||||
;;; variant always passes; only the
|
|
||||||
;;; CODEX_APPS_MCP_SERVER_NAME variant
|
|
||||||
;;; flakes, suggesting a timing race
|
|
||||||
;;; in the async POST under contention.
|
|
||||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
|
|
||||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
|
|
||||||
;;; END ARC monitor flake
|
|
||||||
;;; BEGIN nss-certs sets SSL_CERT_FILE
|
|
||||||
;;; which makes build_reqwest_client load
|
|
||||||
;;; 171 CA certs via add_root_certificate.
|
|
||||||
;;; This changes the reqwest TLS backend
|
|
||||||
;;; configuration; the ARC safety POST to
|
|
||||||
;;; the localhost mock server never arrives
|
|
||||||
;;; (wiremock expects 1 request, gets 0).
|
|
||||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
|
|
||||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
|
|
||||||
;;; END nss-certs / ARC monitor
|
|
||||||
;; Upstream bug: JsonRpcConnection has
|
|
||||||
;; no websocket keepalive or read timeout.
|
|
||||||
;; When the exec-server is killed, the
|
|
||||||
;; client's reader task blocks on
|
|
||||||
;; websocket_reader.next() forever because
|
|
||||||
;; TCP doesn't detect the dead peer without
|
|
||||||
;; a write or keepalive probe. Previously
|
|
||||||
;; masked because empty env made "sleep 10"
|
|
||||||
;; fail instantly; with PATH the process
|
|
||||||
;; lives long enough to hit the deadlock.
|
|
||||||
"--skip" "remote_exec_process_reports_transport_disconnect"
|
|
||||||
;; 500 ms timeout on MCP list response
|
|
||||||
;; (mcp_server_status.rs timeout at
|
|
||||||
;; Duration::from_millis(500)). With
|
|
||||||
;; nss-certs TLS now works, so the
|
|
||||||
;; startup plugin sync HTTP requests
|
|
||||||
;; (chatgpt.com, api.github.com) wait
|
|
||||||
;; for TCP timeout instead of failing
|
|
||||||
;; instantly at TLS, eating the budget.
|
|
||||||
"--skip" "mcp_server_status_list_tools_and_auth_only_skips_slow_inventory_calls"
|
|
||||||
;;; BEGIN Stack overflow in 'current_thread'
|
|
||||||
;;; tokio runtime. The sibling tests in
|
|
||||||
;;; tracing_tests.rs use the local helper
|
|
||||||
;;; run_current_thread_test_with_stack
|
|
||||||
;;; (4 MiB) but this one uses bare
|
|
||||||
;;; #[tokio::test] on the 2 MiB default
|
|
||||||
;;; test-thread stack, and TurnStart's
|
|
||||||
;;; future graph exceeds it. With
|
|
||||||
;;; RUST_MIN_STACK raised the overflow is
|
|
||||||
;;; gone but the test then deterministically
|
|
||||||
;;; times out waiting for a span tagged
|
|
||||||
;;; codex.op = "user_input" on the remote
|
|
||||||
;;; trace that upstream never emits on that
|
|
||||||
;;; trace in our environment.
|
|
||||||
"--skip" "turn_start_jsonrpc_span_parents_core_turn_spans"
|
|
||||||
;;; END tracing test stack/timeout
|
|
||||||
;;; BEGIN The upstream loader resolves the
|
|
||||||
;;; MCP OAuth credentials store mode by
|
|
||||||
;;; calling
|
|
||||||
;;; resolve_mcp_oauth_credentials_store_mode
|
|
||||||
;;; with env!("CARGO_PKG_VERSION") -- which
|
|
||||||
;;; in the released 0.124.0 tarball is
|
|
||||||
;;; "0.124.0". These fixture tests
|
|
||||||
;;; construct the expected Config by
|
|
||||||
;;; passing the LOCAL_DEV_BUILD_VERSION
|
|
||||||
;;; constant ("0.0.0") to the same
|
|
||||||
;;; resolver, and the resolver only returns
|
|
||||||
;;; File for "0.0.0" -- Auto otherwise.
|
|
||||||
;;; Upstream CI builds from a checkout
|
|
||||||
;;; still carrying version = "0.0.0" so the
|
|
||||||
;;; tests pass there; they cannot pass
|
|
||||||
;;; against a released tag.
|
|
||||||
"--skip" "test_precedence_fixture_with_gpt3_profile"
|
|
||||||
"--skip" "test_precedence_fixture_with_gpt5_profile"
|
|
||||||
"--skip" "test_precedence_fixture_with_o3_profile"
|
|
||||||
"--skip" "test_precedence_fixture_with_zdr_profile"
|
|
||||||
;;; END LOCAL_DEV_BUILD_VERSION fixture mismatch
|
|
||||||
;;; BEGIN Verifies that Codex's user-shell
|
|
||||||
;;; spawn produces a child where
|
|
||||||
;;; CODEX_SANDBOX_NETWORK_DISABLED is unset
|
|
||||||
;;; (asserts stdout == "not-set"). We
|
|
||||||
;;; deliberately set that env var at the
|
|
||||||
;;; check phase to trigger upstream's
|
|
||||||
;;; skip_if_no_network! guards; the var then
|
|
||||||
;;; leaks into the spawned shell and the
|
|
||||||
;;; assertion fails. The guix skip is a
|
|
||||||
;;; direct cost of the network-gate fix --
|
|
||||||
;;; trading one broken test for two that
|
|
||||||
;;; now skip cleanly.
|
|
||||||
"--skip" "user_shell_command_does_not_set_network_sandbox_env_var"
|
|
||||||
;;; END CODEX_SANDBOX_NETWORK_DISABLED leak
|
|
||||||
;;; BEGIN The exec-server/tests/file_system
|
|
||||||
;;; integration tests invoke the real
|
|
||||||
;;; system bwrap, which tries to execvp the
|
|
||||||
;;; test binary at the cargo target path
|
|
||||||
;;; under the build dir. Same root cause
|
|
||||||
;;; as the existing
|
|
||||||
;;; sandbox_reenables_writable_subpaths_under_unreadable_parents
|
|
||||||
;;; skip: guix builds live under /tmp but
|
|
||||||
;;; bwrap's mount namespace excludes /tmp,
|
|
||||||
;;; making the binary invisible inside the
|
|
||||||
;;; namespace.
|
|
||||||
"--skip" "file_system_copy_preserves_symlink_source"
|
|
||||||
"--skip" "file_system_copy_rejects_symlink_escape_destination"
|
|
||||||
"--skip" "file_system_copy_rejects_symlink_escape_source"
|
|
||||||
"--skip" "file_system_create_directory_rejects_symlink_escape"
|
|
||||||
"--skip" "file_system_read_directory_rejects_symlink_escape"
|
|
||||||
"--skip" "file_system_remove_rejects_symlink_escape"
|
|
||||||
"--skip" "file_system_remove_removes_symlink_not_target"
|
|
||||||
"--skip" "file_system_sandboxed_read_allows_readable_root"
|
|
||||||
"--skip" "file_system_sandboxed_read_rejects_symlink_escape"
|
|
||||||
"--skip" "file_system_sandboxed_read_rejects_symlink_parent_dotdot_escape"
|
|
||||||
"--skip" "file_system_sandboxed_write_allows_additional_write_root"
|
|
||||||
"--skip" "file_system_sandboxed_write_rejects_symlink_escape"
|
|
||||||
"--skip" "file_system_sandboxed_write_rejects_unwritable_path"
|
|
||||||
;;; END bwrap-cant-see-/tmp file_system tests
|
|
||||||
;;; BEGIN Landlock is unavailable on Guix,
|
|
||||||
;;; so the sandbox cannot deny network
|
|
||||||
;;; syscalls. These tests expect
|
|
||||||
;;; SandboxErr::Denied for the nc, ping,
|
|
||||||
;;; ssh, getent, and dev_tcp_redirection
|
|
||||||
;;; commands but those commands instead
|
|
||||||
;;; block on connect() until the test's 2s
|
|
||||||
;;; timeout fires (Timeout, exit 124).
|
|
||||||
;;; Same root cause as the Landlock skips
|
|
||||||
;;; at the top of this list; new test names
|
|
||||||
;;; in 0.124.
|
|
||||||
"--skip" "sandbox_blocks_nc"
|
|
||||||
"--skip" "sandbox_blocks_ping"
|
|
||||||
"--skip" "sandbox_blocks_dev_tcp_redirection"
|
|
||||||
"--skip" "sandbox_blocks_getent"
|
|
||||||
"--skip" "sandbox_blocks_ssh"
|
|
||||||
;;; END Landlock network block
|
|
||||||
;;; BEGIN Requires github.com network access.
|
|
||||||
;;; With no "extraKnownMarketplaces" entry
|
|
||||||
;;; in settings.json,
|
|
||||||
;;; collect_marketplace_import_sources
|
|
||||||
;;; inserts a fallback entry for the
|
|
||||||
;;; "claude-plugins-official" marketplace
|
|
||||||
;;; pointing at the github shorthand
|
|
||||||
;;; "anthropics/claude-plugins-official".
|
|
||||||
;;; add_marketplace -> parse_marketplace_source
|
|
||||||
;;; expands that to a github.com/.git URL
|
|
||||||
;;; and clone_git_source runs 'git clone'.
|
|
||||||
;;; The Guix build sandbox has no network,
|
|
||||||
;;; so the clone fails and the marketplace
|
|
||||||
;;; lands in failed_marketplaces. No mock
|
|
||||||
;;; cloner is injected via
|
|
||||||
;;; ExternalAgentConfigService::new_for_test,
|
|
||||||
;;; so there is no in-tree way to satisfy
|
|
||||||
;;; the test offline.
|
|
||||||
"--skip" "import_plugins_infers_claude_official_marketplace_when_missing_from_settings"
|
|
||||||
;;; END github.com network access
|
|
||||||
;;; BEGIN Async race between the rollout
|
|
||||||
;;; writer task and a direct SQLite read.
|
|
||||||
;;; The test calls
|
|
||||||
;;; update_memory_settings_with_app_server,
|
|
||||||
;;; which routes through the in-memory
|
|
||||||
;;; thread path on the app-server's
|
|
||||||
;;; ThreadMemoryModeSet handler ->
|
|
||||||
;;; Session::set_thread_memory_mode ->
|
|
||||||
;;; persist_thread_memory_mode_update,
|
|
||||||
;;; which writes a RolloutItem::SessionMeta
|
|
||||||
;;; with the new mode to the rollout file
|
|
||||||
;;; via recorder.record_items + flush. The
|
|
||||||
;;; rollout writer task then asynchronously
|
|
||||||
;;; calls sync_thread_state_after_write,
|
|
||||||
;;; which calls state_db::apply_rollout_items
|
|
||||||
;;; to mirror the SessionMeta into SQLite.
|
|
||||||
;;; flush() only awaits the rollout-file
|
|
||||||
;;; write, not the subsequent SQLite sync.
|
|
||||||
;;; The test opens a fresh StateRuntime and
|
|
||||||
;;; reads get_thread_memory_mode
|
|
||||||
;;; immediately, so it observes the creation
|
|
||||||
;;; default of "enabled" written by
|
|
||||||
;;; upsert_thread_with_creation_memory_mode
|
|
||||||
;;; instead of the new "disabled". Upstream
|
|
||||||
;;; CI wins this race; we lose.
|
|
||||||
"--skip" "update_memory_settings_updates_current_thread_memory_mode"
|
|
||||||
;;; END memory-mode rollout/sqlite race
|
|
||||||
;;; BEGIN The Stopwatch::new constructor in
|
|
||||||
;;; codex_shell_escalation anchors
|
|
||||||
;;; T0 = Instant::now() at construction;
|
|
||||||
;;; the spawned cancellation task fires at
|
|
||||||
;;; T0 + limit. The test captures
|
|
||||||
;;; start = Instant::now() at T1 > T0 (after
|
|
||||||
;;; cancellation_token() returns) and
|
|
||||||
;;; asserts start.elapsed() >= limit,
|
|
||||||
;;; i.e. (T0 + limit) - T1 >= limit, which
|
|
||||||
;;; is always false by the offset T1 - T0.
|
|
||||||
;;; The test only passes when scheduler
|
|
||||||
;;; jitter on the sleep wakeup happens to
|
|
||||||
;;; exceed that offset. Upstream wins the
|
|
||||||
;;; race; we don't always.
|
|
||||||
"--skip" "cancellation_receiver_fires_after_limit"
|
|
||||||
;;; END Stopwatch construction/start offset race
|
|
||||||
)
|
|
||||||
#:cargo-package-crates
|
#:cargo-package-crates
|
||||||
''(;;; Tier 0: No internal deps.
|
''(;;; Tier 0: No internal deps.
|
||||||
"codex-ansi-escape"
|
|
||||||
"codex-async-utils"
|
"codex-async-utils"
|
||||||
"codex-backend-openapi-models"
|
|
||||||
"codex-client"
|
"codex-client"
|
||||||
"codex-execpolicy"
|
"codex-execpolicy"
|
||||||
"codex-file-search"
|
"codex-file-search"
|
||||||
"codex-git-utils"
|
"codex-git"
|
||||||
"codex-keyring-store"
|
"codex-keyring-store"
|
||||||
"codex-process-hardening"
|
|
||||||
"codex-utils-absolute-path"
|
"codex-utils-absolute-path"
|
||||||
"codex-utils-cache"
|
"codex-utils-cache"
|
||||||
"codex-utils-cargo-bin"
|
"codex-utils-cargo-bin"
|
||||||
"codex-utils-elapsed"
|
|
||||||
"codex-utils-fuzzy-match"
|
|
||||||
"codex-utils-home-dir"
|
"codex-utils-home-dir"
|
||||||
"codex-utils-json-to-toml"
|
"codex-utils-json-to-toml"
|
||||||
"codex-utils-path"
|
|
||||||
"codex-utils-plugins"
|
|
||||||
"codex-utils-pty"
|
"codex-utils-pty"
|
||||||
"codex-utils-readiness"
|
"codex-utils-readiness"
|
||||||
"codex-utils-rustls-provider"
|
|
||||||
"codex-utils-sleep-inhibitor"
|
|
||||||
"codex-utils-stream-parser"
|
|
||||||
"codex-utils-string"
|
"codex-utils-string"
|
||||||
"codex-utils-template"
|
"codex-backend-openapi-models"
|
||||||
;;; Tier 1.
|
"codex-process-hardening"
|
||||||
|
"codex-ansi-escape"
|
||||||
|
;;; Tier 1: Depends on tier 0.
|
||||||
"codex-utils-image"
|
"codex-utils-image"
|
||||||
"codex-utils-output-truncation"
|
|
||||||
"codex-apply-patch"
|
"codex-apply-patch"
|
||||||
"codex-protocol"
|
"codex-protocol"
|
||||||
"codex-windows-sandbox"
|
"codex-windows-sandbox"
|
||||||
@@ -518,69 +226,35 @@
|
|||||||
"codex-secrets"
|
"codex-secrets"
|
||||||
"codex-execpolicy-legacy"
|
"codex-execpolicy-legacy"
|
||||||
"codex-debug-client"
|
"codex-debug-client"
|
||||||
"codex-analytics"
|
|
||||||
"codex-rollout"
|
|
||||||
"codex-rollout-trace"
|
|
||||||
"codex-terminal-detection"
|
|
||||||
"codex-utils-approval-presets"
|
|
||||||
"codex-utils-cli"
|
|
||||||
"codex-uds"
|
|
||||||
"codex-install-context"
|
|
||||||
"codex-device-key"
|
|
||||||
;;; Tier 2.
|
;;; Tier 2.
|
||||||
"codex-app-server-protocol"
|
"codex-app-server-protocol"
|
||||||
"codex-rmcp-client"
|
"codex-rmcp-client"
|
||||||
"codex-otel"
|
"codex-otel"
|
||||||
"codex-thread-store"
|
|
||||||
"codex-state"
|
"codex-state"
|
||||||
"codex-features"
|
|
||||||
"codex-model-provider"
|
|
||||||
"codex-config"
|
|
||||||
"codex-agent-identity"
|
|
||||||
"codex-aws-auth"
|
|
||||||
"codex-hooks"
|
|
||||||
"codex-code-mode"
|
|
||||||
"codex-feedback"
|
|
||||||
"codex-skills"
|
|
||||||
"codex-test-binary-support"
|
|
||||||
"codex-core"
|
"codex-core"
|
||||||
"codex-core-plugins"
|
|
||||||
"codex-utils-sandbox-summary"
|
|
||||||
"codex-linux-sandbox"
|
"codex-linux-sandbox"
|
||||||
"codex-sandboxing"
|
"codex-feedback"
|
||||||
"codex-connectors"
|
|
||||||
"codex-core-skills"
|
|
||||||
;;; Tier 3.
|
;;; Tier 3.
|
||||||
"codex-arg0"
|
"codex-arg0"
|
||||||
"codex-lmstudio"
|
"codex-lmstudio"
|
||||||
"codex-login"
|
"codex-login"
|
||||||
"codex-ollama"
|
"codex-ollama"
|
||||||
"codex-utils-oss"
|
"codex-common"
|
||||||
"codex-mcp-server"
|
"codex-mcp-server"
|
||||||
"codex-backend-client"
|
"codex-backend-client"
|
||||||
"codex-responses-api-proxy"
|
"codex-responses-api-proxy"
|
||||||
"codex-shell-command"
|
|
||||||
"codex-shell-escalation"
|
|
||||||
"codex-plugin"
|
|
||||||
"codex-model-provider-info"
|
|
||||||
"codex-models-manager"
|
|
||||||
;;; Tier 4.
|
;;; Tier 4.
|
||||||
"codex-cloud-requirements"
|
"codex-cloud-requirements"
|
||||||
"codex-exec"
|
"codex-exec"
|
||||||
"codex-exec-server"
|
"codex-exec-server"
|
||||||
"codex-network-proxy"
|
|
||||||
"codex-stdio-to-uds"
|
"codex-stdio-to-uds"
|
||||||
|
"codex-network-proxy"
|
||||||
"codex-chatgpt"
|
"codex-chatgpt"
|
||||||
"codex-cloud-tasks-client"
|
"codex-cloud-tasks-client"
|
||||||
"codex-cloud-tasks-mock-client"
|
|
||||||
"codex-tools"
|
|
||||||
"codex-mcp"
|
|
||||||
"codex-collaboration-mode-templates"
|
|
||||||
;;; Tier 5.
|
;;; Tier 5.
|
||||||
"codex-app-server"
|
"codex-app-server"
|
||||||
"codex-app-server-test-client"
|
"codex-app-server-test-client"
|
||||||
"codex-tui"
|
"codex-tui"
|
||||||
"codex-response-debug-context"
|
|
||||||
;;; Tier 6.
|
;;; Tier 6.
|
||||||
"codex-cloud-tasks"
|
"codex-cloud-tasks"
|
||||||
;; The main executable.
|
;; The main executable.
|
||||||
@@ -596,7 +270,7 @@
|
|||||||
;; Update them to match the actual package version.
|
;; Update them to match the actual package version.
|
||||||
(let ((snap-files (find-files "." "\\.snap$")))
|
(let ((snap-files (find-files "." "\\.snap$")))
|
||||||
(substitute* snap-files
|
(substitute* snap-files
|
||||||
(("\\(v0\\.0\\.0\\) ") "(v0.124.0) ")))))
|
(("\\(v0\\.0\\.0\\) ") "(v0.98.0)")))))
|
||||||
(add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
|
(add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Replace git dependencies with version references so cargo
|
;; Replace git dependencies with version references so cargo
|
||||||
@@ -605,57 +279,23 @@
|
|||||||
(("nucleo = \\{ git = [^}]+\\}")
|
(("nucleo = \\{ git = [^}]+\\}")
|
||||||
"nucleo = \"0.5.0\"")
|
"nucleo = \"0.5.0\"")
|
||||||
(("runfiles = \\{ git = [^}]+\\}")
|
(("runfiles = \\{ git = [^}]+\\}")
|
||||||
"runfiles = \"0.1.0\""))
|
"runfiles = \"0.1.0\""))))
|
||||||
;; Remove workspace members that have unbuildable deps
|
(add-after 'chdir-to-workspace 'add-version-to-workspace-deps
|
||||||
;; (v8-poc requires V8). code-mode stays a workspace member
|
|
||||||
;; so its codex-protocol resolves to the same local copy as
|
|
||||||
;; the rest of the build; disabling its default features
|
|
||||||
;; (below) avoids pulling in V8.
|
|
||||||
(substitute* "Cargo.toml"
|
|
||||||
(("\"v8-poc\",") ""))
|
|
||||||
;; Disable V8 runtime in codex-code-mode by turning off
|
|
||||||
;; default features. Keep path= so code-mode is resolved
|
|
||||||
;; from the local source tree and shares codex-protocol
|
|
||||||
;; (and other workspace crates) with the rest of the build;
|
|
||||||
;; resolving it from the vendor instead introduces a
|
|
||||||
;; duplicate codex-protocol and causes E0308 type
|
|
||||||
;; mismatches in codex-tools.
|
|
||||||
(substitute* "Cargo.toml"
|
|
||||||
(("codex-code-mode = \\{ path = \"code-mode\" \\}")
|
|
||||||
"codex-code-mode = { path = \"code-mode\", default-features = false }"))
|
|
||||||
;; cargo build at workspace root ignores per-dep
|
|
||||||
;; default-features=false and builds code-mode with its
|
|
||||||
;; own default features, which include v8-runtime and
|
|
||||||
;; would pull in V8. Make the default feature empty.
|
|
||||||
(substitute* "code-mode/Cargo.toml"
|
|
||||||
(("^default = \\[\"v8-runtime\"\\]") "default = []"))))
|
|
||||||
(add-after 'patch-git-deps-to-vendor 'add-version-to-workspace-deps
|
|
||||||
(lambda _
|
(lambda _
|
||||||
;; cargo package requires all dependencies to have versions.
|
;; cargo package requires all dependencies to have versions.
|
||||||
;; Add version = "0.124.0" to internal path dependencies.
|
;; cargo package requires all dependencies to have versions.
|
||||||
|
;; Add version = "0.98.0" to internal path dependencies.
|
||||||
(let ((cargo-files (find-files "." "^Cargo\\.toml$")))
|
(let ((cargo-files (find-files "." "^Cargo\\.toml$")))
|
||||||
(substitute* cargo-files
|
(substitute* cargo-files
|
||||||
;; Handle inline deps: name = { path = "..." }
|
;; Handle inline deps: name = { path = "..." }
|
||||||
(("(codex-[a-z0-9-]+) = \\{ path = " all name)
|
(("(codex-[a-z0-9-]+) = \\{ path = " all name)
|
||||||
(string-append name " = { version = \"0.124.0\", path = "))
|
(string-append name " = { version = \"0.98.0\", path = "))
|
||||||
;; Handle inline deps with package: name = { package = "...", path = "..." }
|
;; Handle inline deps with package: name = { package = "...", path = "..." }
|
||||||
(("(codex-[a-z0-9-]+) = \\{ package = " all name)
|
(("(codex-[a-z0-9-]+) = \\{ package = " all name)
|
||||||
(string-append name " = { version = \"0.124.0\", package = "))
|
(string-append name " = { version = \"0.98.0\", package = "))
|
||||||
;; Handle section deps: [dependencies.X] with path = "..."
|
;; Handle section deps: [dependencies.X] with path = "..."
|
||||||
(("^(path = \"\\.\\./[^\"]*\")" all path-line)
|
(("^(path = \"\\.\\./[^\"]*\")" all path-line)
|
||||||
(string-append path-line "\nversion = \"0.124.0\""))))))
|
(string-append path-line "\nversion = \"0.98.0\""))))))
|
||||||
(add-after 'chdir-to-workspace 'use-gnu-store-in-sandbox
|
|
||||||
(lambda _
|
|
||||||
;; LINUX_PLATFORM_DEFAULT_READ_ROOTS in linux-sandbox/src/
|
|
||||||
;; bwrap.rs is the read-only baseline that codex's bwrap
|
|
||||||
;; sandbox bind-mounts so commands can read /usr/bin/ls,
|
|
||||||
;; libc, etc. Upstream lists "/nix/store" for NixOS;
|
|
||||||
;; Guix's equivalent is "/gnu/store". Without this swap,
|
|
||||||
;; the codex sandbox cannot locate any binaries on a Guix
|
|
||||||
;; system because every "system" path resolves into
|
|
||||||
;; /gnu/store/<hash>-pkg/bin/...
|
|
||||||
(substitute* "linux-sandbox/src/bwrap.rs"
|
|
||||||
(("\"/nix/store\"") "\"/gnu/store\""))))
|
|
||||||
(add-after 'chdir-to-workspace 'patch-hardcoded-paths
|
(add-after 'chdir-to-workspace 'patch-hardcoded-paths
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let ((bash-bin (string-append
|
(let ((bash-bin (string-append
|
||||||
@@ -685,14 +325,6 @@
|
|||||||
(string-append "\"" bash-bin "/bash "))
|
(string-append "\"" bash-bin "/bash "))
|
||||||
(("\"/bin/sh ")
|
(("\"/bin/sh ")
|
||||||
(string-append "\"" bash-bin "/sh "))
|
(string-append "\"" bash-bin "/sh "))
|
||||||
;; Single-quoted paths in test assertion strings,
|
|
||||||
;; e.g. "exec '/bin/bash' -c ...". Must match the
|
|
||||||
;; double-quoted substitutions above so both sides
|
|
||||||
;; of assert_eq!/contains use the store path.
|
|
||||||
(("'/bin/bash'")
|
|
||||||
(string-append "'" bash-bin "/bash'"))
|
|
||||||
(("'/bin/sh'")
|
|
||||||
(string-append "'" bash-bin "/sh'"))
|
|
||||||
;; coreutils.
|
;; coreutils.
|
||||||
(("\"/bin/(cat|cp|date|echo|head|ls|rm|sleep|true|touch)\"" all cmd)
|
(("\"/bin/(cat|cp|date|echo|head|ls|rm|sleep|true|touch)\"" all cmd)
|
||||||
(string-append "\"" coreutils-bin "/" cmd "\""))
|
(string-append "\"" coreutils-bin "/" cmd "\""))
|
||||||
@@ -707,150 +339,42 @@
|
|||||||
(string-append "\"" git-bin "/git\""))
|
(string-append "\"" git-bin "/git\""))
|
||||||
(("\"/usr/bin/sed\"")
|
(("\"/usr/bin/sed\"")
|
||||||
(string-append "\"" sed-bin "/sed\"")))
|
(string-append "\"" sed-bin "/sed\"")))
|
||||||
;; Bare Command::new("git") and Command::new("ls")
|
|
||||||
;; in codex source files that exec internally.
|
|
||||||
(substitute* (find-files "git-utils" "\\.rs$")
|
|
||||||
(("Command::new\\(\"git\"\\)")
|
|
||||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
|
||||||
(substitute* "tui/src/get_git_diff.rs"
|
|
||||||
(("Command::new\\(\"git\"\\)")
|
|
||||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
|
||||||
(substitute* "core/src/turn_diff_tracker.rs"
|
|
||||||
(("Command::new\\(\"git\"\\)")
|
|
||||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
|
||||||
(substitute* "cloud-tasks/src/env_detect.rs"
|
|
||||||
(("Command::new\\(\"git\"\\)")
|
|
||||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
|
||||||
(substitute* "core/src/plugins/startup_sync.rs"
|
|
||||||
(("\"git\",")
|
|
||||||
(string-append "\"" git-bin "/git\",")))
|
|
||||||
(substitute* "file-search/src/lib.rs"
|
|
||||||
(("Command::new\\(\"ls\"\\)")
|
|
||||||
(string-append "Command::new(\"" coreutils-bin "/ls\")")))
|
|
||||||
;; Neutralize pager with absolute path to cat.
|
|
||||||
(substitute* "core/src/unified_exec/process_manager.rs"
|
|
||||||
(("\"PAGER\", \"cat\"")
|
|
||||||
(string-append "\"PAGER\", \"" coreutils-bin "/cat\""))
|
|
||||||
(("\"GIT_PAGER\", \"cat\"")
|
|
||||||
(string-append "\"GIT_PAGER\", \"" coreutils-bin "/cat\""))
|
|
||||||
(("\"GH_PAGER\", \"cat\"")
|
|
||||||
(string-append "\"GH_PAGER\", \"" coreutils-bin "/cat\"")))
|
|
||||||
;; Bare /bin/sleep inside a format! string
|
|
||||||
;; (no surrounding double quotes, so the main
|
|
||||||
;; pattern does not match).
|
|
||||||
(substitute*
|
|
||||||
"shell-escalation/src/unix/escalate_server.rs"
|
|
||||||
(("/bin/sleep")
|
|
||||||
(string-append coreutils-bin "/sleep")))
|
|
||||||
;; @SHELL@ placeholder from test-shebangs patch
|
;; @SHELL@ placeholder from test-shebangs patch
|
||||||
(substitute*
|
(substitute*
|
||||||
(list "rmcp-client/src/program_resolver.rs"
|
(list "rmcp-client/src/program_resolver.rs"
|
||||||
"tui/src/external_editor.rs")
|
"tui/src/external_editor.rs")
|
||||||
(("@SHELL@")
|
(("@SHELL@")
|
||||||
(string-append bash-bin "/sh")))
|
(string-append bash-bin "/sh")))
|
||||||
;; Shebangs inside raw string literals (r#"..."#)
|
;; shebang in test-only file
|
||||||
;; that are written to scripts at runtime. The
|
|
||||||
;; main "/bin/sh" patterns only match double-quoted
|
|
||||||
;; occurrences; these shebangs have no surrounding
|
|
||||||
;; double quotes.
|
|
||||||
(substitute*
|
(substitute*
|
||||||
(list "core/src/plugins/startup_sync_tests.rs"
|
"core/tests/suite/user_notification.rs"
|
||||||
"core/src/tools/runtimes/shell/unix_escalation_tests.rs"
|
|
||||||
"core/tests/suite/client.rs"
|
|
||||||
"core/tests/suite/js_repl.rs"
|
|
||||||
"core/tests/suite/skill_approval.rs"
|
|
||||||
"core/tests/suite/user_notification.rs"
|
|
||||||
"exec-server/tests/file_system.rs"
|
|
||||||
"login/src/auth/auth_tests.rs"
|
|
||||||
"models-manager/src/manager_tests.rs"
|
|
||||||
"sandboxing/src/bwrap_tests.rs")
|
|
||||||
(("#!/bin/bash")
|
(("#!/bin/bash")
|
||||||
(string-append "#!" bash-bin "/bash"))
|
(string-append "#!" bash-bin "/bash"))))))
|
||||||
(("#!/bin/sh")
|
|
||||||
(string-append "#!" bash-bin "/sh")))
|
|
||||||
;; Test helpers pass env: Default::default() to the
|
|
||||||
;; spawn code which calls env_clear(), leaving
|
|
||||||
;; processes with no PATH. Inject the build-time
|
|
||||||
;; PATH so tests find coreutils, bash, etc.
|
|
||||||
(substitute* (find-files "." "\\.rs$")
|
|
||||||
(("env: Default::default\\(\\)")
|
|
||||||
(string-append
|
|
||||||
"env: std::env::var(\"PATH\")"
|
|
||||||
".into_iter()"
|
|
||||||
".map(|p| (\"PATH\".to_string(), p))"
|
|
||||||
".collect()")))
|
|
||||||
;; Test-only absolute path; bare name works via PATH.
|
|
||||||
(substitute* "exec-server/tests/exec_process.rs"
|
|
||||||
(("\"/usr/bin/python3\"")
|
|
||||||
"\"python3\""))
|
|
||||||
;; Same empty-env issue but in JSON literals
|
|
||||||
;; (serde_json::json! macro).
|
|
||||||
(substitute* "exec-server/tests/process.rs"
|
|
||||||
(("\"env\": \\{\\}")
|
|
||||||
(string-append
|
|
||||||
"\"env\": {\"PATH\": \""
|
|
||||||
(getenv "PATH")
|
|
||||||
"\"}"))))))
|
|
||||||
(add-before 'build 'set-bubblewrap-source
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(setenv "CODEX_BWRAP_SOURCE_DIR"
|
|
||||||
(string-append
|
|
||||||
(assoc-ref inputs "bubblewrap-source")
|
|
||||||
"/"))))
|
|
||||||
(add-before 'build 'create-node-version-file
|
|
||||||
(lambda _
|
|
||||||
(call-with-output-file "guix-vendor/node-version.txt"
|
|
||||||
(lambda (port)
|
|
||||||
(display "22.22.0" port)))))
|
|
||||||
(add-before 'check 'set-home
|
(add-before 'check 'set-home
|
||||||
(lambda _
|
(lambda _
|
||||||
;; HOME must not be a prefix of /tmp, otherwise
|
(setenv "HOME" "/tmp")
|
||||||
;; the TUI's path shortener replaces /tmp/... with
|
(setenv "USER" "nixbld"))))))
|
||||||
;; ~/... and 30 snapshot tests fail.
|
(native-inputs (list clang ;bindgen uses libclang to parse BoringSSL's C headers
|
||||||
(setenv "HOME" "/tmp/guix-home")
|
cmake-minimal ;BoringSSL is compiled from C source
|
||||||
(mkdir-p "/tmp/guix-home")
|
libunwind ;BoringSSL tests verify stack unwinding in assembly
|
||||||
(setenv "USER" "nixbld")
|
perl python-minimal ;for tests
|
||||||
;; Default libtest thread stack is 2 MiB, which is not
|
pkg-config))
|
||||||
;; enough for tokio current_thread tests that drive
|
|
||||||
;; codex-core's full turn pipeline. Upstream gates such
|
|
||||||
;; tests through run_current_thread_test_with_stack (4 MiB)
|
|
||||||
;; in app-server/src/message_processor/tracing_tests.rs;
|
|
||||||
;; raise the global default so future additions that
|
|
||||||
;; forget the wrapper still pass.
|
|
||||||
(setenv "RUST_MIN_STACK" "8388608")
|
|
||||||
;; Disable network access.
|
|
||||||
(setenv "CODEX_SANDBOX_NETWORK_DISABLED" "1"))))))
|
|
||||||
(native-inputs `(("bubblewrap" ,bubblewrap) ;tests need bwrap on PATH
|
|
||||||
("clang" ,clang)
|
|
||||||
("cmake-minimal" ,cmake-minimal)
|
|
||||||
("libunwind" ,libunwind)
|
|
||||||
("lsof" ,lsof) ;app-server tests
|
|
||||||
("nss-certs-for-test" ,nss-certs-for-test) ;OTLP gRPC TLS
|
|
||||||
("perl" ,perl)
|
|
||||||
("procps" ,procps) ;tests use ps
|
|
||||||
("python-minimal" ,python-minimal)
|
|
||||||
("pkg-config" ,pkg-config)
|
|
||||||
("bubblewrap-source" ,(package-source bubblewrap))))
|
|
||||||
(inputs (cons* bash-minimal coreutils git-minimal sed
|
(inputs (cons* bash-minimal coreutils git-minimal sed
|
||||||
libcap oniguruma openssl sqlite zlib `(,zstd "lib")
|
openssl sqlite `(,zstd "lib")
|
||||||
(cargo-inputs 'codex)))
|
(cargo-inputs 'codex)))
|
||||||
(properties '((timeout . 108000) ; 30 hours
|
|
||||||
(max-silent-time . 54000))) ; 15 hours
|
|
||||||
(home-page "https://github.com/openai/codex")
|
(home-page "https://github.com/openai/codex")
|
||||||
(synopsis "AI-assisted coding CLI and TUI")
|
(synopsis "AI-assisted coding CLI and TUI")
|
||||||
(description
|
(description
|
||||||
"Codex is an AI-powered coding assistant that runs in the terminal.
|
"Codex is an AI-powered coding assistant that runs in the terminal.
|
||||||
It provides an interactive TUI for conversations with AI models, with
|
It provides an interactive TUI for conversations with AI models, with
|
||||||
support for shell command execution, file editing, and code generation.
|
support for shell command execution, file editing, and code generation.
|
||||||
Configure providers via @file{~/.codex/config.toml}.
|
Configure providers via @file{~/.codex/config.toml}.")
|
||||||
|
|
||||||
codex-code-mode's V8 Javascript executor is disabled.")
|
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public codex-acp
|
(define-public codex-acp
|
||||||
(package
|
(package
|
||||||
(name "codex-acp")
|
(name "codex-acp")
|
||||||
(version "0.11.1")
|
(version "0.9.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -859,8 +383,9 @@ codex-code-mode's V8 Javascript executor is disabled.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1rlgkbvrbdl5jhf49sjn2mifn2rq6z0vwf0gard23y1bz6sr3wmr"))
|
(base32 "190sq6s6jfz8dkj1y8305r7x6ln86qqr2j1bnfjci7f1x2wyzmsj"))
|
||||||
(patches (search-patches "codex-acp-0.11.1-remove-patch-sections.patch"))))
|
(patches (search-patches "codex-acp-0.9.2-remove-patch-sections.patch"
|
||||||
|
"codex-acp-0.9.2-replace-result-flatten.patch"))))
|
||||||
(build-system cargo-build-system)
|
(build-system cargo-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -868,43 +393,13 @@ codex-code-mode's V8 Javascript executor is disabled.")
|
|||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'patch-codex-deps
|
(add-after 'unpack 'patch-codex-deps
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda _
|
||||||
;; Rewrite git dependencies to use vendored sources from rust-codex
|
;; Rewrite git dependencies to use vendored sources from rust-codex
|
||||||
(substitute* "Cargo.toml"
|
(substitute* "Cargo.toml"
|
||||||
(("git = \"https://github.com/openai/codex\", tag = \"rust-v0.117.0\"")
|
(("git = \"https://github.com/zed-industries/codex\", branch = \"acp\"")
|
||||||
"version = \"0.117.0\""))
|
"version = \"0.0.0\"")))))))
|
||||||
;; Disable V8 runtime in codex-code-mode (transitive dep).
|
(native-inputs (list pkg-config))
|
||||||
(let ((port (open-file "Cargo.toml" "a")))
|
(inputs (cons* openssl sqlite `(,zstd "lib") (cargo-inputs 'codex-acp)))
|
||||||
(display "
|
|
||||||
[dependencies.codex-code-mode]
|
|
||||||
version = \"0.117.0\"
|
|
||||||
default-features = false
|
|
||||||
" port)
|
|
||||||
(close-port port))
|
|
||||||
;; Point codex-linux-sandbox at system bubblewrap source.
|
|
||||||
(setenv "CODEX_BWRAP_SOURCE_DIR"
|
|
||||||
(string-append
|
|
||||||
(assoc-ref inputs "bubblewrap-source")
|
|
||||||
"/"))))
|
|
||||||
(add-before 'check 'set-home
|
|
||||||
(lambda _
|
|
||||||
(setenv "HOME" "/tmp")
|
|
||||||
(setenv "USER" "nixbld")))
|
|
||||||
(add-before 'build 'create-node-version-file
|
|
||||||
(lambda _
|
|
||||||
;; codex-core's js_repl uses include_str! to read
|
|
||||||
;; node-version.txt four directories up from its source;
|
|
||||||
;; create it where the vendored crate expects it.
|
|
||||||
(call-with-output-file "guix-vendor/node-version.txt"
|
|
||||||
(lambda (port)
|
|
||||||
(display "22.22.0" port))))))))
|
|
||||||
(native-inputs
|
|
||||||
`(("cmake-minimal" ,cmake-minimal)
|
|
||||||
("clang" ,clang)
|
|
||||||
("pkg-config" ,pkg-config)
|
|
||||||
("bubblewrap-source" ,(package-source bubblewrap))))
|
|
||||||
(inputs (cons* libcap openssl sqlite zlib `(,zstd "lib")
|
|
||||||
(cargo-inputs 'codex-acp)))
|
|
||||||
(home-page "https://github.com/zed-industries/codex-acp")
|
(home-page "https://github.com/zed-industries/codex-acp")
|
||||||
(synopsis "ACP-compatible agent bridging Zed Codex with ACP clients")
|
(synopsis "ACP-compatible agent bridging Zed Codex with ACP clients")
|
||||||
(description
|
(description
|
||||||
|
|||||||
@@ -1,114 +0,0 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
|
||||||
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
|
|
||||||
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
|
|
||||||
;;; Copyright © 2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
|
||||||
;;; Copyright © 2024-2025 Efraim Flashner <efraim@flashner.co.il>
|
|
||||||
;;; Copyright © 2025 Anderson Torres <anderson.torres.8519@gmail.com>
|
|
||||||
;;;
|
|
||||||
;;; This file is part of GNU Guix.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
||||||
;;; under the terms of the GNU General Public License as published by
|
|
||||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
||||||
;;; your option) any later version.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
||||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
;;; GNU General Public License for more details.
|
|
||||||
;;;
|
|
||||||
;;; You should have received a copy of the GNU General Public License
|
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
(define-module (gnu packages compiler-tools)
|
|
||||||
#:use-module (gnu packages autotools)
|
|
||||||
#:use-module (gnu packages gawk)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system trivial)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix packages))
|
|
||||||
|
|
||||||
(define-public byacc
|
|
||||||
(package
|
|
||||||
(name "byacc")
|
|
||||||
(version "20240109")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"https://invisible-mirror.net/archives/byacc/byacc-"
|
|
||||||
version ".tgz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0il4w1vwbglayakywyghiqhcjpg1yvv5ww2p8ylz32bi05wpg2gj"))
|
|
||||||
(snippet
|
|
||||||
#~(begin
|
|
||||||
;; Remove machine-generated files
|
|
||||||
(for-each delete-file
|
|
||||||
(list "configure"
|
|
||||||
"btyaccpar.c"
|
|
||||||
"yaccpar.c"))))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(native-inputs
|
|
||||||
(list autoconf
|
|
||||||
automake
|
|
||||||
gawk))
|
|
||||||
(home-page "https://invisible-island.net/byacc/byacc.html")
|
|
||||||
(synopsis "Berkeley Yacc LALR parser generator")
|
|
||||||
(description
|
|
||||||
"Berkeley Yacc is an LALR(1) parser generator. Yacc reads the grammar
|
|
||||||
specification from a file and generates an LALR(1) parser for it. The parsers
|
|
||||||
consist of a set of LALR(1) parsing tables and a driver routine written in the
|
|
||||||
C programming language.")
|
|
||||||
(license license:public-domain)))
|
|
||||||
|
|
||||||
(define-public oyacc
|
|
||||||
(package
|
|
||||||
(name "oyacc")
|
|
||||||
(version "6.6")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/ibara/yacc")
|
|
||||||
(commit (string-append name "-" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1a2nyg2nnh1las40klnp037sapaaph86kjx258cpqcwnk4cv3rnx"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:test-target "test"
|
|
||||||
#:make-flags
|
|
||||||
#~(list (string-append "BINDIR=" #$output "/bin")
|
|
||||||
(string-append "MANDIR=" #$output "/share/man/man1"))))
|
|
||||||
(home-page "https://github.com/ibara/yacc")
|
|
||||||
(synopsis "Portable YACC from OpenBSD")
|
|
||||||
(description
|
|
||||||
"@command{oyacc} is a portable version of the OpenBSD's
|
|
||||||
@acronym{yacc, Yet Another Compiler Compiler} program, with no dependencies
|
|
||||||
besides libc.")
|
|
||||||
(license license:bsd-2)))
|
|
||||||
|
|
||||||
(define-public oyacc-as-yacc-wrapper
|
|
||||||
(package/inherit oyacc
|
|
||||||
(name "oyacc-as-yacc-wrapper")
|
|
||||||
(build-system trivial-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:builder
|
|
||||||
(with-imported-modules '((guix build utils))
|
|
||||||
#~(begin
|
|
||||||
(use-modules (guix build utils))
|
|
||||||
(let ((bindir (string-append #$output "/bin"))
|
|
||||||
(oyacc (string-append #$(this-package-input "oyacc")
|
|
||||||
"/bin/oyacc")))
|
|
||||||
(mkdir-p bindir)
|
|
||||||
(symlink oyacc (string-append bindir "/yacc")))))))
|
|
||||||
(inputs (list oyacc))
|
|
||||||
(description
|
|
||||||
"This package provides the @command{yacc} command, implemented as a
|
|
||||||
symbolic link to the @command{oyacc} command from the same-named package.")))
|
|
||||||
@@ -1475,7 +1475,7 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
|
|||||||
(define-public 7zip
|
(define-public 7zip
|
||||||
(package
|
(package
|
||||||
(name "7zip")
|
(name "7zip")
|
||||||
(version "26.01")
|
(version "26.00")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1483,7 +1483,7 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
|
|||||||
(url "https://github.com/ip7z/7zip")
|
(url "https://github.com/ip7z/7zip")
|
||||||
(commit version)))
|
(commit version)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0qwzn9pz1m6f8q20cqgmfqp1qx6s7959xnyikpr60n1v8c1mj98q"))
|
(base32 "1fvgl9qp2pl5c0jmvgbdx6qig3qd80mhxvml42yby8y412x65sh7"))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(modules '((guix build utils)
|
(modules '((guix build utils)
|
||||||
(ice-9 regex)))
|
(ice-9 regex)))
|
||||||
@@ -2375,9 +2375,7 @@ non-Windows systems without running the actual installer using wine.")
|
|||||||
(sha256
|
(sha256
|
||||||
(base32 "17k679glx05v23n8kxbg9vmbf89i2252g5xj6w3dkz19asmh1zd6"))))
|
(base32 "17k679glx05v23n8kxbg9vmbf89i2252g5xj6w3dkz19asmh1zd6"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs (list autoconf automake libtool nasm))
|
||||||
(cons* autoconf automake libtool
|
|
||||||
(maybe-nasm)))
|
|
||||||
(home-page "https://github.com/intel/isa-l")
|
(home-page "https://github.com/intel/isa-l")
|
||||||
(synopsis "Intelligent storage acceleration library")
|
(synopsis "Intelligent storage acceleration library")
|
||||||
(description "ISA-L is a collection of optimized low-level functions
|
(description "ISA-L is a collection of optimized low-level functions
|
||||||
|
|||||||
+91
-393
@@ -50,7 +50,6 @@
|
|||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages docker)
|
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
@@ -71,7 +70,6 @@
|
|||||||
#:use-module (gnu packages networking)
|
#:use-module (gnu packages networking)
|
||||||
#:use-module (gnu packages package-management)
|
#:use-module (gnu packages package-management)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages prometheus)
|
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages python-build)
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-check)
|
#:use-module (gnu packages python-check)
|
||||||
@@ -123,365 +121,6 @@
|
|||||||
"This package provides a Go library to read and manipulate checkpoint
|
"This package provides a Go library to read and manipulate checkpoint
|
||||||
archives as created by Podman, CRI-O and containerd.")
|
archives as created by Podman, CRI-O and containerd.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public go-github-com-containerd-containerd-v2
|
|
||||||
(package
|
|
||||||
(name "go-github-com-containerd-containerd-v2")
|
|
||||||
(version "2.2.3")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/containerd/containerd")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0wxy5np689571s6lw77mx63nw75fx85w5svi0jplksmqzmjqp8wd"))
|
|
||||||
(snippet
|
|
||||||
#~(begin (use-modules (guix build utils))
|
|
||||||
(delete-file-recursively "vendor")
|
|
||||||
;; Submodules with their own go.mod files and packaged separately:
|
|
||||||
;;
|
|
||||||
;; - github.com/containerd/containerd/api
|
|
||||||
(delete-file-recursively "api")))))
|
|
||||||
(build-system go-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:skip-build? #t
|
|
||||||
#:import-path "github.com/containerd/containerd/v2"
|
|
||||||
#:test-subdirs
|
|
||||||
#~(list "cmd/protoc-gen-go-fieldpath/..."
|
|
||||||
"core/containers/..."
|
|
||||||
"core/content/..."
|
|
||||||
"core/diff"
|
|
||||||
"core/diff/apply"
|
|
||||||
"core/events/..."
|
|
||||||
"core/images/..."
|
|
||||||
"core/introspection/..."
|
|
||||||
"core/leases/..."
|
|
||||||
"core/metrics/..."
|
|
||||||
"core/remotes/..."
|
|
||||||
"core/sandbox/..."
|
|
||||||
"core/streaming/..."
|
|
||||||
"core/transfer"
|
|
||||||
"core/transfer/archive/..."
|
|
||||||
"core/transfer/image/..."
|
|
||||||
"core/transfer/local/..."
|
|
||||||
"core/transfer/plugins/..."
|
|
||||||
"core/transfer/streaming/..."
|
|
||||||
"core/unpack/..."
|
|
||||||
"internal/cleanup/..."
|
|
||||||
"internal/erofsutils/..."
|
|
||||||
"internal/eventq/..."
|
|
||||||
"internal/failpoint/..."
|
|
||||||
"internal/fsverity/..."
|
|
||||||
"internal/kmutex/..."
|
|
||||||
"internal/lazyregexp/..."
|
|
||||||
"internal/pprof/..."
|
|
||||||
"internal/randutil/..."
|
|
||||||
"internal/registrar/..."
|
|
||||||
"internal/tomlext/..."
|
|
||||||
"internal/truncindex/..."
|
|
||||||
"internal/userns/..."
|
|
||||||
"internal/wintls/..."
|
|
||||||
"pkg/apparmor/..."
|
|
||||||
"pkg/archive/..."
|
|
||||||
"pkg/atomicfile/..."
|
|
||||||
"pkg/blockio/..."
|
|
||||||
"pkg/cap/..."
|
|
||||||
"pkg/cio..."
|
|
||||||
"pkg/deprecation/..."
|
|
||||||
"pkg/dialer/..."
|
|
||||||
"pkg/display/..."
|
|
||||||
"pkg/epoch/..."
|
|
||||||
"pkg/fifosync/..."
|
|
||||||
"pkg/filters/..."
|
|
||||||
"pkg/gc/..."
|
|
||||||
"pkg/httpdbg/..."
|
|
||||||
|
|
||||||
;; TODO: Check why these submodule fail to build.
|
|
||||||
;; "client/..."
|
|
||||||
;; "cmd/containerd-shim-runc-v2/..."
|
|
||||||
;; "cmd/containerd-stress/..."
|
|
||||||
;; "cmd/containerd/..."
|
|
||||||
;; "cmd/ctr/..."
|
|
||||||
;; "cmd/gen-manpages/..."
|
|
||||||
;; "contrib/..."
|
|
||||||
;; "core/diff/proxy"
|
|
||||||
;; "core/metadata/..."
|
|
||||||
;; "core/mount/..."
|
|
||||||
;; "core/runtime/..."
|
|
||||||
;; "core/snapshots/..."
|
|
||||||
;; "core/transfer/proxy/..."
|
|
||||||
;; "core/transfer/registry/..."
|
|
||||||
;; "integration/..."
|
|
||||||
;; "internal/cri/..."
|
|
||||||
;; "internal/nri/..."
|
|
||||||
;; "pkg/cdi/..."
|
|
||||||
#;"plugins/...")
|
|
||||||
#:test-flags
|
|
||||||
#~(list "-skip" (string-join
|
|
||||||
;; panic: cannot statfs cgroup root [recovered]
|
|
||||||
(list "TestValidateConfig"
|
|
||||||
;; io_test.go:40: failed to start binary process:
|
|
||||||
;; fork/exec /bin/echo: no such file or directory
|
|
||||||
"TestNewBinaryIO"
|
|
||||||
;; expected success: got executable file not found in $PATH
|
|
||||||
"TestExecutorWithArgs"
|
|
||||||
"TestSetEnv"
|
|
||||||
"TestStdIOPipes"
|
|
||||||
;; panic: cannot statfs cgroup root
|
|
||||||
"TestContainerCapabilities"
|
|
||||||
"TestContainerSpecTty"
|
|
||||||
"TestContainerSpecReadonlyRootfs"
|
|
||||||
"TestContainerSpecWithExtraMounts"
|
|
||||||
"TestContainerAndSandboxPrivileged"
|
|
||||||
"TestPrivilegedBindMount"
|
|
||||||
"TestCgroupNamespace"
|
|
||||||
"TestPidNamespace/node_namespace_mode"
|
|
||||||
;; failed to apply b: invalid argument
|
|
||||||
"TestDiffTar/IgnoreSockets"
|
|
||||||
"TestBinDirVerifyImage/max_verifiers_=_-1,_with_timeout"
|
|
||||||
"TestContainerSpecDefaultPath"
|
|
||||||
;; Error: Not equal:
|
|
||||||
;; expected: 1000
|
|
||||||
;; actual : 123
|
|
||||||
"TestSetPositiveOomScoreAdjustment")
|
|
||||||
"|"))))
|
|
||||||
(native-inputs
|
|
||||||
(list go-github-com-stretchr-testify))
|
|
||||||
(propagated-inputs
|
|
||||||
(list go-dario-cat-mergo
|
|
||||||
go-github-com-adalogics-go-fuzz-headers
|
|
||||||
go-github-com-checkpoint-restore-checkpointctl
|
|
||||||
go-github-com-checkpoint-restore-go-criu-v7
|
|
||||||
go-github-com-containerd-btrfs-v2
|
|
||||||
go-github-com-containerd-cgroups-v3
|
|
||||||
go-github-com-containerd-console
|
|
||||||
go-github-com-containerd-containerd-api
|
|
||||||
go-github-com-containerd-continuity
|
|
||||||
go-github-com-containerd-errdefs
|
|
||||||
go-github-com-containerd-errdefs-pkg
|
|
||||||
go-github-com-containerd-fifo
|
|
||||||
go-github-com-containerd-go-cni
|
|
||||||
go-github-com-containerd-go-runc
|
|
||||||
go-github-com-containerd-imgcrypt-v2
|
|
||||||
go-github-com-containerd-log
|
|
||||||
go-github-com-containerd-nri
|
|
||||||
go-github-com-containerd-otelttrpc
|
|
||||||
go-github-com-containerd-platforms
|
|
||||||
go-github-com-containerd-plugin
|
|
||||||
go-github-com-containerd-ttrpc
|
|
||||||
go-github-com-containerd-typeurl-v2
|
|
||||||
go-github-com-containerd-zfs-v2
|
|
||||||
go-github-com-containernetworking-cni
|
|
||||||
go-github-com-containernetworking-plugins
|
|
||||||
go-github-com-coreos-go-systemd-v22
|
|
||||||
go-github-com-davecgh-go-spew
|
|
||||||
go-github-com-distribution-reference
|
|
||||||
go-github-com-docker-go-events
|
|
||||||
go-github-com-docker-go-metrics
|
|
||||||
go-github-com-docker-go-units
|
|
||||||
go-github-com-emicklei-go-restful-v3
|
|
||||||
go-github-com-fsnotify-fsnotify
|
|
||||||
go-github-com-google-certtostore
|
|
||||||
go-github-com-google-go-cmp
|
|
||||||
go-github-com-google-uuid
|
|
||||||
go-github-com-grpc-ecosystem-go-grpc-middleware-providers-prometheus
|
|
||||||
go-github-com-intel-goresctrl
|
|
||||||
go-github-com-klauspost-compress
|
|
||||||
go-github-com-mdlayher-vsock
|
|
||||||
;;go-github-com-microsoft-go-winio ;Windows only
|
|
||||||
;;go-github-com-microsoft-hcsshim ;Windows only
|
|
||||||
go-github-com-moby-locker
|
|
||||||
go-github-com-moby-sys-mountinfo
|
|
||||||
go-github-com-moby-sys-sequential
|
|
||||||
go-github-com-moby-sys-signal
|
|
||||||
go-github-com-moby-sys-symlink
|
|
||||||
go-github-com-moby-sys-user
|
|
||||||
go-github-com-moby-sys-userns
|
|
||||||
go-github-com-opencontainers-go-digest
|
|
||||||
go-github-com-opencontainers-image-spec
|
|
||||||
go-github-com-opencontainers-runtime-spec
|
|
||||||
go-github-com-opencontainers-runtime-tools
|
|
||||||
go-github-com-opencontainers-selinux
|
|
||||||
go-github-com-pelletier-go-toml-v2
|
|
||||||
go-github-com-prometheus-client-golang
|
|
||||||
go-github-com-sirupsen-logrus
|
|
||||||
go-github-com-tchap-go-patricia-v2
|
|
||||||
go-github-com-urfave-cli-v2
|
|
||||||
go-github-com-vishvananda-netlink
|
|
||||||
go-github-com-vishvananda-netns
|
|
||||||
go-go-etcd-io-bbolt
|
|
||||||
go-go-opentelemetry-io-contrib-instrumentation-google-golang-org-grpc-otelgrpc
|
|
||||||
go-go-opentelemetry-io-contrib-instrumentation-net-http-otelhttp
|
|
||||||
go-go-opentelemetry-io-otel
|
|
||||||
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace
|
|
||||||
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace-otlptracegrpc
|
|
||||||
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace-otlptracehttp
|
|
||||||
go-go-opentelemetry-io-otel-sdk
|
|
||||||
go-go-opentelemetry-io-otel-trace
|
|
||||||
go-go-uber-org-goleak
|
|
||||||
go-golang-org-x-mod
|
|
||||||
go-golang-org-x-sync
|
|
||||||
go-golang-org-x-sys
|
|
||||||
go-golang-org-x-time
|
|
||||||
go-google-golang-org-genproto-googleapis-rpc
|
|
||||||
go-google-golang-org-grpc
|
|
||||||
go-google-golang-org-protobuf
|
|
||||||
go-gopkg-in-inf-v0
|
|
||||||
go-k8s-io-apimachinery
|
|
||||||
go-k8s-io-client-go
|
|
||||||
go-k8s-io-cri-api
|
|
||||||
go-k8s-io-klog-v2
|
|
||||||
go-tags-cncf-io-container-device-interface))
|
|
||||||
(home-page "https://containerd.io/")
|
|
||||||
(synopsis "Container runtime support daemon")
|
|
||||||
(description
|
|
||||||
"Containerd is a container runtime with an emphasis on simplicity,
|
|
||||||
robustness, and portability. It is available as a daemon, which can manage
|
|
||||||
the complete container lifecycle of its host system: image transfer and
|
|
||||||
storage, container execution and supervision, low-level storage and network
|
|
||||||
attachments, etc.")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public go-github-com-containers-gvisor-tap-vsock
|
|
||||||
(package
|
|
||||||
(name "go-github-com-containers-gvisor-tap-vsock")
|
|
||||||
(version "0.8.8")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/containers/gvisor-tap-vsock")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1xz710dmy58gngd0qizjw8g9nkraksqald8vzhwc5h36dqkc8nrf"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet
|
|
||||||
#~(begin
|
|
||||||
(delete-file-recursively "vendor")
|
|
||||||
;; Submodules with their own go.mod files and packaged separately:
|
|
||||||
;;
|
|
||||||
;; - github.com/containers/gvisor-tap-vsock/tools
|
|
||||||
(delete-file-recursively "tools")))))
|
|
||||||
(build-system go-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:skip-build? #t
|
|
||||||
#:import-path "github.com/containers/gvisor-tap-vsock"
|
|
||||||
#:unpack-path "github.com/containers/gvisor-tap-vsock"
|
|
||||||
#:build-flags
|
|
||||||
#~(list (string-append "-ldflags="
|
|
||||||
"-X github.com/containers/gvisor-tap-vsock"
|
|
||||||
"/pkg/types.gitVersion=" #$version))
|
|
||||||
#:test-flags
|
|
||||||
#~(list "-skip"
|
|
||||||
(string-join
|
|
||||||
;; Received unexpected error:
|
|
||||||
;; listen unix /tmp/guix-.../test.sock: bind: invalid argument
|
|
||||||
(list "TestNotificationSender_Success"
|
|
||||||
;; Requires network
|
|
||||||
"TestSuite"
|
|
||||||
"TestDNS")
|
|
||||||
"|"))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'prune-tests
|
|
||||||
(lambda* (#:key unpack-path #:allow-other-keys)
|
|
||||||
(with-directory-excursion (string-append "src/" unpack-path)
|
|
||||||
;; Requires working DNS.
|
|
||||||
(substitute* "pkg/services/dns/dns_test.go"
|
|
||||||
(("Should pass DNS requests to default system DNS.*" all)
|
|
||||||
(string-append all "\n" "ginkgo.Skip(\"No network.\");"))
|
|
||||||
(("\"redhat.com\",")
|
|
||||||
"\"localhost\",")
|
|
||||||
(("\"52.200.142.250\"")
|
|
||||||
"\"127.0.0.1\""))))))))
|
|
||||||
(native-inputs
|
|
||||||
(list go-github-com-stretchr-testify
|
|
||||||
go-github-com-foxcpp-go-mockdns))
|
|
||||||
(propagated-inputs
|
|
||||||
(list go-github-com-apparentlymart-go-cidr
|
|
||||||
go-github-com-containers-winquit
|
|
||||||
go-github-com-coreos-stream-metadata-go
|
|
||||||
go-github-com-dustin-go-humanize
|
|
||||||
go-github-com-google-gopacket
|
|
||||||
go-github-com-inetaf-tcpproxy
|
|
||||||
go-github-com-insomniacslk-dhcp
|
|
||||||
;; go-github-com-linuxkit-virtsock ;Windows only
|
|
||||||
go-github-com-mdlayher-vsock
|
|
||||||
;; go-github-com-microsoft-go-winio ;Windows only
|
|
||||||
go-github-com-miekg-dns
|
|
||||||
go-github-com-onsi-ginkgo
|
|
||||||
go-github-com-onsi-gomega
|
|
||||||
go-github-com-opencontainers-go-digest
|
|
||||||
go-github-com-sirupsen-logrus
|
|
||||||
go-github-com-songgao-packets
|
|
||||||
go-github-com-songgao-water
|
|
||||||
go-github-com-vishvananda-netlink
|
|
||||||
go-golang-org-x-crypto
|
|
||||||
go-golang-org-x-mod
|
|
||||||
go-golang-org-x-sync
|
|
||||||
go-golang-org-x-sys
|
|
||||||
go-gopkg-in-yaml-v3
|
|
||||||
go-gvisor-dev-gvisor))
|
|
||||||
(home-page "https://github.com/containers/gvisor-tap-vsock")
|
|
||||||
(synopsis "Network stack for virtualization based on gVisor")
|
|
||||||
(description "This package provides a replacement for @code{libslirp} and
|
|
||||||
@code{VPNKit}, written in pure Go. It is based on the network stack of gVisor
|
|
||||||
and brings a configurable DNS server and dynamic port forwarding.
|
|
||||||
|
|
||||||
It can be used with QEMU, Hyperkit, Hyper-V and User-Mode Linux.
|
|
||||||
|
|
||||||
The binary is called @command{gvproxy}.")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public go-github-com-rootless-containers-rootlesskit-v3
|
|
||||||
(package
|
|
||||||
(name "go-github-com-rootless-containers-rootlesskit-v3")
|
|
||||||
(version "3.0.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/rootless-containers/rootlesskit")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0giw1whjpm64h8f1iamgym246rr3wl01w7zgw4lygrj7dqk3clmb"))))
|
|
||||||
(build-system go-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:skip-build? #t
|
|
||||||
#:import-path "github.com/rootless-containers/rootlesskit/v3"))
|
|
||||||
(propagated-inputs
|
|
||||||
(list go-github-com-containernetworking-plugins
|
|
||||||
go-github-com-containers-gvisor-tap-vsock
|
|
||||||
go-github-com-gofrs-flock
|
|
||||||
go-github-com-google-uuid
|
|
||||||
go-github-com-gorilla-mux
|
|
||||||
go-github-com-insomniacslk-dhcp
|
|
||||||
go-github-com-masterminds-semver-v3
|
|
||||||
go-github-com-moby-sys-mountinfo
|
|
||||||
go-github-com-moby-vpnkit
|
|
||||||
go-github-com-sirupsen-logrus
|
|
||||||
go-github-com-songgao-water
|
|
||||||
go-github-com-urfave-cli-v2
|
|
||||||
go-golang-org-x-sync
|
|
||||||
go-golang-org-x-sys
|
|
||||||
go-gotest-tools-v3))
|
|
||||||
(home-page "https://github.com/rootless-containers/rootlesskit")
|
|
||||||
(synopsis "Linux-native fakeroot using user namespaces in Golang")
|
|
||||||
(description
|
|
||||||
"@code{RootlessKit} is a Linux-native implementation of \"fake root\" using
|
|
||||||
@url{http://man7.org/linux/man-pages/man7/user_namespaces.7.html,(code
|
|
||||||
user_namespaces(7))}. It is used to run containers engines as an
|
|
||||||
unprivileged user, known as \"Rootless mode\".")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
;;; Executables:
|
;;; Executables:
|
||||||
@@ -511,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
|
|||||||
(define-public crun
|
(define-public crun
|
||||||
(package
|
(package
|
||||||
(name "crun")
|
(name "crun")
|
||||||
(version "1.27.1")
|
(version "1.25.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
@@ -521,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
|
|||||||
"/crun-" version ".tar.gz"))
|
"/crun-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1w782s95f3xvw3fb66l2ciqkqsg4bk7n9ph31jmvn669ap272ymy"))))
|
"02kksvnja234k8mpq5j7yms8npbpvh8iz3k03h21lwcqzqsb88rx"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -906,7 +545,7 @@ Layer-4 sockets.")
|
|||||||
(define-public cni-plugins
|
(define-public cni-plugins
|
||||||
(package
|
(package
|
||||||
(name "cni-plugins")
|
(name "cni-plugins")
|
||||||
(version "1.9.1")
|
(version "1.9.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -915,7 +554,7 @@ Layer-4 sockets.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "12z6w2jk6xgfiwdxys7skpkxldz1cgaa7scgfcr90lsghay59s6w"))
|
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
|
||||||
(snippet
|
(snippet
|
||||||
#~(begin (use-modules (guix build utils))
|
#~(begin (use-modules (guix build utils))
|
||||||
(delete-file-recursively "vendor")))))
|
(delete-file-recursively "vendor")))))
|
||||||
@@ -956,33 +595,92 @@ configure network interfaces in Linux containers.")
|
|||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public gvisor-tap-vsock
|
(define-public gvisor-tap-vsock
|
||||||
(package/inherit go-github-com-containers-gvisor-tap-vsock
|
(package
|
||||||
(name "gvisor-tap-vsock")
|
(name "gvisor-tap-vsock")
|
||||||
|
(version "0.8.8")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/containers/gvisor-tap-vsock")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32 "1xz710dmy58gngd0qizjw8g9nkraksqald8vzhwc5h36dqkc8nrf"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
#~(begin
|
||||||
|
(delete-file-recursively "vendor")
|
||||||
|
;; Submodules with their own go.mod files and packaged separately:
|
||||||
|
;;
|
||||||
|
;; - github.com/containers/gvisor-tap-vsock/tools
|
||||||
|
(delete-file-recursively "tools")))))
|
||||||
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments arguments
|
(list
|
||||||
((#:install-source? _ #t) #f)
|
#:install-source? #f
|
||||||
((#:skip-build? _ #t) #f)
|
#:import-path "github.com/containers/gvisor-tap-vsock/cmd/gvproxy"
|
||||||
((#:tests? _ #t) #f)
|
#:unpack-path "github.com/containers/gvisor-tap-vsock"
|
||||||
((#:phases _ '%standard-phases)
|
#:build-flags
|
||||||
#~(modify-phases %standard-phases
|
#~(list (string-append "-ldflags="
|
||||||
;; Build binary outputs are taken from project's Makefile.
|
"-X github.com/containers/gvisor-tap-vsock"
|
||||||
(replace 'build
|
"/pkg/types.gitVersion=" #$version))
|
||||||
(lambda arguments
|
#:test-flags
|
||||||
(for-each
|
;; serve UDP error: *net.OpError read udp 127.0.0.1:5354: use of closed
|
||||||
(lambda (cmd)
|
;; network connection
|
||||||
(apply (assoc-ref %standard-phases 'build)
|
#~(list "-skip" "TestSuite")
|
||||||
`(,@arguments #:import-path ,cmd)))
|
#:test-subdirs
|
||||||
(list "github.com/containers/gvisor-tap-vsock/cmd/gvproxy"
|
#~(list "../../...") ;test the whole library
|
||||||
"github.com/containers/gvisor-tap-vsock/cmd/qemu-wrapper"
|
#:phases
|
||||||
"github.com/containers/gvisor-tap-vsock/cmd/vm"))))
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'install 'fix-bin-name
|
(add-after 'unpack 'prune-tests
|
||||||
(lambda _
|
(lambda* (#:key unpack-path #:allow-other-keys)
|
||||||
(rename-file (string-append #$output "/bin/vm")
|
(with-directory-excursion (string-append "src/" unpack-path)
|
||||||
(string-append #$output "/bin/gvforwarder"))))))))
|
;; Requires working DNS.
|
||||||
|
(substitute* "pkg/services/dns/dns_test.go"
|
||||||
|
(("Should pass DNS requests to default system DNS.*" all)
|
||||||
|
(string-append all "\n" "ginkgo.Skip(\"No network.\");"))
|
||||||
|
(("\"redhat.com\",")
|
||||||
|
"\"localhost\",")
|
||||||
|
(("\"52.200.142.250\"")
|
||||||
|
"\"127.0.0.1\""))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(package-propagated-inputs go-github-com-containers-gvisor-tap-vsock))
|
(list go-github-com-apparentlymart-go-cidr
|
||||||
(propagated-inputs '())
|
go-github-com-containers-winquit
|
||||||
(inputs '())))
|
go-github-com-coreos-stream-metadata-go
|
||||||
|
go-github-com-dustin-go-humanize
|
||||||
|
go-github-com-foxcpp-go-mockdns
|
||||||
|
go-github-com-google-gopacket
|
||||||
|
go-github-com-inetaf-tcpproxy
|
||||||
|
go-github-com-insomniacslk-dhcp
|
||||||
|
;; go-github-com-linuxkit-virtsock ;Windows only
|
||||||
|
go-github-com-mdlayher-vsock
|
||||||
|
;; go-github-com-microsoft-go-winio ;Windows only
|
||||||
|
go-github-com-miekg-dns
|
||||||
|
go-github-com-onsi-ginkgo
|
||||||
|
go-github-com-onsi-gomega
|
||||||
|
go-github-com-opencontainers-go-digest
|
||||||
|
go-github-com-sirupsen-logrus
|
||||||
|
go-github-com-songgao-packets
|
||||||
|
go-github-com-songgao-water
|
||||||
|
go-github-com-stretchr-testify
|
||||||
|
go-github-com-vishvananda-netlink
|
||||||
|
go-golang-org-x-crypto
|
||||||
|
go-golang-org-x-mod
|
||||||
|
go-golang-org-x-sync
|
||||||
|
go-golang-org-x-sys
|
||||||
|
go-gopkg-in-yaml-v3
|
||||||
|
go-gvisor-dev-gvisor))
|
||||||
|
(home-page "https://github.com/containers/gvisor-tap-vsock")
|
||||||
|
(synopsis "Network stack for virtualization based on gVisor")
|
||||||
|
(description "This package provides a replacement for @code{libslirp} and
|
||||||
|
@code{VPNKit}, written in pure Go. It is based on the network stack of gVisor
|
||||||
|
and brings a configurable DNS server and dynamic port forwarding.
|
||||||
|
|
||||||
|
It can be used with QEMU, Hyperkit, Hyper-V and User-Mode Linux.
|
||||||
|
|
||||||
|
The binary is called @command{gvproxy}.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public catatonit
|
(define-public catatonit
|
||||||
(package
|
(package
|
||||||
@@ -1016,7 +714,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
|
|||||||
(define-public podman
|
(define-public podman
|
||||||
(package
|
(package
|
||||||
(name "podman")
|
(name "podman")
|
||||||
(version "5.8.2")
|
(version "5.8.1")
|
||||||
(outputs '("out" "docker"))
|
(outputs '("out" "docker"))
|
||||||
(properties
|
(properties
|
||||||
`((output-synopsis "docker" "docker alias for podman")
|
`((output-synopsis "docker" "docker alias for podman")
|
||||||
@@ -1029,7 +727,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
|
|||||||
(url "https://github.com/containers/podman")
|
(url "https://github.com/containers/podman")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "12bmzbfyjsf0mwnam38cw9ib54wj1znh5b7lxzdyll9cvvkhqisr"))
|
(base32 "1wdsdc0nj4m1v8mn95dhavi87ad0adqmld70da59gvp2abff5f0f"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
@@ -1187,7 +885,7 @@ being rootless and not requiring any daemon to be running.")
|
|||||||
(define-public buildah
|
(define-public buildah
|
||||||
(package
|
(package
|
||||||
(name "buildah")
|
(name "buildah")
|
||||||
(version "1.43.1")
|
(version "1.43.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1195,7 +893,7 @@ being rootless and not requiring any daemon to be running.")
|
|||||||
(url "https://github.com/containers/buildah")
|
(url "https://github.com/containers/buildah")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "00x4ja5n49jmkmiv54mmkihks9pnjnna7s7py57in6pc9g85xj2y"))
|
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
|||||||
@@ -1,296 +0,0 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
|
||||||
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
|
|
||||||
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
|
||||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
|
||||||
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
|
||||||
;;; Copyright © 2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
||||||
;;;
|
|
||||||
;;; This file is part of GNU Guix.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
||||||
;;; under the terms of the GNU General Public License as published by
|
|
||||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
||||||
;;; your option) any later version.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
||||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
;;; GNU General Public License for more details.
|
|
||||||
;;;
|
|
||||||
;;; You should have received a copy of the GNU General Public License
|
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
(define-module (gnu packages coreboot)
|
|
||||||
#:use-module (gnu packages bison)
|
|
||||||
#:use-module (gnu packages compression)
|
|
||||||
#:use-module (gnu packages flex)
|
|
||||||
#:use-module (gnu packages pciutils)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix build-system cargo)
|
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix build-system copy)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system go)
|
|
||||||
#:use-module (guix build-system meson)
|
|
||||||
#:use-module (guix build-system pyproject)
|
|
||||||
#:use-module (guix build-system python)
|
|
||||||
#:use-module (guix build-system qt)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module (guix utils)
|
|
||||||
#:use-module (srfi srfi-26))
|
|
||||||
|
|
||||||
(define %coreboot-version "26.03")
|
|
||||||
|
|
||||||
(define %coreboot-origin
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://review.coreboot.org/coreboot")
|
|
||||||
(commit %coreboot-version)))
|
|
||||||
(file-name (git-file-name "coreboot" %coreboot-version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0436rr0vibh35phvkxrc939njvrmnfq9xw87y1b0nlllglvq07kk"))))
|
|
||||||
|
|
||||||
(define-public bincfg
|
|
||||||
(package
|
|
||||||
(name "bincfg")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ; no test suite
|
|
||||||
#:make-flags
|
|
||||||
#~(list
|
|
||||||
(string-append "CC=" #$(cc-for-target)))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(delete 'configure) ; no configure script
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/bincfg")))
|
|
||||||
(add-after 'build 'build-binaries
|
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
|
||||||
(for-each
|
|
||||||
(lambda (target result)
|
|
||||||
(apply invoke "make" (string-append "gen-" target) make-flags)
|
|
||||||
(rename-file result
|
|
||||||
(string-append target ".bin")))
|
|
||||||
(list
|
|
||||||
;; generate GbE for X200
|
|
||||||
"gbe-ich9m"
|
|
||||||
;; generate GbE for X220/x230
|
|
||||||
"gbe-82579LM"
|
|
||||||
;; generate IFD for X200
|
|
||||||
"ifd-x200")
|
|
||||||
(list
|
|
||||||
"flashregion_3_gbe.bin"
|
|
||||||
"flashregion_3_gbe.bin"
|
|
||||||
"flashregion_0_fd.bin"))))
|
|
||||||
;; The Makefile has no install target.
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(let ((bin (string-append #$output "/bin"))
|
|
||||||
(lib (string-append #$output "/lib/bincfg"))
|
|
||||||
(data (string-append #$output "/share/bincfg")))
|
|
||||||
;; Install the program
|
|
||||||
(install-file "bincfg" bin)
|
|
||||||
;; And its data
|
|
||||||
(for-each
|
|
||||||
(lambda (path)
|
|
||||||
(install-file path data))
|
|
||||||
(append (find-files "." ".*\\.set")
|
|
||||||
(find-files "." ".*\\.spec")))
|
|
||||||
;; And the files generated with the data
|
|
||||||
(for-each
|
|
||||||
(lambda (path)
|
|
||||||
(install-file path lib))
|
|
||||||
(find-files "." ".*\\.bin"))))))))
|
|
||||||
(native-inputs (list bison flex))
|
|
||||||
(home-page "https://coreboot.org")
|
|
||||||
(synopsis "Encoder/decoder for binary formats described in text files")
|
|
||||||
(description "
|
|
||||||
The bincfg program comes with specifications files for the following binary
|
|
||||||
formats:
|
|
||||||
@itemize
|
|
||||||
@item Various DDR3 and DDR4 SPD
|
|
||||||
@item Configuration data for the Intel 82579LM Gigabit Ethernet PHY
|
|
||||||
@item Configuration data for the Intel Gigabit Ethernet controller present in
|
|
||||||
the Intel ICH9-M chipset.
|
|
||||||
@item Intel Firmware Descriptor data for the Lenovo ThinkPad X200
|
|
||||||
@item Configuration data for the ITE IT8718F SuperIO
|
|
||||||
@end itemize
|
|
||||||
It also comes with example files generated by bincfg.")
|
|
||||||
(license license:gpl3+)))
|
|
||||||
|
|
||||||
(define-public bucts
|
|
||||||
(package
|
|
||||||
(name "bucts")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ;no tests
|
|
||||||
#:make-flags #~(list (string-append "CC=" #$(cc-for-target)))
|
|
||||||
#:phases #~(modify-phases %standard-phases
|
|
||||||
(delete 'configure) ;no configure script
|
|
||||||
(add-after 'unpack 'enter-source
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/bucts")))
|
|
||||||
(add-after 'enter-source 'set-version
|
|
||||||
(lambda _
|
|
||||||
(substitute* "Makefile"
|
|
||||||
(("^VERSION:=*")
|
|
||||||
#$(string-append "VERSION:=" version)))))
|
|
||||||
;; no install target
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(let ((bin (string-append #$output "/bin"))
|
|
||||||
(doc (string-append #$output "/share/doc/bucts/"))
|
|
||||||
(licenses (string-append #$output
|
|
||||||
"/share/licenses/bucts/")))
|
|
||||||
(install-file "bucts" bin)
|
|
||||||
(install-file "readme.md" doc)
|
|
||||||
(install-file "../../COPYING" licenses)))))))
|
|
||||||
(inputs (list pciutils))
|
|
||||||
(home-page "https://coreboot.org")
|
|
||||||
(synopsis "Tool to swap the BIOS bootblock and backup bootblock on the
|
|
||||||
Intel I945 chipsets")
|
|
||||||
(description
|
|
||||||
"The @command{bucts} command can flip a bit in the BUC.TS register of the
|
|
||||||
Intel I945 chipsets and show the register status. When the bit is set, it
|
|
||||||
swaps the bootblock location. Because the bootblock region is often set
|
|
||||||
read-only by the default BIOS, this enables to bypass that restriction and is
|
|
||||||
used as part of a procedure to replace the nonfree BIOS with free software on
|
|
||||||
various computers (Lenovo X60, X60s, X60T, T60, probably more).")
|
|
||||||
(license license:gpl2)))
|
|
||||||
|
|
||||||
(define-public ectool
|
|
||||||
(package
|
|
||||||
(name "ectool")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ; no test suite
|
|
||||||
#:make-flags
|
|
||||||
#~(list (string-append "CC=" #$(cc-for-target))
|
|
||||||
"INSTALL=install"
|
|
||||||
(string-append "PREFIX=" #$output))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/ectool")))
|
|
||||||
(delete 'configure)))) ; no configure script
|
|
||||||
(home-page "https://doc.coreboot.org/util.html")
|
|
||||||
(synopsis "Tool to dump and modify @acronym{EC, Embedded Controller} RAM
|
|
||||||
on computers such as laptops")
|
|
||||||
(description "This package provides @command{ectool}, a program to dump
|
|
||||||
and modify the contents of @acronym{EC, Embedded Controller} RAM
|
|
||||||
on mobile computers.")
|
|
||||||
(license license:gpl2)))
|
|
||||||
|
|
||||||
(define-public ifdtool
|
|
||||||
(package
|
|
||||||
(name "ifdtool")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:make-flags
|
|
||||||
#~(list (string-append "CC=" #$(cc-for-target))
|
|
||||||
"INSTALL=install"
|
|
||||||
(string-append "PREFIX=" #$output))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/ifdtool")))
|
|
||||||
(delete 'configure)) ; no configure script
|
|
||||||
#:tests? #f)) ; no test suite
|
|
||||||
(home-page "https://doc.coreboot.org/util/ifdtool/")
|
|
||||||
(synopsis "Intel Firmware Descriptor dumper")
|
|
||||||
(description "This package provides @command{ifdtool}, a program to
|
|
||||||
dump Intel Firmware Descriptor data of an image file.")
|
|
||||||
(license license:gpl2)))
|
|
||||||
|
|
||||||
(define-public intelmetool
|
|
||||||
(package
|
|
||||||
(name "intelmetool")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ;no test suite
|
|
||||||
#:make-flags
|
|
||||||
#~(list (string-append "CC=" #$(cc-for-target))
|
|
||||||
"INSTALL=install"
|
|
||||||
(string-append "PREFIX=" #$output))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/intelmetool")))
|
|
||||||
(delete 'configure) ;no configure script
|
|
||||||
(delete 'check))))
|
|
||||||
(inputs (list pciutils zlib))
|
|
||||||
(home-page
|
|
||||||
"https://github.com/coreboot/coreboot/tree/main/util/intelmetool/")
|
|
||||||
(synopsis "Intel Management Engine tools")
|
|
||||||
(description "This package provides tools for working with Intel
|
|
||||||
Management Engine (ME). You need to @code{sudo rmmod mei_me} and
|
|
||||||
@code{sudo rmmod mei} before using this tool. Also pass
|
|
||||||
@code{iomem=relaxed} to the Linux kernel command line.")
|
|
||||||
(license license:gpl2)
|
|
||||||
|
|
||||||
;; This is obviously an Intel thing, plus it requires <cpuid.h>.
|
|
||||||
(supported-systems '("x86_64-linux" "i686-linux"))))
|
|
||||||
|
|
||||||
(define-public nvramtool
|
|
||||||
(package
|
|
||||||
(name "nvramtool")
|
|
||||||
(version %coreboot-version)
|
|
||||||
(source %coreboot-origin)
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ; no test suite
|
|
||||||
#:make-flags
|
|
||||||
#~(list (string-append "CC=" #$(cc-for-target))
|
|
||||||
"INSTALL=install"
|
|
||||||
(string-append "PREFIX=" #$output))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "util/nvramtool")))
|
|
||||||
(delete 'configure)))) ; no configure script
|
|
||||||
(home-page "https://coreboot.org")
|
|
||||||
(synopsis "Command line tool that can edit Coreboot settings")
|
|
||||||
(description "@command{nvramtool} can see and/or modify Coreboot settings
|
|
||||||
like the serial port speed, log level, etc. It requires Coreboot to be compiled
|
|
||||||
with CONFIG_USE_OPTION_TABLE and some options require the iomem=relaxed kernel
|
|
||||||
command line to work. Features:
|
|
||||||
@itemize
|
|
||||||
@item If Coreboot was compiled without CONFIG_STATIC_OPTION_TABLE, it can change
|
|
||||||
its settings, which are applied after a reboot.
|
|
||||||
@item It can modify Coreboot images default settings with
|
|
||||||
@command{nvramtool -C coreboot.rom [...]}.
|
|
||||||
@item It has various options related to the file format used to store these
|
|
||||||
settings.
|
|
||||||
@item It can also read/write the CMOS memory where the Coreboot settings can be
|
|
||||||
located.
|
|
||||||
@end itemize")
|
|
||||||
;; Some files are "GPL-2.0-only or BSD-3-Clause", other are GPL-2.0-only
|
|
||||||
;; and anyway there is. There is also a license declaration in
|
|
||||||
;; cli/nvramtool.8 that applies to "This program" which uses the GPLv2.
|
|
||||||
(license license:gpl2)))
|
|
||||||
+15
-197
@@ -28,7 +28,7 @@
|
|||||||
;;; Copyright © 2022-2024 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2022-2024 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2022 muradm <mail@muradm.net>
|
;;; Copyright © 2022 muradm <mail@muradm.net>
|
||||||
;;; Copyright © 2022 Attila Lendvai <attila@lendvai.name>
|
;;; Copyright © 2022 Attila Lendvai <attila@lendvai.name>
|
||||||
;;; Copyright © 2022, 2026 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;; Copyright © 2022-2025 David Elsing <david.elsing@posteo.net>
|
;;; Copyright © 2022-2025 David Elsing <david.elsing@posteo.net>
|
||||||
;;; Copyright © 2022-2024 Zheng Junjie <873216071@qq.com>
|
;;; Copyright © 2022-2024 Zheng Junjie <873216071@qq.com>
|
||||||
;;; Copyright © 2022-2024, 2026 Maxim Cournoyer <maxim@guixotic.coop>
|
;;; Copyright © 2022-2024, 2026 Maxim Cournoyer <maxim@guixotic.coop>
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
;;; Copyright © 2024 Jakob Kirsch <jakob.kirsch@web.de>
|
;;; Copyright © 2024 Jakob Kirsch <jakob.kirsch@web.de>
|
||||||
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||||
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
|
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
|
||||||
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
|
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||||
;;; Copyright © 2025 Romain Garbage <romain.garbage@inria.fr>
|
;;; Copyright © 2025 Romain Garbage <romain.garbage@inria.fr>
|
||||||
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||||
@@ -52,7 +52,6 @@
|
|||||||
;;; Copyright © 2025 Philippe Swartvagher <phil.swart@gmx.fr>
|
;;; Copyright © 2025 Philippe Swartvagher <phil.swart@gmx.fr>
|
||||||
;;; Copyright © 2025 Murilo <murilo@disroot.org>
|
;;; Copyright © 2025 Murilo <murilo@disroot.org>
|
||||||
;;; Copyright © 2026 Justin Veilleux <terramorpha@cock.li>
|
;;; Copyright © 2026 Justin Veilleux <terramorpha@cock.li>
|
||||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -79,6 +78,7 @@
|
|||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system scons)
|
#:use-module (guix build-system scons)
|
||||||
#:use-module (guix modules)
|
#:use-module (guix modules)
|
||||||
@@ -133,7 +133,6 @@
|
|||||||
#:use-module (gnu packages sdl)
|
#:use-module (gnu packages sdl)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages tex)
|
#:use-module (gnu packages tex)
|
||||||
#:use-module (gnu packages texinfo)
|
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages webkit)
|
#:use-module (gnu packages webkit)
|
||||||
#:use-module (gnu packages xdisorg)
|
#:use-module (gnu packages xdisorg)
|
||||||
@@ -936,85 +935,6 @@ inspired by the @url{https://github.com/gruns/icecream, Python library} of the
|
|||||||
same name.")
|
same name.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public tinyformat
|
|
||||||
(package
|
|
||||||
(name "tinyformat")
|
|
||||||
(version "2.3.0")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/c42f/tinyformat")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0j8bxrg7i4rn98iqpfh03krshgcbwh8hq8nm0p3sfdqpira3vi3y"))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(install-file "../source/tinyformat.h"
|
|
||||||
(string-append #$output "/include")))))))
|
|
||||||
(home-page "https://github.com/c42f/tinyformat")
|
|
||||||
(synopsis "Minimal, type-safe printf replacement library for C++")
|
|
||||||
(description "@code{tinyformat} is a type-safe @code{printf} replacement
|
|
||||||
library in a single C++ header file. Design goals include:
|
|
||||||
|
|
||||||
@itemize
|
|
||||||
@item Type-safety and extensibility for user defined types
|
|
||||||
@item C99 @code{printf} compatibility, to the extent possible using
|
|
||||||
@code{std::ostream}
|
|
||||||
@item POSIX extension for positional arguments
|
|
||||||
@item Simplicity and minimalism; a single header file to include and
|
|
||||||
distribute with your projects
|
|
||||||
@item Augment rather than replace the standard stream formatting mechanism
|
|
||||||
@item C++98 support, with optional C++11 niceties
|
|
||||||
@end itemize")
|
|
||||||
(license license:boost1.0)))
|
|
||||||
|
|
||||||
(define-public span
|
|
||||||
(let ((commit "836dc6a0efd9849cb194e88e4aa2387436bb079b")
|
|
||||||
(revision "0"))
|
|
||||||
(package
|
|
||||||
(name "span")
|
|
||||||
(version (git-version "0.1.0" revision commit))
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/tcbrindle/span")
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1v3x1mj4if8jrr7cmrcbhv8n8ygla0liqb0dic6g6ji7px2pr6jf"))
|
|
||||||
(snippet
|
|
||||||
#~(delete-file "test/catch.hpp"))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'patch-catch2
|
|
||||||
(lambda _
|
|
||||||
;; Use catch2 from Guix.
|
|
||||||
(substitute* (find-files "test" "\\.cpp$")
|
|
||||||
(("#include \"catch.hpp\"")
|
|
||||||
"#include <catch2/catch.hpp>"))))
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(install-file "../source/include/tcb/span.hpp"
|
|
||||||
(string-append #$output "/include")))))))
|
|
||||||
(native-inputs
|
|
||||||
(list catch2))
|
|
||||||
(home-page "https://github.com/tcbrindle/span")
|
|
||||||
(synopsis "C++20's @code{std::span} shim for older compilers")
|
|
||||||
(description "This package provides a single-header implementation of
|
|
||||||
C++20's @code{std::span}, conforming to the C++20 committee draft. It is
|
|
||||||
compatible with C++11, but will use newer language features if they are
|
|
||||||
available.")
|
|
||||||
(license license:boost1.0))))
|
|
||||||
|
|
||||||
(define-public google-highway
|
(define-public google-highway
|
||||||
(package
|
(package
|
||||||
(name "google-highway")
|
(name "google-highway")
|
||||||
@@ -1751,38 +1671,6 @@ maintained anymore.")
|
|||||||
concurrent queue for C++11.")
|
concurrent queue for C++11.")
|
||||||
(license license:bsd-2)))
|
(license license:bsd-2)))
|
||||||
|
|
||||||
(define-public ringbuffer
|
|
||||||
(package
|
|
||||||
(name "ringbuffer")
|
|
||||||
(version "0.9.0")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/JohannesLorenz/ringbuffer")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1c57hj6zyvcjpcbwrq8c1hj5brk1bnh69ayd88ny1p0gx031sjpk"))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:configure-flags
|
|
||||||
#~(list "-DCMAKE_CXX_FLAGS=-Wno-error=array-bounds"
|
|
||||||
(string-append "-DINSTALL_LIB_DIR=" #$output "/lib"))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'install 'install-export-header
|
|
||||||
(lambda _
|
|
||||||
(install-file "src/lib/ringbuffer_export.h"
|
|
||||||
(string-append #$output
|
|
||||||
"/include/ringbuffer")))))))
|
|
||||||
(home-page "https://github.com/JohannesLorenz/ringbuffer")
|
|
||||||
(synopsis "Lock-free multi-reader ringbuffer")
|
|
||||||
(description
|
|
||||||
"@code{ringbuffer} is a library containing a ringbuffer. It is lock-free
|
|
||||||
(using atomics only), and allows multiple readers, but only one writer.")
|
|
||||||
(license license:gpl3+)))
|
|
||||||
|
|
||||||
(define-public spscqueue
|
(define-public spscqueue
|
||||||
(package
|
(package
|
||||||
(name "spscqueue")
|
(name "spscqueue")
|
||||||
@@ -2016,7 +1904,8 @@ using the string similarity calculations from FuzzyWuzzy.")
|
|||||||
(add-after 'unpack 'fix-pytest-config
|
(add-after 'unpack 'fix-pytest-config
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "pyproject.toml"
|
(substitute* "pyproject.toml"
|
||||||
(("\"pytest-cov\", ") "")))))))
|
((" \"pytest-cov\", ") "")
|
||||||
|
((" --cov-fail-under=90 --cov=cpplint") "")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest
|
(list python-pytest
|
||||||
python-pytest-timeout
|
python-pytest-timeout
|
||||||
@@ -3303,7 +3192,8 @@ pointers, containers, compiler building blocks, etc.")
|
|||||||
(native-inputs
|
(native-inputs
|
||||||
(list build))
|
(list build))
|
||||||
(inputs
|
(inputs
|
||||||
(list libcutl xerces-c))
|
`(("libcutl" ,libcutl)
|
||||||
|
("libxerces-c" ,xerces-c)))
|
||||||
(synopsis "XSD Front-end")
|
(synopsis "XSD Front-end")
|
||||||
(description "@code{libxsd-frontend} is a compiler frontend for the W3C
|
(description "@code{libxsd-frontend} is a compiler frontend for the W3C
|
||||||
XML Schema definition language. It includes a parser, semantic graph types
|
XML Schema definition language. It includes a parser, semantic graph types
|
||||||
@@ -3470,7 +3360,7 @@ which can evaluate Jsonnet files and expressions.")))
|
|||||||
(define-public simdjson
|
(define-public simdjson
|
||||||
(package
|
(package
|
||||||
(name "simdjson")
|
(name "simdjson")
|
||||||
(version "4.6.3")
|
(version "3.13.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -3479,7 +3369,7 @@ which can evaluate Jsonnet files and expressions.")))
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0729mxnc2wjb94gr4znwlzfmgw5w2v9kd8glvn3vnjhkdnd87zry"))))
|
"005yli56nrkvlyx9g9cq8dczk42r9a18l162i2s5k81lj3y7mcrp"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; tests require downloading dependencies
|
'(#:tests? #f ; tests require downloading dependencies
|
||||||
@@ -3718,7 +3608,7 @@ std::wstring, etc).")
|
|||||||
(define-public fast-float
|
(define-public fast-float
|
||||||
(package
|
(package
|
||||||
(name "fast-float")
|
(name "fast-float")
|
||||||
(version "8.2.5")
|
(version "8.0.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -3727,7 +3617,7 @@ std::wstring, etc).")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1l13nsl4sgq71m7aifrmmmfyl14vp48vqdh7pb50hxqq6f8bq2b5"))))
|
"19x1yklf641yrpad6lk4cq3jmird10d5ig8hicm3p9lxh92k78cl"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -3738,10 +3628,12 @@ std::wstring, etc).")
|
|||||||
(add-after 'unpack 'patch-cmake-tests
|
(add-after 'unpack 'patch-cmake-tests
|
||||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||||
(substitute* "tests/CMakeLists.txt"
|
(substitute* "tests/CMakeLists.txt"
|
||||||
(("FetchContent_MakeAvailable\\(supplemental_test_files.*")
|
(("FetchContent_GetProperties\\(supplemental_test_files.*")
|
||||||
|
"")
|
||||||
|
(("if\\(NOT supplemental_test_files_POPULATED.*")
|
||||||
(string-append
|
(string-append
|
||||||
"set(supplemental_test_files_BINARY_DIR "
|
"set(supplemental_test_files_BINARY_DIR "
|
||||||
#$fast-float-test-files ")\n"))))))))
|
#$fast-float-test-files ")\nif(0)\n"))))))))
|
||||||
(native-inputs (list doctest fast-float-test-files))
|
(native-inputs (list doctest fast-float-test-files))
|
||||||
(home-page "https://github.com/fastfloat/fast_float")
|
(home-page "https://github.com/fastfloat/fast_float")
|
||||||
(synopsis "Floating point number parser for C++")
|
(synopsis "Floating point number parser for C++")
|
||||||
@@ -3778,39 +3670,6 @@ computing Fast Fourier transformations. It supports multidimensional arrays,
|
|||||||
different floating point sizes and complex transformations.")
|
different floating point sizes and complex transformations.")
|
||||||
(license license:bsd-3))))
|
(license license:bsd-3))))
|
||||||
|
|
||||||
(define-public libbinio
|
|
||||||
;; The latest tagged version does not support CMake build. This commit has
|
|
||||||
;; builds with CMake and has updated CMake version support.
|
|
||||||
(let ((commit "e88dad086265e179ab6aef7f479e19f3917c7a98")
|
|
||||||
(revision "0"))
|
|
||||||
(package
|
|
||||||
(name "libbinio")
|
|
||||||
(version (git-version "1.5" revision commit))
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/adplug/libbinio")
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0rb33jl6gpxb88zymzl996m43b7r6wyw4lq0ib3626kna3baqnha"))))
|
|
||||||
(native-inputs
|
|
||||||
(list autoconf automake libtool texinfo))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:tests? #f ;no tests
|
|
||||||
#:configure-flags
|
|
||||||
#~(list "-DBUILD_SHARED_LIBS=ON")))
|
|
||||||
(home-page "http://adplug.github.io/libbinio/")
|
|
||||||
(synopsis "Binary I/O stream class library")
|
|
||||||
(description
|
|
||||||
"This binary I/O stream class library presents a platform-independent
|
|
||||||
way to access binary data streams in C++. The library is hardware independent
|
|
||||||
in the form that it transparently converts between the different forms of
|
|
||||||
machine-internal binary data representation.")
|
|
||||||
(license license:lgpl2.1+))))
|
|
||||||
|
|
||||||
(define-public priocpp
|
(define-public priocpp
|
||||||
;; Latest release is from 2022-08-14.
|
;; Latest release is from 2022-08-14.
|
||||||
(let ((commit "ea15402adcd0d9191dc29ca6f7e4dd0bff67b9b5")
|
(let ((commit "ea15402adcd0d9191dc29ca6f7e4dd0bff67b9b5")
|
||||||
@@ -4637,47 +4496,6 @@ meta data function.")
|
|||||||
;; or the CECILL-C license:
|
;; or the CECILL-C license:
|
||||||
(license (list license:lgpl3 license:cecill-c))))
|
(license (list license:lgpl3 license:cecill-c))))
|
||||||
|
|
||||||
(define-public tcbrindle-span
|
|
||||||
(let ((commit "836dc6a0efd9849cb194e88e4aa2387436bb079b")
|
|
||||||
(revision "0"))
|
|
||||||
(package
|
|
||||||
(name "tcbrindle-span")
|
|
||||||
(version (git-version "0" revision commit))
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/tcbrindle/span")
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1v3x1mj4if8jrr7cmrcbhv8n8ygla0liqb0dic6g6ji7px2pr6jf"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
;; Unbundle catch.
|
|
||||||
(snippet
|
|
||||||
'(with-directory-excursion "test"
|
|
||||||
(delete-file "catch.hpp")
|
|
||||||
(substitute* (find-files "." "\\.cpp$")
|
|
||||||
(("\"catch\\.hpp\"") "<catch.hpp>"))))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(native-inputs (list catch-framework))
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(replace 'install
|
|
||||||
(lambda _
|
|
||||||
(mkdir-p (string-append #$output))
|
|
||||||
(copy-recursively "../source/include"
|
|
||||||
(string-append #$output "/include")))))))
|
|
||||||
(home-page "https://github.com/tcbrindle/span")
|
|
||||||
(synopsis "Implementation of C++20's @code{std::span} for older compilers")
|
|
||||||
(description
|
|
||||||
"This package provides a single-header implementation of C++20's
|
|
||||||
@code{std::span}, conforming to the C++20 committee draft. It is compatible
|
|
||||||
with C++11, but will use newer language features if they are available.")
|
|
||||||
(license license:boost1.0))))
|
|
||||||
|
|
||||||
(define-public tsl-hopscotch-map
|
(define-public tsl-hopscotch-map
|
||||||
(package
|
(package
|
||||||
(name "tsl-hopscotch-map")
|
(name "tsl-hopscotch-map")
|
||||||
|
|||||||
+832
-2080
File diff suppressed because it is too large
Load Diff
+13
-11
@@ -105,6 +105,7 @@
|
|||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
@@ -275,17 +276,18 @@ Ed448-Goldilocks and Curve448, using the Decaf encoding.")
|
|||||||
(define-public libsodium
|
(define-public libsodium
|
||||||
(package
|
(package
|
||||||
(name "libsodium")
|
(name "libsodium")
|
||||||
(version "1.0.22")
|
(version "1.0.18")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method url-fetch)
|
||||||
(method git-fetch)
|
(uri (list (string-append
|
||||||
(uri (git-reference
|
"https://download.libsodium.org/libsodium/"
|
||||||
(url "https://github.com/jedisct1/libsodium")
|
"releases/libsodium-" version ".tar.gz")
|
||||||
(commit (string-append version "-RELEASE"))))
|
(string-append
|
||||||
(file-name (git-file-name name version))
|
"https://download.libsodium.org/libsodium/"
|
||||||
(sha256
|
"releases/old/libsodium-" version ".tar.gz")))
|
||||||
(base32
|
(sha256
|
||||||
"05lqdn6nzldsia5mv5a9xfvc5k0kybh9snwv7qsb135gva4bpjwk"))))
|
(base32
|
||||||
|
"1h9ncvj23qbbni958knzsli8dvybcswcjbx0qjjgi922nf848l3g"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(synopsis "Portable NaCl-based crypto library")
|
(synopsis "Portable NaCl-based crypto library")
|
||||||
(description
|
(description
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages cpp)
|
#:use-module (gnu packages cpp)
|
||||||
@@ -111,7 +112,7 @@ Refresh}in-DRAM mitigations effectively and as such can trigger bit flips.")
|
|||||||
(define-public gallia
|
(define-public gallia
|
||||||
(package
|
(package
|
||||||
(name "gallia")
|
(name "gallia")
|
||||||
(version "2.1.1")
|
(version "2.0.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -120,7 +121,7 @@ Refresh}in-DRAM mitigations effectively and as such can trigger bit flips.")
|
|||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "04xzh5fi18wrkjs7sqwlv344jf54njvnly042rhxq3x5jrvpvkdw"))))
|
(base32 "1yvjpwpqq6r6glfm4qzb8j91d2gsfy4lvygd9z9pg2j6jvcq6f6s"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -132,16 +133,25 @@ Refresh}in-DRAM mitigations effectively and as such can trigger bit flips.")
|
|||||||
#:test-flags #~(list "tests/pytest")))
|
#:test-flags #~(list "tests/pytest")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-poetry-core
|
(list python-poetry-core
|
||||||
|
python-pygit2
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-asyncio))
|
python-pytest-asyncio))
|
||||||
(inputs
|
(inputs
|
||||||
(list python-aiosqlite
|
(list python-aiofiles
|
||||||
|
python-aiosqlite
|
||||||
python-argcomplete
|
python-argcomplete
|
||||||
python-boltons
|
python-boltons
|
||||||
|
python-can
|
||||||
|
python-construct
|
||||||
|
python-exitcode
|
||||||
|
python-httpx
|
||||||
|
python-more-itertools
|
||||||
|
python-msgspec
|
||||||
python-platformdirs
|
python-platformdirs
|
||||||
|
python-psutil
|
||||||
python-pydantic
|
python-pydantic
|
||||||
|
python-pygit2
|
||||||
python-tabulate
|
python-tabulate
|
||||||
python-wcwidth
|
|
||||||
python-zstandard))
|
python-zstandard))
|
||||||
(home-page "https://github.com/Fraunhofer-AISEC/gallia")
|
(home-page "https://github.com/Fraunhofer-AISEC/gallia")
|
||||||
(synopsis "Extendable Pentesting Framework")
|
(synopsis "Extendable Pentesting Framework")
|
||||||
|
|||||||
+101
-313
@@ -69,9 +69,6 @@
|
|||||||
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
|
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
|
||||||
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||||
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
|
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
|
||||||
;;; Copyright © 2026 Peter Polidoro <peter@polidoro.io>
|
|
||||||
;;; Copyright © 2026 Josep Bigorra <jjbigorra@gmail.com>
|
|
||||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -128,7 +125,6 @@
|
|||||||
#:use-module (gnu packages gperf)
|
#:use-module (gnu packages gperf)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
#:use-module (gnu packages guile-xyz)
|
|
||||||
#:use-module (gnu packages icu4c)
|
#:use-module (gnu packages icu4c)
|
||||||
#:use-module (gnu packages jemalloc)
|
#:use-module (gnu packages jemalloc)
|
||||||
#:use-module (gnu packages language)
|
#:use-module (gnu packages language)
|
||||||
@@ -201,10 +197,10 @@
|
|||||||
#:use-module (guix build-system emacs)
|
#:use-module (guix build-system emacs)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system guile)
|
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system ruby)
|
#:use-module (guix build-system ruby)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
@@ -1060,31 +1056,6 @@ auto-completion and syntax highlighting.")
|
|||||||
\"special\", or \"backslash commands\") on PostgreSQL.")
|
\"special\", or \"backslash commands\") on PostgreSQL.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public python-sqlite-anyio
|
|
||||||
(package
|
|
||||||
(name "python-sqlite-anyio")
|
|
||||||
(version "0.2.8")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/davidbrochart/sqlite-anyio")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "075fnrrwzn9xc2clkcsyfycjc870khcwnpdg4g726qwl44pfzy2a"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:build-backend "poetry.core.masonry.api")) ;XXX: python-uv-build is required
|
|
||||||
(propagated-inputs (list python-anyio python-typing-extensions))
|
|
||||||
(native-inputs (list python-poetry-core python-pytest))
|
|
||||||
(home-page "https://github.com/davidbrochart/sqlite-anyio")
|
|
||||||
(synopsis "Asynchronous client for SQLite using AnyIO")
|
|
||||||
(description "This package provides an asynchronous client for SQLite
|
|
||||||
using @code{AnyIO}.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public python-sqlitedict
|
(define-public python-sqlitedict
|
||||||
(package
|
(package
|
||||||
(name "python-sqlitedict")
|
(name "python-sqlitedict")
|
||||||
@@ -1190,70 +1161,73 @@ auto-completion and syntax highlighting.")
|
|||||||
(name "mysql")
|
(name "mysql")
|
||||||
(version "5.7.33")
|
(version "5.7.33")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (list (string-append
|
(uri (list (string-append
|
||||||
"https://dev.mysql.com/get/Downloads/MySQL-"
|
"https://dev.mysql.com/get/Downloads/MySQL-"
|
||||||
(version-major+minor version) "/"
|
(version-major+minor version) "/"
|
||||||
name "-" version ".tar.gz")
|
name "-" version ".tar.gz")
|
||||||
(string-append
|
(string-append
|
||||||
"https://downloads.mysql.com/archives/get/file/"
|
"https://downloads.mysql.com/archives/get/file/"
|
||||||
name "-" version ".tar.gz")))
|
name "-" version ".tar.gz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1bb343mf7n0qg2qz497gxjsqprygrjz1q1pbz76hgqxnsy08sfxd"))))
|
"1bb343mf7n0qg2qz497gxjsqprygrjz1q1pbz76hgqxnsy08sfxd"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
`(#:configure-flags
|
||||||
#:configure-flags
|
'("-DBUILD_CONFIG=mysql_release"
|
||||||
#~(list "-DBUILD_CONFIG=mysql_release"
|
"-DWITH_SSL=system"
|
||||||
"-DWITH_SSL=system"
|
"-DWITH_ZLIB=system"
|
||||||
"-DWITH_ZLIB=system"
|
"-DDEFAULT_CHARSET=utf8"
|
||||||
"-DDEFAULT_CHARSET=utf8"
|
"-DDEFAULT_COLLATION=utf8_general_ci"
|
||||||
"-DDEFAULT_COLLATION=utf8_general_ci"
|
"-DMYSQL_DATADIR=/var/lib/mysql"
|
||||||
"-DMYSQL_DATADIR=/var/lib/mysql"
|
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
|
||||||
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
|
"-DINSTALL_INFODIR=share/mysql/docs"
|
||||||
"-DINSTALL_INFODIR=share/mysql/docs"
|
"-DINSTALL_MANDIR=share/man"
|
||||||
"-DINSTALL_MANDIR=share/man"
|
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
|
||||||
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
|
"-DINSTALL_SCRIPTDIR=bin"
|
||||||
"-DINSTALL_SCRIPTDIR=bin"
|
"-DINSTALL_INCLUDEDIR=include/mysql"
|
||||||
"-DINSTALL_INCLUDEDIR=include/mysql"
|
"-DINSTALL_DOCREADMEDIR=share/mysql/docs"
|
||||||
"-DINSTALL_DOCREADMEDIR=share/mysql/docs"
|
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
|
||||||
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
|
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
|
||||||
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
|
"-DINSTALL_DOCDIR=share/mysql/docs"
|
||||||
"-DINSTALL_DOCDIR=share/mysql/docs"
|
"-DINSTALL_SHAREDIR=share/mysql"
|
||||||
"-DINSTALL_SHAREDIR=share/mysql"
|
;; Get rid of test data.
|
||||||
;; Get rid of test data.
|
"-DINSTALL_MYSQLTESTDIR="
|
||||||
"-DINSTALL_MYSQLTESTDIR="
|
"-DINSTALL_SQLBENCHDIR=")
|
||||||
"-DINSTALL_SQLBENCHDIR=")
|
#:phases (modify-phases %standard-phases
|
||||||
#:phases
|
(add-after
|
||||||
#~(modify-phases %standard-phases
|
'install 'remove-extra-binaries
|
||||||
(add-after 'install 'remove-extra-binaries
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(lambda _
|
(let ((out (assoc-ref outputs "out")))
|
||||||
;; Remove the 3 *_embedded files, which weigh in at
|
;; Remove the 3 *_embedded files, which weigh in at
|
||||||
;; 14 MiB each.
|
;; 14 MiB each.
|
||||||
(for-each delete-file
|
(for-each delete-file
|
||||||
(find-files (string-append #$output "/bin")
|
(find-files (string-append out "/bin")
|
||||||
"_embedded$"))))
|
"_embedded$"))
|
||||||
(add-after 'install 'wrap-mysql_helpers
|
#t)))
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(add-after
|
||||||
(let ((bin (string-append #$output "/bin"))
|
'install 'wrap-mysql_helpers
|
||||||
(gawk (search-input-file inputs "bin/gawk"))
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(coreutils (search-input-file inputs "bin/ls"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(grep (search-input-file inputs "bin/grep"))
|
(bin (string-append out "/bin"))
|
||||||
(ps (search-input-file inputs "bin/ps"))
|
(awk (assoc-ref inputs "gawk"))
|
||||||
(sed (search-input-file inputs "bin/sed")))
|
(coreutils (assoc-ref inputs "coreutils"))
|
||||||
(wrap-program (search-input-file outputs "bin/mysql_config")
|
(grep (assoc-ref inputs "grep"))
|
||||||
`("PATH" suffix
|
(ps (assoc-ref inputs "procps"))
|
||||||
,(list (dirname gawk)
|
(sed (assoc-ref inputs "sed")))
|
||||||
(dirname coreutils)
|
(wrap-program (string-append bin "/mysql_config")
|
||||||
(dirname sed))))
|
`("PATH" ":" suffix
|
||||||
(wrap-program (search-input-file outputs "bin/mysqld_safe")
|
(,(string-append awk "/bin")
|
||||||
`("PATH" suffix
|
,(string-append coreutils "/bin")
|
||||||
,(list (dirname gawk)
|
,(string-append sed "/bin"))))
|
||||||
(dirname coreutils)
|
(wrap-program (string-append bin "/mysqld_safe")
|
||||||
(dirname grep)
|
`("PATH" ":" suffix
|
||||||
(dirname ps)
|
(,(string-append awk "/bin")
|
||||||
(dirname sed))))))))))
|
,(string-append coreutils "/bin")
|
||||||
|
,(string-append grep "/bin")
|
||||||
|
,(string-append ps "/bin")
|
||||||
|
,(string-append sed "/bin"))))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison perl pkg-config))
|
(list bison perl pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
@@ -1267,7 +1241,7 @@ auto-completion and syntax highlighting.")
|
|||||||
ncurses
|
ncurses
|
||||||
openssl-1.1
|
openssl-1.1
|
||||||
procps
|
procps
|
||||||
rpcsvc-proto ; rpcgen
|
rpcsvc-proto ; rpcgen
|
||||||
sed
|
sed
|
||||||
zlib))
|
zlib))
|
||||||
(home-page "https://www.mysql.com/")
|
(home-page "https://www.mysql.com/")
|
||||||
@@ -1278,98 +1252,6 @@ management system that supports the standardized Structured Query
|
|||||||
Language.")
|
Language.")
|
||||||
(license license:gpl2)))
|
(license license:gpl2)))
|
||||||
|
|
||||||
(define-public mysql-connector-python
|
|
||||||
(package
|
|
||||||
(name "mysql-connector-python")
|
|
||||||
(version "8.3.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/mysql/mysql-connector-python")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "18jvpnnwmfrn961rvqmsygp7dw3spf3swhxhal4hhj5hqddckj5f"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
;; tests: 1371 passed
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'compatibility
|
|
||||||
(lambda _
|
|
||||||
(substitute* "src/mysql_capi.c"
|
|
||||||
(("res = mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
|
|
||||||
"res = 0;")
|
|
||||||
(("mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
|
|
||||||
"")
|
|
||||||
(("mysql_options\\(&self->session, MYSQL_OPT_TLS_CIPHERSUITES.*")
|
|
||||||
"")
|
|
||||||
;; The C API does not have mysql_bind_param, so we produce an
|
|
||||||
;; error here.
|
|
||||||
(("status = mysql_bind_param.*") "status = 1;")
|
|
||||||
(("#include \"mysql_capi_conversion\\.h\"" all)
|
|
||||||
(string-append all "\n" "#include <stdbool.h>")))))
|
|
||||||
(add-after 'unpack 'chdir
|
|
||||||
(lambda _
|
|
||||||
(chdir "mysql-connector-python")))
|
|
||||||
(add-before 'build 'prepare-build
|
|
||||||
(lambda _
|
|
||||||
(setenv "MYSQL_CAPI" #$(this-package-input "mysql"))))
|
|
||||||
(replace 'check
|
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
|
||||||
(when tests?
|
|
||||||
;; Some of these tests might be failing due to the build
|
|
||||||
;; container's restrictions, others are due to the version
|
|
||||||
;; mismatch.
|
|
||||||
(substitute* "tests/cext/test_cext_api.py"
|
|
||||||
(("def test_change_user") "def _do_not_test_change_user")
|
|
||||||
(("def test_get_character_set_info")
|
|
||||||
"def _do_not_test_get_character_set_info"))
|
|
||||||
(substitute* "tests/test_bugs.py"
|
|
||||||
(("def test_change_user") "def _do_not_test_change_user")
|
|
||||||
(("def test_lost_connection") "def _do_not_test_lost_connection")
|
|
||||||
(("def test_kill_query") "def _do_not_test_kill_query")
|
|
||||||
;; These all fail because of expired certificates.
|
|
||||||
(("def test_cext_verify_server_certificate")
|
|
||||||
"def _do_not_test_cext_verify_server_certificate")
|
|
||||||
(("def test_pure_verify_server_certificate")
|
|
||||||
"def _do_not_test_pure_verify_server_certificate")
|
|
||||||
(("def test_verify_server_name_cext_cnx")
|
|
||||||
"def _do_not_test_verify_server_name_cext_cnx")
|
|
||||||
(("def test_verify_server_name_pure_cnx")
|
|
||||||
"def _do_not_test_verify_server_name_pure_cnx"))
|
|
||||||
(substitute* '("tests/test_connection.py"
|
|
||||||
"tests/test_aio_connection.py")
|
|
||||||
(("def test_allow_local_infile_in_path")
|
|
||||||
"def _do_not_test_allow_local_infile_in_path")
|
|
||||||
;; This fails because of expired certificates.
|
|
||||||
(("def test_connect_with_unix_socket")
|
|
||||||
"def _do_not_test_connect_with_unix_socket"))
|
|
||||||
(substitute* "tests/test_constants.py"
|
|
||||||
(("def test_deprecated")
|
|
||||||
"def _do_not_test_deprecated"))
|
|
||||||
(mkdir-p "/tmp/datadir")
|
|
||||||
(invoke "python3" "unittests.py"
|
|
||||||
"--verbosity=3"
|
|
||||||
(string-append "--with-mysql=" #$(this-package-input "mysql"))
|
|
||||||
"--keep"
|
|
||||||
"--mysql-topdir=/tmp/datadir"
|
|
||||||
"--unix-socket=/tmp/datadir")))))))
|
|
||||||
(propagated-inputs (list python-protobuf))
|
|
||||||
(inputs (list mysql protobuf-3.20 openssl-1.1 zlib))
|
|
||||||
(native-inputs (list python-setuptools))
|
|
||||||
(home-page "https://dev.mysql.com/doc/connector-python/en/index.html")
|
|
||||||
(synopsis "MySQL driver written in Python")
|
|
||||||
(description "MySQL Connector/Python enables Python programs to access
|
|
||||||
MySQL databases, using an API that is compliant with the Python Database API
|
|
||||||
Specification v2.0 (PEP 249).")
|
|
||||||
(license license:gpl2)))
|
|
||||||
|
|
||||||
(define-deprecated-package python-mysql-connector-python
|
|
||||||
mysql-connector-python)
|
|
||||||
|
|
||||||
(define-public mariadb
|
(define-public mariadb
|
||||||
(package
|
(package
|
||||||
(name "mariadb")
|
(name "mariadb")
|
||||||
@@ -3214,64 +3096,6 @@ Driver.")
|
|||||||
;; COPYING contains copy of lgpl2.1 - but copyright notices just say "LGPL"
|
;; COPYING contains copy of lgpl2.1 - but copyright notices just say "LGPL"
|
||||||
(home-page "https://www.unixodbc.org")))
|
(home-page "https://www.unixodbc.org")))
|
||||||
|
|
||||||
(define-public sqliteodbc
|
|
||||||
(package
|
|
||||||
(name "sqliteodbc")
|
|
||||||
(version "0.99991")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "http://www.ch-werner.de/sqliteodbc/"
|
|
||||||
name "-" version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0p4avhqxnd2l49g3vpzwrmdi8wxyqzy0vswalaagmqfdsfwav52d"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ; no check target
|
|
||||||
#:configure-flags
|
|
||||||
#~(list "--disable-static"
|
|
||||||
(string-append "--with-sqlite3=" #$(this-package-input "sqlite"))
|
|
||||||
(string-append "--with-odbc=" #$(this-package-input "unixodbc")))
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-before 'install 'create-lib-directory
|
|
||||||
(lambda _
|
|
||||||
(mkdir-p (string-append #$output "/lib"))))
|
|
||||||
(add-after 'install 'remove-extra-sqlite-extensions
|
|
||||||
(lambda _
|
|
||||||
;; Keep this package focused on the ODBC driver itself.
|
|
||||||
(for-each delete-file
|
|
||||||
(find-files (string-append #$output "/lib")
|
|
||||||
"^libsqlite3_mod_.*\\.(la|so)$"))))
|
|
||||||
(add-after 'install 'install-odbcinst.ini
|
|
||||||
(lambda _
|
|
||||||
(let ((dir (string-append #$output "/share/sqliteodbc")))
|
|
||||||
(mkdir-p dir)
|
|
||||||
(call-with-output-file (string-append dir "/odbcinst.ini")
|
|
||||||
(lambda (port)
|
|
||||||
(display
|
|
||||||
(string-append
|
|
||||||
"[SQLite3]\n"
|
|
||||||
"Description = SQLite3 ODBC Driver\n"
|
|
||||||
"Driver = " #$output "/lib/libsqlite3odbc.so\n"
|
|
||||||
"Setup = " #$output "/lib/libsqlite3odbc.so\n"
|
|
||||||
"Threading = 2\n")
|
|
||||||
port)))))))))
|
|
||||||
(native-search-paths
|
|
||||||
(list (search-path-specification
|
|
||||||
(variable "ODBCSYSINI")
|
|
||||||
(files '("share/sqliteodbc"))
|
|
||||||
(separator #f))))
|
|
||||||
(inputs (list sqlite unixodbc))
|
|
||||||
(home-page "http://www.ch-werner.de/sqliteodbc/")
|
|
||||||
(synopsis "ODBC driver for SQLite")
|
|
||||||
(description
|
|
||||||
"SQLiteODBC provides an ODBC driver for SQLite 3 databases. It installs
|
|
||||||
the shared library and a driver registration file so applications using
|
|
||||||
unixODBC can resolve the @code{SQLite3} driver name from a Guix profile.")
|
|
||||||
(license license:tcl/tk)))
|
|
||||||
|
|
||||||
(define-public nanodbc
|
(define-public nanodbc
|
||||||
(package
|
(package
|
||||||
(name "nanodbc")
|
(name "nanodbc")
|
||||||
@@ -4273,8 +4097,8 @@ programmatically or as a standalone CLI application.")
|
|||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
(list openssl
|
`(("libcrypto" ,openssl)
|
||||||
tcl)) ;for tests
|
("libtcl8.6" ,tcl))) ; required for running the tests
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list tcl))
|
(list tcl))
|
||||||
(arguments
|
(arguments
|
||||||
@@ -4829,24 +4653,33 @@ PickleShare.")
|
|||||||
(define-public python-apsw
|
(define-public python-apsw
|
||||||
(package
|
(package
|
||||||
(name "python-apsw")
|
(name "python-apsw")
|
||||||
(version "3.50.4.0")
|
(version "3.46.0.0")
|
||||||
|
;; The compressed release has fetching functionality disabled.
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method url-fetch)
|
||||||
(uri (git-reference
|
(uri (string-append
|
||||||
(url "https://github.com/rogerbinns/apsw")
|
"https://github.com/rogerbinns/apsw/releases/download/"
|
||||||
(commit version)))
|
version "/apsw-" version ".zip"))
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0r9awjgpl9cmqz5xd4zbqrpiv0rv5c36a18jkqnsfky6n6sgr424"))))
|
(base32
|
||||||
|
"10yfbasi4mq63g0svyl1h49ylwn9znjylq78id16dzxzk9q9ipdx"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
|
||||||
(list #:test-backend #~'custom
|
|
||||||
#:test-flags #~(list "-m" "apsw.tests")))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-setuptools))
|
(list unzip python-setuptools python-wheel))
|
||||||
(inputs
|
(inputs (list sqlite-next)) ;SQLite 3.45.1 required.
|
||||||
(list sqlite-next)) ;SQLite 3.45.1 required.
|
(arguments
|
||||||
|
(list
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-before 'build 'build-extensions
|
||||||
|
(lambda _
|
||||||
|
(invoke "python" "setup.py" "build" "--enable-all-extensions"
|
||||||
|
"--enable=load_extension")))
|
||||||
|
(add-after 'build 'build-test-helper
|
||||||
|
(lambda _
|
||||||
|
(invoke "gcc" "-fPIC" "-shared" "-o" "./testextension.sqlext"
|
||||||
|
"-I." "-Isqlite3" "src/testextension.c"))))))
|
||||||
(home-page "https://github.com/rogerbinns/apsw/")
|
(home-page "https://github.com/rogerbinns/apsw/")
|
||||||
(synopsis "Another Python SQLite Wrapper")
|
(synopsis "Another Python SQLite Wrapper")
|
||||||
(description
|
(description
|
||||||
@@ -5154,54 +4987,6 @@ postgresql = postgresql://nixbld@/yoyo_test~%")))
|
|||||||
files or Python scripts that define a list of migration steps.")
|
files or Python scripts that define a list of migration steps.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public mutastructura
|
|
||||||
(package
|
|
||||||
(name "mutastructura")
|
|
||||||
(version "0.6.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://codeberg.org/jjba23/mutastructura")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "08vzlc5imavqf3bdzgbh70c7z44xjhf05gr7i2g5ksl49lv39gzh"))))
|
|
||||||
(build-system guile-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:source-directory "src"
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-before 'build 'install-program-files
|
|
||||||
(lambda _
|
|
||||||
(let* ((bin (string-append #$output "/bin"))
|
|
||||||
(share (string-append #$output "/share")))
|
|
||||||
(copy-recursively "resources"
|
|
||||||
(string-append share "/resources"))
|
|
||||||
(install-file "scripts/mutastructura" bin)
|
|
||||||
(install-file "scripts/log.bash"
|
|
||||||
(string-append share "/scripts/"))
|
|
||||||
(chmod (string-append bin "/mutastructura") #o755)))))))
|
|
||||||
(native-inputs (list guile-3.0))
|
|
||||||
(propagated-inputs (list guile-dbi
|
|
||||||
guile-dbd-mysql
|
|
||||||
guile-dbd-sqlite3
|
|
||||||
guile-dbd-postgresql
|
|
||||||
guile-gcrypt))
|
|
||||||
(inputs (list guile-3.0 bash-minimal))
|
|
||||||
(home-page "https://codeberg.org/jjba23/mutastructura")
|
|
||||||
(synopsis "Relational database schema migrations powered by Guile Scheme")
|
|
||||||
(description
|
|
||||||
"Mutastructura provides a familiar, declarative and transactional
|
|
||||||
approach to managing database states. It exposes a user-friendly
|
|
||||||
@acronym{CLI, command-line interface} and has support for PostgreSQL, MySQL, and SQLite.
|
|
||||||
It also exposes library functions and can be imported and used directly from other Guile code.
|
|
||||||
|
|
||||||
Features include executing migrations transactionally and computing SHA256
|
|
||||||
checksums to track schema evolution in a @code{migrations_history} table.")
|
|
||||||
(license license:agpl3+)))
|
|
||||||
|
|
||||||
(define-public python-mysqlclient
|
(define-public python-mysqlclient
|
||||||
(package
|
(package
|
||||||
(name "python-mysqlclient")
|
(name "python-mysqlclient")
|
||||||
@@ -5645,7 +5430,7 @@ with integrated support for finding required rows quickly.")
|
|||||||
(define-public apache-arrow
|
(define-public apache-arrow
|
||||||
(package
|
(package
|
||||||
(name "apache-arrow")
|
(name "apache-arrow")
|
||||||
(version "24.0.0")
|
(version "23.0.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -5655,7 +5440,7 @@ with integrated support for finding required rows quickly.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1j3gs5ffa9gx2y2nggmi2zn5rj0bsnjnxrzfnipx6050jz6n8dx9"))))
|
"1qn7wgavi3kiz4d6w1naqj5631bg87fnj6gbhaxmpmynm5hi9wm7"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -5824,7 +5609,6 @@ __version_tuple__ = version_tuple = (~a)~%" version version-tuple))))))
|
|||||||
python-cython
|
python-cython
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-runner
|
python-pytest-runner
|
||||||
python-scikit-build-core
|
|
||||||
python-setuptools-scm
|
python-setuptools-scm
|
||||||
python-setuptools))
|
python-setuptools))
|
||||||
(outputs '("out"))
|
(outputs '("out"))
|
||||||
@@ -6421,7 +6205,7 @@ mechanism of @code{dogpile}.")
|
|||||||
(define-public datasette
|
(define-public datasette
|
||||||
(package
|
(package
|
||||||
(name "datasette")
|
(name "datasette")
|
||||||
(version "1.0a26")
|
(version "1.0a19")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -6430,20 +6214,23 @@ mechanism of @code{dogpile}.")
|
|||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1ra0yfrz9w3jx7ix3dmcsg0g8hjxkz37586g7ijmqshxpzczxfm7"))))
|
(base32 "0wb73iksrc5vg2lnq3q4vr7yhlzxwr711jfmjdndd0s77996zsfh"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
;; tests: 1720 passed, 9 skipped, 8 xfailed, 13 xpassed, 3 warnings, 120
|
|
||||||
;; subtests passed
|
|
||||||
#:test-flags
|
#:test-flags
|
||||||
#~(list "--numprocesses" (number->string (min 8 (parallel-job-count)))
|
;; See https://github.com/simonw/datasette/issues/2048
|
||||||
"--ignore=tests/test_black.py")
|
#~(list "-k" (string-append
|
||||||
|
;; These contain two unexpected extra items.
|
||||||
|
"not test_searchable"
|
||||||
|
" and not test_searchmode")
|
||||||
|
"--ignore=tests/test_black.py"
|
||||||
|
"-n" (number->string (parallel-job-count)))
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'relax-requirements
|
(add-after 'unpack 'relax-requirements
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "pyproject.toml"
|
(substitute* "setup.py"
|
||||||
(("\"pip\",") "")))))))
|
(("\"pip\",") "")))))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list python-aiofiles
|
(list python-aiofiles
|
||||||
@@ -6458,6 +6245,7 @@ mechanism of @code{dogpile}.")
|
|||||||
python-janus
|
python-janus
|
||||||
python-jinja2
|
python-jinja2
|
||||||
python-mergedeep
|
python-mergedeep
|
||||||
|
python-pint
|
||||||
python-pluggy
|
python-pluggy
|
||||||
python-pyyaml
|
python-pyyaml
|
||||||
python-sqlite-utils
|
python-sqlite-utils
|
||||||
@@ -6466,9 +6254,9 @@ mechanism of @code{dogpile}.")
|
|||||||
(list nss-certs-for-test
|
(list nss-certs-for-test
|
||||||
python-beautifulsoup4
|
python-beautifulsoup4
|
||||||
python-cogapp
|
python-cogapp
|
||||||
python-multipart-form-data-conformance
|
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-asyncio
|
python-pytest-asyncio-0.26
|
||||||
|
python-pytest-runner
|
||||||
python-pytest-timeout
|
python-pytest-timeout
|
||||||
python-pytest-xdist
|
python-pytest-xdist
|
||||||
python-setuptools
|
python-setuptools
|
||||||
|
|||||||
@@ -1,113 +0,0 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
|
||||||
;;; Copyright © 2026 Arun Isaac <arunisaac@systemreboot.net>
|
|
||||||
;;;
|
|
||||||
;;; This file is part of GNU Guix.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
||||||
;;; under the terms of the GNU General Public License as published by
|
|
||||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
||||||
;;; your option) any later version.
|
|
||||||
;;;
|
|
||||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
||||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
;;; GNU General Public License for more details.
|
|
||||||
;;;
|
|
||||||
;;; You should have received a copy of the GNU General Public License
|
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
(define-module (gnu packages datalog)
|
|
||||||
#:use-module (gnu packages bison)
|
|
||||||
#:use-module (gnu packages compression)
|
|
||||||
#:use-module (gnu packages cpp)
|
|
||||||
#:use-module (gnu packages flex)
|
|
||||||
#:use-module (gnu packages libffi)
|
|
||||||
#:use-module (gnu packages ncurses)
|
|
||||||
#:use-module (gnu packages python)
|
|
||||||
#:use-module (gnu packages sqlite)
|
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix packages))
|
|
||||||
|
|
||||||
(define-public souffle
|
|
||||||
(package
|
|
||||||
(name "souffle")
|
|
||||||
(version "2.5")
|
|
||||||
(source (origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/souffle-lang/souffle")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1lrw69g02b17vxxz4g7cj8hbmc39wlzl80vl5fwy40a6b9pxwrsj"))
|
|
||||||
(snippet
|
|
||||||
#~(begin
|
|
||||||
;; Delete bundled dependencies. souffle also uses a forked
|
|
||||||
;; and modified version of json11. We cannot unbundle
|
|
||||||
;; that.
|
|
||||||
(for-each delete-file
|
|
||||||
(list "licenses/TCBRINDLE SPAN.txt"
|
|
||||||
"licenses/TINYFORMAT.txt"
|
|
||||||
"src/include/souffle/utility/span.h"
|
|
||||||
"src/include/souffle/utility/tinyformat.h"))))))
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:configure-flags #~(list "-DSOUFFLE_GIT=OFF"
|
|
||||||
(string-append "-DPACKAGE_VERSION="
|
|
||||||
#$version))
|
|
||||||
;; We disable these tests since they fail with gcc 14. This issue
|
|
||||||
;; has been reported upstream:
|
|
||||||
;; https://github.com/souffle-lang/souffle/issues/2576
|
|
||||||
#:test-exclude (string-join
|
|
||||||
(list "syntactic/cpp_keywords_run_souffle"
|
|
||||||
"syntactic/cpp_keywords_c_run_souffle"
|
|
||||||
"syntactic/cpp_keywords_compare_std_outputs"
|
|
||||||
"syntactic/cpp_keywords_compare_csv"
|
|
||||||
"syntactic/cpp_keywords_c_compare_std_outputs"
|
|
||||||
"syntactic/cpp_keywords_c_compare_csv")
|
|
||||||
"|")
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'replace-bundled-libraries
|
|
||||||
(lambda _
|
|
||||||
;; Patch souffle to use tinyformat from Guix.
|
|
||||||
(substitute* (find-files "src" "\\.(cpp|h)$")
|
|
||||||
(("#include \"souffle/utility/tinyformat.h\"")
|
|
||||||
"#include <tinyformat.h>"))
|
|
||||||
;; Replace span.h with a header that uses span from Guix
|
|
||||||
;; and provides the same namespace.
|
|
||||||
(call-with-output-file "src/include/souffle/utility/span.h"
|
|
||||||
(lambda (port)
|
|
||||||
(display "#pragma once
|
|
||||||
#include <span.hpp>
|
|
||||||
namespace souffle {
|
|
||||||
using tcb::span;
|
|
||||||
}
|
|
||||||
"
|
|
||||||
port))))))))
|
|
||||||
(inputs
|
|
||||||
(list libffi
|
|
||||||
ncurses
|
|
||||||
python
|
|
||||||
span
|
|
||||||
sqlite
|
|
||||||
zlib))
|
|
||||||
(native-inputs
|
|
||||||
(list bison
|
|
||||||
flex
|
|
||||||
tinyformat))
|
|
||||||
(home-page "https://souffle-lang.github.io/")
|
|
||||||
(synopsis "Datalog variant")
|
|
||||||
(description "Soufflé is a variant of Datalog for tool designers crafting
|
|
||||||
analyses in Horn clauses. Soufflé synthesizes a native parallel C++ program
|
|
||||||
from a logic specification. The Soufflé language is similar to Datalog (but
|
|
||||||
has terms known as records), and is frequently used as a domain-specific
|
|
||||||
language for analysis problems.")
|
|
||||||
(license (list license:upl ; main license
|
|
||||||
;; src/include/souffle/profile/htmlJsChartistPlugin.h
|
|
||||||
;; src/include/souffle/utility/json11.h
|
|
||||||
license:expat))))
|
|
||||||
@@ -27,6 +27,7 @@
|
|||||||
(define-module (gnu packages dav)
|
(define-module (gnu packages dav)
|
||||||
#:use-module (guix build-system cargo)
|
#:use-module (guix build-system cargo)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
@@ -142,6 +143,9 @@ CardDAV server with a local folder or file.")
|
|||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest
|
(list python-pytest
|
||||||
|
python-pytest-cov
|
||||||
|
python-pytest-flake8
|
||||||
|
python-pytest-isort
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-waitress
|
python-waitress
|
||||||
python-wheel))
|
python-wheel))
|
||||||
@@ -240,6 +244,7 @@ efficient syncing
|
|||||||
(list python-aioresponses
|
(list python-aioresponses
|
||||||
python-pytest
|
python-pytest
|
||||||
python-pytest-asyncio
|
python-pytest-asyncio
|
||||||
|
python-pytest-cov
|
||||||
python-pytest-httpserver
|
python-pytest-httpserver
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-setuptools-scm
|
python-setuptools-scm
|
||||||
|
|||||||
+12
-12
@@ -20,6 +20,18 @@
|
|||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages debian)
|
(define-module (gnu packages debian)
|
||||||
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix utils)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system copy)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system perl)
|
||||||
|
#:use-module (guix build-system trivial)
|
||||||
|
#:use-module (gnu packages adns)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages backup)
|
#:use-module (gnu packages backup)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
@@ -28,7 +40,6 @@
|
|||||||
#:use-module (gnu packages crypto)
|
#:use-module (gnu packages crypto)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
#:use-module (gnu packages dbm)
|
#:use-module (gnu packages dbm)
|
||||||
#:use-module (gnu packages dns)
|
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
@@ -42,17 +53,6 @@
|
|||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages wget)
|
#:use-module (gnu packages wget)
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix build-system copy)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system perl)
|
|
||||||
#:use-module (guix build-system trivial)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module (guix utils)
|
|
||||||
#:use-module (srfi srfi-1)
|
#:use-module (srfi srfi-1)
|
||||||
#:use-module (srfi srfi-26))
|
#:use-module (srfi srfi-26))
|
||||||
|
|
||||||
|
|||||||
+50
-66
@@ -77,6 +77,7 @@
|
|||||||
#:use-module (gnu packages mail)
|
#:use-module (gnu packages mail)
|
||||||
#:use-module (gnu packages multiprecision)
|
#:use-module (gnu packages multiprecision)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages pretty-print)
|
#:use-module (gnu packages pretty-print)
|
||||||
@@ -262,7 +263,7 @@ simple way to add custom protocol messages.")
|
|||||||
(define-public c-vise
|
(define-public c-vise
|
||||||
(package
|
(package
|
||||||
(name "c-vise")
|
(name "c-vise")
|
||||||
(version "2.8.0")
|
(version "2.4.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -270,53 +271,37 @@ simple way to add custom protocol messages.")
|
|||||||
(url "https://github.com/marxin/cvise")
|
(url "https://github.com/marxin/cvise")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1ynhm1d56r25apgvv0wqbdrhjbwigkwrgw92g2czz4nfx77rjxz2"))
|
(base32 "1i2z5q2pcwh1gpdqc24x1a2q5vzwhblzzq021nzwf304di7m18vl"))
|
||||||
(file-name (git-file-name name version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'fix-linkage
|
|
||||||
(lambda _
|
|
||||||
(substitute* "clang_delta/CMakeLists.txt"
|
|
||||||
(("\\$\\{LLVM_LINK_LLVM_DYLIB\\}")
|
|
||||||
"True")
|
|
||||||
((" LLVM")
|
|
||||||
" LLVMSupport"))))
|
|
||||||
(add-before 'build 'hardcode-paths
|
|
||||||
(lambda _
|
|
||||||
(substitute* "cvise.py"
|
|
||||||
(("/bin/bash")
|
|
||||||
(which "bash"))
|
|
||||||
(("(.*)# Special case for clang-format" all blank)
|
|
||||||
(format #f "~a# Special case for unifdef
|
|
||||||
~aprograms['unifdef'] = ~s
|
|
||||||
~a"
|
|
||||||
blank blank (which "unifdef") all)))))
|
|
||||||
(add-after 'install 'wrap
|
|
||||||
(lambda _
|
|
||||||
(let ((python-path (getenv "GUIX_PYTHONPATH")))
|
|
||||||
(wrap-program (string-append #$output "/bin/cvise")
|
|
||||||
`("PYTHONPATH" ":" prefix
|
|
||||||
(,(string-join
|
|
||||||
(filter (lambda (cand)
|
|
||||||
(not (string-contains cand "pytest")))
|
|
||||||
(string-split python-path #\:))
|
|
||||||
":"))))))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list flex
|
(list flex python-pytest python-pytest-flake8))
|
||||||
python-pytest
|
|
||||||
python-pytest-flake8))
|
|
||||||
(inputs
|
(inputs
|
||||||
(list bash-minimal
|
(list bash-minimal clang llvm unifdef
|
||||||
clang
|
python python-pebble python-psutil python-chardet))
|
||||||
llvm
|
(arguments
|
||||||
unifdef
|
`(#:phases
|
||||||
python
|
(modify-phases %standard-phases
|
||||||
python-pebble
|
(add-after 'unpack 'fix-linkage
|
||||||
python-psutil
|
(lambda _
|
||||||
python-chardet))
|
(substitute* "clang_delta/CMakeLists.txt"
|
||||||
|
(("\\$\\{LLVM_LINK_LLVM_DYLIB\\}") "True")
|
||||||
|
((" LLVM") " LLVMSupport"))))
|
||||||
|
(add-before 'build 'hardcode-paths
|
||||||
|
(lambda _
|
||||||
|
(substitute* "cvise.py"
|
||||||
|
(("/bin/bash") (which "bash"))
|
||||||
|
(("(.*)# Special case for clang-format" & >)
|
||||||
|
(string-append > "# Special case for unifdef\n"
|
||||||
|
> "programs['unifdef'] = '" (which "unifdef") "'\n"
|
||||||
|
&)))))
|
||||||
|
(add-after 'install 'wrap
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
(python-path (getenv "GUIX_PYTHONPATH")))
|
||||||
|
(wrap-program (string-append out "/bin/cvise")
|
||||||
|
`("PYTHONPATH" ":" prefix (,python-path)))
|
||||||
|
#t))))))
|
||||||
(home-page "https://github.com/marxin/cvise")
|
(home-page "https://github.com/marxin/cvise")
|
||||||
(synopsis "Reducer for interesting code")
|
(synopsis "Reducer for interesting code")
|
||||||
(description
|
(description
|
||||||
@@ -993,27 +978,26 @@ engineering.")
|
|||||||
(define-public seer-gdb
|
(define-public seer-gdb
|
||||||
(package
|
(package
|
||||||
(name "seer-gdb")
|
(name "seer-gdb")
|
||||||
(version "2.7")
|
(version "1.16")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method git-fetch)
|
||||||
(method git-fetch)
|
(uri (git-reference
|
||||||
(uri (git-reference
|
(url "https://github.com/epasveer/seer.git")
|
||||||
(url "https://github.com/epasveer/seer")
|
(commit (string-append "v" version))))
|
||||||
(commit (string-append "v" version))))
|
(file-name (string-append name "-" version "-checkout"))
|
||||||
(file-name (git-file-name name version))
|
(sha256
|
||||||
(sha256
|
(base32
|
||||||
(base32 "1szfqybqr5z982vian4f0hpsagiqapzys3axwibyjyg5whjswva1"))))
|
"0jdvyg2jab1pvf36pvkyrfsg2wyy8zp1qx0v2ksclgrnr1hja6k6"))))
|
||||||
(build-system qt-build-system)
|
(build-system qt-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
`(#:tests? #f ; Those are strangely manual
|
||||||
#:tests? #f ;tests are strangely manual
|
#:phases
|
||||||
#:phases
|
(modify-phases %standard-phases
|
||||||
#~(modify-phases %standard-phases
|
(add-after 'unpack 'chdir
|
||||||
(add-after 'unpack 'chdir
|
(lambda _
|
||||||
(lambda _
|
(chdir "src"))))))
|
||||||
(chdir "src"))))))
|
|
||||||
(inputs
|
(inputs
|
||||||
(list gdb qtbase qtcharts qtsvg qtwayland))
|
(list qtbase-5 qtcharts-5 qtwayland-5))
|
||||||
(synopsis "GUI frontend for GDB")
|
(synopsis "GUI frontend for GDB")
|
||||||
(description "This package provides a frontend to GDB, the GNU debugger.")
|
(description "This package provides a frontend to GDB, the GNU debugger.")
|
||||||
(home-page "https://github.com/epasveer/seer")
|
(home-page "https://github.com/epasveer/seer")
|
||||||
@@ -1053,7 +1037,7 @@ to aid in debugging.")
|
|||||||
(define-public delve
|
(define-public delve
|
||||||
(package
|
(package
|
||||||
(name "delve")
|
(name "delve")
|
||||||
(version "1.26.3")
|
(version "1.25.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
@@ -1063,7 +1047,7 @@ to aid in debugging.")
|
|||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0mf363l7md4193cgrpb6hkhmsgnlnrx44q1bzw3zq0bmjrcg3fj7"))
|
"1b6vp6m4vjx4wfs1djhpizvz40s563jwld9lgjq82svaiilrmlqa"))
|
||||||
(snippet
|
(snippet
|
||||||
#~(begin (use-modules (guix build utils))
|
#~(begin (use-modules (guix build utils))
|
||||||
(delete-file-recursively "vendor")))))
|
(delete-file-recursively "vendor")))))
|
||||||
@@ -1081,7 +1065,7 @@ to aid in debugging.")
|
|||||||
(list go-github-com-cilium-ebpf
|
(list go-github-com-cilium-ebpf
|
||||||
go-github-com-cosiner-argv
|
go-github-com-cosiner-argv
|
||||||
go-github-com-creack-pty
|
go-github-com-creack-pty
|
||||||
go-github-com-derekparker-trie-v3
|
go-github-com-derekparker-trie
|
||||||
go-github-com-go-delve-liner
|
go-github-com-go-delve-liner
|
||||||
go-github-com-google-go-dap
|
go-github-com-google-go-dap
|
||||||
go-github-com-hashicorp-golang-lru
|
go-github-com-hashicorp-golang-lru
|
||||||
@@ -1229,7 +1213,7 @@ and input distributions can also be expressed in Fandango.")
|
|||||||
;; Shorten paths to sockets in tests.
|
;; Shorten paths to sockets in tests.
|
||||||
(lambda _ (setenv "TMPDIR" "/tmp"))))
|
(lambda _ (setenv "TMPDIR" "/tmp"))))
|
||||||
#:test-target "test"))
|
#:test-target "test"))
|
||||||
(native-inputs (list python python-setuptools)) ; for tests
|
(native-inputs (list python)) ; for tests
|
||||||
(synopsis "Fault injector in userspace")
|
(synopsis "Fault injector in userspace")
|
||||||
(description "Fiu provides CLI utilities and a C library
|
(description "Fiu provides CLI utilities and a C library
|
||||||
to mark points of failure inside your code
|
to mark points of failure inside your code
|
||||||
|
|||||||
@@ -41,6 +41,7 @@
|
|||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
@@ -48,7 +49,6 @@
|
|||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages build-tools)
|
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages cpp)
|
#:use-module (gnu packages cpp)
|
||||||
@@ -122,83 +122,58 @@ Carnegie Mellon University.")
|
|||||||
"https://github.com/cmusphinx/cmudict/blob/master/LICENSE"))))
|
"https://github.com/cmusphinx/cmudict/blob/master/LICENSE"))))
|
||||||
|
|
||||||
(define-public dico
|
(define-public dico
|
||||||
(let ((commit "05da4bc9e613834fdb065e38c7181044d8889575")
|
(package
|
||||||
(revision "0"))
|
(name "dico")
|
||||||
(package
|
(version "2.12")
|
||||||
(name "dico")
|
(source (origin
|
||||||
(version (git-version "2.12" revision commit))
|
(method url-fetch)
|
||||||
(source
|
(uri (string-append "mirror://gnu/dico/dico-"
|
||||||
(origin
|
version ".tar.xz"))
|
||||||
(method git-fetch)
|
(sha256
|
||||||
(uri (git-reference
|
(base32
|
||||||
(url "https://git.gnu.org.ua/dico.git")
|
"1xvahrav8aml90qcj4cj3a33y0n7nm1k0ywgks1zy2q91v2qk2vj"))))
|
||||||
(commit commit)
|
(build-system gnu-build-system)
|
||||||
(recursive? #t)))
|
(arguments
|
||||||
(file-name (git-file-name name version))
|
(list
|
||||||
(sha256
|
#:configure-flags #~(list "--disable-static")
|
||||||
(base32 "1fmr01gpvvb1p6p9ylr67nqx8ymmmkqjhsi9y5zvp2nc32cgxvah"))))
|
#:phases
|
||||||
(build-system gnu-build-system)
|
#~(modify-phases %standard-phases
|
||||||
(arguments
|
(add-before 'build 'set-shell-file-name
|
||||||
(list
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
#:configure-flags #~(list "--disable-static")
|
;; This code invokes "/bin/sh -c 'm4 -s ...'".
|
||||||
#:phases
|
(substitute* "grecs/src/grecs-lex.c"
|
||||||
#~(modify-phases %standard-phases
|
(("\"/bin/sh\"")
|
||||||
(replace 'bootstrap
|
(string-append "\""
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(search-input-file inputs "/bin/sh")
|
||||||
(substitute* "grecs/bootstrap"
|
"\"")))))
|
||||||
(("/bin/sh")
|
(add-before 'check 'silence-guile
|
||||||
(which "bash"))
|
(lambda _
|
||||||
((" GRECS_GIT_ID=.*")
|
;; Guile is too talkative, which disturbs the test
|
||||||
" GRECS_GIT_ID=v1.0-25-g51b12be\n"))
|
;; infrastructure. Gag it.
|
||||||
(invoke "perl" "./bootstrap" "--force" "--skip-po")))
|
(setenv "GUILE_AUTO_COMPILE" "0")
|
||||||
(add-before 'build 'post-configure
|
(setenv "GUILE_WARN_DEPRECATED" "no"))))))
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(native-inputs (list groff))
|
||||||
;; For some reason, this file is missing.
|
(inputs
|
||||||
(install-file "gnulib/lib/getopt.c"
|
(list m4 ;used at run time
|
||||||
"xdico/gnu")
|
bash-minimal ;likewise
|
||||||
;; This code invokes "/bin/sh -c 'm4 -s ...'".
|
pcre
|
||||||
(substitute* "grecs/src/grecs-lex.l"
|
python-wrapper
|
||||||
(("\"/bin/sh")
|
guile-3.0
|
||||||
(string-append "\""
|
gsasl
|
||||||
(search-input-file inputs "/bin/sh"))))))
|
readline
|
||||||
|
zlib
|
||||||
(add-before 'check 'silence-guile
|
wordnet
|
||||||
(lambda _
|
libxcrypt ;for 'crypt'
|
||||||
;; Guile is too talkative, which disturbs the test
|
libltdl))
|
||||||
;; infrastructure. Gag it.
|
(home-page "https://www.gnu.org.ua/software/dico/")
|
||||||
(setenv "GUILE_AUTO_COMPILE" "0")
|
(synopsis "Implementation of DICT server (RFC 2229)")
|
||||||
(setenv "GUILE_WARN_DEPRECATED" "no"))))))
|
(description
|
||||||
(native-inputs
|
"GNU Dico implements a flexible dictionary server and client according to
|
||||||
(list autoconf-2.71
|
RFC 2229 (DICT Server). It is able to access any database available,
|
||||||
automake
|
|
||||||
bison
|
|
||||||
flex
|
|
||||||
gettext-minimal
|
|
||||||
groff
|
|
||||||
libtool
|
|
||||||
perl
|
|
||||||
texinfo))
|
|
||||||
(inputs
|
|
||||||
(list m4 ;used at run time
|
|
||||||
bash-minimal ;likewise
|
|
||||||
pcre
|
|
||||||
python-wrapper
|
|
||||||
guile-3.0
|
|
||||||
gsasl
|
|
||||||
readline
|
|
||||||
zlib
|
|
||||||
wordnet
|
|
||||||
libxcrypt ;for 'crypt'
|
|
||||||
libltdl))
|
|
||||||
(home-page "https://www.gnu.org.ua/software/dico/")
|
|
||||||
(synopsis "Implementation of DICT server (RFC 2229)")
|
|
||||||
(description
|
|
||||||
"GNU Dico implements a flexible dictionary server and client according
|
|
||||||
to RFC 2229 (DICT Server). It is able to access any database available,
|
|
||||||
regardless of format, thanks to its modular structure. New modules may be
|
regardless of format, thanks to its modular structure. New modules may be
|
||||||
written in C, Guile or Python. Dico also includes a command-line client,
|
written in C, Guile or Python. Dico also includes a command-line client,
|
||||||
which may be used to query remote dictionary databases.")
|
which may be used to query remote dictionary databases.")
|
||||||
(license license:gpl3+))))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public libmaa
|
(define-public libmaa
|
||||||
(package
|
(package
|
||||||
|
|||||||
@@ -67,6 +67,7 @@
|
|||||||
#:use-module (gnu packages vim)
|
#:use-module (gnu packages vim)
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
@@ -289,6 +290,14 @@ install.")
|
|||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
(chmod file #o755))
|
(chmod file #o755))
|
||||||
(find-files #$output "autopkgtest-virt-.*"))))
|
(find-files #$output "autopkgtest-virt-.*"))))
|
||||||
|
;; Adjust use of importlib.resources to use python 3.10 compatible
|
||||||
|
;; syntax, which requires an argument.
|
||||||
|
;; Drop when switching to python 3.12+.
|
||||||
|
(add-after 'unpack 'adjust-importlib-resources-for-old-python
|
||||||
|
(lambda _
|
||||||
|
(substitute* "reprotest/__init__.py"
|
||||||
|
(("importlib.resources.files\\(\\)")
|
||||||
|
"importlib.resources.files(package='reprotest')"))))
|
||||||
(add-after 'unpack 'skip-most-tests
|
(add-after 'unpack 'skip-most-tests
|
||||||
;; These tests require functionality not available in the guix
|
;; These tests require functionality not available in the guix
|
||||||
;; build environment
|
;; build environment
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
|
|||||||
+34
-81
@@ -31,7 +31,7 @@
|
|||||||
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||||
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||||
;;; Copyright © 2025, 2026 Vinicius Monego <monego@posteo.net>
|
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
|
||||||
;;; Copyright © 2025 Grigory Shepelev <shegeley@gmail.com>
|
;;; Copyright © 2025 Grigory Shepelev <shegeley@gmail.com>
|
||||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||||
|
|
||||||
@@ -59,6 +59,7 @@
|
|||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system scons)
|
#:use-module (guix build-system scons)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
@@ -93,8 +94,6 @@
|
|||||||
#:use-module (gnu packages gnome)
|
#:use-module (gnu packages gnome)
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
#:use-module (gnu packages golang-build)
|
#:use-module (gnu packages golang-build)
|
||||||
#:use-module (gnu packages golang-check)
|
|
||||||
#:use-module (gnu packages golang-compression)
|
|
||||||
#:use-module (gnu packages golang-xyz)
|
#:use-module (gnu packages golang-xyz)
|
||||||
#:use-module (gnu packages graphics)
|
#:use-module (gnu packages graphics)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
@@ -105,6 +104,7 @@
|
|||||||
#:use-module (gnu packages libbsd)
|
#:use-module (gnu packages libbsd)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages nss)
|
#:use-module (gnu packages nss)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages perl-web)
|
#:use-module (gnu packages perl-web)
|
||||||
@@ -264,14 +264,14 @@ tmpfs/ramfs filesystems.")
|
|||||||
(define-public parted
|
(define-public parted
|
||||||
(package
|
(package
|
||||||
(name "parted")
|
(name "parted")
|
||||||
(version "3.7")
|
(version "3.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/parted/parted-"
|
(uri (string-append "mirror://gnu/parted/parted-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0yzga4cjq3yplqs47dl9714vwc3v3v8nxrj80rdc5wx4c5syb380"))))
|
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -294,7 +294,6 @@ tmpfs/ramfs filesystems.")
|
|||||||
(,util-linux "lib")))
|
(,util-linux "lib")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list gettext-minimal
|
(list gettext-minimal
|
||||||
pkg-config
|
|
||||||
|
|
||||||
;; For the tests.
|
;; For the tests.
|
||||||
e2fsprogs
|
e2fsprogs
|
||||||
@@ -309,6 +308,18 @@ tmpfs/ramfs filesystems.")
|
|||||||
tables. It includes a library and command-line utility.")
|
tables. It includes a library and command-line utility.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public parted-3.4
|
||||||
|
(package
|
||||||
|
(inherit parted)
|
||||||
|
(version "3.4")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnu/parted/parted-"
|
||||||
|
version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0hjkv84x1bs2qqyx1fnzjqyyqrhv7kpdbq9bgydmi99d8wi80ag1"))))))
|
||||||
|
|
||||||
(define-public fdisk
|
(define-public fdisk
|
||||||
(package
|
(package
|
||||||
(name "fdisk")
|
(name "fdisk")
|
||||||
@@ -409,49 +420,6 @@ tables, and it understands a variety of different formats.")
|
|||||||
similarity.")
|
similarity.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public gdu
|
|
||||||
(package
|
|
||||||
(name "gdu")
|
|
||||||
(version "5.35.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/dundee/gdu")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "051xf3wncdiavjwyl9djmni5vd2dqjgn6drkw2nm21c9l0rjfv6d"))))
|
|
||||||
(build-system go-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:install-source? #f
|
|
||||||
#:import-path "github.com/dundee/gdu/v5/cmd/gdu"
|
|
||||||
#:unpack-path "github.com/dundee/gdu/v5"))
|
|
||||||
(native-inputs
|
|
||||||
(list go-github-com-dgraph-io-badger-v4
|
|
||||||
go-github-com-fatih-color
|
|
||||||
go-github-com-gdamore-tcell-v2
|
|
||||||
go-github-com-h2non-filetype
|
|
||||||
go-github-com-maruel-natural
|
|
||||||
go-github-com-mattn-go-isatty
|
|
||||||
go-github-com-pkg-errors
|
|
||||||
go-github-com-rivo-tview
|
|
||||||
go-github-com-sirupsen-logrus
|
|
||||||
go-github-com-spf13-cobra
|
|
||||||
go-github-com-stretchr-testify
|
|
||||||
go-github-com-ulikunitz-xz
|
|
||||||
go-golang-org-x-sys
|
|
||||||
go-golang-org-x-text
|
|
||||||
go-gopkg-in-yaml-v3
|
|
||||||
go-modernc-org-sqlite))
|
|
||||||
(home-page "https://github.com/dundee/gdu")
|
|
||||||
(synopsis "Disk usage analyzer")
|
|
||||||
(description "Gdu is a disk usage analyzer written in Go. It is intended
|
|
||||||
primarily for SSD disks where it can fully utilize parallel processing, but it
|
|
||||||
also works on HDDs.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public gpart
|
(define-public gpart
|
||||||
;; The latest (0.3) release is from 2015 and is missing a crash fix.
|
;; The latest (0.3) release is from 2015 and is missing a crash fix.
|
||||||
(let ((commit "ec03350a01ad69708b5a3e2d47b8e002b0eba6c9")
|
(let ((commit "ec03350a01ad69708b5a3e2d47b8e002b0eba6c9")
|
||||||
@@ -1224,25 +1192,16 @@ and its highly optimized now for efficient performance.")
|
|||||||
(package
|
(package
|
||||||
(name "volume-key")
|
(name "volume-key")
|
||||||
(version "0.3.12")
|
(version "0.3.12")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method url-fetch)
|
||||||
(method git-fetch)
|
(uri (string-append "https://releases.pagure.org/volume_key/volume_key-"
|
||||||
(uri (git-reference
|
version ".tar.xz"))
|
||||||
(url "https://pagure.io/volume_key")
|
(sha256
|
||||||
(commit (string-append "volume_key-" version))))
|
(base32
|
||||||
(file-name (git-file-name name version))
|
"16rhfz6sjwxlmss1plb2wv2i3jq6wza02rmz1d2jrlnsq67p98vc"))))
|
||||||
(sha256
|
|
||||||
(base32 "0zadzbh26ckk263w02d02r2x3mry2kxbybkhwwaxwpv6jsrm7xr6"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list autoconf
|
(list pkg-config swig-4.0 python-3)) ; used to generate the Python bindings
|
||||||
automake
|
|
||||||
gettext-minimal
|
|
||||||
libtool
|
|
||||||
pkg-config
|
|
||||||
python ; used to generate the Python bindings
|
|
||||||
python-setuptools
|
|
||||||
swig))
|
|
||||||
(inputs
|
(inputs
|
||||||
(append
|
(append
|
||||||
(cons cryptsetup-minimal (libcryptsetup-propagated-inputs))
|
(cons cryptsetup-minimal (libcryptsetup-propagated-inputs))
|
||||||
@@ -1252,21 +1211,15 @@ and its highly optimized now for efficient performance.")
|
|||||||
glib
|
glib
|
||||||
gpgme)))
|
gpgme)))
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
`(#:tests? #f ; not sure how tests are supposed to pass, even when run manually
|
||||||
#:tests? #f ; not sure how tests are supposed to pass, even when run manually
|
#:phases
|
||||||
#:configure-flags
|
(modify-phases %standard-phases
|
||||||
#~(list "--without-python"
|
(add-before 'configure 'patch-python.h-path
|
||||||
(string-append "--with-gpgme-prefix="
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
#$(this-package-input "gpgme")))
|
(let ((python (assoc-ref inputs "python")))
|
||||||
#:phases
|
(substitute* "Makefile.in"
|
||||||
#~(modify-phases %standard-phases
|
(("/usr/include/python") (string-append python "/include/python")))
|
||||||
(add-before 'configure 'set-python-paths
|
#t))))))
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(let ((python #$(this-package-native-input "python")))
|
|
||||||
(setenv "PYTHON3"
|
|
||||||
(string-append python "/bin/python3"))
|
|
||||||
(setenv "PYTHON3_CONFIG"
|
|
||||||
(string-append python "/bin/python3-config"))))))))
|
|
||||||
(home-page "https://pagure.io/volume_key")
|
(home-page "https://pagure.io/volume_key")
|
||||||
(synopsis "Manipulate storage volume encryption keys")
|
(synopsis "Manipulate storage volume encryption keys")
|
||||||
(description
|
(description
|
||||||
|
|||||||
@@ -46,13 +46,12 @@
|
|||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages sqlite)
|
#:use-module (gnu packages sqlite)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-build)
|
|
||||||
#:use-module (gnu packages python-xyz))
|
#:use-module (gnu packages python-xyz))
|
||||||
|
|
||||||
(define-public boinc-client
|
(define-public boinc-client
|
||||||
(package
|
(package
|
||||||
(name "boinc-client")
|
(name "boinc-client")
|
||||||
(version "8.2.12")
|
(version "8.2.9")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
@@ -63,7 +62,7 @@
|
|||||||
(file-name (git-file-name "boinc" version))
|
(file-name (git-file-name "boinc" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0531n0yij1gh06xy6plwivbpmhqfq15jizg3rdgri40nz41rzbgr"))))
|
"0ik9423ii6kal29jdn907pxy8w86zpi8n158qx1gcsh8lsaif1v5"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
@@ -109,11 +108,7 @@ resources). It supports virtualized, parallel, and GPU-based applications.")
|
|||||||
"--with-gtk"
|
"--with-gtk"
|
||||||
"--with-auth")))
|
"--with-auth")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list autoconf
|
(list pkg-config autoconf automake which))
|
||||||
automake
|
|
||||||
pkg-config
|
|
||||||
python-setuptools
|
|
||||||
which))
|
|
||||||
(inputs
|
(inputs
|
||||||
(list avahi
|
(list avahi
|
||||||
gtk+
|
gtk+
|
||||||
|
|||||||
+34
-21
@@ -37,6 +37,7 @@
|
|||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix deprecation)
|
#:use-module (guix deprecation)
|
||||||
#:use-module (guix search-paths)
|
#:use-module (guix search-paths)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
@@ -105,7 +106,7 @@ prefixing to determine WebSocket endpoints versus HTTP endpoints.")
|
|||||||
(define-public python-channels
|
(define-public python-channels
|
||||||
(package
|
(package
|
||||||
(name "python-channels")
|
(name "python-channels")
|
||||||
(version "4.3.2")
|
(version "4.2.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch) ; no tests in PyPI
|
(method git-fetch) ; no tests in PyPI
|
||||||
@@ -114,14 +115,8 @@ prefixing to determine WebSocket endpoints versus HTTP endpoints.")
|
|||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0lxq5l0729ms4xzbn1rq968qpi7ipa9aj1wjvzrpdxd3mmlg2618"))))
|
(base32 "0x7w29qpj2acrzf8hcgymsyr5gk3aj2wkbvlwcr01ygd6as8h7hz"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
|
||||||
'(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-before 'check 'delete-selenium-tests
|
|
||||||
(lambda* _
|
|
||||||
(delete-file "tests/sample_project/tests/test_selenium.py"))))))
|
|
||||||
(propagated-inputs (list python-asgiref python-django))
|
(propagated-inputs (list python-asgiref python-django))
|
||||||
;; Channels develops and maintains Daphne but any other ASGI server can be
|
;; Channels develops and maintains Daphne but any other ASGI server can be
|
||||||
;; used, so keep it in native-inputs for tests.
|
;; used, so keep it in native-inputs for tests.
|
||||||
@@ -206,13 +201,13 @@ your project into different processes.")
|
|||||||
(define-public python-django
|
(define-public python-django
|
||||||
(package
|
(package
|
||||||
(name "python-django")
|
(name "python-django")
|
||||||
(version "6.0.5")
|
(version "5.2.11")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "django" version))
|
(uri (pypi-uri "django" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0saj5w1pmfl2bf6smmbx2h8v6b9n9djdsbp46v468a4ax5r6hvdw"))))
|
(base32 "1lq2dynfw6jmvzrzgfrlij2qnxcksaxgnrfr0pj3bvmrv0m2jbbz"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:test-flags
|
'(#:test-flags
|
||||||
@@ -303,6 +298,22 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
|
|||||||
;; This CVE is fixed in 4.1.9.
|
;; This CVE is fixed in 4.1.9.
|
||||||
"CVE-2023-31047"))))))
|
"CVE-2023-31047"))))))
|
||||||
|
|
||||||
|
(define-public python-django-4
|
||||||
|
(package
|
||||||
|
(inherit python-django)
|
||||||
|
(name "python-django-4")
|
||||||
|
(version "4.2.28")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "django" version))
|
||||||
|
(sha256
|
||||||
|
(base32 "1znc2q1m9p2kxz1rkfkh2hg2sx6i3aqv72zsraad7bci364cvfd4"))))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments arguments
|
||||||
|
((#:phases phases)
|
||||||
|
#~(modify-phases #$phases (delete 'delete-sitecustomize)))))))
|
||||||
|
|
||||||
(define-public python-django-cache-url
|
(define-public python-django-cache-url
|
||||||
(package
|
(package
|
||||||
(name "python-django-cache-url")
|
(name "python-django-cache-url")
|
||||||
@@ -318,7 +329,7 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
|
|||||||
(base32 "1a5vd07wrnfbclvf6pz9p8ag9kdd1453lsl9q0bkyc45hq2xqd2a"))))
|
(base32 "1a5vd07wrnfbclvf6pz9p8ag9kdd1453lsl9q0bkyc45hq2xqd2a"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-django python-pytest python-setuptools))
|
(list python-django python-pytest python-pytest-cov python-setuptools))
|
||||||
(home-page "https://github.com/epicserve/django-cache-url")
|
(home-page "https://github.com/epicserve/django-cache-url")
|
||||||
(synopsis "Configure Django cache settings from URLs")
|
(synopsis "Configure Django cache settings from URLs")
|
||||||
(description
|
(description
|
||||||
@@ -380,27 +391,28 @@ and adapters that are useful for non-trivial configuration scenarios.")
|
|||||||
(define-public python-django-extensions
|
(define-public python-django-extensions
|
||||||
(package
|
(package
|
||||||
(name "python-django-extensions")
|
(name "python-django-extensions")
|
||||||
(properties '((commit . "32ddfb0499bec7f39f9fbb44568d2781cecd1f32")
|
(version "4.1")
|
||||||
(revision . "0")))
|
|
||||||
(version (git-version "4.1"
|
|
||||||
(assoc-ref properties 'revision)
|
|
||||||
(assoc-ref properties 'commit)))
|
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
;; Fetch from the git repository, so that the tests can be run.
|
;; Fetch from the git repository, so that the tests can be run.
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/django-extensions/django-extensions")
|
(url "https://github.com/django-extensions/django-extensions")
|
||||||
(commit (assoc-ref properties 'commit))))
|
(commit version)))
|
||||||
(file-name (string-append name "-" version))
|
(file-name (string-append name "-" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "09gk82rsmqgaz4pqk0xvb4mgfprls8h1wm24p74d0ykdi7li2plg"))))
|
(base32 "1qayan9za7ylvzkwp6p0l0735gavnzd1kdjsfc178smq6xnby0ss"))))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
;; The 5 tests in test_dumbscript.py fail (OperationalError).
|
;; The 5 tests in test_dumbscript.py fail (OperationalError).
|
||||||
#:test-flags
|
#:test-flags
|
||||||
#~(list "--ignore" "tests/test_dumpscript.py")))
|
#~(list "--ignore" "tests/test_dumpscript.py"
|
||||||
|
"-k" (string-append
|
||||||
|
;; These fail for unknown reasons.
|
||||||
|
"not test_do_export_emails_format_vcard_start"
|
||||||
|
" and not test_initialize_runserver_plus"
|
||||||
|
" and not test_should_highlight_python_syntax_with_name"))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list python-django))
|
(list python-django))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
@@ -408,11 +420,10 @@ and adapters that are useful for non-trivial configuration scenarios.")
|
|||||||
python-factory-boy
|
python-factory-boy
|
||||||
python-pygments
|
python-pygments
|
||||||
python-pytest
|
python-pytest
|
||||||
|
python-pytest-cov ; runs by default
|
||||||
python-pytest-django
|
python-pytest-django
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-shortuuid
|
python-shortuuid
|
||||||
python-vobject
|
|
||||||
python-werkzeug
|
|
||||||
tzdata-for-tests))
|
tzdata-for-tests))
|
||||||
(home-page "https://github.com/django-extensions/django-extensions")
|
(home-page "https://github.com/django-extensions/django-extensions")
|
||||||
(synopsis "Custom management extensions for Django")
|
(synopsis "Custom management extensions for Django")
|
||||||
@@ -1318,6 +1329,7 @@ server headers required for Cross-Origin Resource Sharing (CORS).")
|
|||||||
python-mock
|
python-mock
|
||||||
python-msgpack
|
python-msgpack
|
||||||
python-pytest
|
python-pytest
|
||||||
|
python-pytest-cov
|
||||||
python-pytest-django
|
python-pytest-django
|
||||||
python-pytest-mock
|
python-pytest-mock
|
||||||
python-setuptools
|
python-setuptools
|
||||||
@@ -2174,6 +2186,7 @@ templates and not in python-level form definitions.")
|
|||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list python-pytest
|
(list python-pytest
|
||||||
|
python-pytest-cov ; runs by default
|
||||||
python-pytest-django
|
python-pytest-django
|
||||||
python-setuptools
|
python-setuptools
|
||||||
python-wheel))
|
python-wheel))
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
|
|||||||
+9
-10
@@ -10,7 +10,6 @@
|
|||||||
;;; Copyright © 2022 ( <paren@disroot.org>
|
;;; Copyright © 2022 ( <paren@disroot.org>
|
||||||
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
|
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
|
||||||
;;; Copyright © 2025-2026 Jonas Meeuws <jonas.meeuws@gmail.com>
|
;;; Copyright © 2025-2026 Jonas Meeuws <jonas.meeuws@gmail.com>
|
||||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -41,7 +40,6 @@
|
|||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages build-tools)
|
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
@@ -49,10 +47,10 @@
|
|||||||
#:use-module (gnu packages gdb)
|
#:use-module (gnu packages gdb)
|
||||||
#:use-module (gnu packages libedit)
|
#:use-module (gnu packages libedit)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
|
#:use-module (gnu packages ninja)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-build)
|
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages textutils)
|
#:use-module (gnu packages textutils)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg)
|
||||||
@@ -110,14 +108,15 @@
|
|||||||
(lambda _
|
(lambda _
|
||||||
(invoke "cmake" "--install" "."))))))
|
(invoke "cmake" "--install" "."))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("zlib" ,zlib)))
|
`(("libconfig" ,libconfig)
|
||||||
|
("libedit" ,libedit)
|
||||||
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("lld-wrapper" ,(make-lld-wrapper lld-17 #:lld-as-ld? #t))
|
`(("lld-wrapper" ,(make-lld-wrapper lld-17 #:lld-as-ld? #t))
|
||||||
("llvm" ,llvm-17)
|
("llvm" ,llvm-17)
|
||||||
("ldc" ,gdmd)
|
("ldc" ,gdmd)
|
||||||
("ninja" ,ninja)
|
("ninja" ,ninja)
|
||||||
("python-wrapper" ,python-wrapper)
|
("python-wrapper" ,python-wrapper)
|
||||||
("python-setuptools" ,python-setuptools)
|
|
||||||
("tzdata" ,tzdata-for-tests)
|
("tzdata" ,tzdata-for-tests)
|
||||||
("unzip" ,unzip)))
|
("unzip" ,unzip)))
|
||||||
(home-page "http://wiki.dlang.org/LDC")
|
(home-page "http://wiki.dlang.org/LDC")
|
||||||
@@ -323,11 +322,11 @@ integration tests...\n")
|
|||||||
"|core.thread.osthread-debug-shared")))
|
"|core.thread.osthread-debug-shared")))
|
||||||
(#t `("")))))))))))))
|
(#t `("")))))))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(modify-inputs native-inputs
|
(append (delete "llvm"
|
||||||
(delete "llvm")
|
(alist-replace "ldc" (list ldc-bootstrap)
|
||||||
(replace "ldc" ldc-bootstrap)
|
(package-native-inputs ldc-bootstrap)))
|
||||||
(append clang-17 ;propagates llvm and clang-runtime
|
`(("clang" ,clang-17) ;propagates llvm and clang-runtime
|
||||||
python-lit)))
|
("python-lit" ,python-lit))))
|
||||||
(properties
|
(properties
|
||||||
(alist-delete 'hidden? (package-properties ldc-bootstrap)))))
|
(alist-delete 'hidden? (package-properties ldc-bootstrap)))))
|
||||||
|
|
||||||
|
|||||||
+16
-266
@@ -1,13 +1,12 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
|
||||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||||
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2015-2018, 2020 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
||||||
;;; Copyright © 2016 Nikita <nikita@n0.is>
|
;;; Copyright © 2016 Nikita <nikita@n0.is>
|
||||||
;;; Copyright © 2016–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2016–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2016, 2019-2021 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
|
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
|
||||||
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
|
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
|
||||||
;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com>
|
;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
@@ -22,11 +21,9 @@
|
|||||||
;;; Copyright © 2021, 2024 Zheng Junjie <873216071@qq.com>
|
;;; Copyright © 2021, 2024 Zheng Junjie <873216071@qq.com>
|
||||||
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
||||||
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
|
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
|
||||||
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
|
||||||
;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
|
;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
|
||||||
;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
|
;;; Copyright © 2024, 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||||
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||||
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
@@ -49,12 +46,12 @@
|
|||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
|
||||||
#:use-module (gnu packages crypto)
|
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
#:use-module (gnu packages datastructures)
|
|
||||||
#:use-module (gnu packages documentation)
|
#:use-module (gnu packages documentation)
|
||||||
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages crypto)
|
||||||
|
#:use-module (gnu packages datastructures)
|
||||||
#:use-module (gnu packages elf)
|
#:use-module (gnu packages elf)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
@@ -68,7 +65,6 @@
|
|||||||
#:use-module (gnu packages libidn)
|
#:use-module (gnu packages libidn)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages lua)
|
#:use-module (gnu packages lua)
|
||||||
#:use-module (gnu packages m4)
|
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages nettle)
|
#:use-module (gnu packages nettle)
|
||||||
#:use-module (gnu packages networking)
|
#:use-module (gnu packages networking)
|
||||||
@@ -77,8 +73,6 @@
|
|||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages protobuf)
|
#:use-module (gnu packages protobuf)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-build)
|
|
||||||
#:use-module (gnu packages python-web)
|
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages ragel)
|
#:use-module (gnu packages ragel)
|
||||||
#:use-module (gnu packages serialization)
|
#:use-module (gnu packages serialization)
|
||||||
@@ -90,176 +84,17 @@
|
|||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (guix build-system cmake)
|
|
||||||
#:use-module (guix build-system copy)
|
|
||||||
#:use-module (guix build-system glib-or-gtk)
|
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system meson)
|
|
||||||
#:use-module (guix build-system pyproject)
|
|
||||||
#:use-module (guix build-system python)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix git-download)
|
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
|
||||||
#:use-module (guix utils))
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
(define-public adns
|
#:use-module (guix utils)
|
||||||
(package
|
#:use-module (guix build-system copy)
|
||||||
(name "adns")
|
#:use-module (guix build-system glib-or-gtk)
|
||||||
(version "1.6.1")
|
#:use-module (guix build-system gnu)
|
||||||
(source
|
#:use-module (guix build-system meson))
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "git://git.chiark.greenend.org.uk/~ianmdlvl/adns.git")
|
|
||||||
(commit (string-append "adns-" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0ln3l5j7wb1xazrzl76p9xar52p6l2k1cwy7jazxw1acl71k9h5n"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
;; INFO: Tests expect real name resolution to work.
|
|
||||||
#:tests? #f
|
|
||||||
#:configure-flags
|
|
||||||
#~(list
|
|
||||||
;; Make sure the programs under bin/ find libadns.so.
|
|
||||||
(string-append "LDFLAGS=-Wl,-rpath -Wl,"
|
|
||||||
#$output:out
|
|
||||||
"/lib"))))
|
|
||||||
(native-inputs
|
|
||||||
(list m4))
|
|
||||||
(home-page "https://www.gnu.org/software/adns/")
|
|
||||||
(synopsis "Asynchronous DNS client library and utilities")
|
|
||||||
(description
|
|
||||||
"GNU adns is a C library that provides easy-to-use @acronym{DNS, Domain
|
|
||||||
Name System} resolution functionality. The library is asynchronous, allowing
|
|
||||||
several concurrent calls. The package also includes several command-line
|
|
||||||
utilities for use in scripts.")
|
|
||||||
(license license:gpl3+)))
|
|
||||||
|
|
||||||
(define-public c-ares
|
|
||||||
(package
|
|
||||||
(name "c-ares")
|
|
||||||
(version "1.34.4")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"https://github.com/c-ares/c-ares/releases/download/v"
|
|
||||||
version "/" name "-" version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0br2msk3bpl5myhjp9vr5j2scpspvbg2fpnz69dcrr4ycpnxnf7s"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-before 'check 'filter-live-tests
|
|
||||||
(lambda _
|
|
||||||
;; Filter tests that require internet access.
|
|
||||||
(setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))
|
|
||||||
#$@(if (system-hurd?)
|
|
||||||
#~((add-after 'unpack 'skip-tests
|
|
||||||
(lambda _
|
|
||||||
(substitute* "test/ares-test-main.cc"
|
|
||||||
(("(^| )main *\\(.*" all)
|
|
||||||
(string-append all " exit (77);\n")))))
|
|
||||||
(add-after 'filter-live-tests 'filter-hurd-tests
|
|
||||||
(lambda _
|
|
||||||
(setenv "GTEST_FILTER"
|
|
||||||
(string-append
|
|
||||||
(getenv "GTEST_FILTER")
|
|
||||||
":.*Basic/2"
|
|
||||||
":.*CancelImmediate/2"
|
|
||||||
":.*CancelImmediateGetHostByAddr/2"
|
|
||||||
":.*CancelLater/1"
|
|
||||||
":.*FamilyUnspecified/2"
|
|
||||||
":.*FamilyV6/2"
|
|
||||||
":.*GetAddrInfoParallelLookups/1"
|
|
||||||
":.*GetHostByAddrDestroy/2"
|
|
||||||
":.*GetHostByNameCNAMENoData/2"
|
|
||||||
":.*GetHostByNameDestroyAbsolute/2"
|
|
||||||
":.*GetHostByNameDestroyRelative/2"
|
|
||||||
":.*GetHostByNameParallelLookups/1"
|
|
||||||
":.*HostAlias/2"
|
|
||||||
":.*HostAliasMissing/2"
|
|
||||||
":.*HostAliasMissingFile/2"
|
|
||||||
":.*NotImplResponse/2"
|
|
||||||
":.*RefusedResponse/2"
|
|
||||||
":.*Resend/1"
|
|
||||||
":.*RetryWithoutEDNS/2"
|
|
||||||
":.*SearchDomains/2"
|
|
||||||
":.*SearchDomainsBare/2"
|
|
||||||
":.*SearchDomainsServFailOnAAAA/2"
|
|
||||||
":.*SearchDomainsWithResentReply/1"
|
|
||||||
":.*SearchHighNdots/2"
|
|
||||||
":.*SearchNoDataThenFail/2"
|
|
||||||
":.*SearchNoDataThenNoDataBare/2"
|
|
||||||
":.*SearchNoDataThenSuccess/2"
|
|
||||||
":.*ServFailResponse/2"
|
|
||||||
":.*SimpleQuery/2"
|
|
||||||
":.*SockCallback/2"
|
|
||||||
":.*SockConfigureCallback/2"
|
|
||||||
":.*SortListV4/2"
|
|
||||||
":.*SortListV6/2"
|
|
||||||
":.*ThirdServer/2"
|
|
||||||
":.*TruncationRetry/1"
|
|
||||||
":.*UnspecifiedFamilyCname6A4/2"
|
|
||||||
":.*UnspecifiedFamilyV4/2"
|
|
||||||
":.*UnspecifiedFamilyV6/2")))))
|
|
||||||
#~()))))
|
|
||||||
(native-inputs
|
|
||||||
(list pkg-config))
|
|
||||||
(home-page "https://c-ares.haxx.se/")
|
|
||||||
(synopsis "C library for asynchronous DNS requests")
|
|
||||||
(description
|
|
||||||
"C-ares is a C library that performs DNS requests and name resolution
|
|
||||||
asynchronously. It is intended for applications which need to perform DNS
|
|
||||||
queries without blocking, or need to perform multiple DNS queries in parallel.
|
|
||||||
The primary examples of such applications are servers which communicate with
|
|
||||||
multiple clients and programs with graphical user interfaces.")
|
|
||||||
(license (license:x11-style "https://c-ares.haxx.se/license.html"))))
|
|
||||||
|
|
||||||
(define-public c-ares-for-node-lts
|
|
||||||
(hidden-package c-ares))
|
|
||||||
|
|
||||||
(define-public c-ares-for-node-bootstrap
|
|
||||||
(hidden-package
|
|
||||||
(package
|
|
||||||
(inherit c-ares)
|
|
||||||
(version "1.18.1")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"https://c-ares.haxx.se/download/c-ares-" version
|
|
||||||
".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))))))
|
|
||||||
|
|
||||||
;; INFO: gRPC requires a c-ares built with CMake in order to get the .cmake
|
|
||||||
;; modules. We can not build c-ares itself with CMake because that would
|
|
||||||
;; introduce a circular dependency through nghttp2.
|
|
||||||
;;
|
|
||||||
;; TODO: It would be nice if we could extract the modules somehow and make
|
|
||||||
;; them work with the "normal" c-ares package instead of building a whole new
|
|
||||||
;; library.
|
|
||||||
(define-public c-ares/cmake
|
|
||||||
(hidden-package
|
|
||||||
(package
|
|
||||||
(inherit c-ares)
|
|
||||||
(build-system cmake-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
;; INFO: Tests require name resolution (the normal variant runs no
|
|
||||||
;; tests).
|
|
||||||
#:tests? #f)))))
|
|
||||||
|
|
||||||
(define-public cloudflare-cli
|
(define-public cloudflare-cli
|
||||||
(let ((commit "2d986d3ec1b0e3158c4bd40e8918947cb74aa392")
|
(let ((commit "2d986d3ec1b0e3158c4bd40e8918947cb74aa392")
|
||||||
@@ -308,58 +143,6 @@ protocol.")
|
|||||||
(home-page "https://github.com/earlchew/cloudflare-cli")
|
(home-page "https://github.com/earlchew/cloudflare-cli")
|
||||||
(license license:expat))))
|
(license license:expat))))
|
||||||
|
|
||||||
(define-public ddclient
|
|
||||||
(package
|
|
||||||
(name "ddclient")
|
|
||||||
(version "4.0.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/ddclient/ddclient")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0sz4f7qx4yjg6q6ybhzilb7f0kshz46c54y3i4hq2nww2bhkc8a4"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-before 'bootstrap 'patch-ddclient.in-shebang
|
|
||||||
(lambda _
|
|
||||||
;; This is run in the bootstrap phase, so patch before
|
|
||||||
(patch-shebang "ddclient.in")))
|
|
||||||
(add-after 'install 'wrap-program
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(wrap-program (string-append #$output "/bin/ddclient")
|
|
||||||
`("PERL5LIB" ":" prefix
|
|
||||||
,(map (lambda (input-name)
|
|
||||||
(string-append (assoc-ref inputs input-name)
|
|
||||||
"/lib/perl5/site_perl"))
|
|
||||||
'("perl-json")))))))))
|
|
||||||
(native-inputs
|
|
||||||
(list autoconf
|
|
||||||
automake
|
|
||||||
perl-http-daemon
|
|
||||||
perl-plack
|
|
||||||
perl-test-mockmodule
|
|
||||||
perl-test-tcp
|
|
||||||
perl-test-warnings))
|
|
||||||
(inputs
|
|
||||||
(list curl
|
|
||||||
perl
|
|
||||||
perl-json
|
|
||||||
bash-minimal))
|
|
||||||
(home-page "https://github.com/ddclient/ddclient")
|
|
||||||
(synopsis "Dynamic DNS update client")
|
|
||||||
(description
|
|
||||||
"ddclient is used to update dynamic DNS entries for accounts on many
|
|
||||||
dynamic DNS services. It supports a wide range of routers and protocols,
|
|
||||||
including Cloudflare, Namecheap, DynDNS, FreeDNS, Google Domains, and many
|
|
||||||
more.")
|
|
||||||
(license license:gpl2+)))
|
|
||||||
|
|
||||||
(define-public ldns
|
(define-public ldns
|
||||||
(package
|
(package
|
||||||
(name "ldns")
|
(name "ldns")
|
||||||
@@ -555,39 +338,6 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
|||||||
;; Source files only say GPL2 and GPL3 are allowed.
|
;; Source files only say GPL2 and GPL3 are allowed.
|
||||||
(license (list license:gpl2 license:gpl3))))
|
(license (list license:gpl2 license:gpl3))))
|
||||||
|
|
||||||
(define-public dnsupdate
|
|
||||||
(package
|
|
||||||
(name "dnsupdate")
|
|
||||||
(version "0.4.1")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/lopsided98/dnsupdate")
|
|
||||||
(commit version)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "0bp6mm0yhg4hs698xdmvcfad4jqf5rgb1cab88pfzyx9w52x0ag6"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list #:test-backend #~'unittest
|
|
||||||
#:test-flags #~'("discover" "-p" "*_test.py")))
|
|
||||||
(native-inputs
|
|
||||||
(list python-setuptools))
|
|
||||||
(propagated-inputs
|
|
||||||
(list python-beautifulsoup4
|
|
||||||
python-netifaces
|
|
||||||
python-pyyaml
|
|
||||||
python-requests))
|
|
||||||
(home-page "https://github.com/lopsided98/dnsupdate")
|
|
||||||
(synopsis "Modern and flexible dynamic DNS client")
|
|
||||||
(description
|
|
||||||
"Dnsupdate is a dynamic DNS client that provides support for multiple DNS
|
|
||||||
services, including Afraid.org FreeDNS, Cloudflare, IETF standard DNS
|
|
||||||
updates (nsupdate), and custom HTTP-based services. It uses YAML
|
|
||||||
configuration files and supports multiple address detection methods.")
|
|
||||||
(license license:gpl3+)))
|
|
||||||
|
|
||||||
;; 'bind' is the name of a built-in Guile procedure, which is why we choose a
|
;; 'bind' is the name of a built-in Guile procedure, which is why we choose a
|
||||||
;; different name here.
|
;; different name here.
|
||||||
(define-public isc-bind
|
(define-public isc-bind
|
||||||
@@ -841,14 +591,14 @@ to result in system-wide compromise.")
|
|||||||
(define-public unbound
|
(define-public unbound
|
||||||
(package
|
(package
|
||||||
(name "unbound")
|
(name "unbound")
|
||||||
(version "1.25.1")
|
(version "1.24.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0vsqmgnq7ibi0b3akzy45nqf0wazmb0bmpk2fp8wyn89gckvds0g"))))
|
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("out" "python"))
|
(outputs '("out" "python"))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (srfi srfi-26))
|
#:use-module (srfi srfi-26))
|
||||||
|
|
||||||
;; The fetch-plan, install-plan and phases for docbook-xml tend to vary
|
;; The fetch-plan, install-plan and phases for docbook-xml tend to vary
|
||||||
@@ -665,8 +666,7 @@ the in DocBook SGML DTDs.")
|
|||||||
(base32
|
(base32
|
||||||
"0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n"))
|
"0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n"))
|
||||||
(patches
|
(patches
|
||||||
(search-patches "dblatex-importlib.patch"
|
(search-patches "dblatex-inkscape-1.0.patch"))))
|
||||||
"dblatex-inkscape-1.0.patch"))))
|
|
||||||
(outputs '("out" "doc"))
|
(outputs '("out" "doc"))
|
||||||
(build-system pyproject-build-system)
|
(build-system pyproject-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
|||||||
+1
-65
@@ -39,12 +39,12 @@
|
|||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages containers)
|
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages golang)
|
#:use-module (gnu packages golang)
|
||||||
@@ -198,50 +198,6 @@ enforce convention and best practices for metrics collection in Docker
|
|||||||
projects.")
|
projects.")
|
||||||
(license (list license:asl2.0 license:cc-by-sa4.0))))
|
(license (list license:asl2.0 license:cc-by-sa4.0))))
|
||||||
|
|
||||||
(define-public go-github-com-moby-policy-helpers
|
|
||||||
(package
|
|
||||||
(name "go-github-com-moby-policy-helpers")
|
|
||||||
(version "0.0.0-20260507153417-a39d60132186")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/moby/policy-helpers")
|
|
||||||
(commit (go-version->git-ref version))))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "12fa602jianip7dg98f2i9i686s2a9bsclw8sqxw1ac1v19qlqr8"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet '(delete-file-recursively "vendor"))))
|
|
||||||
(build-system go-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:go go-1.25
|
|
||||||
#:embed-files #~(list ".*\\.json")
|
|
||||||
#:import-path "github.com/moby/policy-helpers"))
|
|
||||||
(native-inputs
|
|
||||||
(list go-github-com-stretchr-testify))
|
|
||||||
(propagated-inputs
|
|
||||||
(list go-github-com-containerd-containerd-v2
|
|
||||||
go-github-com-containerd-errdefs
|
|
||||||
go-github-com-containerd-platforms
|
|
||||||
go-github-com-distribution-reference
|
|
||||||
go-github-com-gofrs-flock
|
|
||||||
go-github-com-in-toto-in-toto-golang
|
|
||||||
go-github-com-opencontainers-go-digest
|
|
||||||
go-github-com-opencontainers-image-spec
|
|
||||||
go-github-com-pkg-errors
|
|
||||||
go-github-com-sigstore-protobuf-specs
|
|
||||||
go-github-com-sigstore-sigstore
|
|
||||||
go-github-com-sigstore-sigstore-go
|
|
||||||
go-github-com-theupdateframework-go-tuf-v2
|
|
||||||
go-golang-org-x-sync))
|
|
||||||
(home-page "https://github.com/moby/policy-helpers")
|
|
||||||
(synopsis "Policy helpers for Docker")
|
|
||||||
(description "This package provides a policy helpers for Moby (Docker)
|
|
||||||
and BuildKit. It is a work in progress.")
|
|
||||||
(license license:asl2.0)))
|
|
||||||
|
|
||||||
(define-public python-docker
|
(define-public python-docker
|
||||||
(package
|
(package
|
||||||
(name "python-docker")
|
(name "python-docker")
|
||||||
@@ -372,26 +328,6 @@ application’s services. Then, using a single command, the containers are
|
|||||||
created and all the services are started as specified in the configuration.")
|
created and all the services are started as specified in the configuration.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public docker-policy-helper
|
|
||||||
(package/inherit go-github-com-moby-policy-helpers
|
|
||||||
(name "docker-policy-helper")
|
|
||||||
(arguments
|
|
||||||
(substitute-keyword-arguments arguments
|
|
||||||
((#:import-path _) "github.com/moby/policy-helpers/cmd/policy-helper")
|
|
||||||
((#:install-source? _ #t) #f)
|
|
||||||
((#:skip-build? _ #t) #f)
|
|
||||||
((#:tests? _ #t) #f)
|
|
||||||
((#:unpack-path _ "") "github.com/moby/policy-helpers")
|
|
||||||
((#:phases phases '%standard-phases)
|
|
||||||
#~(modify-phases #$phases
|
|
||||||
(add-after 'install 'fix-bin-name
|
|
||||||
(lambda _
|
|
||||||
(rename-file (string-append #$output "/bin/policy-helper")
|
|
||||||
(string-append #$output "/bin/docker-policy-helper"))))))))
|
|
||||||
(native-inputs (package-propagated-inputs go-github-com-moby-policy-helpers))
|
|
||||||
(propagated-inputs '())
|
|
||||||
(inputs '())))
|
|
||||||
|
|
||||||
(define-public python-docker-pycreds
|
(define-public python-docker-pycreds
|
||||||
(package
|
(package
|
||||||
(name "python-docker-pycreds")
|
(name "python-docker-pycreds")
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014, 2018, 2026 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
||||||
@@ -41,6 +41,7 @@
|
|||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system copy)
|
#:use-module (guix build-system copy)
|
||||||
#:use-module (guix build-system perl)
|
#:use-module (guix build-system perl)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix deprecation)
|
#:use-module (guix deprecation)
|
||||||
@@ -191,20 +192,21 @@ markup) can be customized and extended by the user.")
|
|||||||
|
|
||||||
(define-deprecated asciidoc-py3 asciidoc)
|
(define-deprecated asciidoc-py3 asciidoc)
|
||||||
|
|
||||||
(define-public doxygen-1.16
|
(define-public doxygen
|
||||||
(package
|
(package
|
||||||
(name "doxygen")
|
(name "doxygen")
|
||||||
(version "1.16.1")
|
(version "1.14.0")
|
||||||
(home-page "https://www.doxygen.nl/")
|
(home-page "https://www.doxygen.nl/")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method url-fetch)
|
||||||
(method url-fetch)
|
(uri (list (string-append home-page "files/doxygen-"
|
||||||
(uri (list (string-append home-page "files/doxygen-" version
|
version ".src.tar.gz")
|
||||||
".src.tar.gz")
|
(string-append "mirror://sourceforge/doxygen/rel-"
|
||||||
(string-append "mirror://sourceforge/doxygen/rel-" version
|
version "/doxygen-" version
|
||||||
"/doxygen-" version ".src.tar.gz")))
|
".src.tar.gz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1a33w82ln692qsf3ls0j31f6khljjs1cy3bwd70pra2fa4xy6710"))))
|
(base32
|
||||||
|
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list bison
|
(list bison
|
||||||
@@ -248,25 +250,6 @@ IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
|
|||||||
and to some extent D.")
|
and to some extent D.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public doxygen-1.14
|
|
||||||
(package
|
|
||||||
(inherit doxygen-1.16)
|
|
||||||
(name "doxygen")
|
|
||||||
(version "1.14.0")
|
|
||||||
(home-page "https://www.doxygen.nl/")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (list (string-append home-page "files/doxygen-"
|
|
||||||
version ".src.tar.gz")
|
|
||||||
(string-append "mirror://sourceforge/doxygen/rel-"
|
|
||||||
version "/doxygen-" version
|
|
||||||
".src.tar.gz")))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))))
|
|
||||||
|
|
||||||
(define-public doxygen doxygen-1.14)
|
|
||||||
|
|
||||||
(define-public halibut
|
(define-public halibut
|
||||||
(package
|
(package
|
||||||
(name "halibut")
|
(name "halibut")
|
||||||
@@ -489,8 +472,9 @@ inspired by Dash.")
|
|||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
;; Custom build steps to prevent using pyproject-build-system which
|
;; Essentially a lighter copy of the former python-build-system.
|
||||||
;; allows to edit the latter without a texlive + haskell world rebuild.
|
;; Using it rather than pyproject-build-system allows to edit the latter
|
||||||
|
;; without a texlive + haskell world rebuild.
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
(delete 'bootstrap)
|
(delete 'bootstrap)
|
||||||
|
|||||||
@@ -62,6 +62,7 @@
|
|||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (ice-9 match))
|
#:use-module (ice-9 match))
|
||||||
|
|
||||||
(define-public treecc
|
(define-public treecc
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module ((guix build-system python) #:select (pypi-uri))
|
||||||
#:use-module (guix build-system r)
|
#:use-module (guix build-system r)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
@@ -147,13 +148,13 @@ system.")
|
|||||||
(define-public r-duckdb
|
(define-public r-duckdb
|
||||||
(package
|
(package
|
||||||
(name "r-duckdb")
|
(name "r-duckdb")
|
||||||
(version "1.5.2")
|
(version "1.5.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "duckdb" version))
|
(uri (cran-uri "duckdb" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1dldlfwvc33czvlxfmwaj4p9y6sjjj5iqy98yda47a8kclrqmyam"))
|
(base32 "177621m08whqqk4yhj3zrr08l3d9hhlqh3gm9jzhi5cplg47cksq"))
|
||||||
;; This package bundles the duckdb sources and builds a custom variant
|
;; This package bundles the duckdb sources and builds a custom variant
|
||||||
;; of duckdb. I'd be happy to link it with our duckdb library instead,
|
;; of duckdb. I'd be happy to link it with our duckdb library instead,
|
||||||
;; but it does not seem possible to do that.
|
;; but it does not seem possible to do that.
|
||||||
|
|||||||
+3
-41
@@ -40,6 +40,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
@@ -206,7 +207,7 @@ with Microsoft Compiled HTML (CHM) files.")
|
|||||||
python-css-parser
|
python-css-parser
|
||||||
python-cssselect
|
python-cssselect
|
||||||
python-dateutil
|
python-dateutil
|
||||||
python-dnspython
|
python-dnspython-1.16
|
||||||
python-feedparser
|
python-feedparser
|
||||||
python-fonttools
|
python-fonttools
|
||||||
python-html2text
|
python-html2text
|
||||||
@@ -282,9 +283,7 @@ tags = [\"WS_X11\"]")
|
|||||||
(string-append "[tool.sip.project]
|
(string-append "[tool.sip.project]
|
||||||
sip-include-dirs = [\""
|
sip-include-dirs = [\""
|
||||||
#$(this-package-input "python-pyqt")
|
#$(this-package-input "python-pyqt")
|
||||||
"/lib/python"
|
"/lib/python3.11/site-packages/PyQt6/bindings\"]")))
|
||||||
#$(version-major+minor (package-version python))
|
|
||||||
"/site-packages/PyQt6/bindings\"]")))
|
|
||||||
(substitute* "src/calibre/ebooks/pdf/pdftohtml.py"
|
(substitute* "src/calibre/ebooks/pdf/pdftohtml.py"
|
||||||
(("PDFTOHTML = 'pdftohtml'")
|
(("PDFTOHTML = 'pdftohtml'")
|
||||||
(string-append "PDFTOHTML = \""
|
(string-append "PDFTOHTML = \""
|
||||||
@@ -416,43 +415,6 @@ e-books for convenient reading.")
|
|||||||
accessing and converting various ebook file formats.")
|
accessing and converting various ebook file formats.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public epub-thumbnailer
|
|
||||||
;; See: <https://github.com/marianosimone/epub-thumbnailer/issues/46>.
|
|
||||||
(let ((commit "de4b5bf0fcd1817d560f180231f7bd22d330f1be")
|
|
||||||
(revision "0"))
|
|
||||||
(package
|
|
||||||
(name "epub-thumbnailer")
|
|
||||||
(version (git-version "0.0.0" revision commit))
|
|
||||||
(home-page "https://github.com/marianosimone/epub-thumbnailer")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url home-page)
|
|
||||||
(commit commit)))
|
|
||||||
(file-name (git-file-name name version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1bkknrcds67qkgci6kdkv51fz8hzmqg8z1vkkni4jl4vgix7cjxg"))))
|
|
||||||
(build-system pyproject-build-system)
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:tests? #f ;no tests provided
|
|
||||||
#:phases
|
|
||||||
#~(modify-phases %standard-phases
|
|
||||||
(add-after 'strip 'rename-program
|
|
||||||
(lambda _
|
|
||||||
(with-directory-excursion #$output
|
|
||||||
(rename-file "bin/epub-thumbnailer.py"
|
|
||||||
"bin/epub-thumbnailer")))))))
|
|
||||||
(propagated-inputs (list python-pillow))
|
|
||||||
(native-inputs (list python-setuptools))
|
|
||||||
(synopsis
|
|
||||||
"Extract the cover of an epub book and create a thumbnail for it")
|
|
||||||
(description
|
|
||||||
"@code{epub-thumbnailer} is a simple script that tries to find a cover
|
|
||||||
into an epub file and creates a thumbnail for it.")
|
|
||||||
(license license:gpl3))))
|
|
||||||
|
|
||||||
(define-public inkbox
|
(define-public inkbox
|
||||||
(package
|
(package
|
||||||
(name "inkbox")
|
(name "inkbox")
|
||||||
|
|||||||
@@ -91,6 +91,7 @@
|
|||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system go)
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system pyproject)
|
#:use-module (guix build-system pyproject)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (srfi srfi-1))
|
#:use-module (srfi srfi-1))
|
||||||
|
|||||||
@@ -204,3 +204,48 @@ and EFI variable management.")
|
|||||||
;; Library routines (in lib/) are under LGPL 2.1.
|
;; Library routines (in lib/) are under LGPL 2.1.
|
||||||
;; Compiling/linking/using OpenSSL is permitted.
|
;; Compiling/linking/using OpenSSL is permitted.
|
||||||
(license (list license:gpl2 license:lgpl2.1))))
|
(license (list license:gpl2 license:lgpl2.1))))
|
||||||
|
|
||||||
|
(define-public efilinux
|
||||||
|
(package
|
||||||
|
(name "efilinux")
|
||||||
|
(version "1.1")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/mfleming/efilinux")
|
||||||
|
(commit (string-append "efilinux-" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0b4nxzr3wl5v4b52r79iw1arfgasz26xb38r2blw9v2qz2s1q9w2"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags
|
||||||
|
(list "CC=gcc"
|
||||||
|
,@(match (%current-system)
|
||||||
|
("aarch64-linux"
|
||||||
|
'("ARCH=aarch64"))
|
||||||
|
("armhf-linux"
|
||||||
|
'("ARCH=arm"))
|
||||||
|
(_ '()))
|
||||||
|
(string-append "INCDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||||
|
"/include")
|
||||||
|
(string-append "LIBDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||||
|
"/lib"))
|
||||||
|
#:tests? #f ; No tests exist.
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(install-file "efilinux.efi"
|
||||||
|
(string-append (assoc-ref outputs "out")
|
||||||
|
"/libexec"))
|
||||||
|
#t)))))
|
||||||
|
(inputs
|
||||||
|
(list gnu-efi))
|
||||||
|
(synopsis "Minimal Linux loader for UEFI")
|
||||||
|
(description "This package provides a minimal Linux loader as an UEFI
|
||||||
|
program.")
|
||||||
|
(home-page "https://github.com/mfleming/efilinux")
|
||||||
|
(license license:bsd-2)))
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user