1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-07 22:34:07 +02:00

Compare commits

..

37 Commits

Author SHA1 Message Date
Jelle Licht f594456209 gnu: node-lts: Update to 24.14.1.
* gnu/packages/node.scm (node-lts): Update to 24.14.1.

Change-Id: I60457e8e8e05e0102feb450655113ba410bd7667
2026-05-03 20:58:59 +02:00
Jelle Licht f8a0185f03 gnu: node-nan: Update to 2.26.2.
* gnu/packages/node-xyz.scm (node-nan): Update to 2.26.2.

Change-Id: I84c8aa254540646c559b4b65646083e1ea961d75
2026-05-03 20:58:58 +02:00
Jelle Licht f224f47572 gnu: node-openzwave-shared: Fix compilation for new versions of node.
* gnu/packages/zwave.scm (node-openzwave-shared):[arguments]<#:phases>:Adjust
patch-compiler phase use std=c++20 to allow compilation with node versions 24
and up.

Change-Id: I04b4657c025d233f4abbbc4d3829ca44351fdae3
2026-05-03 20:58:58 +02:00
Jelle Licht f5d7f2f881 Revert "build-system: node: Rewrite modify-json."
This reverts commit dff01d4eb12016435b8fb8878294b79b25b3bf4a. The #:file
keyword argument was still part of the rest arguments, which lead to custom
file arguments being called as functions due to the `apply compose'.

Change-Id: I91d6b576adb7ebb5af6a584e999248b5cc410f6a
2026-05-03 20:58:58 +02:00
Jelle Licht f65fd4efc7 gnu: node-lts: Update to 24.14.0.
* gnu/packages/node.scm (node-lts): Update to 24.14.0.

Change-Id: I51f3c4c77530a81ddac6dc0ebbef0c0f2897c875
2026-05-03 20:58:58 +02:00
Jelle Licht 92f84e2135 gnu: node-lts: Update to 24.11.0.
* gnu/packages/node.scm (node-lts): Update to 24.11.0.
[arguments]<#:phases>: Adjust 'ignore-number-of-hardlinks phase to patch both
ESM and CJS modules. Remove deprecated 'install-node-gyp-wrapper phase.
Introduce new replacement for 'fix-node-gyp-references phase.

Change-Id: I1a372ceb10e31ecfedeff7653030708efa97dab9
2026-05-03 20:58:58 +02:00
Jelle Licht d9a5bbfa79 gnu: node-bootstrap: Rename phase that fixes node-gyp references
* gnu/packages/node.scm (node-bootstrap)[arguments]<#:phases>: Rename
install-npmrc phase to fix-node-gyp-reference.
(libnode)[arguments]<#:phases>: Delete 'fix-node-gyp-reference phase instead
of 'install-npmrc phase.

Change-Id: I062753b79e42e5a8a311b019855168bb96a566b2
2026-05-03 20:58:58 +02:00
Jelle Licht f5c66d183d build-system: tree-sitter: Fix lockfiles extensibility.
* guix/build-system/tree-sitter.scm (tree-sitter-build-build): Add and pass
along lockfiles argument.
(tree-sitter-cross-build): Likewise.

Change-Id: I6f68c0741f21ff26367dd37ff3c53e612fdc9bc2
2026-05-03 20:58:58 +02:00
Jelle Licht d4c7c8f3a7 build-system: node: Export %default-lockfiles for build systems.
* guix/build-system/node.scm (%default-lockfiles): New variable.

Change-Id: I8d9f01bf07670615a7c6012fca3e08308eab3c1c
2026-05-03 20:58:58 +02:00
Jelle Licht a4b766a561 gnu: r-v8: Fix build with node-lts@24.
The version bump of node-lts from 22 to 24 also bumped the version in the so-file.

* gnu/packages/cran.scm (r-v8)[#:phases]<find-v8>: Look for libnode-so.137 as
provided by node-lts@24.

Change-Id: I41bf86cd387c49b214d84a43135fca969a515202
2026-05-03 20:58:58 +02:00
Jelle Licht 99ce5b322e build-system: node: Use file:// prefix for local dependencies.
Using the file:// prefix for local packages was always allowed, and since npm
version 11 required in order to properly resolve local dependencies when
installing from tarballs.

* guix/build/node-build-system.scm (index-modules): Add "file://" prefix to
hash table values for local modules.

Change-Id: I9d95a5d6788cc918b94677b4524391617e3a73b4
2026-05-03 20:58:58 +02:00
Nicolas Graves de25db13bf build-system: node: Refresh phase 'configure.
* guix/build/node-build-system.scm (configure): Remove unused outputs
argument, add --no-outputs flag.

Change-Id: Icf0d5d23cf70abc9168038e79c995391fae48e6a
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:58 +02:00
Nicolas Graves 390d345e47 build-system: node: Refresh phase 'avoid-node-gyp-rebuild.
* guix/build/node-build-system.scm (avoid-node-gyp-rebuild): Refresh
phase by using let* instead of multiple defines.

Change-Id: I30c53f5d7d5bc69444ddcef45cdf8eefcab7db84
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:58 +02:00
Nicolas Graves 206b5efc28 build-system: node: Remove trailing #t.
* guix/build/node-build-system.scm (set-home, delete-lockfiles, build,
repack, install): Remove trailing #t.

Change-Id: Idf5ba50242a7b9fb5d30c8fca6e6662471cf87e4
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves 2c682b098a build-system: node: Rewrite phase 'patch-dependencies.
* guix/build/node-build-system.scm (alist-update): Remove procedure.
(patch-dependencies): Rewrite using modify-json and higher-order
function resolve.

Change-Id: I6a3e30526d5523b559d48317f0e052f2b1dcf04c
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves 5bdb684f15 build-system: node: Improve lockfiles extensibility.
* guix/build-system/node.scm (%default-lockfiles): New variable.
(node-build): Add lockfiles argument.

* guix/build/node-build-system.scm (delete-lockfiles): Re-factor with
lockfiles argument.

Change-Id: I09927977ec7c6430191f592f7f36d4030721c520
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves 335a1cd01a build-system: node: Improve (default-guile-json) import style.
Also place it just after (default-node).

* guix/build-system/node.scm (default-guile-json): Place it
after (default-node) and use helper macro @*.

Change-Id: Idc21c9627f414a011915033da0cab845529ddbff
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves fc858b0c18 build-system: node: Rewrite modify-json.
This function seems way too complex for what it's trying to do.

* guix/build/node-build-system.scm (modify-json): Rewrite procedure
using apply and compose.

Change-Id: I6419bd32eea76031393573a1d6450571d092ec4d
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves 9fbe3c4494 build-system: node: Refresh delete-dependencies procedure.
* guix/build/node-build-system.scm (delete-dependencies): Use map and
match-lambda to improve readability of the phase.

Change-Id: I6d9275c7eea1514f103988215916d478a68ea466
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves a37d3eeb5f build-system: node: Remove alist-pop, simplify alist-update.
Those functions are most likely not worth the complexity they carry.
They might be a little more efficient (stop at the first encounter
instead of mapping until the end), but is it worth the additional
complexity? I'm unsure.

* guix/build/node-build-system.scm (alist-pop): Remove variable.
(alist-update): Use a more standard map.

Change-Id: I47b91461849d6e6d627e98f67bc6a08f12fa7370
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Nicolas Graves 26bf16aab2 build-system: node: Remove assoc-ref* helper.
This procedure has little added value and is basically equivalent to a
simple composition of assoc-ref and or.

* guix/build/node-build-system.scm (assoc-ref*): Remove procedure.
(patch-dependencies, build, avoid-node-gyp-rebuild): Replace use of
assoc-ref*.

Change-Id: I947a66fe91eaa2b4adc8dc405232a32257f9d061
Signed-off-by: Jelle Licht <jlicht@fsfe.org>
2026-05-03 20:58:57 +02:00
Jelle Licht 4f63b4ca95 gnu: node-lts: Update to 24.9.0.
* gnu/packages/node.scm (node-lts): Update to 24.9.0.

Change-Id: I0ed967dc028e88f927cf24e08bc51d6fc6933998
2026-05-03 20:58:57 +02:00
Jelle Licht 272236f8e7 gnu: node-lts: Update to 24.8.0.
* gnu/packages/node.scm (node-lts): Update to 24.8.0.

Change-Id: I1950d278b9105e72adad2401e4d1ef78c78da16f
2026-05-03 20:58:57 +02:00
Jelle Licht 364a27d498 gnu: node-lts: Update to 24.7.0.
* gnu/packages/node.scm (node-lts): Update to 24.7.0.

Change-Id: I1384b65244c16c67d2aad13931ac0af6e9ce2acf
2026-05-03 20:58:57 +02:00
Jelle Licht 4824c0bc06 gnu: node-lts: Update to 24.6.0.
* gnu/packages/node.scm (node-lts): Update to 24.6.0.

Change-Id: I2aca0c22cf13306d76ba274a78a4560b43be0de4
2026-05-03 20:58:57 +02:00
Jelle Licht cc6e802092 gnu: node-lts: Update to 24.5.0.
* gnu/packages/node.scm (node-lts): Update to 24.5.0.

Change-Id: I09ab8f4c9fc16c534519ff6b48c02adf2796f5a3
2026-05-03 20:58:57 +02:00
Jelle Licht af52370a8b gnu: node-lts: Update to 24.4.1.
* gnu/packages/node.scm (node-lts): Update to 24.4.1.

Change-Id: I13e3a6ce872ba3cd24050b4df72c7c626746b4fe
2026-05-03 20:58:57 +02:00
Jelle Licht 0d6302f6fd gnu: node-lts: Update to 24.4.0.
* gnu/packages/node.scm (node-lts): Update to 24.4.0.

Change-Id: Id2a929edfb2deb8149cbb97e93d2427fb946121a
2026-05-03 20:58:57 +02:00
Jelle Licht ffec500b92 gnu: node-lts: Update to 24.3.0.
* gnu/packages/node.scm (node-lts): Update to 24.3.0.

Change-Id: Iff0e02f30300fe55e71e4e4e0c15578f3095ba9e
2026-05-03 20:58:57 +02:00
Jelle Licht 26fd04e5db gnu: node-lts: Update to 24.2.0.
* gnu/packages/node.scm (node-lts): Update to 24.2.0.
[source]: Update snippet to delete bundled llhttp and zstd sources.
[arguments]<#:configure-flags>: Add "--shared-http-parser" and
"--shared-http-parser-libname=llhttp". Add "--shared-zstd".
<#:phases>: Delete 'replace-llhttp-sources phase.
[inputs]: Add (zstd-1.5.7 "lib").

Change-Id: I44c7accf85a2d88b34438fa506ff725739e995ce
2026-05-03 20:58:54 +02:00
Jelle Licht 94a01eb2b5 gnu: libuv-for-node-lts: Update to 1.51.0.
* gnu/packages/libevent.scm (libuv-for-node-lts): Update to 1.51.0.

Change-Id: I6a49d7337ff62f54004dde24803c43490e2daac4
2026-05-03 20:57:36 +02:00
Jelle Licht e2175057ac gnu: llhttp-bootstrap: Update to 9.3.0.
* gnu/packages/node.scm (llhttp-bootstrap): Update to 9.3.0.

Change-Id: Id18f84a582f12ef3ebb31f214bbb4da7e39018de
2026-05-03 20:57:36 +02:00
Jelle Licht 29529ae0e3 gnu: node-llparse-bootstrap: Update to 7.3.0.
* gnu/packages/node.scm (node-llparse-bootstrap): Update to 7.3.0.

Change-Id: I1a84ea216933bf4ce12c12782d57fef5b4891f4c
2026-05-03 20:57:36 +02:00
Jelle Licht e16ed2a669 gnu: node-llparse-frontend-bootstrap: Update to 3.0.0.
* gnu/packages/node.scm (node-llparse-frontend-bootstrap): Update to 3.0.0.

Change-Id: I11957e5238999f85db00b39548a590ccd6feed47
2026-05-03 20:57:35 +02:00
Jelle Licht 3324436ccb gnu: node-llparse-builder-bootstrap: Update to 1.5.2.
* gnu/packages/node.scm (node-llparse-builder-bootstrap): Update to 1.5.2.

Change-Id: I886eceb7f284fe1ba4c3ccb2c3bfea5e0fd9c9dd
2026-05-03 20:57:35 +02:00
Jelle Licht b48482522b gnu: node-lts: Update to 24.0.1.
* gnu/packages/node.scm (node-lts): Update to 24.0.1.
[arguments]<#:phases>: Add timing-sensitive test to 'delete-problematic-tests
phase.
[native-inputs]: Add gcc-14.

Change-Id: I28fc890e40070dc50bd40b89c1bd98ffabc7be5d
2026-05-03 20:57:35 +02:00
Jelle Licht 149ee4a51c gnu: libuv-for-node-lts: Update to 1.50.0.
* gnu/packages/libevent.scm (libuv-for-node-lts): Update to 1.50.0.

Change-Id: Ic51d832d30872d31b070ecfe1a51daff26dedeea
2026-05-03 20:57:23 +02:00
256 changed files with 12644 additions and 30964 deletions
+3 -7
View File
@@ -42,13 +42,9 @@
;; For use with 'bug-reference-prog-mode'. Extra bug-reference
;; configuration should be done in your Emacs user configuration file;
;; refer to (info (guix) The Perfect Setup).
(eval . (setq-local
;; #8545, guix/guix#8545, guix/guix!8545, but not !8545
bug-reference-bug-regexp
(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")
(bug-reference-bug-regexp
. "\\(<https?://\\bugs\\.gnu\\.org/\\([0-9]+\\)>\\)")
(bug-reference-url-format . "https://issues.guix.gnu.org/%s")
(eval . (add-to-list 'completion-ignored-extensions ".go"))
-3
View File
@@ -32,7 +32,6 @@ gnu/packages/assembly\.scm @guix/build-tools
gnu/packages/autogen\.scm @guix/build-tools
gnu/packages/autotools\.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/oyacc\.scm @guix/build-tools
gnu/packages/re2c\.scm @guix/build-tools
@@ -162,8 +161,6 @@ gnu/system/examples/bare-bones\.tmpl @guix/documentation
gnu/system/examples/lightweight-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/hdl\.scm @guix/electronics
gnu/packages/libftdi\.scm @guix/electronics
+23 -41
View File
@@ -1,5 +1,5 @@
;;; 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 © 2022 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
@@ -324,31 +324,17 @@ actual file name."
((('span ('@ ('class "category")) ;raw Texinfo 6.8
(? string-or-entity?) ...) rest ...)
#t)
((('span ;Texinfo 6, post-processed
('@ ('class "symbol-definition-category"))
(? string-or-entity?) ...) rest ...)
#t)
((('span ;Texinfo 7
('@ ('class "category-def")) _ ...)
('span ('strong ('@ ('class "def-name")) _ ...)
_ ...)
rest ...)
((('span ('@ ('class "symbol-definition-category"))
(? string-or-entity?) ...) rest ...)
#t)
(x
#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 loop ((shtml shtml)
(anchors anchors))
(match shtml
((or ('dt ('@ ('id id) _ ...) rest ...) ;Texinfo 6
('dt ('@ ('class (? definition-class?)) ;Texinfo 7
('id id))
rest ...))
(('dt ('@ ('id id) _ ...) rest ...)
(if (and (string-prefix? "index-" id)
(worthy-entry? rest))
(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)))
((('*ENTITY* "additional" entity) . rest)
(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">
(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
((('var name) . rest) ;likewise (Texinfo 6)
(loop rest (cons name strings)))
(something
(pk 'unsupported-code-snippet something)
(primitive-exit 1)))))
@@ -557,10 +537,7 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(link (@ (rel "stylesheet")
(type "text/css")
(href #$syntax-css-url)))))
((or ('pre ('@ ('class "lisp")) ;Texinfo 6
code-snippet ...)
('pre ('@ ('class "lisp-preformatted"))
code-snippet ...))
(('pre ('@ ('class "lisp")) code-snippet ...)
`(pre (@ (class "lisp"))
,@(highlights->sxml*
(pair-open/close
@@ -568,16 +545,14 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(concatenate-snippets code-snippet)))
anchors)))
;; For Texinfo 6: Replace the ugly <strong> used for @deffn
;; etc., which translate to <dt>, with more stylable
;; markup. No such post-processing is needed for @deffn
;; with Texinfo 7.
;; Replace the ugly <strong> used for @deffn etc., which
;; translate to <dt>, with more stylable markup.
(('dt ('@ ('id id)) ;raw Texinfo 6.8
('span ('@ ('class "category")) category ...)
('span ('strong thing)
anchor))
(highlight-definition id category thing '()))
(('dt ('@ ('id id)) ;ditto
(('dt (@ ('id id))
('span ('@ ('class "category")) category ...)
('span ('strong thing)
(? space?) ('em args ...)
@@ -833,9 +808,16 @@ in SOURCE."
(match sxml
(('*TOP* decl body ...)
`(*TOP* ,decl ,@(map loop body)))
((or ('body ('@ _) elements ...)
('body elements ...))
`(body ,(navigation-bar
(('head elements ...)
;; Add reference to our own manual CSS, which provides
;; 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
;; errors, etc.
(list (menu-dropdown
@@ -970,12 +952,12 @@ makeinfo OPTIONS."
(mkdir-p (string-append #$output "/"
(normalize language)))
(setenv "LANGUAGE" language)
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
(apply invoke #$(file-append texinfo "/bin/makeinfo")
"-o" (string-append #$output "/"
(normalize language)
"/html_node")
opts)
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
(apply invoke #$(file-append texinfo "/bin/makeinfo")
"--no-split"
"-o"
(string-append #$output "/"
@@ -1427,7 +1409,7 @@ commit date (an integer)."
(string-append #+tar "/bin:"
#+xz "/bin:"
#+zstd "/bin:"
#+texinfo-7 "/bin"))
#+texinfo "/bin"))
(invoke "tar" "xf" #$(package-source guile))
(mkdir-p (string-append #$output "/en/html_node"))
@@ -1446,7 +1428,7 @@ commit date (an integer)."
(string-append #$output "/en/html_node")))))))))
(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)
(map (lambda (language)
+7 -1
View File
@@ -706,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:
@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
@subsection Guile Studio
+14 -32
View File
@@ -646,11 +646,9 @@ This field contains a description of the source code origin. The
@enumerate
@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
Reference,,, guix, GNU Guix Reference Manual}, for more info on the
available download methods.
exist, such as @code{git-fetch} for Git repositories.
@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.
@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,
@@ -1118,8 +1116,7 @@ Let's discuss those fields in depth.
@subsubsection @code{git-fetch} method
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
Reference Manual}). The commit can be any Git reference such as
a Git repository and a commit. The commit can be any Git reference such as
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
"v" version))}.
@@ -1165,7 +1162,7 @@ Snippets might need additional Guile modules which can be imported from the
There are 3 different input types. In short:
@table @code
@table @asis
@item native-inputs
Required for building but not runtime -- installing a package
through a substitute won't install these inputs.
@@ -1233,14 +1230,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
modular.
@xref{Packages with Multiple Outputs,,, guix, GNU Guix Reference
Manual}, for more info.
@subsubsection Build system arguments
The @code{arguments} is a keyword-value list used to configure the build
process; these arguments are passed to the @dfn{build system}
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
The @code{arguments} is a keyword-value list used to configure the build process.
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
@@ -1256,7 +1248,7 @@ following flags
"CC=gcc")
@end lisp
translate into:
translate into
@example
$ make CC=gcc prefix=/gnu/store/...-<out>
@@ -1276,9 +1268,7 @@ Similarly, it's possible to set the configure flags:
The @code{%build-inputs} variable is also generated in scope. It's an association
table that maps the input names to their store directories.
The @code{phases} keyword lists the sequential steps of the build
system. @xref{Build Phases,,, guix, GNU Guix Reference Manual}, for
details; in a nutshell,
The @code{phases} keyword lists the sequential steps of the build system. Typically
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
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
@@ -1393,12 +1383,10 @@ Its return value is ignored.
@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
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}.
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for info on the
this mechanism, which is called @dfn{g-expressions}.
@subsubsection Utility functions
@@ -1407,7 +1395,7 @@ equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.)@: com
regular ``Unix-style'' installations.
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
context of package management.
@@ -1541,9 +1529,9 @@ The recursive importer won't import packages for which Guix already has package
definitions, except for the very first.
Not all applications can be packaged this way, only those relying on a select
number of supported systems.
@xref{Invoking guix import,,, guix, GNU Guix Reference Manual} for
the full list of importers.
number of supported systems. Read about the full list of importers in
the guix import section of the manual
(@pxref{Invoking guix import,,, guix, GNU Guix Reference Manual}).
@node Automatic update
@subsubsection Automatic update
@@ -1563,9 +1551,6 @@ well:
$ guix refresh hello --update
@end example
@xref{Invoking guix refresh,,, guix, GNU Guix Reference Manual}, for
more info.
@node Inheritance
@subsubsection Inheritance
@@ -1590,9 +1575,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
convenient to create alternative packages, for instance with different source,
version or compilation options. @xref{Defining Package Variants,,, guix,
GNU Guix Reference Manual}, for a discussion of inheritance and of other
ways to create package variants.
version or compilation options.
@node Getting help
@subsection Getting help
@@ -1633,8 +1616,7 @@ hopefully we will see your contributions soon!
@itemize
@item
@xref{Defining Packages,,, guix, GNU Guix Reference Manual}, for the
@code{package} reference in the manual.
The @uref{https://guix.gnu.org/manual/en/html_node/Defining-Packages.html, package reference in the manual}
@item
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotrs hacking guide to GNU Guix}
+115 -506
View File
@@ -49,7 +49,7 @@ Copyright @copyright{} 2017 humanitiesNerd@*
Copyright @copyright{} 2017, 2021 Christine Lemmer-Webber@*
Copyright @copyright{} 2017, 2018, 2019, 2020, 2021, 2022 Marius Bakke@*
Copyright @copyright{} 2017, 2019, 2020, 2022 Hartmut Goebel@*
Copyright @copyright{} 2017, 2019--2026 Maxim Cournoyer@*
Copyright @copyright{} 2017, 2019--2025 Maxim Cournoyer@*
Copyright @copyright{} 20172022 Tobias Geerinckx-Rice@*
Copyright @copyright{} 2017 George Clemmer@*
Copyright @copyright{} 2017 Andy Wingo@*
@@ -151,7 +151,6 @@ Copyright @copyright{} 2025 Noé Lopez@*
Copyright @copyright{} 2026 David Elsing@*
Copyright @copyright{} 2026 Nguyễn Gia Phong@*
Copyright @copyright{} 2026 Yarl Baudig@*
Copyright @copyright{} 2026 Joan Vilardaga Castro@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -260,16 +259,11 @@ Installation
* Application Setup:: Application-specific setup.
* Upgrading Guix:: Upgrading Guix and its build daemon.
Binary Installation
* Installation with a pre-mounted store::
Setting Up the Daemon
* Build Environment Setup:: Preparing the isolated build environment.
* Daemon Offload Setup:: Offloading builds to remote machines.
* SELinux Support:: Using an SELinux policy for the daemon.
* AppArmor Support:: Using an AppArmor profile for the daemon.
System Installation
@@ -486,14 +480,12 @@ Home Services
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
* Backup: Backup Home Services. Services for backing up User's files.
* Backup: Backup Home Services. Services for backing up User's files.
* Fonts: Fonts Home Services. Services for managing User's fonts.
* Sound: Sound Home Services. Dealing with audio.
* Mail: Mail Home Services. Services for managing mail.
* Messaging: Messaging Home Services. Services for managing messaging.
* Media: Media Home Services. Services for managing media.
* mpv Media Player::
* Niri: Niri window manager. Setting up the Niri.
* Sway: Sway window manager. Setting up the Sway configuration.
* Networking: Networking Home Services. Networking services.
* Secrets: Secrets Home Services. Services for storing secrets.
@@ -884,40 +876,6 @@ installation script or @i{via} the native package manager of their
foreign distribution, to also regularly read and follow security
notices, as shown by @command{guix pull}.
@menu
* Installation with a pre-mounted store::
@end menu
@node Installation with a pre-mounted store
@subsection Installation with a pre-mounted store
@cindex pre-mounted store, installation on small root file system
@cindex bind mounted store, binary installation
@cindex binary installation using an alternative storage device
If you need to install Guix on a system whose main file system is too
small (as can be the case for the rescue environments of @acronym{VPS,
Virtual Private Servers}, for example), you may need to expose the
@file{/gnu} directory from a different storage device/partition. This
can be achieved by mounting a secondary partition or directory at
@file{/gnu}, via a bind mount for example. In the bind mount case,
assuming the partition that should be used to hold the content of the
store is mounted at @file{/mnt}, you could proceed like this
@emph{before} starting the installation:
@example
mkdir /mnt/gnu
mkdir /gnu
mount --bind /mnt/gnu /gnu
@end example
@quotation Important
If your foreign distribution uses systemd, do not attempt to mount
directly on the store directory, @file{/gnu/store}, as this would
conflict with the @file{gnu-store.mount} systemd unit and cause the
@file{guix-daemon.service} to unmount it before starting, failing its
execution. Mount on @file{/gnu} instead.
@end quotation
@node Setting Up the Daemon
@section Setting Up the Daemon
@@ -4822,94 +4780,14 @@ These options are provided for convenience, but you can also specify your
configuration in the @file{~/.config/guix/channels.scm} file or using the
@option{--channels} option (see below).
@item --channels=@var{file-or-uri}
@itemx -C @var{file-or-uri}
Read the list of channels from @var{file-or-uri} instead of
@item --channels=@var{file}
@itemx -C @var{file}
Read the list of channels from @var{file} instead of
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
@var{file-or-uri} must contain Scheme code that
@var{file} must contain Scheme code that
evaluates to a list of channel objects. @xref{Channels}, for more
information.
As you can guess, @var{file-or-uri} can be a URL, in which case the
given channels file is transparently downloaded. In the example below,
we pull from the latest revision of Guix that was successfully
evaluated:
@example
guix pull \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
@cindex SWHID, for channel files
Alternatively, you can refer to a channel file by its
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
uniquely and unambiguously identifies contents, as in this example:
@example
guix pull \
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b
@end example
This command downloads the data designated by the given identifier from
@uref{https://archive.softwareheritage.org, the Software Heritage
archive}.
@anchor{trusted-channels}
@cindex trusted channels, for downloaded channel files
In both cases, the command errors out if the returned channels are not
among the user's @dfn{trusted channels}, defined as:
@itemize
@item
the channels returned by @file{~/.config/guix/trusted-channels.scm},
which has the same format as any channel file (these channels
@emph{must} have an ``introduction'', @pxref{Channel Authentication};
channels are identified by their introduction and other fields are
ignored, including @code{url} and @code{name});
@item
or, if the above file doesn't exist, the currently-used channels as
returned by @command{guix describe}.
@end itemize
@item --allow-untrusted-channels[=yes|no]
Whether to allow pulls from untrusted channels.
By default, @command{guix pull} aborts when downloading a channel file
that specifies an untrusted channel and merely warns if the list of
channels comes from a local file. This option allows you to change
that.
@quotation Warning
Allowing untrusted channels can effectively lead to arbitrary code
execution on your system.
@end quotation
@anchor{unsafe-channel-evaluation}
@item --unsafe-channel-evaluation
Allow arbitrary code execution from channel files, both the default
@file{channels.scm} files and those passed with @option{--channels} as
mentioned above.
@cindex sandboxing, of channel evaluation
By default, channel files are evaluated in an isolated ``sandbox''
where only trivial declarative code returning a list of channels is
allowed---calls to procedures such as @code{list}, @code{cons},
@code{string-append}, as well as the @code{channel} constructor.
Attempts from a channel file to access unauthorized bindings such as
@code{system} (to run shell code) or to use additional modules with
@code{use-modules} are impossible.
The @option{--unsafe-channel-evaluation} option disables these
safeguards.
@quotation Warning
When using @code{--unsafe-channel-evaluation}, channel files can
@emph{run arbitrary code on your machine}. While this is useful in some
cases, only use @code{--unsafe-channel-evaluation} when you fully
understand the code of the channel files you use!
@end quotation
@item --no-channel-files
@itemx -q
Inhibit loading of the user and system channel files,
@@ -5044,17 +4922,6 @@ information.
In addition, @command{guix pull} supports all the common build options
(@pxref{Common Build Options}).
Every time the user invokes a Guix command, Guix detects if the current
installation has exceeded a certain duration (7 days by default) and
alerts the user to update with @command{guix pull} if necessary.
The duration can be configured with the following environment variable:
@defvr {Environment Variable} GUIX_DISTRO_AGE_WARNING
This environment variable, if set, should be a string representing a
duration. If the current Guix installation exceeds the duration, Guix
will raise a warning for outdated installation.
@end defvr
@node Invoking guix time-machine
@section Invoking @command{guix time-machine}
@@ -5151,68 +5018,12 @@ Use the @code{guix} channel from the specified @var{url}, at the
given @var{commit} (a valid Git commit ID represented as a hexadecimal
string or the name of a tag), or @var{branch}.
@item --channels=@var{file-or-uri}
@itemx -C @var{file-or-uri}
Read the list of channels from @var{file-or-uri}. @var{file-or-uri}
must contain Scheme code that evaluates to a list of channel objects.
@item --channels=@var{file}
@itemx -C @var{file}
Read the list of channels from @var{file}. @var{file} must contain
Scheme code that evaluates to a list of channel objects.
@xref{Channels} for more information.
When @var{file-or-uri} is a URL, channels are transparently downloaded.
In the example below, we pull from the latest revision of Guix that was
successfully evaluated:
@example
guix time-machine \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master \
-- describe
@end example
@cindex SWHID, for channel files
Note that downloading a channel file potentially harms reproducibility:
the file might vanish or be modified on the server behind your back.
From a reproducibility viewpoint the safe approach is to keep channel
files under version control, or to refer to them by their
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
uniquely and unambiguously identifies contents. Here is an example:
@example
guix time-machine \
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \
-- @dots{}
@end example
This command downloads the data designated by the identifier from
@uref{https://archive.softwareheritage.org, the Software Heritage
archive}; it is fully reproducible because the data it refers to is
immutable.
@xref{Invoking guix pull}, for more information, and @pxref{Invoking
guix hash}, for info on how to compute the SWHID of a file.
@item --allow-untrusted-channels[=yes|no]
Whether to allow pulls from untrusted channels.
@quotation Warning
Allowing untrusted channels can effectively lead to arbitrary code
execution on your system.
@end quotation
@xref{trusted-channels, @command{guix pull} documentation}, for more
info.
@item --unsafe-channel-evaluation
Allow arbitrary code execution from channels files.
@quotation Warning
When using @code{--unsafe-channel-evaluation}, channel files can
@emph{run arbitrary code on your machine}. Only use
@code{--unsafe-channel-evaluation} when you fully understand the code of
the channel files you use!
@xref{unsafe-channel-evaluation, @option{--unsafe-channel-evaluation} in
@command{guix pull}}, for background information.
@end quotation
@item --no-channel-files
@itemx -q
Inhibit loading of the user and system channel files,
@@ -5941,7 +5752,6 @@ pull} uses the latest commit with available substitutes for the package
definitions: this is done by querying the continuous integration
server at @url{https://ci.guix.gnu.org}.
@findex channel-with-substitutes-available
@lisp
(use-modules (guix ci))
@@ -5956,21 +5766,6 @@ substitutes. It only ensures that @command{guix pull} will not try to
compile package definitions. This is particularly useful when using
machines with limited resources.
@quotation Warning
Use of this functionality in your channel file requires it to be
evaluated in ``unsafe'' mode, with the
@option{--unsafe-channel-evaluation} option.
@xref{unsafe-channel-evaluation, the @command{guix pull} documentation},
for more info.
However, a similar result can be achieved by running, say:
@example
guix pull \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
@end quotation
@node Creating a Channel
@section Creating a Channel
@@ -14880,32 +14675,8 @@ guix hash @var{option} @var{file} ...
@end example
When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the
hash of data read from standard input.
Here are a few examples:
@table @asis
@item SHA256 of a file for use in an @code{origin} record:
@example
guix hash example.tar.gz
@end example
@item SHA256 of directory @var{checkout} for use in an @code{origin} record:
@example
guix hash -rx @var{checkout}
@end example
@item SHA1 hash of @var{file} like the @code{sha1sum} command:
@example
guix hash -H sha1 -f hex @var{file}
@end example
@cindex SWHID, computing
@item SHA1 hash of @var{file} for a @code{swh:1:cnt} @uref{https://swhid.org, SWHID}:
guix hash -S git -H sha1 -f hex @var{file}
@end table
@command{guix hash} has the following options:
hash of data read from standard input. @command{guix hash} has the
following options:
@table @code
@@ -15570,6 +15341,26 @@ repository used by the OCaml community.
Additional options include:
@table @code
@item --recursive
@itemx -r
Traverse the dependency graph of the given upstream package recursively
and generate package expressions for all those packages that are not yet
in Guix.
@end table
@item composer
@cindex Composer
@cindex PHP
Import metadata from the @uref{https://getcomposer.org/, Composer} package
archive used by the PHP community, as in this example:
@example
guix import composer phpunit/phpunit
@end example
Additional options include:
@table @code
@item --recursive
@itemx -r
@@ -15601,26 +15392,7 @@ Also, please note that versions are not compared across repositories.
The first repository (from left to right) that has at least one version
of a given package will prevail over any others, and the version
imported will be the latest one found @emph{in this repository only}.
@end table
@item composer
@cindex Composer
@cindex PHP
Import metadata from the @uref{https://getcomposer.org/, Composer} package
archive used by the PHP community, as in this example:
@example
guix import composer phpunit/phpunit
@end example
Additional options include:
@table @code
@item --recursive
@itemx -r
Traverse the dependency graph of the given upstream package recursively
and generate package expressions for all those packages that are not yet
in Guix.
@end table
@item go
@@ -16211,10 +15983,51 @@ Use @var{host} as the OpenPGP key server when importing a public key.
@cindex format conventions
The @command{guix style} command helps users and packagers alike style
their package definitions and configuration files according to the
latest fashionable trends, or patch them with specific rewrites. It can
either reformat whole files, with the @option{--whole-file} option, or
apply specific @dfn{styling rules} to individual package definitions.
The command provides multiple styling rules, explained below.
latest fashionable trends. It can either reformat whole files, with the
@option{--whole-file} option, or apply specific @dfn{styling rules} to
individual package definitions. The command currently provides the
following styling rules:
@itemize
@item
formatting package definitions according to the project's conventions
(@pxref{Formatting Code});
@item
rewriting package inputs to the ``new style'', as explained below.
@end itemize
The way package inputs are written is going through a transition
(@pxref{package Reference}, for more on package inputs). Until version
1.3.0, package inputs were written using the ``old style'', where each
input was given an explicit label, most of the time the package name:
@lisp
(package
;; @dots{}
;; The "old style" (deprecated).
(inputs `(("libunistring" ,libunistring)
("libffi" ,libffi))))
@end lisp
Today, the old style is deprecated and the preferred style looks like
this:
@lisp
(package
;; @dots{}
;; The "new style".
(inputs (list libunistring libffi)))
@end lisp
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
Package Variants}, for more info on @code{modify-inputs}).
In the vast majority of cases, this is a purely mechanical change on the
surface syntax that does not even incur a package rebuild. Running
@command{guix style -S inputs} can do that for you, whether you're working on
packages in Guix proper or in an external channel.
The general syntax is:
@@ -16277,45 +16090,14 @@ definition of the Coreutils package like so:
@end example
@item inputs
Rewrite package inputs to the ``new style''. This is how you would
rewrite inputs of package @code{whatnot} in your own channel:
Rewrite package inputs to the ``new style'', as described above. This
is how you would rewrite inputs of package @code{whatnot} in your own
channel:
@example
guix style -L ~/my/channel -S inputs whatnot
@end example
The way package inputs are written is going through a transition
(@pxref{package Reference}, for more on package inputs). Until version
1.3.0, package inputs were written using the ``old style'', where each
input was given an explicit label, most of the time the package name:
@lisp
(package
;; @dots{}
;; The "old style" (deprecated).
(inputs `(("libunistring" ,libunistring)
("libffi" ,libffi))))
@end lisp
Today, the old style is deprecated and the preferred style looks like
this:
@lisp
(package
;; @dots{}
;; The "new style".
(inputs (list libunistring libffi)))
@end lisp
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
Package Variants}, for more info on @code{modify-inputs}).
In the vast majority of cases, this is a purely mechanical change on the
surface syntax that does not even incur a package rebuild. Running
@command{guix style -S inputs} can do that for you, whether you're working on
packages in Guix proper or in an external channel.
Rewriting is done in a conservative way: preserving comments and bailing
out if it cannot make sense of the code that appears in an inputs field.
The @option{--input-simplification} option described below provides
@@ -16354,29 +16136,6 @@ rebuild of the affected packages. Furthermore, if a package definition
happens to be using G-expressions already, @command{guix style} leaves
it unchanged.
@item remove-input
@itemx remove-native-input
@itemx remove-propagated-input
These styling rules remove an input from the given package(s).
Removing these packages respects the package syntax, doesn't affect
margin comments or parentheses, and will put all remaining inputs on a
single line if there are less than three.
This is a focused styling rule for use in teams, when updating
build-systems, or removing unwanted development inputs from
native-inputs.
To remove package @var{whatnot} from all inputs, use the
@code{--parameter} option:
@example
guix style -S remove-input --parameter=@var{whatnot}
@end example
It is also possible to do that for a collection of packages by appending
them to the above invocation.
@item git-source
If the @code{home-page} is a Git repository (as per
@code{git-repository-url?}), and the actual Git repository is tagged
@@ -20946,9 +20705,6 @@ The syslog configuration file to use.
@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more
information on the configuration file syntax.
@item @code{pid-file} (default: @code{"/var/run/syslog.pid"})
The pid file for @command{syslogd}.
@item @code{extra-options} (default: @code{'()})
List of extra command-line options for @command{syslog}.
@@ -28827,9 +28583,8 @@ host all all ::1/128 md5"))
@table @asis
@item @code{log-destination} (default: @code{"syslog"})
The logging method to use for PostgreSQL@. Valid values are
@code{"stderr"}, @code{"csvlog"}, @code{"jsonlog"}, @code{"syslog"} and
@code{"eventlog"}. Multiple values are accepted, separated by commas.
The logging method to use for PostgreSQL@. Multiple values are accepted,
separated by commas.
@item @code{hba-file} (default: @code{%default-postgres-hba})
Filename or G-expression for the host-based authentication
@@ -28844,6 +28599,9 @@ is to listen for connections from client applications. If set to
@code{""} PostgreSQL does not listen on any Unix-domain sockets, in
which case only TCP/IP sockets can be used to connect to the server.
By default, the @code{#false} value means the PostgreSQL default value
will be used, which is currently @samp{/tmp}.
@item @code{extra-config} (default: @code{'()})
List of additional keys and values to include in the PostgreSQL config
file. Each entry in the list should be a list where the first element
@@ -36234,15 +35992,6 @@ Launch the app as this group (it must be an existing group).
A list of sockets (as path strings) which gunicorn will be listening
on. This list must contain at least one socket.
@item @code{socket-user} (default: @code{user}) (type: string)
Owner of the directory containing the socket (must be an existing user).
@item @code{socket-group} (default: @code{group}) (type: string)
Group owner of the directory containing the socket (must be an existing group).
@item @code{socket-mode} (default: @code{#o750}) (type: integer)
File mode to use for the directory containing the socket.
@item @code{workers} (default: @code{1}) (type: integer)
The number of workers for the gunicorn app.
@@ -45889,81 +45638,6 @@ mount.
@end table
@end deftp
@subsubheading btrfs-scrub Service
@cindex btrfs-scrub service
@cindex solid state drives, periodic trim
@cindex solid state drives, trim
@c This was copied from the btrfs-scrub manpage, with some Texinfo touch-ups.
@quotation Information
Scrub is a validation pass over all filesystem data and metadata that
detects data checksum errors, basic super block errors, basic metadata
block header errors, and disk read errors.
Scrub is done on a per-device base, if a device is specified to
@command{btrfs scrub start}, then only that device will be
scrubbed. Although btrfs will also try to read other device to find a
good copy, if the mirror on that specified device failed to be read or
pass verification.
If a path of btrfs is specified to @command{btrfs scrub start}, btrfs
will scrub all devices in parallel.
On filesystems that use replicated block group profiles (e.g. RAID1),
read-write scrub will also automatically repair any damage by copying
verified good data from one of the other replicas.
Such automatic repair is also carried out when reading metadata or data
from a read-write mounted filesystem.
@end quotation
@defvar btrfs-scrub-service-type
Type for a service that periodically runs @command{btrfs-scrub} on a
certain device, whose value must be an
@code{<btrfs-scrub-configuration>} object. The service can be
instantiated in its default configuration with:
@lisp
;; This will scrub the root (@file{/}) filesystem.
(service btrfs-scrub-service-type)
;; This will scrub the @file{/gnu/store} filesystem (assuming it's a
;; different filesystem from @file{/}).
(service btrfs-scrub-service-type
(btrfs-scrub-configuration
(to-scrub "/gnu/store")))
@end lisp
@end defvar
@c %start of fragment
@deftp {Data Type} btrfs-scrub-configuration
Available @code{btrfs-scrub-configuration} fields are:
@table @asis
@item @code{package} (default: @code{btrfs-progs}) (type: file-like)
The package providing the @command{btrfs} command.
@item @code{schedule} (default: @code{"0 0 1-7 * 0"}) (type: Shepherd calendar event)
Schedule for launching @command{btrfs-scrub}, expressed as a string in
traditional cron syntax or as a gexp evaluating to a Shepherd calendar
event (@pxref{Timers,,, shepherd, The GNU Shepherd Manual}). By default
this is set to run the 1st Sunday of the month, at 00:00.
@item @code{to-scrub} (default: @code{"/"}) (type: maybe-string)
Device to scrub. It will scrub the root (@file{/}) if not given.
@item @code{extra-arguments} (type: maybe-list-of-strings)
Extra options to append to @command{btrfs scrub start} (run @samp{man
btrfs-scrub.8} for more information). Keep in mind that, by definition,
this service uses the @option{-B} flag (do not background and print
scrub statistics when finished).
@end table
@end deftp
@cindex oom
@cindex out of memory killer
@cindex earlyoom
@@ -46538,26 +46212,6 @@ up not being used much for the reasons described there.
@end deftp
@end defvar
@cindex fwupd
@cindex firmware update
@subsubheading fwupd Service
@defvar fwupd-service-type
This service allows users of supported hardware to update their firmware. The
service's value is a @code{fwupd-configuration} record.
@deftp {Data Type} fwupd-configuration
This is the data type representing the configuration for the fwupd
service.
@table @asis
@item @code{fwupd} (default @code{fwupd})
The fwupd package that will be installed in the system profile.
@end table
@end deftp
@end defvar
@node Hurd Services
@subsection Hurd Services
@@ -49556,7 +49210,7 @@ Return the default GRUB theme used by the operating system if no
record.
It comes with a fancy background image displaying the Guix
logo.
logos.
@end deffn
For example, to override the default resolution, you may use something
@@ -50346,8 +50000,6 @@ accepts store items it receives from the coordinator:
# guix archive --authorize < coordinator-public-key.txt
@end example
@cindex @command{guix deploy, sudo configuration}
@anchor{guix-deploy-via-sudo}
@code{user}, in this example, specifies the name of the user account to log in
as to perform the deployment. Its default value is @code{root}, but root
login over SSH may be forbidden in some cases. To work around this,
@@ -50564,27 +50216,13 @@ small to bootstrap a Guix system from.
@item @code{ssh-key} (default: @code{#f})
If specified, the file name of the SSH private key to use to
authenticate with the remote host. If left unspecified, a temporary SSH
key is used during the early provisioning of the machine, after which
the authentication with the final machine is handled by your SSH client
or agent. It's a good idea to have your public SSH key authorized
declaratively in the @code{operating-system} specification provided, via
the @code{authorized-keys} field of the @code{openssh-configuration}
record. To be able to run @samp{guix deploy} after the initial
provisioning is done, an SSH connection to the root account or a
password-less sudo configuration is needed (@pxref{guix-deploy-via-sudo,
Invoking guix deploy}). For the later, you must also explicitly specify
the @code{user} field, which otherwise defaults to @code{"root"}.
authenticate with the remote host.
@item @code{ssh-public-key} (default: extracted from @code{ssh-key})
If specified, either a public key as returned by
@code{string->public-key} or the path to the SSH public key to use to
authenticate with the remote host.
@item @code{user} (default: @code{"root"})
The user to use for SSH authentication for the @samp{guix deploy}
command once the initial provisioning is complete.
@end table
When deploying a machine for the first time, the following steps are
@@ -50618,36 +50256,36 @@ server.
Once the server has been provisioned and SSH is available, deployment
continues by delegating it to the @code{managed-host-environment-type}.
Depending on their type, x86_64 or AArch64 servers on the Hetzner Cloud
service can be provisioned using BIOS or UEFI boot mode. The @code{(gnu
machine hetzner)} module exports the @code{make-hetzner-os} procedure,
which takes the server type string as an argument (e.g. @code{"cx23"})
and returns a base @code{operating-system} definition compatible with
it.
Servers on the Hetzner Cloud service can be provisioned on the AArch64
architecture using UEFI boot mode, or on the x86_64 architecture using
BIOS boot mode. The @code{(gnu machine hetzner)} module exports the
@code{%hetzner-os-arm} and @code{%hetzner-os-x86} operating systems that
are compatible with those two architectures, and can be used as a base
for defining your custom operating system.
The following example shows the definition of two machines that are
deployed on the Hetzner Cloud service. The first one for an ARM server
type that has 16 shared vCPUs and 32 GB of RAM, the second for an x86_64
server type that has 16 shared vCPUs and 32 GB of RAM.
deployed on the Hetzner Cloud service. The first one uses the
@code{%hetzner-os-arm} operating system to run a server with 16 shared
vCPUs and 32 GB of RAM on the @code{aarch64} architecture, the second
one uses the @code{%hetzner-os-x86} operating system on a server with 16
shared vCPUs and 32 GB of RAM on the @code{x86_64} architecture.
@lisp
(use-modules (gnu machine)
(gnu machine hetzner))
(list (let ((server-type "cax41"))
(machine
(operating-system (make-hetzner-os server-type))
(environment hetzner-environment-type)
(configuration (hetzner-configuration
(server-type server-type)
(ssh-key "/home/charlie/.ssh/id_rsa")))))
(let ((server-type "cpx51"))
(machine
(operating-system (make-hetzner-os server-type))
(environment hetzner-environment-type)
(configuration (hetzner-configuration
(server-type server-type)
(ssh-public-key "/home/charlie/.ssh/id_rsa.pub"))))))
(list (machine
(operating-system %hetzner-os-arm)
(environment hetzner-environment-type)
(configuration (hetzner-configuration
(server-type "cax41")
(ssh-key "/home/charlie/.ssh/id_rsa"))))
(machine
(operating-system %hetzner-os-x86)
(environment hetzner-environment-type)
(configuration (hetzner-configuration
(server-type "cpx51")
(ssh-public-key "/home/charlie/.ssh/id_rsa.pub")))))
@end lisp
@vindex GUIX_HETZNER_API_TOKEN
@@ -51632,7 +51270,7 @@ after receiving @code{SIGHUP}.
After adding
@lisp
(shepherd-signal-action 'reload SIGHUP)
(shepherd-signal-action 'reload SIGHUP))
@end lisp
the @code{reload} action will be available and can be used with
@@ -52280,10 +51918,8 @@ mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
@end example
A quick way to check if your system booted with EFI support is to check
if @file{/sys/firmware/efi} exists. If your system is EFI-based, you
must also mount the ESP partition. Assuming it is @file{/dev/sda1}, you
can do so with:
If your system is EFI-based, you must also mount the ESP partition.
Assuming it is @file{/dev/sda1}, you can do so with:
@example sh
mount /dev/sda1 /mnt/boot/efi
@@ -52569,13 +52205,12 @@ services)}.
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
* Backup: Backup Home Services. Services for backing up User's files.
* Backup: Backup Home Services. Services for backing up User's files.
* Fonts: Fonts Home Services. Services for managing User's fonts.
* Sound: Sound Home Services. Dealing with audio.
* Mail: Mail Home Services. Services for managing mail.
* Messaging: Messaging Home Services. Services for managing messaging.
* Media: Media Home Services. Services for managing media.
* mpv Media Player::
* Niri: Niri window manager. Setting up the Niri.
* Sway: Sway window manager. Setting up the Sway configuration.
* Networking: Networking Home Services. Networking services.
@@ -53504,7 +53139,7 @@ specifying the command to run.
@lisp
(use-modules (gnu) (guix)
(gnu home services shepherd)
(gnu packages code))
(gnu packages idutils))
(define idutils-service
;; Index my 'doc' directory everyday at 12:15PM and 7:15PM.
@@ -53775,32 +53410,6 @@ The list of accepted host key algorithms---e.g.,
@item @code{accepted-key-types} (type: maybe-string-list)
The list of accepted user public key types.
@item @code{control-master} (type: 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}.
@item @code{control-file-name} (type: maybe-string)
The file name of the control socket used for connection sharing, or
@code{"none"} to disable connection sharing.
@item @code{control-persist} (type: 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.
@item @code{sent-environment-variables} (type: 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.
@item @code{environment-variables} (type: 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.
@item @code{extra-content} (default: @code{""}) (type: raw-configuration-string)
Extra content appended as-is to this @code{Host} block in
@file{~/.ssh/config}.
+13 -13
View File
@@ -6,7 +6,7 @@
# Copyright © 2016, 2018 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2018, 2021 Julien Lepiller <julien@lepiller.eu>
# 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>
#
# 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.
# 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,
# 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
# exist.
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" \
$@.tmp $<
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
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="$(srcdir)/%D%/guix.texi" \
--variable master="%D%/guix.texi" \
--variable po="$<" \
--variable pot=$(dummy_pot) \
$(srcdir)/po/doc/po4a.cfg
po/doc/po4a.cfg
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="$(srcdir)/%D%/guix-cookbook.texi" \
--variable po="$<" \
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="%D%/guix-cookbook.texi" \
--variable po="$<" \
--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"
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-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
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="$(srcdir)/%D%/contributing.texi" \
--variable master="%D%/contributing.texi" \
--variable po="$<" \
--variable pot=$(dummy_pot) \
$(srcdir)/po/doc/po4a.cfg
po/doc/po4a.cfg
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
%D%/os-config-%.texi: gnu/system/examples/%.tmpl
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
sed -e s,@,@@,g "$<" > "$@"
cp "$<" "$@"
infoimagedir = $(infodir)/images
dist_infoimage_DATA = \
+2 -2
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; 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 © 2025 Efraim Flashner <efraim@flashner.co.il>
;;;
@@ -61,7 +61,7 @@ TARGET."
;; from the other package sets.
(fold delete %base-packages
(append (map specification->package
'("kbd" "iproute2" "iw" "wireless-tools"))
'("e2fsprogs" "kbd" "iproute2" "iw" "wireless-tools"))
%base-packages-linux)))
(define %system-packages
-127
View File
@@ -43,133 +43,6 @@
(channel-news
(version 0)
(entry (commit "c9dcd203e5356f13b736d5be121fd61874be1a93")
(title
(en "@command{pull} and @command{time-machine} can download channel
files")
(de "@command{pull} und @command{time-machine} können Kanaldateien
herunterladen")
(fr "@command{pull} et @command{time-machine} peuvent télécharger des
fichiers canaux")
(pt "@command{pull} e @command{time-machine} podem baixar arquivos de canal"))
(body
(en "The @command{guix pull} and @command{guix time-machine} can now
be passed a URL as their @option{-C} (or @option{--channels}) option. For
instance, the command below pulls from the latest successfully-evaluated
commit of the @code{master} branch:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Alternatively, one may also specify a @uref{https://swhid.org, SWHID} that
points to a channel file:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
To make that possible, channel files are now evaluated in an isolated
environment (a @dfn{sandbox}), which prevents them from evaluating arbitrary
code; if you have existing channel files that rely on \"non-standard\"
features, you may now need to pass @option{--unsafe-channel-evaluation} to
evaluate them. Furthermore, when fetching channels from a downloaded file,
only @dfn{trusted channels} are allowed---one may specify them in
@file{~/.config/guix/trusted-channels.scm}.
See @samp{info \"(guix)Invoking guix pull\"} for more information.")
(de "Den Befehlen @command{guix pull} und @command{guix time-machine}
kann jetzt eine URL mit der Option @option{-C} (oder @option{--channels})
übergeben werden. Zum Beispiel lädt der folgende Befehl vom neuesten
erfolgreich ausgewerteten Commit des @code{master}-Branches herunter:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Als Alternative kann man auch eine @uref{https://swhid.org, SWHID} angeben, die
auf eine Kanaldatei verweist:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Damit das möglich ist, werden Kanaldateien jetzt in einer isolierten Umgebung
ausgewertet (einer @dfn{Sandbox}), wodurch sie keinen beliebigen Code mehr
ausführen können. Wenn Sie in bestehenden Dateien solche über den Standard
hinausgehenden Funktionen benutzt haben, kann dazu jetzt verlangt werden, dass
Sie @option{--unsafe-channel-evaluation} übergeben, um sie auszuwerten. Des
Weiteren dürfen Kanäle aus heruntergeladenen Dateien nur als
@dfn{vertrauenswürdig} markierte Kanäle verwenden, die Sie in
@file{~/.config/guix/trusted-channels.scm} angeben.
Siehe @samp{info \"(guix.de) Aufruf von guix pull\"} für mehr Informationen.")
(fr "Les commandes @command{guix pull} et @command{guix time-machine}
peuvent dorénavant prendre une URL pour l'option @option{-C} (ou
@option{--channels}). Par exemple, la commande ci-dessous tire la dernière
révision de la branch @code{master} à avoir été évaluée avec succès:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
On peut également spécifier un @uref{https://swhid.org, SWHID} qui pointe vers
un fichier canaux:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Pour permettre cela, les fichiers canaux sont maintenant évalués dans un
environnement isolé (un @dfn{bac à sable}), ce qui les empêche d'évaluer du
code arbitraire; lorsqu'on a des fichiers canaux qui dépendent de
fonctionnalités «non standard», il peut dorénavant être nécessaire de passer
l'option @option{--unsafe-channel-evaluation} pour les évaluer. De plus,
lorsqu'un fichier canaux est téléchargé, seuls les @dfn{canaux de confiance}
sont admis---on peut les énumérer dans
@file{~/.config/guix/trusted-channels.scm}.
Voir @samp{info \"(guix.fr) Invoquer guix pull\"} pour plus
d'informations.")
(pt "Os comandos @command{guix pull} e @command{guix time-machine}
podem receber uma URL como opção para @option{-C} (or @option{--channels}).
Por exemplo, o comando abaixo busca do commit mais recente evaluado com
sucesso do ramo @code{master}:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Alternativamente, pode-se também especificar uma @uref{https://swhid.org,
SWHID} que aponta para um arquivo de canal:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Para tornar isso possível, arquivos de canal agora são evaluados em um
ambiente isolado (uma caixinha de areia, vulgo @dfn{sandbox}), o que os impede
de evaluar código arbitrário; se você tem arquivos de canal que dependem de
recursos \"não padrão\", pode ser necessário que você passe a opção
@option{--unsafe-channel-evaluation} para evaluá-los. Além disso, quando se
buscam canais de um arquivo baixado, somente @dfn{canais confiáveis} são
permitidos---é possível especificá-los em
@file{~/.config/guix/trusted-channels.scm}.
Veja @samp{info \"(guix.pt_BR)Invocando guix pull\"} para mais informação.")))
(entry (commit "a7c8e68dc51144a6d3981b770aca9c4897fc7c0c")
(title
(en "Records can refer to inherited values of thunked fields")
+1 -28
View File
@@ -514,7 +514,6 @@ of Rebar and Mix build systems and Hex.pm importer."
"gnu/packages/autogen.scm"
"gnu/packages/autotools.scm"
"gnu/packages/bison.scm"
"gnu/packages/compiler-tools.scm"
"gnu/packages/m4.scm"
"gnu/packages/oyacc.scm"
"gnu/packages/re2c.scm")))
@@ -662,12 +661,6 @@ challenges"))
"gnu/system/examples/lightweight-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
(team 'electronics
#:name "Electronics team"
@@ -1248,11 +1241,6 @@ the \"texlive\" importer."
"guix/build-system/zig.scm")))
(define-member (person "Anderson Torres"
"anderson.torres.8519@gmail.com"
"AndersonTorres")
community translations)
(define-member (person "Eric Bavier"
"bavier@posteo.net"
"bavier")
@@ -1556,7 +1544,7 @@ the \"texlive\" importer."
(define-member (person "Danny Milosavljevic"
"dannym@friendly-machines.com"
"daym")
bootstrap dotnet hpc python rust science)
bootstrap hpc python rust science)
(define-member (person "Andy Tai"
"atai@atai.org"
@@ -1678,21 +1666,6 @@ the \"texlive\" importer."
"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)
(or (hash-ref %teams (string->symbol name))
-2
View File
@@ -446,11 +446,9 @@ when booting a root file system on a Btrfs subvolume."
(modules (menu-entry-multiboot-modules entry)))
#~(format port "
menuentry ~s {
~a
multiboot ~a root=~a~a~a
}~%"
#$label
#$(grub-root-search device kernel)
#$kernel
#$(device-name->hurd-device-name device-name #:disk disk)
(string-join (list #$@arguments) " " 'prefix)
+24 -90
View File
@@ -74,37 +74,16 @@ Return the value associated with OPTION, or #f on failure."
(loop (absolute target) (+ depth 1))
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."
(define (scope dir)
(in-vicinity 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)))))
(string-append root (if (string-suffix? "/" root) "" "/") dir))
(mkdir-p (scope "dev"))
;; XXX: We must have `/dev/console` otherwise `console-run` tries to
;; create it while the file-system is still read-only.
(for-each (lambda (file)
(call-with-output-file (scope file)
(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"
))
;; Don't create /dev/null etc just yet; the store
;; messes-up the permission bits.
;; Don't create /dev/console, /dev/vcs, etc.: they are created by
;; console-run on first boot.
(mkdir-p (scope "servers"))
(for-each (lambda (file)
@@ -122,47 +101,22 @@ Return the value associated with OPTION, or #f on failure."
"suspend"))
(mkdir-p (scope "servers/socket"))
(mkdir-p (scope "servers/bus/pci"))
;; Set the 'gnu.translator' extended attribute for passive translator
;; 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"))))
;; Don't create /servers/socket/1 & co: runsystem does that on first boot.
(for-each scope-set-translator servers)
(define devices
'())
(for-each scope-set-translator devices))
;; TODO: Set the 'gnu.translator' extended attribute for passive translator
;; settings?
(mkdir-p (scope "servers/bus/pci")))
(define (passive-translator-xattr? file-name)
"Return true if FILE-NAME has an extended @code{gnu.translator} attribute
set.
Note that reading \"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."
(and (file-exists? file-name)
(catch 'system-error
(lambda _ (not (string-null? (getxattr file-name "gnu.translator"))))
(lambda args
(if (= ENODATA (system-error-errno args))
#f
(apply throw args))))))
set."
(catch 'system-error
(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)
"Return true if @file{showtrans} finds a translator installed on FILE-NAME."
@@ -182,11 +136,7 @@ needed."
(passive-translator-installed? file-name)))
(define* (set-translator file-name command #:optional (mode #o600))
"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."
"Setup translator COMMAND on FILE-NAME."
(unless (translated? file-name)
(let ((dir (dirname file-name)))
(unless (directory-exists? dir)
@@ -218,7 +168,7 @@ needed."
"Make some of the device nodes needed on GNU/Hurd."
(define (scope dir)
(in-vicinity root dir))
(string-append root (if (string-suffix? "/" root) "" "/") dir))
(define scope-set-translator
(match-lambda
@@ -230,19 +180,8 @@ needed."
(define (mkdir* dir)
(let ((dir (scope dir)))
(unless (file-exists? 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))))
(unless (file-exists? dir)
(mkdir-p dir))))
(define servers
'(("servers/bus/pci" ("/hurd/pci-arbiter"))
@@ -259,14 +198,8 @@ needed."
(define devices
`(("dev/full" ("/hurd/null" "--full") #o666)
("dev/null" ("/hurd/null") #o666)
;; The random translators, especially /dev/urandom, need to be non-passive
;; When they exist in the file-system and reference /var/lib/random-seed
;; 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/random" ("/hurd/random" "--seed-file" "/var/lib/random-seed")
#o644)
("dev/zero" ("/hurd/storeio" "--store-type=zero") #o666)
("dev/console" ("/hurd/term" "/dev/console" "device" "console"))
@@ -351,6 +284,7 @@ needed."
(rename-file (scope "dev/console") (scope "dev/console-")))
(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/1" (scope "dev/stdout")))
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
+1 -1
View File
@@ -322,7 +322,7 @@ register-closure."
;; Populate /dev.
(when make-device-nodes
(make-device-nodes #:root root))
(make-device-nodes root))
(when register-closures?
(unless copy-closures?
+12 -10
View File
@@ -125,16 +125,18 @@ entry will be expired even if it has been accessed recently.")
(requirement shepherd-requirement)
(modules '((shepherd support))) ;for '%user-runtime-dir'
(start
#~(make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))
;; Inherit graphical session environment.
#:environment-variables (environ)))
#~(lambda args
((make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))
;; Inherit graphical session environment.
#:environment-variables (environ))
args)))
(stop #~(make-systemd-destructor))
(documentation "Start 'gpg-agent', the GnuPG passphrase
agent, with support for handling OpenSSH material."))))
-68
View File
@@ -70,11 +70,6 @@
openssh-host-proxy-command
openssh-host-host-key-algorithms
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
proxy-jump
proxy-jump-host-name
@@ -89,9 +84,6 @@
(define (serialize-field-name name)
(match name
('accepted-key-types "PubkeyAcceptedKeyTypes")
('sent-environment-variables "SendEnv")
('environment-variables "SetEnv")
('control-file-name "ControlPath")
(_
(let ((name (let ((str (symbol->string name)))
(if (string-suffix? "?" str)
@@ -138,14 +130,6 @@
(define-maybe string)
(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)
(string-append value "\n"))
(define raw-configuration-string? string?)
@@ -158,33 +142,6 @@
(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>
(proxy-command command)
proxy-command?
@@ -318,31 +275,6 @@ through before connecting to the server.")
(accepted-key-types
maybe-string-list
"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
(raw-configuration-string "")
"Extra content appended as-is to this @code{Host} block in
+22 -13
View File
@@ -208,7 +208,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/cobol.scm \
%D%/packages/code.scm \
%D%/packages/commencement.scm \
%D%/packages/compiler-tools.scm \
%D%/packages/compression.scm \
%D%/packages/compton.scm \
%D%/packages/computer-architecture.scm \
@@ -235,7 +234,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/darwin.scm \
%D%/packages/data-language.scm \
%D%/packages/databases.scm \
%D%/packages/datalog.scm \
%D%/packages/datamash.scm \
%D%/packages/datastructures.scm \
%D%/packages/dav.scm \
@@ -731,6 +729,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/zig.scm \
%D%/packages/zig-xyz.scm \
%D%/packages/zile.scm \
%D%/packages/zwave.scm \
\
%D%/services.scm \
%D%/services/admin.scm \
@@ -757,7 +756,6 @@ GNU_SYSTEM_MODULES = \
%D%/services/docker.scm \
%D%/services/authentication.scm \
%D%/services/file-sharing.scm \
%D%/services/firmware.scm \
%D%/services/games.scm \
%D%/services/ganeti.scm \
%D%/services/getmail.scm \
@@ -999,9 +997,9 @@ dist_patch_DATA = \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/agg-2.5-gcc8.patch \
%D%/packages/patches/akonadi-paths.patch \
%D%/packages/patches/akonadi-not-relocatable.patch \
%D%/packages/patches/akonadi-timestamps.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/ibus-anthy-fix-tests.patch \
%D%/packages/patches/ibus-table-paths.patch \
@@ -1170,6 +1168,7 @@ dist_patch_DATA = \
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
%D%/packages/patches/ctranslate2-local-build.patch \
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cups-relax-root-ownership-check.patch \
%D%/packages/patches/cura-engine-gcc-14.patch \
@@ -1180,6 +1179,8 @@ dist_patch_DATA = \
%D%/packages/patches/curlftpfs-fix-memory-leak.patch \
%D%/packages/patches/curlftpfs-fix-no_verify_hostname.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvc5-reproducible-build.patch \
%D%/packages/patches/cvc5-symfpu-compatibility.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-fix-time-h.patch \
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
@@ -1299,7 +1300,6 @@ dist_patch_DATA = \
%D%/packages/patches/fbgemm-use-system-libraries.patch \
%D%/packages/patches/fbreader-curl-7.62.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-demo-init.patch \
%D%/packages/patches/fenics-dolfin-boost.patch \
@@ -1366,8 +1366,16 @@ dist_patch_DATA = \
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
%D%/packages/patches/ganeti-haskell-pythondir.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-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/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
@@ -1507,7 +1515,6 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glycin-sandbox-Adapt-bwrap-invocation.patch \
%D%/packages/patches/gmime-disable-tests.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
@@ -1524,6 +1531,7 @@ dist_patch_DATA = \
%D%/packages/patches/gnumach-version.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
%D%/packages/patches/gnutls-no-which.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
%D%/packages/patches/gobject-introspection-cc.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \
@@ -1659,7 +1667,6 @@ dist_patch_DATA = \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/ispell-for-linphone-cmake.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-armv7-support.patch \
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
@@ -1742,6 +1749,7 @@ dist_patch_DATA = \
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
%D%/packages/patches/kismet-unbundle-boost.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/kmscon-8-runtime-keymap-switch.patch \
%D%/packages/patches/knot-remove-runtime-deps.patch \
@@ -1856,7 +1864,6 @@ dist_patch_DATA = \
%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-unix_chkpwd.patch \
%D%/packages/patches/linux-shmem-hurd-xattr.patch \
%D%/packages/patches/lirc-localstatedir.patch \
%D%/packages/patches/lirc-reproducible-build.patch \
%D%/packages/patches/llvm-13-gcc-14.patch \
@@ -1878,6 +1885,7 @@ dist_patch_DATA = \
%D%/packages/patches/lua-5.x-search-path-helpers.patch \
%D%/packages/patches/lua-lgi-fix-pango.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/luit-posix.patch \
%D%/packages/patches/lxc-no-static-bin.patch \
@@ -1936,6 +1944,7 @@ dist_patch_DATA = \
%D%/packages/patches/modglue-fix-build.patch \
%D%/packages/patches/modem-manager-fix-test-wrapper.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.9.1-add-MONO_CREATE_IMAGE_VERSION.patch \
%D%/packages/patches/mono-1.9.1-fixes.patch \
@@ -1976,7 +1985,6 @@ dist_patch_DATA = \
%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-2587.patch \
%D%/packages/patches/netsurf-message-timestamp.patch \
@@ -2002,13 +2010,10 @@ dist_patch_DATA = \
%D%/packages/patches/nss-3.115-disable-broken-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/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-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.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/ocaml-ctypes-test-oo.patch \
%D%/packages/patches/ocaml-multiple-definitions.patch \
@@ -2071,6 +2076,7 @@ dist_patch_DATA = \
%D%/packages/patches/openssl-3.0-c-rehash-in.patch \
%D%/packages/patches/openssl-hurd64.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/orbit2-fix-array-allocation-32bit.patch \
%D%/packages/patches/orca-fix-gst-init-check-call.patch \
@@ -2109,6 +2115,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-clarabel-blas.patch \
%D%/packages/patches/python-daemon-relax-lockfile.patch \
%D%/packages/patches/python-docrepr-fix-tests.patch \
%D%/packages/patches/python-gpg-setup-72.patch \
%D%/packages/patches/python-hdmedians-replace-nose.patch \
%D%/packages/patches/python-jinja2-fragments-modify-conftest-py.patch \
%D%/packages/patches/python-louvain-fix-test.patch \
@@ -2280,6 +2287,8 @@ dist_patch_DATA = \
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch \
%D%/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch \
%D%/packages/patches/quilt-grep-compat.patch \
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
@@ -2450,6 +2459,7 @@ dist_patch_DATA = \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/libsequoia-fix-ffi-Makefile.patch \
%D%/packages/patches/libsequoia-remove-store.patch \
%D%/packages/patches/shakespeare-spl-fix-grammar.patch \
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
%D%/packages/patches/showtime-python-3.11-compat.patch \
@@ -2612,7 +2622,6 @@ dist_patch_DATA = \
%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-x86-no-sse.patch \
%D%/packages/patches/websocketpp-boost-compat.patch \
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
%D%/packages/patches/wmctrl-64-fix.patch \
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
+86 -205
View File
@@ -2,7 +2,6 @@
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
;;; Copyright © 2025 Owen T. Heisler <writer@owenh.net>
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2026 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,7 +36,6 @@
#:use-module (gnu system)
#:use-module (guix base32)
#:use-module (guix colors)
#:use-module (guix deprecation)
#:use-module (guix derivations)
#:use-module (guix diagnostics)
#:use-module (guix gexp)
@@ -57,7 +55,6 @@
#:use-module (ice-9 string-fun)
#:use-module (ice-9 textual-ports)
#:use-module (json)
#:use-module ((rnrs base) #:select (assert))
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-2)
#:use-module (srfi srfi-34)
@@ -69,10 +66,8 @@
#:use-module (ssh session)
#:use-module (ssh sftp)
#:use-module (ssh shell)
#:export (%hetzner-os-arm ;deprecated
%hetzner-os-x86 ;deprecated
make-hetzner-os
#:export (%hetzner-os-arm
%hetzner-os-x86
deploy-hetzner
hetzner-configuration
hetzner-configuration-allow-downgrades?
@@ -87,7 +82,6 @@
hetzner-configuration-server-type
hetzner-configuration-ssh-key
hetzner-configuration-ssh-public-key
hetzner-configuration-user
hetzner-configuration?
hetzner-environment-type))
@@ -104,7 +98,7 @@
;; Operating system for arm servers using UEFI boot mode.
(define %hetzner-os-arm/efi
(define %hetzner-os-arm
(operating-system
(host-name "guix-arm")
(bootloader
@@ -134,9 +128,9 @@
;; Operating system for x86 servers using BIOS boot mode.
(define %hetzner-os-x86/bios
(define %hetzner-os-x86
(operating-system
(inherit %hetzner-os-arm/efi)
(inherit %hetzner-os-arm)
(host-name "guix-x86")
(bootloader
(bootloader-configuration
@@ -152,51 +146,6 @@
(type "ext4"))
%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)
"Authorize the OS with the public signing key of the current machine."
(if (file-exists? %public-key-file)
@@ -242,11 +191,6 @@ Have you run 'guix archive --generate-key'?")
;;; 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
make-hetzner-configuration hetzner-configuration? this-hetzner-configuration
(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
(default #t))
(delete? hetzner-configuration-delete? ; boolean
(default #t))
(default #f))
(labels hetzner-configuration-labels ; list of strings
(default '()))
(location hetzner-configuration-location ; #f | string
@@ -269,39 +213,26 @@ Have you run 'guix archive --generate-key'?")
(default #t))
(ipv6 hetzner-configuration-ipv6 ; boolean | string
(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)
(default (and=> (hetzner-configuration-ssh-key
this-hetzner-configuration)
public-key-from-file))
(sanitize (lambda (value)
(if (string? value)
(public-key-from-file value)
value))))
(ssh-key hetzner-configuration-ssh-key* ; #f | string
(default #f))
(user hetzner-configuration-user ;string
(default "root")))
(default (public-key-from-file (hetzner-configuration-ssh-key this-hetzner-configuration)))
(sanitize
(lambda (value)
(if (string? value) (public-key-from-file value) value))))
(ssh-key hetzner-configuration-ssh-key
(default #f))) ; #f | string
(define (hetzner-configuration-ssh-key config)
(or (%hetzner-ssh-key-file)
(hetzner-configuration-ssh-key* config)))
(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)))
(define (hetzner-configuration-ssh-key-fingerprint config)
"Return the SSH public key fingerprint of CONFIG as a string."
(and-let* ((pubkey (hetzner-configuration-ssh-public-key config))
(hash (get-public-key-hash pubkey 'md5)))
(bytevector->hex-string hash)))
(define (public-key->string-with-type public-key)
"Return the SSH public key string of PUBLIC-KEY, a Guile-SSH public key
object, in the expected format for the Hetzner API."
(format #f "ssh-~a ~a" (get-key-type public-key)
(public-key->string public-key)))
(define (hetzner-configuration-ssh-key-public config)
"Return the SSH public key of CONFIG as a string."
(let ((public-key (hetzner-configuration-ssh-public-key config)))
(format #f "ssh-~a ~a" (get-key-type 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
;; duplicate symlink conflict in the store.
(os ((@@ (gnu machine) %machine-operating-system) target)))
(match-record config <hetzner-configuration>
( authorize? allow-downgrades? build-locally? user)
(machine
(inherit target)
(operating-system
(if authorize?
(operating-system-authorize os)
os))
(environment managed-host-environment-type)
(configuration
(machine-ssh-configuration
(allow-downgrades? allow-downgrades?)
(authorize? authorize?)
(build-locally? build-locally?)
(host-name (hetzner-server-public-ipv4 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)))))))
(machine
(inherit target)
(operating-system
(if (hetzner-configuration-authorize? config)
(operating-system-authorize os)
os))
(environment managed-host-environment-type)
(configuration
(machine-ssh-configuration
(allow-downgrades? (hetzner-configuration-allow-downgrades? config))
(authorize? (hetzner-configuration-authorize? config))
(build-locally? (hetzner-configuration-build-locally? config))
(host-name (hetzner-server-public-ipv4 server))
(identity (hetzner-configuration-ssh-key config))
(system (hetzner-server-system server)))))))
(define (hetzner-machine-location machine)
"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."
(let* ((os (machine-operating-system machine))
(system (hetzner-server-system server))
(type-name (hetzner-server-type-name (hetzner-server-type server)))
(arm? (equal? "arm" (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)))
`(operating-system
(host-name ,(operating-system-host-name os))
(timezone "Etc/UTC")
(bootloader (bootloader-configuration
(bootloader ,(if efi?
'grub-efi-bootloader
'grub-bootloader))
(targets ,(if efi?
'(list "/boot/efi")
'(list "/dev/sda")))
(terminal-outputs '(console))))
(bootloader ,(cond (arm? 'grub-efi-bootloader)
(x86? 'grub-bootloader)))
(targets ,(cond (arm? '(list "/boot/efi"))
(x86? '(list "/dev/sda"))))
(terminal-outputs '(console))))
(initrd-modules (append
,(cond (arm? '(list "sd_mod" "virtio_scsi"))
(x86? '(list "virtio_scsi")))
%base-initrd-modules))
(file-systems (cons* (file-system
(mount-point "/")
(device "/dev/sda1")
(type ,root-fs-type))
,@(if efi?
'((file-system
(mount-point "/boot/efi")
(device "/dev/sda15")
(type "vfat")))
'())
%base-file-systems))
(file-systems ,(cond
(arm? `(cons* (file-system
(mount-point "/")
(device "/dev/sda1")
(type ,root-fs-type))
(file-system
(mount-point "/boot/efi")
(device "/dev/sda15")
(type "vfat"))
%base-file-systems))
(x86? `(cons* (file-system
(mount-point "/")
(device "/dev/sda1")
(type ,root-fs-type))
%base-file-systems))))
(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
(openssh-configuration
(openssh openssh-sans-x)
(permit-root-login 'prohibit-password)))
(openssh openssh-sans-x)
(permit-root-login 'prohibit-password)))
%base-services)))))
(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)
"Find the SSH key for MACHINE on the Hetzner API."
(and-let* ((config (machine-configuration machine))
(public-key (hetzner-configuration-ssh-public-key config))
(expected (public-key->fingerprint public-key)))
(let* ((config (machine-configuration machine))
(expected (hetzner-configuration-ssh-key-fingerprint config)))
(find (lambda (ssh-key)
(equal? expected (hetzner-ssh-key-fingerprint ssh-key)))
(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)
(let* ((config (machine-configuration machine))
(api (hetzner-configuration-api config))
(pubkey (hetzner-configuration-ssh-public-key config))
(_ (assert pubkey))
(ssh-key (hetzner-api-ssh-key-create
api
(public-key->fingerprint pubkey)
(public-key->string-with-type pubkey)
(hetzner-configuration-api config)
(hetzner-configuration-ssh-key-fingerprint config)
(hetzner-configuration-ssh-key-public config)
#:labels (hetzner-configuration-labels config))))
(format #t "successfully created ssh key for '~a'\n" name)
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.")
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)
"Create the Hetzner server for 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)))
(format #t "creating '~a' server for '~a'...\n" server-type name)
(let* ((ssh-key (hetzner-machine-ssh-key machine))
(_ (assert ssh-key)) ;required during provisioning
(ipv4 (hetzner-configuration-ipv4 config))
(ipv6 (hetzner-configuration-ipv6 config))
(api (hetzner-configuration-api config))
(server (hetzner-api-server-create
api
(machine-display-name machine)
#:ssh-keys (list ssh-key)
(list ssh-key)
#:ipv4 (if (string? ipv4)
(hetzner-primary-ip-id (hetzner-resolve-ip api ipv4))
ipv4)
@@ -613,15 +527,13 @@ values: list of output lines returned by CMD and its exit code."
(write-known-host! ssh-session)))
(define (hetzner-machine-enable-rescue-system machine server)
"Enable the rescue system on the Hetzner SERVER for MACHINE, provisioning it
with the configured SSH key, or a dynamically created temporary one."
"Enable the rescue system on the Hetzner SERVER for MACHINE."
(let* ((name (machine-display-name machine))
(config (machine-configuration machine))
(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)
(let ((action (hetzner-api-server-enable-rescue-system
api server #:ssh-keys ssh-keys)))
(let ((action (hetzner-api-server-enable-rescue-system api server ssh-keys)))
(format #t "successfully enabled rescue system on '~a'\n" name)
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)
(define (hetzner-machine-rescue-install-os machine ssh-session server)
"Init a minimal Guix System to bootstrap from."
(let ((name (machine-display-name machine))
(os (hetzner-machine-bootstrap-os-form machine server)))
(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
# rescue system to the tmp directory of the new Guix system.
mkdir -p /mnt/tmp/gnu
mkdir -p /gnu
mount --bind /mnt/tmp/gnu /gnu
mkdir -p /mnt/tmp/gnu/store
mkdir -p /gnu/store
mount --bind /mnt/tmp/gnu/store /gnu/store
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
chmod +x /tmp/guix-install.sh
@@ -754,8 +665,7 @@ apt-get install cloud-initramfs-growroot uidmap --assume-yes"))
action)))
(define (hetzner-machine-provision machine)
"Provision a Guix System bootstrap server for MACHINE on the Hetzner Cloud
service."
"Provision a server for MACHINE on the Hetzner Cloud service."
(with-exception-handler
(lambda (exception)
(let ((config (machine-configuration machine))
@@ -770,10 +680,12 @@ service."
(let ((ssh-session (hetzner-machine-wait-for-ssh machine server)))
(hetzner-machine-rescue-install-packages machine ssh-session)
(hetzner-machine-rescue-partition machine ssh-session)
(hetzner-machine-rescue-install-os machine ssh-session server))
(hetzner-machine-reboot machine server)
(hetzner-machine-authenticate-host machine server)
server))))
(hetzner-machine-rescue-install-os machine ssh-session server)
(hetzner-machine-reboot machine server)
(sleep 5)
(hetzner-machine-authenticate-host machine server)
server)))
#:unwind? #t))
(define (machine-not-provisioned machine)
(formatted-message
@@ -799,47 +711,16 @@ an environment type of 'hetzner-environment-type'."
;;; 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)
"Internal implementation of 'deploy-machine' for 'machine' instances with an
environment type of 'hetzner-environment-type'."
(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)))))
;;;
+8 -90
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
;;; Copyright © 2026 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,7 +19,6 @@
(define-module (gnu machine hetzner http)
#:use-module (guix diagnostics)
#:use-module (guix i18n)
#:use-module (guix memoization)
#:use-module (guix records)
#:use-module (ice-9 iconv)
#:use-module (ice-9 match)
@@ -53,7 +51,6 @@
hetzner-api-action-wait
hetzner-api-actions
hetzner-api-create-ssh-key
hetzner-api-images
hetzner-api-locations
hetzner-api-primary-ips
hetzner-api-request-body
@@ -84,23 +81,6 @@
hetzner-error-code
hetzner-error-message
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-dns-ptr
hetzner-ipv4-id
@@ -168,7 +148,6 @@
hetzner-ssh-key?
make-hetzner-action
make-hetzner-error
make-hetzner-image
make-hetzner-ipv4
make-hetzner-ipv6
make-hetzner-location
@@ -189,19 +168,7 @@
(make-parameter (getenv "GUIX_HETZNER_API_TOKEN")))
;; Ideally this would be a Guix image. Maybe one day.
(define %hetzner-default-server-image
(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))))))))))
(define %hetzner-default-server-image "debian-11")
;; Falkenstein, Germany
(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"
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>
make-hetzner-server-type hetzner-server-type? json->hetzner-server-type
(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))
(define* (hetzner-api-server-create
api name #:key
ssh-keys
api name ssh-keys
#:key
(ipv4 #f)
(ipv6 #f)
(image (%hetzner-default-server-image api))
(image %hetzner-default-server-image)
(labels '())
(location %hetzner-default-server-location)
(server-type %hetzner-default-server-type)
@@ -690,11 +620,7 @@ initial system provisioning phase, before Guix System takes over."
,@(if (integer? ipv6) `(("ipv6" . ,ipv6)) '())))
("location" . ,location)
("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?)))))
(hetzner-api-action-wait api (hetzner-api-body-action body))
(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))))
(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."
(let* ((ssh-keys (and ssh-keys
(apply vector (map hetzner-ssh-key-id ssh-keys))))
(let* ((ssh-keys (apply vector (map hetzner-ssh-key-id ssh-keys)))
(body (hetzner-api-post
api (hetzner-server-path server "/actions/enable_rescue")
#:body `(,@(if ssh-keys
`(("ssh_keys" . ,ssh-keys))
'())
#:body `(("ssh_keys" . ,ssh-keys)
("type" . ,type)))))
(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."
(apply hetzner-api-list api "/server_types" "server_types"
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
View File
@@ -164,12 +164,6 @@ flags."
%default-package-module-path
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 it after '%package-module-path' so that '%load-path' contains user
;; directories, allowing patches in $GUIX_PACKAGE_PATH to be found.
@@ -178,7 +172,7 @@ flags."
(if (string=? directory %distro-root-directory)
(string-append directory "/gnu/packages/patches")
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.
;; See <https://github.com/alezost/guix.el/issues/30>.
+4 -4
View File
@@ -1972,7 +1972,7 @@ maintenance releases.")
(define-public dhcpcd
(package
(name "dhcpcd")
(version "10.3.2")
(version "10.3.0")
(source
(origin
(method git-fetch)
@@ -1981,7 +1981,7 @@ maintenance releases.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1z5rpi0n2vwhkh3c4d0dxwp38fl18br58jpy7kzh97gzg3gpk5dl"))))
(base32 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
(inputs (list bash-minimal coreutils-minimal eudev sed))
(build-system gnu-build-system)
(arguments
@@ -4711,7 +4711,7 @@ information tool.")
(define-public fastfetch-minimal
(package
(name "fastfetch-minimal")
(version "2.63.1")
(version "2.60.0")
(source
(origin
(method git-fetch)
@@ -4720,7 +4720,7 @@ information tool.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "13a5maf8jxyga5bga96s40binqp2i54pjlipsnqgfj85q01yzkg9"))
(base32 "089577qgxd63zqzd00fz381bfpmj6pwlmy2zfan9r6gbm1jvj4i8"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")
+15 -22
View File
@@ -1230,35 +1230,28 @@ main repository.")
(define-public fdroidcl
(package
(name "fdroidcl")
(version "0.8.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Hoverth/fdroidcl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1bflahcsjarv4v6r61knl5gc5iydh1lwvqjgffhxr4pis4qfsqsa"))
;; XXX: Reported upstream.
;; See: <https://github.com/Hoverth/fdroidcl/pull/92>.
(patches (search-patches "fdroidcl-fix-tests.patch"))))
(version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mvdan/fdroidcl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1s3fszlyyab9gbdrg52zcbafsb1mgb770skg7b3gj7f3pzfnra5n"))))
(build-system go-build-system)
(arguments
(list
#:install-source? #f
#:import-path "mvdan.cc/fdroidcl"))
(inputs
(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")
`(#:import-path "mvdan.cc/fdroidcl"
#:tests? #f ;requires internet access
#:install-source? #f))
(inputs (list go-github-com-kr-pretty go-github-com-schollz-progressbar-v3))
(synopsis "F-Droid desktop client")
(description
"While the Android client integrates with the system with regular update
checks and notifications, this is a simple command line client that talks to
connected devices via ADB.")
(home-page "https://github.com/mvdan/fdroidcl")
(license license:bsd-3)))
(define-public emacs-fdroid
+14
View File
@@ -2177,6 +2177,20 @@ interchange format for scientific data. This package contains the Python
implementation of the ASDF Standard.")
(license license:bsd-3)))
(define-public python-asdf-3
(package
(inherit python-asdf)
(version "3.5.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "asdf" version))
(sha256
(base32 "0scnw5y4x5k3vyfylq0w612b662xlccx3gsscaw082zlv2yxfyh4"))))
(propagated-inputs
(modify-inputs propagated-inputs
(prepend python-asdf-transform-schemas)))))
(define-public python-asdf-astropy
(package
(name "python-asdf-astropy")
+45 -214
View File
@@ -51,7 +51,7 @@
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
;;; 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 Andrew Wong <wongandj@icloud.com>
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
@@ -63,7 +63,6 @@
;;; Copyright © 2026 Noé Lopez <noelopez@free.fr>
;;; 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.
;;;
@@ -128,7 +127,6 @@
#:use-module (gnu packages linphone)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages logging)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
@@ -196,45 +194,6 @@
#:use-module (srfi srfi-26)
#: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
(package
(name "opensles")
@@ -3471,7 +3430,7 @@ from being able to mix multiple JACK audio streams.")
(define-public pipemixer
(package
(name "pipemixer")
(version "0.5.0")
(version "0.4.1")
(source
(origin
(method git-fetch)
@@ -3480,8 +3439,19 @@ from being able to mix multiple JACK audio streams.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "104h2zdhqx5gdddnb7v7rhrflznh4v7d4g3s6vk2mxwf938zgm72"))))
(base32 "0fvnvr74q5khxlj5sylfnkblydmwgdbvj04mhdqw0zzmfqwignhd"))))
(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
(list pkg-config))
(inputs
@@ -3881,58 +3851,6 @@ provided by Pipewire.")
cross-platform audio input/output stream library.")
(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
(package
(name "python-pulsectl")
@@ -4037,40 +3955,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}.")
(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
(package
(name "python-soundfile")
@@ -4581,33 +4465,6 @@ This includes device enumeration and initialization, file loading, and
streaming.")
(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
(package
(name "pa-notify")
@@ -5012,42 +4869,6 @@ using Guix System.")
;; GNU Library (not Lesser) General Public License.
(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
(package
(name "redumper")
@@ -7208,6 +7029,32 @@ developing fully accurate DirectX Audio runtime libraries.")
license:expat
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
(package
(name "darkice")
@@ -7418,7 +7265,6 @@ as is the case with audio plugins.")
(find-files "bin")))))))))
(inputs
(list alsa-lib
bash-minimal
ffmpeg
fluidsynth
file
@@ -7476,8 +7322,8 @@ default and preferred audio driver but also supports native drivers like ALSA.")
;;; This package variant tracks the latest in-development 2.6 release.
(define-public carla-2.6
(let ((commit "294a80145e39c0755ab9073d90fd8b9524fbfc84")
(revision "1"))
(let ((commit "aa400535b31c67f4b6c1b28e6e20e4d4f82111a3")
(revision "0"))
(package
(inherit carla)
(name "carla")
@@ -7491,12 +7337,7 @@ default and preferred audio driver but also supports native drivers like ALSA.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "053yfwf9l9vqvq95c354by6nm8ym0wgkv3fr1434x5w9n1344z0z"))))
(inputs
(modify-inputs (package-inputs carla)
(replace "python-pyqt" python-pyqt-6)
(replace "qtbase" qtbase)
(replace "qtwayland" qtwayland))))))
(base32 "0cnj2sgr60f5h6wdfmihc214wf3n74686sipl3iyzmylqrcyhbjn")))))))
;; This source is a fork of vst3sdk with the documentation and VSTGUI
;; submodules removed and a dummy `meson.build` file that just lists all
@@ -8137,16 +7978,7 @@ Icecast server.")
(lambda _
(substitute* "misc.c"
(("#include <stdio.h>\n" all)
(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>")))))
(string-append all "#include <string.h>\n")))))
(delete 'configure)
(replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys)
@@ -8158,8 +7990,7 @@ Icecast server.")
(inputs
(list ncurses))
(native-inputs
`(("gcc" ,gcc-9)
("groff" ,groff-minimal) ; for nroff
`(("groff" ,groff-minimal) ; for nroff
("util-linux" ,util-linux))) ; for col
(home-page "https://github.com/bleskodev/siggen")
(synopsis "Signal generation tools")
@@ -1989,7 +1989,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_PM8001 is not set
CONFIG_SCSI_VIRTIO=m
# CONFIG_SCSI_VIRTIO is not set
# CONFIG_SCSI_DH is not set
# end of SCSI device support
File diff suppressed because it is too large Load Diff
+9 -13
View File
@@ -893,7 +893,7 @@ is like a time machine for your data.")
(define-public restic
(package
(name "restic")
(version "0.18.1")
(version "0.17.3")
(source
(origin
(method git-fetch)
@@ -902,7 +902,7 @@ is like a time machine for your data.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0gxhknn022bwg2s8hababqg3vjkzflq59vr67y7r1c8fjnlsgf4l"))))
(base32 "1wsgq7f0bfi0i5iiwcc3hlf2lhxcnz3zfs8p8bc6l913r9hvyg1x"))))
(build-system go-build-system)
(arguments
(list
@@ -911,18 +911,15 @@ is like a time machine for your data.")
#:import-path "github.com/restic/restic/cmd/restic"
#:unpack-path "github.com/restic/restic"
#:embed-files #~(list "children" "nodes" "text")
#:test-flags
;; Python is required.
#~(list "-skip" "TestStdinFromCommand|TestStdinFromCommandNoOutput")
#:test-subdirs #~(list "../../...")
#: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
(lambda* (#:key unpack-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" unpack-path)
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(let* ((man "/share/man")
(man-section (string-append man "/man")))
;; Install all the man pages to "out".
@@ -945,12 +942,12 @@ is like a time machine for your data.")
go-github-com-cenkalti-backoff-v4
go-github-com-cespare-xxhash-v2
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-hashicorp-golang-lru-v2
go-github-com-klauspost-compress
;; go-github-com-microsoft-go-winio ;Windows only
go-github-com-minio-minio-go-v7
go-github-com-minio-sha256-simd
go-github-com-ncw-swift-v2
go-github-com-peterbourgon-unixtransport
go-github-com-pkg-errors
@@ -970,7 +967,6 @@ is like a time machine for your data.")
go-golang-org-x-text
go-golang-org-x-time
go-google-golang-org-api
python-minimal
;; XXX: These packages have to be bootstrapped to break cycle with
;; go-google-golang-org-grpc.
+15 -21
View File
@@ -13,7 +13,7 @@
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;; 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.
;;;
@@ -680,26 +680,20 @@ the user is too low. To raise such limit on a Guix System, refer to
"0ifnw8vnkcgrksx7g5d9ii4kjppqnk32lvrybdybmibyvag6zfdc"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ; no tests
#:make-flags
#~(list "CFLAGS=-g -O2 -Wno-error=implicit-function-declaration"
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-broken-makefile
(lambda _
;; Remove erroneous "-lm" target
(substitute* "Makefile"
(("hackbench.o -lm") "hackbench.o"))))
(delete 'configure)
(replace 'install
(lambda _
(install-file "interbench"
(string-append #$output "/bin"))
(install-file "interbench.8"
(string-append #$output
"/share/man/man8")))))))
(native-inputs (list gcc-10))
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-broken-makefile
(lambda _
;; Remove erroneous "-lm" target
(substitute* "Makefile"
(("hackbench.o -lm") "hackbench.o"))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(install-file "interbench" (string-append out "/bin"))
(install-file "interbench.8" (string-append out "/share/man/man8"))))))))
(home-page "http://users.on.net/~ckolivas/interbench/")
(synopsis "Interactivity benchmark")
(description "interbench is designed to benchmark interactivity on Linux.
-11
View File
@@ -6272,17 +6272,6 @@ for clusters.")
"1bvj7n2qxfvy1fmjqmm1w65fcj7fy5h74i0jgl0a0940mlhd7s9v"))))
(properties `((upstream-name . "CelliD")))
(build-system r-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
;; "The `slot` argument of `GetAssayData()` was deprecated in
;; SeuratObject 5.0.0 and is now defunct.", i = "Please use
;; the `layer` argument instead."
(add-after 'unpack 'fix-deprecated-argument
(lambda _
(substitute* '("R/mca.R" "tests/testthat/test_CelliD.R")
(("slot") "layer")))))))
(propagated-inputs
(list r-biocparallel
r-data-table
+82 -20
View File
@@ -7651,6 +7651,78 @@ reads at a typical sensitivity of 90-99% relative to BLAST depending on the
data and settings.")
(license license:gpl3+)))
(define-public discrover
(package
(name "discrover")
(version "1.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/maaskola/discrover")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"173fwi2vb6a5kp406hm3jj6j7v4whww796f2qcygp4rpvamh307y"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-force-source-date
;; for reproducible dates, texlive needs this to respect
;; SOURCE_DATE_EPOCH
(lambda _
(setenv "FORCE_SOURCE_DATE" "1")))
(add-before 'build 'use-writable-texmfvar
;; Use writable TEXMFVAR to generate fonts.
(lambda _
(setenv "TEXMFVAR" "/tmp")))
(add-after 'unpack 'fix-latex-errors
(lambda _
(with-fluids ((%default-port-encoding #f))
(substitute* "doc/references.bib"
(("\\{S\\}illanp[^,]+,")
"{S}illanp{\\\"a}{\\\"a},")))
;; XXX: I just can't get pdflatex to not complain about these
;; characters. They end up in the manual via the generated
;; discrover-cli-help.txt.
(substitute* "src/hmm/cli.cpp"
(("µ") "mu")
(("η") "eta")
(("≤") "<="))
;; This seems to be a syntax error.
(substitute* "doc/discrover-manual.tex"
(("theverbbox\\[t\\]") "theverbbox"))))
(add-after 'unpack 'add-missing-includes
(lambda _
(substitute* "src/executioninformation.hpp"
(("#define EXECUTIONINFORMATION_HPP" line)
(string-append line "\n#include <random>")))
(substitute* "src/plasma/fasta.hpp"
(("#define FASTA_HPP" line)
(string-append line "\n#include <random>"))))))))
(inputs
(list boost cairo rmath-standalone))
(native-inputs
(list (texlive-local-tree
(list texlive-doi
texlive-etoolbox
texlive-examplep
texlive-forloop
texlive-listofitems
texlive-natbib
texlive-pgf ;tikz
texlive-readarray
texlive-verbatimbox))
imagemagick))
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
(synopsis "Discover discriminative nucleotide sequence motifs")
(description "Discrover is a motif discovery method to find binding sites
of nucleic acid binding proteins.")
(license license:gpl3+)))
(define-public eddylab-squid
(package
(name "eddylab-squid")
@@ -9505,16 +9577,16 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and
(define-public idr
(package
(name "idr")
(version "2.0.4.2")
(version "2.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kundajelab/idr")
(url "https://github.com/nboley/idr")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"01491ffhhj5plmpvvwmzp6c5arp5390h3jdpgsai92y6xbsgvxz8"))
"04j876h6z444v2q79drxx283d3k5snd72kj895wbalnl42206x9g"))
;; Delete generated C code.
(snippet
'(begin (delete-file "idr/inv_cdf.c") #t))))
@@ -9522,21 +9594,11 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and
;; There is only one test ("test_inv_cdf.py") and it tests features that
;; are no longer part of this package. It also asserts False, which
;; causes the tests to always fail.
(arguments
(list
#:tests? #f
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'numpy-compatibility
(lambda _
(substitute* "idr/idr.py"
(("numpy.int") "int"))
(substitute* "idr/inv_cdf.pyx"
(("np.int_t") "np.int64_t")))))))
(arguments `(#:tests? #f))
(propagated-inputs
(list python-scipy python-sympy python-numpy python-matplotlib))
(list python-scipy python-sympy python-numpy-1 python-matplotlib))
(native-inputs
(list python-cython
(list python-cython-0
python-setuptools))
(home-page "https://github.com/nboley/idr")
(synopsis "Tool to measure the irreproducible discovery rate (IDR)")
@@ -16000,7 +16062,7 @@ dispersal. Its output can be processed by treeannotator (from the
(inputs
(list boost-for-mysql
cereal
cgal-5
cgal
gsl
hdf5
fftw
@@ -17868,7 +17930,7 @@ expression report comparing samples in an easily configurable manner.")
(define-public pigx-chipseq
(package
(name "pigx-chipseq")
(version "0.2.0")
(version "0.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/"
@@ -17876,7 +17938,7 @@ expression report comparing samples in an easily configurable manner.")
"/pigx_chipseq-" version ".tar.gz"))
(sha256
(base32
"09m1bpjapfxwhzrnvfs2g2zv28k6af7yf7s5ji861nb9bwlkmyi7"))))
"008n6drj9q5av86xihxlj4py2c9p3c5z5ld89c3bksrp77zxiy67"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; parts of the tests rely on access to the network
@@ -17927,7 +17989,7 @@ expression report comparing samples in an easily configurable manner.")
python-magic
python-xlrd
trim-galore
macs-3
macs
multiqc
perl
pandoc
+11 -12
View File
@@ -361,18 +361,18 @@ Transmission BitTorrent daemon.")
(name "aria2")
(version "1.37.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aria2/aria2")
(commit (string-append "release-" version))))
(method url-fetch)
(uri (string-append "https://github.com/aria2/aria2/releases/"
"download/release-" version
"/aria2-" version ".tar.xz"))
(sha256
(base32
"1yr9yxr7z3bdg51afpzj0i63xl2rdk1prl20qws21y6r1x58vf65"))
(file-name (git-file-name name version))
"0sxng4pynhj2qinranpv6wyzys3d42kz1gg2nrn63sw5f2nj1930"))
(patches (search-patches "aria2-unbundle-wslay.patch"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "deps")))))
(delete-file-recursively "deps")
(delete-file "configure")))))
(build-system gnu-build-system)
(arguments
(list
@@ -382,13 +382,10 @@ Transmission BitTorrent daemon.")
#$output "/etc/bash_completion.d/"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'update-gettext-version
(add-after 'unpack 'patch-configure
(lambda _
(substitute* "configure.ac"
(("AM_GNU_GETTEXT_VERSION\\(.*\\)")
(format #f "AM_GNU_GETTEXT_VERSION([~a])"
#$(package-version (this-package-native-input
"gettext-minimal")))))))
(("0[.]18") "0.19.6"))))
(add-after 'unpack 'delete-socket-tests
(lambda _
(substitute* "test/LpdMessageDispatcherTest.cc"
@@ -420,6 +417,8 @@ Transmission BitTorrent daemon.")
"Aria2 is a lightweight, multi-protocol & multi-source command-line
download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
(properties
'((release-monitoring-url . "https://github.com/aria2/aria2/releases")))
(license license:gpl2+)))
(define-public uget
+2 -2
View File
@@ -334,7 +334,7 @@ parallel study, and original language study.")
(define-public book-emacs-lisp-elements
(package
(name "book-emacs-lisp-elements")
(version "2.0.4")
(version "2.0.1")
(source
(origin
(method git-fetch)
@@ -343,7 +343,7 @@ parallel study, and original language study.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "06mhrb16h93n3s3srcfgmzsyh2lxx4ffj1di6qvczfg4039pi3c8"))))
(base32 "0774zycgx3zspn6f8pszap1751xgrlv2h3x66kksnj589nfnwzil"))))
(build-system emacs-build-system)
(arguments
(list
+2 -2
View File
@@ -267,8 +267,8 @@
;; rebooting.
(if (member (or (%current-target-system)
(%current-system))
(package-supported-systems fuse))
(list fuse)
(package-supported-systems fuse-2))
(list fuse-2)
'())))
(native-inputs
(append (list pkg-config
+4 -53
View File
@@ -69,55 +69,6 @@ match website theme.")
(define-public adaptive-tab-bar-colour/icecat
(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
(package
(name "play-to-kodi")
@@ -312,7 +263,7 @@ fill and submit login forms if a matching password entry is found.")
(define keepassxc-browser
(package
(name "keepassxc-browser")
(version "1.9.10")
(version "1.9.9.6")
(source (origin
(method git-fetch)
(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))
(sha256
(base32
"18kgmdvsq1kv9px8a1m7i10r4m0iik72qlnw9k2ijxmn1xikfyfb"))
"1chw1y1332zn69s7kf5mkljc1bp2xfvl3zzvafnalv3zj2jsa5cs"))
;; Default 'manifest.json' targets chromium based browsers and
;; depends on background.service_worker support.
;; See: <https://bugzilla.mozilla.org/show_bug.cgi?id=1573659>
@@ -377,7 +328,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
(define noscript
(package
(name "noscript")
(version "13.6.19.1984")
(version "13.6.18.1984")
(source (origin
(method url-fetch/zipbomb)
(uri (string-append
@@ -385,7 +336,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
version ".xpi"))
(sha256
(base32
"1lb3855w34avs7idvycv8cfpjnpic2mnsh9yqkidrdw7msr0na74"))))
"0assv8v89hhg302q81vvv7ln3q8k9m6rzjkbprv2j05ghb23kkvm"))))
(build-system copy-build-system)
(properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}")))
(arguments
+2 -35
View File
@@ -275,14 +275,14 @@ generate such a compilation database.")
(define-public bmake
(package
(name "bmake")
(version "20260508")
(version "20260406")
(source
(origin
(method url-fetch)
(uri (string-append
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
(sha256
(base32 "0b58j7l53jbqaxcfggimdbylf71hbyfm44m6s4646ry7mf8fl7kv"))
(base32 "09nzd9v12n2pwxmf67056kzjnvxcpk5q2x1fs5qkrsk1ssh5yvpd"))
(patches (search-patches "bmake-run-check-separately.patch"))))
(build-system gnu-build-system)
(inputs
@@ -1452,36 +1452,3 @@ It is an alternative to e.g. @command{make(1)} and @command{redo(1)}. Features:
@end itemize
")
(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)))
+45 -47
View File
@@ -47,7 +47,6 @@
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
@@ -63,7 +62,6 @@
#:use-module (gnu packages bootstrap)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages compiler-tools)
#:use-module (gnu packages flex)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
@@ -83,7 +81,6 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages gettext)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml))
@@ -1096,8 +1093,32 @@ portability.")
(license (list license:bsd-2 ;all files except...
license:bsd-3)))) ;...the unidef.1 manual page
(define-deprecated/public-alias byacc
(@ (gnu packages compiler-tools) byacc))
(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 (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
(package
@@ -1306,6 +1327,25 @@ for the @acronym{AWS,Amazon Web Services} SDK.")
(home-page "https://github.com/awslabs/aws-c-sdkutils")
(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
(package
(name "aws-c-http")
@@ -1479,48 +1519,6 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
(home-page "https://microsoft.github.io/mimalloc/")
(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.
(define-public orangeduck-mpc
;; The last release lacks an 'install' target.
+22 -10
View File
@@ -337,7 +337,7 @@ reconstruction capability.")
(define-public cdrdao
(package
(name "cdrdao")
(version "1.2.6")
(version "1.2.5")
(source
(origin
(method git-fetch)
@@ -347,18 +347,30 @@ reconstruction capability.")
(string-append "rel_" (string-replace-substring version "." "_")))))
(file-name (git-file-name name version))
(sha256
(base32 "0hb8dfb88zk01yk5nfl8m5hsg4x2scb2899pxb717zywznr8jijw"))))
(build-system glib-or-gtk-build-system)
(base32 "1hh1lm4wr1vhsq2brczn94h88h3bppvjidj9cfqkl20jhaj38968"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list
;; Use the native SCSI interface.
"--without-scglib")))
'(#:configure-flags
(list
;; GCDMaster depends on obsolete libgnomeuimm, see
;; <https://github.com/cdrdao/cdrdao/issues/3>.
"--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
(list autoconf-2.72 automake `(,glib "bin") pkg-config))
(list autoconf automake pkg-config))
(inputs
(list ao gtkmm-3 lame libmad libsigc++-2 libvorbis))
(list ao lame libmad libvorbis))
(home-page "https://cdrdao.sourceforge.net")
(synopsis "Read and write CDs in disk-at-once mode")
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
+9 -4
View File
@@ -79,9 +79,12 @@
'("base/third_party/cityhash" ;Expat
"base/third_party/double_conversion" ;BSD-3
"base/third_party/icu" ;Unicode, X11-style
"base/third_party/nspr" ;MPL-2.0
"base/third_party/superfasthash" ;BSD-3
"base/third_party/symbolize" ;BSD-3
"base/third_party/xdg_user_dirs" ;Expat
"buildtools/third_party/libc++" ;BSD
"buildtools/third_party/libc++abi" ;BSD
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
"net/third_party/quiche" ;BSD-3
"net/third_party/uri_template" ;ASL2.0
@@ -219,6 +222,7 @@
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
"third_party/libaom/source/libaom/third_party/vector" ;Expat
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
"third_party/libc++" ;Expat
"third_party/libdrm" ; Expat
"third_party/libgav1" ;ASL2.0
"third_party/libjingle_xmpp" ;BSD-3
@@ -244,6 +248,8 @@
"third_party/libzip" ;BSD-3
"third_party/lit" ;BSD-3
"third_party/lit/v3_0" ;BSD-3
"third_party/llvm-libc" ;ASL2.0
"third_party/llvm-libc/src/shared" ;ASL2.0
"third_party/lottie" ;Expat
"third_party/lss" ;BSD-3
"third_party/lzma_sdk" ;public domain
@@ -895,9 +901,8 @@
"libvk_swiftshader.so"
"vk_swiftshader_icd.json"
;; Chromium ships its own libGL and
;; vulkan implementation called ANGLE.
"libvulkan.so.1"
;; Chromium ships its own libGL
;; implementation called ANGLE.
"libEGL.so" "libGLESv2.so"))
(locales (string-append lib "/locales"))
(resources (string-append lib "/resources"))
@@ -916,7 +921,7 @@
(("@@MENUNAME") "Chromium")
(("@@PACKAGE") "chromium")
(("/usr/bin/@@usr_bin_symlink_name") exe)
(("@@uri_scheme") "x-scheme-handler/chromium;")
(("@@uri_scheme") "x-scheme-handler/chromium")
(("@@extra_desktop_entries") ""))
(mkdir-p man)
+27 -53
View File
@@ -377,14 +377,14 @@ designs.")
(define-public clojure-tools
(package
(name "clojure-tools")
(version "1.12.4.1618")
(version "1.12.4.1582")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.clojure.org/install/clojure-tools-"
version
".tar.gz"))
(sha256 (base32 "08fy3k248sbsrbgl0lq3q4d23vp4chdawy230ardx61sssk9sxhk"))
(sha256 (base32 "08gzfblnz0zhnk6pwr9vcm6y168psgrwmqww3wqk1v7j5gr68n7x"))
;; Remove AOT compiled JAR. The other JAR only contains uncompiled
;; Clojure source code.
(snippet
@@ -512,7 +512,7 @@ defining and using monads and useful monadic functions.")
(define-public clojure-core-async
(package
(name "clojure-core-async")
(version "1.9.865")
(version "1.8.741")
(home-page "https://github.com/clojure/core.async")
(source (origin
(method git-fetch)
@@ -522,7 +522,7 @@ defining and using monads and useful monadic functions.")
(file-name (git-file-name name version))
(sha256
(base32
"15pc2m58fscix85gsiwl9dlvw2x6alvc4qni46rry2sr00nfzd3r"))))
"1m6lir2xr119yxz483cz0rfw4k3a40qmmsiwl2y7kyxy65vab60z"))))
(build-system clojure-build-system)
(arguments
'(#:source-dirs '("src/main/clojure")
@@ -546,7 +546,7 @@ work on Communicating Sequential Processes (CSP).")
(define-public clojure-core-cache
(package
(name "clojure-core-cache")
(version "1.2.263")
(version "1.2.249")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -555,7 +555,7 @@ work on Communicating Sequential Processes (CSP).")
(file-name (git-file-name name version))
(sha256
(base32
"19q81aki8wb120v6jfylwqgf965mwkhrpcsrs5zazjfjv8vq6glx"))))
"0hdwv5dsx49i12riz3frzshwkgw26ah43667lzga2n6zgpmrh8ii"))))
(build-system clojure-build-system)
(arguments
'(#: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
(package
(name "clojure-core-memoize")
(version "1.2.281")
(version "1.2.273")
(source (origin
(method git-fetch)
(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))
(sha256
(base32
"0bnlqs7m69svhfadwy46wgc88j9ma9fhdk4586b4xxppamj6c5j4"))))
"009fj19y464an66pryygmqbnx2dqk5wkp40rbkbgkir0ax0k6j3y"))))
(build-system clojure-build-system)
(arguments
'(#:source-dirs '("src/main/clojure")
@@ -734,7 +734,7 @@ maps also support conj/peek/pop operations.")
(define-public clojure-data-xml
(package
(name "clojure-data-xml")
(version "0.2.0-alpha11")
(version "0.2.0-alpha10")
(home-page "https://github.com/clojure/data.xml")
(source (origin
(method git-fetch)
@@ -744,7 +744,7 @@ maps also support conj/peek/pop operations.")
(file-name (git-file-name name version))
(sha256
(base32
"0k7hq3s4zbk0ryhgycivl1dk22fzh60522a57az8ykmixhqjxwhg"))))
"0mnhgrh20p2wwmq8a4631dkpxbgbijwi6sfhw5v784hzkjkfgkh6"))))
(build-system clojure-build-system)
(arguments
'(#:source-dirs '("src/main/clojure")
@@ -862,7 +862,7 @@ tree.
(define-public clojure-tools-analyzer
(package
(name "clojure-tools-analyzer")
(version "1.2.2")
(version "1.2.1")
(home-page "https://github.com/clojure/tools.analyzer")
(source (origin
(method git-fetch)
@@ -872,7 +872,7 @@ tree.
(file-name (git-file-name name version))
(sha256
(base32
"07cxphrmd6a3clnalrdqxlyin8l0lw0xhjy2rh9gaizxfv5c23jp"))))
"0apa3gc45rmdj19plbvglpj6i9dadkgvvidj5mcnkzi9y3h0nr27"))))
(build-system clojure-build-system)
(arguments
'(#:source-dirs '("src/main/clojure")
@@ -938,7 +938,7 @@ tools.analyzer, providing additional JVM-specific passes.")
(define-public clojure-tools-cli
(package
(name "clojure-tools-cli")
(version "1.4.256")
(version "1.3.250")
(home-page "https://github.com/clojure/tools.cli")
(source (origin
(method git-fetch)
@@ -947,7 +947,7 @@ tools.analyzer, providing additional JVM-specific passes.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1kr1cpypzgzh8pkih5qamsaq8c96jfpcvmn9f330sic2shb53m55"))))
(base32 "1nyw33w83gd7xlbpma03p4jwcdcp38h8y99x2rqw4zcnw19gsz4p"))))
(build-system clojure-build-system)
(arguments
'(#:source-dirs '("src/main/clojure/")
@@ -959,25 +959,29 @@ tools.analyzer, providing additional JVM-specific passes.")
work with command-line arguments.")
(license license:epl1.0)))
(define-public clojure-tools-deps-edn
(define-public clojure-tools-deps
(package
(name "clojure-tools-deps-edn")
(version "0.9.22")
(home-page "https://github.com/clojure/tools.deps.edn")
(name "clojure-tools-deps")
(version "0.28.1578")
(home-page "https://github.com/clojure/tools.deps")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"082p6zpbb8vvdc9ncc0d66h3g7sax4pp0h4fymwiv0lakzyq3g9g"))))
"1w3f8cl81q4kln6iz74fnfzms4c4x279ivh1962pcg22q8l1w8d5"))))
(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
#:phases
(modify-phases %standard-phases
(add-before 'build 'reference-clojure-jar-input
@@ -988,42 +992,12 @@ work with command-line arguments.")
(string-append "org.clojure/clojure {:local/root \""
(assoc-ref inputs "clojure")
"/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
maven-resolver-1.6-connector-basic
maven-resolver-1.6-transport-http
maven-resolver-1.6-transport-file
clojure-tools-gitlibs
clojure-tools-cli
clojure-tools-deps-edn
clojure-data-xml
cognitect-aws-api))
(synopsis "Clojure library supporting clojure-tools")
@@ -1201,7 +1175,7 @@ asynchronous support.")
(define-public cognitect-aws-api
(package
(name "cognitect-aws-api")
(version "0.8.824")
(version "0.8.800")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1210,7 +1184,7 @@ asynchronous support.")
(file-name (git-file-name name version))
(sha256
(base32
"0ivlcmsr7rvr7741k9wzniv2zxijida0b588nqngm5vrgna816yl"))
"17sxj3mvq4iasr0kchbx2anmrh25v8bvmpam4si704vksmnm28p3"))
(modules '((guix build utils)))
(snippet
'(begin
+2 -42
View File
@@ -1,8 +1,8 @@
;;; 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 © 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 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
@@ -866,46 +866,6 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
the C, C++, C++/CLI, ObjectiveC, C#, and Java programming languages.")
(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
;; XXX: Not released anymore, but some patches fix CVEs.
(let ((commit "1737c929cbe2ec8a181107df9742894a44c57f71")
-114
View File
@@ -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.")))
+11 -7
View File
@@ -34,7 +34,7 @@
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021, 2024-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2026 Ahmad Jarara <ajarara@fastmail.com>
;;; Copyright © 2021 Ahmad Jarara <git@ajarara.io>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
@@ -3005,13 +3005,17 @@ can append files to the end of such compressed archives.")
"00ibddiy62kbs9wl52c35j0hbqanx6pi7lvzkpzmbsizkj8mhp1p"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~'("-DWITH_TESTS=ON"
"-DBUILD_SHARED_LIBS=ON")))
'(#:tests? #f
#:configure-flags
(let* ((out (assoc-ref %outputs "out"))
(lib (string-append out "/lib")))
(list
"-DCMAKE_BUILD_TYPE=Release"
"-DBUILD_SHARED_LIBS=ON"
"-DCBOR_CUSTOM_ALLOC=ON"
(string-append "-DCMAKE_INSTALL_LIBDIR=" lib)
(string-append "-DCMAKE_INSTALL_RPATH=" lib)))))
(synopsis "The C library for parsing and generating CBOR")
(native-inputs
(list cmocka))
(description
"@acronym{CBOR, The Concise Binary Object Representation} is a data format
whose design goals include the possibility of extremely small code size, fairly
+89 -391
View File
@@ -50,7 +50,6 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages docker)
#:use-module (gnu packages glib)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
@@ -71,7 +70,6 @@
#:use-module (gnu packages networking)
#:use-module (gnu packages package-management)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages prometheus)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
@@ -123,365 +121,6 @@
"This package provides a Go library to read and manipulate checkpoint
archives as created by Podman, CRI-O and containerd.")
(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:
@@ -511,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
(define-public crun
(package
(name "crun")
(version "1.27.1")
(version "1.26")
(source
(origin
(method url-fetch)
@@ -521,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
"/crun-" version ".tar.gz"))
(sha256
(base32
"1w782s95f3xvw3fb66l2ciqkqsg4bk7n9ph31jmvn669ap272ymy"))))
"1hdwk5dpsz9danxiyfli07b7sqid6hr34qmhs5qjl2dcc00is89j"))))
(build-system gnu-build-system)
(arguments
(list
@@ -906,7 +545,7 @@ Layer-4 sockets.")
(define-public cni-plugins
(package
(name "cni-plugins")
(version "1.9.1")
(version "1.9.0")
(source
(origin
(method git-fetch)
@@ -915,7 +554,7 @@ Layer-4 sockets.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "12z6w2jk6xgfiwdxys7skpkxldz1cgaa7scgfcr90lsghay59s6w"))
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "vendor")))))
@@ -956,33 +595,92 @@ configure network interfaces in Linux containers.")
(license license:asl2.0)))
(define-public gvisor-tap-vsock
(package/inherit go-github-com-containers-gvisor-tap-vsock
(package
(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
(substitute-keyword-arguments arguments
((#:install-source? _ #t) #f)
((#:skip-build? _ #t) #f)
((#:tests? _ #t) #f)
((#:phases _ '%standard-phases)
#~(modify-phases %standard-phases
;; Build binary outputs are taken from project's Makefile.
(replace 'build
(lambda arguments
(for-each
(lambda (cmd)
(apply (assoc-ref %standard-phases 'build)
`(,@arguments #:import-path ,cmd)))
(list "github.com/containers/gvisor-tap-vsock/cmd/gvproxy"
"github.com/containers/gvisor-tap-vsock/cmd/qemu-wrapper"
"github.com/containers/gvisor-tap-vsock/cmd/vm"))))
(add-after 'install 'fix-bin-name
(lambda _
(rename-file (string-append #$output "/bin/vm")
(string-append #$output "/bin/gvforwarder"))))))))
(list
#:install-source? #f
#:import-path "github.com/containers/gvisor-tap-vsock/cmd/gvproxy"
#: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
;; serve UDP error: *net.OpError read udp 127.0.0.1:5354: use of closed
;; network connection
#~(list "-skip" "TestSuite")
#:test-subdirs
#~(list "../../...") ;test the whole library
#: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
(package-propagated-inputs go-github-com-containers-gvisor-tap-vsock))
(propagated-inputs '())
(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-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
(package
@@ -1187,7 +885,7 @@ being rootless and not requiring any daemon to be running.")
(define-public buildah
(package
(name "buildah")
(version "1.43.1")
(version "1.43.0")
(source
(origin
(method git-fetch)
@@ -1195,7 +893,7 @@ being rootless and not requiring any daemon to be running.")
(url "https://github.com/containers/buildah")
(commit (string-append "v" version))))
(sha256
(base32 "00x4ja5n49jmkmiv54mmkihks9pnjnna7s7py57in6pc9g85xj2y"))
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
+1 -187
View File
@@ -28,7 +28,7 @@
;;; Copyright © 2022-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; 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-2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022-2024, 2026 Maxim Cournoyer <maxim@guixotic.coop>
@@ -134,7 +134,6 @@
#:use-module (gnu packages sdl)
#:use-module (gnu packages tls)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages web)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xdisorg)
@@ -937,85 +936,6 @@ inspired by the @url{https://github.com/gruns/icecream, Python library} of the
same name.")
(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
(package
(name "google-highway")
@@ -1752,38 +1672,6 @@ maintained anymore.")
concurrent queue for C++11.")
(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
(package
(name "spscqueue")
@@ -3780,39 +3668,6 @@ computing Fast Fourier transformations. It supports multidimensional arrays,
different floating point sizes and complex transformations.")
(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
;; Latest release is from 2022-08-14.
(let ((commit "ea15402adcd0d9191dc29ca6f7e4dd0bff67b9b5")
@@ -4639,47 +4494,6 @@ meta data function.")
;; or the CECILL-C license:
(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
(package
(name "tsl-hopscotch-map")
+1 -1
View File
@@ -9232,7 +9232,7 @@ similar rank-based tests for equal probability distributions due to Neuhauser
(("^PKG_LIBS=.*")
(string-append "PKG_LIBS="
(assoc-ref inputs "libnode")
"/lib/libnode.so.127\n")))
"/lib/libnode.so.137\n")))
(setenv "INCLUDE_DIR"
(string-append
(assoc-ref inputs "libnode")
+2 -2
View File
@@ -1010,7 +1010,7 @@ SHA-1, SHA-2, and SHA-3, yet is at least as secure as SHA-3.")
(define-public rhash
(package
(name "rhash")
(version "1.4.6")
(version "1.4.3")
(source
(origin
(method url-fetch)
@@ -1019,7 +1019,7 @@ SHA-1, SHA-2, and SHA-3, yet is at least as secure as SHA-3.")
(file-name (string-append "rhash-" version ".tar.gz"))
(sha256
(base32
"0ylkxhkj4nzmb0iampn2lv7v4yw59x7dl8mdcxqcx2mfxv7ijq4z"))))
"0glaghjvwh9ziiqf599v0fdr6jrgc7lcnriq0h7r41k3jrkglh0y"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
+61 -83
View File
@@ -1061,31 +1061,6 @@ auto-completion and syntax highlighting.")
\"special\", or \"backslash commands\") on PostgreSQL.")
(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
(package
(name "python-sqlitedict")
@@ -1191,70 +1166,73 @@ auto-completion and syntax highlighting.")
(name "mysql")
(version "5.7.33")
(source (origin
(method url-fetch)
(uri (list (string-append
(method url-fetch)
(uri (list (string-append
"https://dev.mysql.com/get/Downloads/MySQL-"
(version-major+minor version) "/"
name "-" version ".tar.gz")
(string-append
(string-append
"https://downloads.mysql.com/archives/get/file/"
name "-" version ".tar.gz")))
(sha256
(base32
"1bb343mf7n0qg2qz497gxjsqprygrjz1q1pbz76hgqxnsy08sfxd"))))
(sha256
(base32
"1bb343mf7n0qg2qz497gxjsqprygrjz1q1pbz76hgqxnsy08sfxd"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DBUILD_CONFIG=mysql_release"
"-DWITH_SSL=system"
"-DWITH_ZLIB=system"
"-DDEFAULT_CHARSET=utf8"
"-DDEFAULT_COLLATION=utf8_general_ci"
"-DMYSQL_DATADIR=/var/lib/mysql"
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
"-DINSTALL_INFODIR=share/mysql/docs"
"-DINSTALL_MANDIR=share/man"
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
"-DINSTALL_SCRIPTDIR=bin"
"-DINSTALL_INCLUDEDIR=include/mysql"
"-DINSTALL_DOCREADMEDIR=share/mysql/docs"
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
"-DINSTALL_DOCDIR=share/mysql/docs"
"-DINSTALL_SHAREDIR=share/mysql"
;; Get rid of test data.
"-DINSTALL_MYSQLTESTDIR="
"-DINSTALL_SQLBENCHDIR=")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'remove-extra-binaries
(lambda _
;; Remove the 3 *_embedded files, which weigh in at
;; 14 MiB each.
(for-each delete-file
(find-files (string-append #$output "/bin")
"_embedded$"))))
(add-after 'install 'wrap-mysql_helpers
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((bin (string-append #$output "/bin"))
(gawk (search-input-file inputs "bin/gawk"))
(coreutils (search-input-file inputs "bin/ls"))
(grep (search-input-file inputs "bin/grep"))
(ps (search-input-file inputs "bin/ps"))
(sed (search-input-file inputs "bin/sed")))
(wrap-program (search-input-file outputs "bin/mysql_config")
`("PATH" suffix
,(list (dirname gawk)
(dirname coreutils)
(dirname sed))))
(wrap-program (search-input-file outputs "bin/mysqld_safe")
`("PATH" suffix
,(list (dirname gawk)
(dirname coreutils)
(dirname grep)
(dirname ps)
(dirname sed))))))))))
`(#:configure-flags
'("-DBUILD_CONFIG=mysql_release"
"-DWITH_SSL=system"
"-DWITH_ZLIB=system"
"-DDEFAULT_CHARSET=utf8"
"-DDEFAULT_COLLATION=utf8_general_ci"
"-DMYSQL_DATADIR=/var/lib/mysql"
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
"-DINSTALL_INFODIR=share/mysql/docs"
"-DINSTALL_MANDIR=share/man"
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
"-DINSTALL_SCRIPTDIR=bin"
"-DINSTALL_INCLUDEDIR=include/mysql"
"-DINSTALL_DOCREADMEDIR=share/mysql/docs"
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
"-DINSTALL_DOCDIR=share/mysql/docs"
"-DINSTALL_SHAREDIR=share/mysql"
;; Get rid of test data.
"-DINSTALL_MYSQLTESTDIR="
"-DINSTALL_SQLBENCHDIR=")
#:phases (modify-phases %standard-phases
(add-after
'install 'remove-extra-binaries
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; Remove the 3 *_embedded files, which weigh in at
;; 14 MiB each.
(for-each delete-file
(find-files (string-append out "/bin")
"_embedded$"))
#t)))
(add-after
'install 'wrap-mysql_helpers
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(awk (assoc-ref inputs "gawk"))
(coreutils (assoc-ref inputs "coreutils"))
(grep (assoc-ref inputs "grep"))
(ps (assoc-ref inputs "procps"))
(sed (assoc-ref inputs "sed")))
(wrap-program (string-append bin "/mysql_config")
`("PATH" ":" suffix
(,(string-append awk "/bin")
,(string-append coreutils "/bin")
,(string-append sed "/bin"))))
(wrap-program (string-append bin "/mysqld_safe")
`("PATH" ":" suffix
(,(string-append awk "/bin")
,(string-append coreutils "/bin")
,(string-append grep "/bin")
,(string-append ps "/bin")
,(string-append sed "/bin"))))))))))
(native-inputs
(list bison perl pkg-config))
(inputs
@@ -1268,7 +1246,7 @@ auto-completion and syntax highlighting.")
ncurses
openssl-1.1
procps
rpcsvc-proto ; rpcgen
rpcsvc-proto ; rpcgen
sed
zlib))
(home-page "https://www.mysql.com/")
-113
View File
@@ -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))))
+20 -21
View File
@@ -978,27 +978,26 @@ engineering.")
(define-public seer-gdb
(package
(name "seer-gdb")
(version "2.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/epasveer/seer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1szfqybqr5z982vian4f0hpsagiqapzys3axwibyjyg5whjswva1"))))
(version "1.16")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/epasveer/seer.git")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0jdvyg2jab1pvf36pvkyrfsg2wyy8zp1qx0v2ksclgrnr1hja6k6"))))
(build-system qt-build-system)
(arguments
(list
#:tests? #f ;tests are strangely manual
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "src"))))))
`(#:tests? #f ; Those are strangely manual
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "src"))))))
(inputs
(list gdb qtbase qtcharts qtsvg qtwayland))
(list qtbase-5 qtcharts-5 qtwayland-5))
(synopsis "GUI frontend for GDB")
(description "This package provides a frontend to GDB, the GNU debugger.")
(home-page "https://github.com/epasveer/seer")
@@ -1038,7 +1037,7 @@ to aid in debugging.")
(define-public delve
(package
(name "delve")
(version "1.26.3")
(version "1.25.2")
(source
(origin
(method git-fetch)
@@ -1048,7 +1047,7 @@ to aid in debugging.")
(file-name (git-file-name name version))
(sha256
(base32
"0mf363l7md4193cgrpb6hkhmsgnlnrx44q1bzw3zq0bmjrcg3fj7"))
"1b6vp6m4vjx4wfs1djhpizvz40s563jwld9lgjq82svaiilrmlqa"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "vendor")))))
@@ -1066,7 +1065,7 @@ to aid in debugging.")
(list go-github-com-cilium-ebpf
go-github-com-cosiner-argv
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-google-go-dap
go-github-com-hashicorp-golang-lru
+14 -3
View File
@@ -266,14 +266,14 @@ tmpfs/ramfs filesystems.")
(define-public parted
(package
(name "parted")
(version "3.7")
(version "3.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/parted/parted-"
version ".tar.xz"))
(sha256
(base32
"0yzga4cjq3yplqs47dl9714vwc3v3v8nxrj80rdc5wx4c5syb380"))))
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
(build-system gnu-build-system)
(arguments
(list
@@ -296,7 +296,6 @@ tmpfs/ramfs filesystems.")
(,util-linux "lib")))
(native-inputs
(list gettext-minimal
pkg-config
;; For the tests.
e2fsprogs
@@ -311,6 +310,18 @@ tmpfs/ramfs filesystems.")
tables. It includes a library and command-line utility.")
(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
(package
(name "fdisk")
+3 -3
View File
@@ -24,7 +24,7 @@
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; 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 © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
;;;
@@ -841,14 +841,14 @@ to result in system-wide compromise.")
(define-public unbound
(package
(name "unbound")
(version "1.25.1")
(version "1.24.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.unbound.net/downloads/unbound-"
version ".tar.gz"))
(sha256
(base32 "0vsqmgnq7ibi0b3akzy45nqf0wazmb0bmpk2fp8wyn89gckvds0g"))))
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
(build-system gnu-build-system)
(outputs '("out" "python"))
(native-inputs
-65
View File
@@ -45,7 +45,6 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages containers)
#:use-module (gnu packages compression)
#:use-module (gnu packages glib)
#:use-module (gnu packages golang)
@@ -199,50 +198,6 @@ enforce convention and best practices for metrics collection in Docker
projects.")
(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
(package
(name "python-docker")
@@ -373,26 +328,6 @@ applications services. Then, using a single command, the containers are
created and all the services are started as specified in the configuration.")
(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
(package
(name "python-docker-pycreds")
+13 -31
View File
@@ -1,5 +1,5 @@
;;; 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 © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
@@ -192,20 +192,21 @@ markup) can be customized and extended by the user.")
(define-deprecated asciidoc-py3 asciidoc)
(define-public doxygen-1.16
(define-public doxygen
(package
(name "doxygen")
(version "1.16.1")
(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 "1a33w82ln692qsf3ls0j31f6khljjs1cy3bwd70pra2fa4xy6710"))))
(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"))))
(build-system cmake-build-system)
(native-inputs
(list bison
@@ -249,25 +250,6 @@ IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
and to some extent D.")
(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
(package
(name "halibut")
-37
View File
@@ -415,43 +415,6 @@ e-books for convenient reading.")
accessing and converting various ebook file formats.")
(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
(package
(name "inkbox")
+45
View File
@@ -204,3 +204,48 @@ and EFI variable management.")
;; Library routines (in lib/) are under LGPL 2.1.
;; Compiling/linking/using OpenSSL is permitted.
(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)))
+33 -410
View File
@@ -105,13 +105,11 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gperf)
#:use-module (gnu packages graph)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages java)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libffi)
@@ -242,8 +240,8 @@ are also taken from the original.")
(license license:gpl3+))))
(define-public abc
(let ((commit "7bf1177d3900212df9e5c32ffc3ff2f59bc9b02b")
(revision "11"))
(let ((commit "80c8a9a1928ef8148a6b504e9590ec07c55c8bcf")
(revision "10"))
(package
(name "abc")
(version (git-version "0.0" revision commit))
@@ -255,7 +253,7 @@ are also taken from the original.")
(file-name (git-file-name name version))
(sha256
(base32
"1zyip7x3av03mp766m60md2a8g8xp4divpgxj6n4760i753i9b85"))))
"1fbnwsd841z86vfv45443qfpx0l199vf08sgms8wyz19jw7m5ds6"))))
(build-system gnu-build-system)
(inputs
(list readline))
@@ -280,7 +278,7 @@ formal verification.")
(package
(inherit abc)
(name "abc-yosyshq")
(version "0.65")
(version "0.64")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -289,53 +287,12 @@ formal verification.")
(file-name (git-file-name name version))
(sha256
(base32
"11viizz5kxh93a56fqxq0ma4945whzlfagw5bb61aw2jlyqym9ka"))))
"1jk74yq7dnrnai8r9hqc10jcjmgj50jxj6hsflmvc61acm1r3f8r"))))
(home-page "https://github.com/YosysHQ/abc/")
(description "ABC is a program for sequential logic synthesis and
formal verification. This is the Yosyshq fork of ABC.")
(license (license:non-copyleft "file:///copyright.txt"))))
(define-public appcsxcad
(package
(name "appcsxcad")
(version "0.2.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thliebig/AppCSXCAD")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "145awcsg4vl2xmrh5yf9fcasmghrai3x6ivgdxmrm1w3v9gyaccf"))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase ;for Qt 6
#:tests? #f)) ;No tests.
(inputs (list boost
cgal
csxcad
eigen
expat
freetype
gmp
hdf5
libjpeg-turbo
libpng
libtiff
lz4
openmpi
qcsxcad
tinyxml
vtk))
(home-page "https://github.com/thliebig/AppCSXCAD")
(synopsis "Minimal GUI application for the @code{qcsxcad} library")
(description
"A minimal application for the @code{qcsxcad} library which is used to
describe geometrical objects and their physical and non-physical properties.")
(license license:gpl3)))
(define-public apycula
(package
(name "apycula")
@@ -447,7 +404,7 @@ standard-cells. It is compatible with @code{ngspice} and @code{Xyce}.")
(define-public ciel
(package
(name "ciel")
(version "2.4.1")
(version "2.4.0")
(source
(origin
(method git-fetch)
@@ -456,7 +413,7 @@ standard-cells. It is compatible with @code{ngspice} and @code{Xyce}.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "08r30ighn86995dcf7278k9nrci8wbp6kglgk011y6g80z9m2zm7"))))
(base32 "0cj4cpmpqi7aqj9jkpp87qs9bjcg3j97adv1s91pnfrkplff8rh1"))))
(arguments
(list
#:tests? #f ;no tests
@@ -486,62 +443,6 @@ standard-cells. It is compatible with @code{ngspice} and @code{Xyce}.")
chip design and @acronym{EDA, Electronic Design Automation}.")
(license license:asl2.0)))
(define-public csxcad
(package
(name "csxcad")
(version "0.6.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thliebig/CSXCAD")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1c383zsv4fp40kmpawamfi9zg3b8x3d4m091ldwk15mii3467hp3"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ; No tests.
#:configure-flags
#~(list
(string-append "-DFPARSER_ROOT_DIR=" #$(this-package-input "fparser")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-cmake-and-sources
(lambda _
(substitute* "CMakeLists.txt"
((" system\n")
"")
(("find_package\\(HDF5 1.8 COMPONENTS C HL REQUIRED\\)")
"find_package(HDF5 REQUIRED COMPONENTS C HL)"))
;; Fix missing `std::`.
;; This is fixed in upstream already but not tagged.
(substitute* "src/CSPropDiscMaterial.cpp"
(("\tcout ")
"\tstd::cout ")))))))
(inputs (list boost
cgal
eigen
fparser
hdf5
gmp
libjpeg-turbo
libpng
libtiff
lz4
mpfr
openmpi
tinyxml
vtk
zlib))
(home-page "https://github.com/thliebig/CSXCAD")
(synopsis "3D geometry library for C++")
(description
"@code{csxcad} is a C++ library to describe geometrical objects
and their physical or non-physical properties for electromagnetics simulations.")
(license license:lgpl3+)))
(define-public comedilib
(package
(name "comedilib")
@@ -566,7 +467,7 @@ individual low-level driver modules.")
(define-public eqy
(package
(name "eqy")
(version "0.65")
(version "0.64")
(source
(origin
(method git-fetch)
@@ -1016,7 +917,7 @@ files.")
(define-public klayout
(package
(name "klayout")
(version "0.30.8")
(version "0.30.7")
(source
(origin (method git-fetch)
(uri (git-reference
@@ -1025,7 +926,7 @@ files.")
(file-name (git-file-name name version))
(sha256
(base32
"0aw0y5k27pslql9pir6nplapj6ml6fkhzd815s13rlnw3bm0fcs6"))))
"0xyrn9vhx871vm141hgsb9qrdim51vfk2mw8hcqyam1ixkbz5jjv"))))
(build-system copy-build-system)
(arguments
(list
@@ -1168,7 +1069,7 @@ characterization result in a liberty library file.")
(define-public kicad
(package
(name "kicad")
(version "10.0.3")
(version "10.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1176,7 +1077,7 @@ characterization result in a liberty library file.")
(commit version)))
(sha256
(base32
"0ldaj072x16452xw2wszbk20g932rz36zappjrxc4m6ygx298aa3"))
"1mnlv8fyz03pfg8pkqwdl5gjz6vsk98c6414lf3wkvrkb85ljaav"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@@ -1301,7 +1202,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"1532y6whn1bcwjb417qlga1hibgpfqs594l9zs4c8f5ymaqb8s1b"))))
"1c0vn13rp0z12rlqhl321pk2gj9577dyky6xj3i6hb040i3v7zrr"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html"
@@ -1333,7 +1234,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"05h8dbygch2kp4s5ikspxngwv999j7jwsiwm4pzwwcrir7dqzdfl"))))
"0iz4lb33wdsw4f82a0ln8ycgaf39gjws03mvl2j1q9npwj6xl1cm"))))
(build-system cmake-build-system)
(native-inputs (list python-wrapper))
(arguments
@@ -1363,7 +1264,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0wdzsn7z11wc5yskk576a4a6qfagsvw0y6r034inxrnfc32aiah9"))))
"0jqgyi1yb2zc6w56ba7xama0wnhrqwbbnf2fqvr47xihvdcvs87v"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@@ -1380,7 +1281,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"01nbjcs3890hyfmafc623ldmfi9n8sjr5m0wripz5fq5fjdnzqxl"))))
"0jr70ry6inzc2fy3s300z0zlmihbq95ba1zckyd1wwbpplaj1gbl"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
@@ -1402,60 +1303,6 @@ libraries.")
(description "This package contains the official KiCad project and
worksheet templates.")))
(define-public kicad-cern-libraries
;; Upstream does not tag releases.
(let ((commit "980670fefdf71965aae6c56194d7f2a68c3e6a68")
(revision "0"))
(package
(name "kicad-cern-libraries")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/ohwr/cern-kicad-libs.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0lr1p28gknbgsr86hbzh87plagcyc040v6141xmha280n78h2l62"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("SchLib" "share/kicad/cern/")
("PcbLib" "share/kicad/cern/")
("CERN.sqlite" "share/kicad/cern/")
("CERN_Linux.kicad_dbl" "share/kicad/cern/")
("fp-lib-table" "share/kicad/cern/")
("sym-lib-table" "share/kicad/cern/")
("README.md" "share/doc/kicad-cern-libraries/")
("LICENSE" "share/doc/kicad-cern-libraries/")
("LICENSES" "share/doc/kicad-cern-libraries/")
("CHECKSUMS" "share/doc/kicad-cern-libraries/")
("pcblib_conversion_log.txt" "share/doc/kicad-cern-libraries/")
("schlib_conversion_log.txt" "share/doc/kicad-cern-libraries/"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'adapt-library-tables
(lambda _
(substitute* "sym-lib-table"
(("\\$\\{KICAD9_SYMBOL_DIR\\}")
"${KICAD10_SYMBOL_DIR}")))))))
(propagated-inputs (list sqliteodbc))
(native-search-paths
(list (search-path-specification
(variable "CERN_LIB_DIR")
(files '("share/kicad/cern"))
(separator #f))))
(home-page "https://gitlab.com/ohwr/cern-kicad-libs")
(synopsis "CERN component libraries for KiCad")
(description
"This package provides CERN's KiCad component libraries, including
schematic symbols, footprints, a SQLite-backed database library, and KiCad
library tables. The libraries are generated from CERN's Altium Designer
libraries.")
(license license:ohl2-p))))
(define-public lepton-eda
(package
(name "lepton-eda")
@@ -1657,7 +1504,7 @@ an embedded event driven algorithm.")
(define-public librelane
(package
(name "librelane")
(version "3.0.3")
(version "3.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1666,7 +1513,7 @@ an embedded event driven algorithm.")
(file-name (git-file-name name version))
(sha256
(base32
"0g4b5kby7zp8v59xzxmfxh3a2yqvmmsb1wsmasl3cz1aibk343a8"))))
"1v43adkw5c624nd06g11cb609v8pj3prfyyawbq3i4k1w1law597"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -1923,31 +1770,6 @@ management with library, schematic and board editors.")
(license (list license:expat ;libfst and fastlz-derived sources
license:bsd-2))))) ;for lz4-derived sources
(define-public python-csxcad
(package
(inherit csxcad)
(name "python-csxcad")
(build-system pyproject-build-system)
(arguments
(list
;; Tests are broken in v0.6.3.
;; Check on update.
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'prepare-build
(lambda _
(chdir "./python")
(setenv "CSXCAD_INSTALL_PATH"
#$(this-package-input "csxcad")))))))
(native-inputs (list python-minimal python-cython python-numpy
python-setuptools))
(inputs (list csxcad fparser hdf5 python-numpy tinyxml))
(synopsis "Python bindings for @code{csxcad}")
(description "Library for describing geometrical objects and their
physical and non-physical properties.")
(license license:lgpl3+)))
(define-public python-lln-libparse
(package
(name "python-lln-libparse")
@@ -2198,7 +2020,7 @@ which allows one to install the M8 firmware on any Teensy.")
(define-public magic
(package
(name "magic")
(version "8.3.644")
(version "8.3.633")
(source
(origin
(method git-fetch)
@@ -2207,7 +2029,7 @@ which allows one to install the M8 firmware on any Teensy.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0qp1alm4pczfm77r8lxwgzrwh02ihvfmk9sbwjlfbrixg1dn85xb"))))
(base32 "1rwrhb0q99rpv4lbiw1sqykwzf9gj1my2wkh6mp8g36rab2vhii3"))))
(build-system gnu-build-system)
(arguments
(list
@@ -2237,7 +2059,7 @@ versus schematic} tests and can assist with automatic routing.")
(define-public mcy
(package
(name "mcy")
(version "0.65")
(version "0.64")
(source
(origin
(method git-fetch)
@@ -2300,7 +2122,7 @@ coverage.")
(define-public netgen
(package
(name "netgen")
(version "1.5.319")
(version "1.5.318")
(source
(origin
(method git-fetch)
@@ -2309,7 +2131,7 @@ coverage.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "16xd2xcsny1bb6yk4lz34jfpwfb5xi2i9izxjymmalnzhg32i9cz"))))
(base32 "19rd8y2pspycr2296nhm60fhsgnzlyzb09wx2kgqzg6s7h6cmrr5"))))
(build-system gnu-build-system)
(arguments
(list
@@ -2657,66 +2479,6 @@ such as:
@end itemize")
(license license:expat)))
(define-public openems
(package
(name "openems")
(version "0.0.36")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thliebig/openEMS")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1vxlknnji7kha0kabpjqh48i4r0rqlla9gcxhn69d0gcw76albmw"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DCSXCAD_ROOT_DIR="
#$(this-package-input "csxcad"))
(string-append "-DFPARSER_ROOT_DIR="
#$(this-package-input "fparser")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-cmake
(lambda _
(substitute* "CMakeLists.txt"
((" system\n") "")
(("find_package\\(HDF5 1.8 COMPONENTS C HL REQUIRED\\)")
"find_package(HDF5 1.8 REQUIRED)"))))
(delete 'check)
(add-after 'install 'check
(lambda* (#:key tests? source inputs #:allow-other-keys)
(when tests?
(let* ((testsuite (string-append source "/TESTSUITE"))
(testsuite-tmp "/tmp/openEMS-TESTSUITE"))
;; Testsuite directory needs to be writable.
(copy-recursively testsuite testsuite-tmp)
(invoke "octave" "--no-gui" "--eval"
(string-append
"addpath('" #$output "/share/openEMS/matlab');"
"addpath('"
(search-input-directory inputs "share/CSXCAD/matlab")
"');"
;; Work around bug in test script.
"addpath('" testsuite-tmp "/helperscripts');"
"run('" testsuite-tmp "/run_testsuite.m');")))))))))
(native-inputs (list cmake-minimal octave pkg-config))
(inputs (list boost
csxcad
fparser
hdf5
openmpi
tinyxml
vtk))
(home-page "https://www.openems.de")
(synopsis "Electromagnetic field solver")
(description "@code{OpenEMS} is an electromagnetic field solver using
the @acronym{FDTD, Finite-Difference Time-Domain} method.")
(license license:gpl3+)))
(define-public pcb-rnd
(package
(name "pcb-rnd")
@@ -3520,44 +3282,6 @@ integrated circuit Hardware Description Language} and SystemVerilog
parser library for Python.")
(license license:expat)))
(define-public python-openems
(package
(inherit openems)
(name "python-openems")
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ; No tests. Check again on package upgrade.
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-sources
;; Check if this is still needed on upgrade.
(lambda _
(substitute* "python/openEMS/_nf2ff.pxd"
(("cimport cython.numeric")
"import cython
from cython cimport numeric"))))
(add-before 'build 'prepare-build
(lambda* _
(chdir "./python")
(setenv "CSXCAD_INSTALL_PATH"
#$(this-package-input "csxcad"))
(setenv "OPENEMS_INSTALL_PATH"
#$(this-package-input "openems")))))))
(native-inputs (list python-cython python-setuptools))
(inputs (list csxcad
fparser
openems
python-csxcad
python-hdf5storage
python-numpy
tinyxml))
(home-page "https://www.openems.de")
(synopsis "Python API for the electromagnetic field solver @code{OpenEMS}")
(description "@code{OpenEMS} is an electromagnetic field solver using
the @acronym{FDTD, Finite-Difference Time-Domain} method.")
(license license:gpl3+)))
(define-public python-pyucis
(package
(name "python-pyucis")
@@ -3789,7 +3513,7 @@ set.")
(define-public fusesoc
(package
(name "fusesoc")
(version "2.4.6")
(version "2.4.5")
(source
(origin
(method git-fetch)
@@ -3798,7 +3522,7 @@ set.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11bmvk10mszv65ws84jmm220ivwn55v8664kkdm9d4m99pryi2kp"))))
(base32 "1sw0zl6hjlzp1a0agdl9yp901pih70ppzzss18l8f3jxs6q7jm1n"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -4067,36 +3791,6 @@ design.")
to enforce it.")
(license license:gpl3+)))
(define-public python-pyxhdl
(package
(name "python-pyxhdl")
(version "0.53")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/davidel/pyxhdl")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "16dqqhbg5q6fxlhnfcjimxv1zgziw5g46askjhfg8g2hn7i3vfal"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-backend #~'custom
#:test-flags #~(list "tests/test_runner.py")))
(native-inputs
(list python-setuptools))
(propagated-inputs
(list python-numpy python-misc-utils))
(home-page "https://github.com/davidel/pyxhdl")
(synopsis
"Python frontend for @acronym{HDL, Hardware Description Languages}")
(description
"PyXHDL replaces HDL code by Python, generating VHDL (>= 2008) and
Verilog (SystemVerilog >= 2012) code to be used for synthesis and simulation.")
(license license:asl2.0)))
(define-public python-vunit
(package
(name "python-vunit")
@@ -4185,71 +3879,6 @@ automated testing of HDL code.")
;; subdirectories are under ASL.
(license (list license:mpl2.0 license:asl2.0))))
(define-public qcsxcad
(package
(name "qcsxcad")
(version "0.6.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thliebig/QCSXCAD")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ag1shyhsmfsvqm35fi2kfnbcngmln8rjsv88f97gyx9wiqc808y"))))
(build-system qt-build-system)
(arguments
(list
#:tests? #f ;No tests.
#:qtbase qtbase ;For Qt 6
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-sources
;; Fix missing `std::`-prefix and missing include.
;; This is fixed in upstream but not tagged with a version.
(lambda _
(substitute* "vtkInteractorStyleRubberBand2DPlane.cpp"
(("#include \"vtkCamera.h\"")
"#include <iostream>\n#include \"vtkCamera.h\"")
(("\tcerr ")
"\tstd::cerr "))
(substitute* "VTKPrimitives.cpp"
(("#include \"VTKPrimitives.h\"")
"#include <iostream>\n#include \"VTKPrimitives.h\"")
(("\tcerr ")
"\tstd::cerr ")
(("\tcout ")
"\tstd::cout "))
(substitute* "QVTKStructure.cpp"
(("#include \"QVTKStructure.h\"")
"#include <iostream>\n#include \"QVTKStructure.h\"")
(("\tcerr ")
"\tstd::cerr ")
(("\tcout ")
"\tstd::cout ")))))))
(inputs (list boost
cgal
csxcad
eigen
freetype
gmp
libjpeg-turbo
libpng
libtiff
lz4
openmpi
qt5compat
tinyxml
vtk))
(home-page "https://github.com/thliebig/QCSXCAD")
(synopsis "GUI library for @code{csxcad}")
(description
"GUI library for @code{csxcad} --- a library for describing geometrical
objects and their properties. This library is used in @code{appcsxcad}
which provides a standalone graphical frontend to @{csxcad}.")
(license license:lgpl3+)))
(define-public qrouter
(package
(name "qrouter")
@@ -4604,7 +4233,7 @@ them usable as simple logic analyzer and/or oscilloscope hardware.")
(define-public sby
(package
(name "sby")
(version "0.65")
(version "0.64")
(source
(origin
(method git-fetch)
@@ -4613,7 +4242,7 @@ them usable as simple logic analyzer and/or oscilloscope hardware.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19cvbvg6jjh7lj1sd7jz7yd5wrlswg6dmyajc7kxgl7dd97ivpwy"))))
(base32 "0jksspdgq2grk4a80i5yfc9bazfij37wpmrlkvygpz9ys5ny1432"))))
(build-system gnu-build-system)
(arguments
(list
@@ -5036,7 +4665,7 @@ parallel computing platforms. It also supports serial execution.")
(define-public yosys
(package
(name "yosys")
(version "0.65")
(version "0.64")
(source
(origin
(method git-fetch)
@@ -5044,16 +4673,15 @@ parallel computing platforms. It also supports serial execution.")
(url "https://github.com/YosysHQ/yosys")
(commit (string-append "v" version))))
(sha256
(base32 "04sks9hj8h9vy6zii29zjgq38h2h4nz8a7xxiq33p1aivwq7bz8q"))
(base32 "13gw5msk1kv05jkb330nybvx2s0ixm6l6mdpyapnqmv3lkhby1mj"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(arguments
(list
#:test-target "all"
#:test-target "vanilla-test" ;TODO: restore to "test" with next release
#:make-flags
#~(list (string-append "PREFIX=" #$output)
"ENABLE_FUNCTIONAL_TESTS=1"
"ENABLE_EDITLINE=1"
"ENABLE_LIBYOSYS=1"
"ENABLE_PYOSYS=1"
@@ -5068,11 +4696,6 @@ parallel computing platforms. It also supports serial execution.")
#$(this-package-input "abc-yosyshq")))
#:phases
#~(modify-phases %standard-phases
;; TODO: Remove when fixed.
(add-after 'unpack 'remove-aiger
(lambda _
(substitute* "tests/Makefile"
((".*aiger.*") ""))))
(add-before 'configure 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "backends/smt2/smtio.py"
@@ -5163,12 +4786,12 @@ parallel computing platforms. It also supports serial execution.")
(git-reference
(url "https://github.com/povik/yosys-slang")
;; No tags, nor releases.
(commit "cf20b1ba0d2c9df0508f927930a87565e7e0d220")
(commit "4e53d772996184b07e9bfe784060f96e6cb0a267")
(recursive? #t))) ;requires slang and fmt
(file-name "yosys-slang")
(sha256
(base32
"1rl9i19a90yis33g549ida7lygfh1qka5k96zdrvk0shn2jnm8g4")))))
"1jjr1b6xd1sr9fkyfyl4y2wkzl51m7g10bw97mnw81v2mzssrs2q")))))
;; Optional dependencies increase considerably package closure.
;; - gtkwave: required only for vcd2fst binary, used by sim command.
;; - graphviz, xdot: used by show command to display schematics.
@@ -5199,7 +4822,7 @@ for various application domains, including FPGAs and ASICs.")
license:expat
;; yosys-slang/third_party/fmt
license:bsd-2 license:bsd-3 license:psfl
;; yosys, yosys-slang
;; yosys
license:isc))))
(define-deprecated-package yosys-clang yosys)
+140 -450
View File
@@ -1005,7 +1005,7 @@ e.g. emacs-geiser-guile for Guile.")
(define-public emacs-gptel
(package
(name "emacs-gptel")
(version "0.9.9.5")
(version "0.9.9.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1014,7 +1014,7 @@ e.g. emacs-geiser-guile for Guile.")
(file-name (git-file-name name version))
(sha256
(base32
"1bf7xynmrm859471nxc56sv028i039qnqhhmkhzkhf76mwac6cx8"))))
"1ffh2mwy9znjd0v9mh065lv122xg4nlnkbxwjfrsaqn1j1q2xc0c"))))
(build-system emacs-build-system)
(arguments
(list
@@ -1025,7 +1025,8 @@ e.g. emacs-geiser-guile for Guile.")
(lambda _
(copy-recursively
#$(this-package-native-input "emacs-gptel-test-files")
"test")))
"test")
(invoke "chmod" "--recursive" "u+w" "test")))
;; gptel-pkg.el produces an error during the check phase.
(add-before 'check 'rename-pkg
(lambda _ (rename-file "gptel-pkg.el" "gptel-pkg.el_")))
@@ -1034,9 +1035,16 @@ e.g. emacs-geiser-guile for Guile.")
(add-after 'unpack 'use-appropriate-curl
(lambda* (#:key inputs #:allow-other-keys)
;; These two alternatives error on the substitution.
(emacs-substitute-variables "gptel-request.el"
("gptel-use-curl"
(search-input-file inputs "/bin/curl"))))))))
;; (emacs-substitute-variables "gptel-openai.el"
;; ("gptel-use-curl"
;; (search-input-file inputs "/bin/curl")))
;; (emacs-substitute-sexps "gptel-openai.el"
;; ("(defvar gptel-use-curl"
;; (search-input-file inputs "/bin/curl")))
(substitute* "gptel-openai.el"
(("defvar gptel-use-curl")
(format #f "defvar gptel-use-curl \"~a\""
(search-input-file inputs "/bin/curl")))))))))
(inputs (list curl))
(propagated-inputs (list emacs-compat emacs-transient))
(native-inputs
@@ -1045,11 +1053,11 @@ e.g. emacs-geiser-guile for Guile.")
(method git-fetch)
(uri (git-reference
(url "https://github.com/karthink/gptel-test")
(commit "c62e2f78d843f3454e068eb7ec6bb8d6001b0649")))
(commit "318c9dda9e6dbb3e61311cf4de23f124c4d2960a")))
(file-name "emacs-gptel-test-files")
(sha256
(base32
"1xixi1fa2iwixi6f0wdva2pyisxb8myljwbx2v5nxd3v0i3fbgq9")))))
"1368qrxxrw5zd2i0gx55r7yvi5xjma1khs8p5f2w76m7c6ms83yg")))))
(home-page "https://github.com/karthink/gptel")
(synopsis "GPTel is a simple ChatGPT client for Emacs")
(description
@@ -1092,8 +1100,8 @@ agentically, with any LLM.")
(define-public emacs-gptel-prompts
;; No releases.
(let ((commit "f6d590c70dd2a1bab4426e2d4e51543e9953feb2")
(revision "3"))
(let ((commit "f1c29208c1f0b62918ac6682038da5db4184fc51")
(revision "2"))
(package
(name "emacs-gptel-prompts")
(version (git-version "1.0" revision commit))
@@ -1104,7 +1112,7 @@ agentically, with any LLM.")
(commit commit)))
(method git-fetch)
(sha256
(base32 "1gnv2kzs09xzdywckwscg7sz3ay8904gj19k6vbwrmh7isyygxan"))
(base32 "1bw98biq7m1xigjmgm3w7dzac99vww619d0n24rq15kcrra7sg84"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ;no tests
@@ -2078,8 +2086,8 @@ when typing parentheses directly or commenting out code line by line.")
(define-public emacs-puni
;; No tagged release upstream
(let ((commit "fe132f803868f325cf6f162139e327b76df9e4c1")
(revision "4"))
(let ((commit "f430f5b0a14c608176e3376058eb380ab0824621")
(revision "3"))
(package
(name "emacs-puni")
(version (git-version "0" revision commit))
@@ -2091,7 +2099,7 @@ when typing parentheses directly or commenting out code line by line.")
(file-name (git-file-name name version))
(sha256
(base32
"0ffjpb0ilhcng1wwmnl1lx7h8v1z0bgsq6wb7x4x2rwsrvqjv9hm"))))
"0kvxll2yx4lh5x04cigdizncp2kbva1iidz9fjnbi8qqfm6pq5qq"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no actual tests
(propagated-inputs (list emacs-with-editor))
@@ -2864,31 +2872,6 @@ process, passing on the arguments as command line arguments.")
"Magit-annex adds a few git-annex operations to the Magit interface.")
(license license:gpl3+)))
(define-public emacs-magit-lfs
;; Last tag is from 2021 and missing changes adjusting to transient.el
;; deprecations.
(let ((commit "cd9f46e1840270be27e2c2d9dcf036ff0781f66d")
(revision "0"))
(package
(name "emacs-magit-lfs")
(version (git-version "0.4.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Ailrun/magit-lfs")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0psnyxrc7fy2vng81mak0ji7kw58ly01frzr5z2xpj08hxx16b3c"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list emacs-magit emacs-transient emacs-dash))
(home-page "https://github.com/Ailrun/magit-lfs")
(synopsis "Git LFS support for Magit")
(description "@code{magit-lfs} provides Magit integration for git-lfs.")
(license license:gpl3+))))
(define-public emacs-magit-tbdiff
(package
(name "emacs-magit-tbdiff")
@@ -3756,7 +3739,7 @@ organizing remote Go repository clones.")
(define-public emacs-ghub
(package
(name "emacs-ghub")
(version "5.2.0")
(version "5.1.0")
(source
(origin
(method git-fetch)
@@ -3765,7 +3748,7 @@ organizing remote Go repository clones.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "09bi4h71dvwnkq110zrm14a9qal4294kgmhlhaa44lsw8g3v4826"))))
(base32 "0d49qkkza9my2xz1vdyq7l3vmmjbamhsqm9xy7xikisyhsngvj73"))))
(build-system emacs-build-system)
(arguments
(list
@@ -4120,7 +4103,7 @@ prover, version 4.")
(define-public emacs-lem
(package
(name "emacs-lem")
(version "0.25")
(version "0.24")
(source
(origin
(method git-fetch)
@@ -4130,7 +4113,7 @@ prover, version 4.")
(file-name (git-file-name name version))
(sha256
(base32
"1h28bwy0nd08lxvpqdxqcbg0n2j09ilb7rf3nj6csflz64nhg40x"))))
"181cibmv6da4rjr6p3nqpza6i7v4scc4qndznhyjb9nhbf3gsil4"))))
(build-system emacs-build-system)
(arguments
(list
@@ -6200,33 +6183,6 @@ always indented. It reindents after every change, making it more reliable
than @code{electric-indent-mode}.")
(license license:gpl2+)))
(define-public emacs-isayt
;; No tags. The Version header has not been updated since 2021.
(let ((commit "32967c11a5a24b3c1d85cbf41a9b52a996739b45")
(revision "0"))
(package
(name "emacs-isayt")
(version (git-version "0.0.5" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/andreyorst/isayt.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "15i8z06k7iakw50lx9akq2ggddm7z99crwqbb0sx81bzddaz2s63"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://gitlab.com/andreyorst/isayt.el")
(synopsis "Automatically indent lisp expressions while typing")
(description
"@code{isayt-mode} is a minor mode to adjust indentation of
S-expressions automatically as you type. It is similar to
@code{aggressive-indent-mode}, but it uses @code{syntax-ppss} and
@code{indent-sexp} instead of a timer and @code{indent-according-to-mode}.")
(license license:gpl3+))))
(define-public emacs-smarttabs
(package
(name "emacs-smarttabs")
@@ -7204,7 +7160,7 @@ that the binary uses instead of the actual binary contents.")
(define-public emacs-ellama
(package
(name "emacs-ellama")
(version "1.17.1")
(version "1.17.0")
(source
(origin
(method git-fetch)
@@ -7214,7 +7170,7 @@ that the binary uses instead of the actual binary contents.")
(file-name (git-file-name name version))
(sha256
(base32
"1ibqmhp6mszr85lfb6fwfx9npn46kzcb26vqprrla61w8nrplx97"))))
"03y4hyrsmq6m7si191r3ndp06x5w53adpig272ymm0i4v9gnzlr9"))))
(build-system emacs-build-system)
(arguments
(list
@@ -9324,16 +9280,14 @@ This mode supports Apache HTTP Server 2.4 and major modules.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radian-software/apheleia")
(url "https://github.com/raxod502/apheleia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1vs532hjkwj19laigqvvk11r0gwhv5vd8v6wh5598dzmfw3yh4bm"))))
(build-system emacs-build-system)
(arguments (list #:include #~(cons "^scripts/formatters/" %default-include)
#:exclude #~(cons "\\.js$" %default-exclude)))
(native-inputs (list emacs-buttercup))
(home-page "https://github.com/radian-software/apheleia")
(home-page "https://github.com/raxod502/apheleia")
(synopsis "Reformat buffer stably")
(description
"This package allows for a buffer to be reformatted without moving point,
@@ -9982,13 +9936,13 @@ for the Zig programming language in Emacs.")
(define-public emacs-erc
(package
(name "emacs-erc")
(version "5.6.2")
(version "5.6.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/erc-" version ".tar"))
(sha256
(base32 "0rm7aw6p8736ssp4z7vmfmwff93h4dwcv9pz3b83f9060i2svvvn"))))
(base32 "13dzip6xhj0mf8hs8wk08pfxny5gwpbzfsqkmz146xvl2d8m621x"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-compat))
(home-page "https://www.gnu.org/software/emacs/erc.html")
@@ -11950,22 +11904,22 @@ not hang at all.")
(license license:gpl3+)))
(define-public emacs-elastic-modes
(let ((commit "13c2b94a994717bb1517af0c19b10de33b29a94b")
(revision "3"))
(let ((commit "c577e8921a4d9bd77742729707152bc557fae3e2")
(revision "2"))
(package
(name "emacs-elastic-modes")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/elastic-modes")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1fb7hy65ax288zqc2y1qjmkja1ksdslvsjbz3jzw7cjcb4yvfkpc"))))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/elastic-modes")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0r40g7zgz9072x74qbnv8lmql0gajsz2p8b8jckmgyniakmln69v"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ;no tests
(arguments (list #:tests? #false)) ;no tests
(propagated-inputs (list emacs-dash))
(home-page "https://github.com/jyp/elastic-modes")
(synopsis "Text and code alignment for variable-width fonts")
@@ -18146,14 +18100,11 @@ Application Programming Interface}}, a free and open-source quotations
(name "emacs-spinner")
(version "1.7.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Malabarba/spinner.el")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/spinner-"
version ".tar"))
(sha256
(base32
"1m872dj1n05mkvgfyiqsbri489vmff5zdmv4xx5qj2s91sp046rl"))))
(base32 "140kss25ijbwf8hzflbjz67ry76w2cyrh02axk95n6qcxv7jr7pv"))))
(build-system emacs-build-system)
(home-page "https://github.com/Malabarba/spinner.el")
(synopsis "Emacs mode-line spinner for operations in progress")
@@ -18823,13 +18774,9 @@ and tooling.")
(lambda* (#:key inputs #:allow-other-keys)
(emacs-substitute-variables "elfeed-curl.el"
("elfeed-curl-program-name"
(search-input-file inputs "/bin/curl")))
(substitute* "elfeed-lib.el"
(("\\(executable-find \"gzip\"\\)")
(string-append
"\"" (search-input-file inputs "/bin/gzip") "\""))))))))
(search-input-file inputs "/bin/curl"))))))))
(inputs
(list curl gzip))
(list curl))
(home-page "https://github.com/skeeto/elfeed")
(synopsis "Atom/RSS feed reader for Emacs")
(description
@@ -20293,7 +20240,7 @@ multiple project types.")
(define-public emacs-tp
(package
(name "emacs-tp")
(version "0.9")
(version "0.8")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -20302,7 +20249,7 @@ multiple project types.")
(file-name (git-file-name name version))
(sha256
(base32
"01g72x2lqmrdh3qgd3135hgijka975xg92ki36qyv71vi20rhmnm"))))
"1zhvridy6p7dy9hpf088k166a1c918hqf6k3jmnm7raw8vflc7qq"))))
(build-system emacs-build-system)
(home-page "https://codeberg.org/martianh/tp.el")
(synopsis "Utilities to create transient menus for POSTing to an API")
@@ -20442,7 +20389,7 @@ implementation.")
(define-public emacs-cider
(package
(name "emacs-cider")
(version "1.21.0")
(version "1.20.0")
(source
(origin
(method git-fetch)
@@ -20451,30 +20398,26 @@ implementation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19wx9mc488qipm08s7hc0zrfmiylw577lmf3jpvqcjq7amx14jgc"))))
(base32 "08hd281ybskkhir170hr3xpga1b1hwpph7rd0fk6fvm0ngdgxazs"))))
(build-system emacs-build-system)
(arguments
(list
#:lisp-directory "lisp"
#:include #~(cons* "^lein\\.sh$" "^clojure\\.sh$" %default-include)
#:exclude ;don't exclude 'cider-test.el'
#~(list "^\\.dir-locals\\.el$" "^test/")
#:test-command
#~(list "eldev" "--use-emacsloadpath" "-dtT" "-p" "test")
#:exclude
#~(list "^\\.dir-locals\\.el$" "^test/")
#:phases
;; XXX: file "test/cider-tests.el" contains a bogus "/bin/command"
;; string, and `patch-el-files' phase chokes on it (even though the
;; file is excluded from installation). Remove the phase altogether
;; since there is no "/bin/executable" to replace in the code base
;; anyway.
#~(modify-phases %standard-phases
(delete 'patch-el-files)
(add-after 'unpack 'remove-network-tests
(lambda _
(delete-file "../test/cider-jar-tests.el")))
(replace 'check
(lambda* (#:key test-command tests?
#:allow-other-keys)
(when tests?
(with-directory-excursion ".."
(setenv "EMACSLOADPATH"
(string-append (getcwd) ":"
(getenv "EMACSLOADPATH")))
(apply invoke test-command))))))))
(add-before 'check 'skip-failing-tests
(lambda _ ;; Require network.
(delete-file "test/cider-jar-tests.el"))))))
(native-inputs (list emacs-buttercup emacs-eldev))
(propagated-inputs
(list emacs-clojure-mode
@@ -22739,7 +22682,7 @@ are common in Chromium-derived projects.")
(define-public emacs-gnosis
(package
(name "emacs-gnosis")
(version "0.10.6")
(version "0.10.3")
(source
(origin
(method git-fetch)
@@ -22748,13 +22691,12 @@ are common in Chromium-derived projects.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1cjm8hj62zm9k89pnsh5hbgjqqnh53byw4mijl76a7cn8args4gy"))))
(base32 "0kpzc2jw51sklz15v0d0vzm5ck05n3d90l02la4nxn8r85jb1f53"))))
(build-system emacs-build-system)
(arguments
(list
#:lisp-directory "lisp"
#:test-command
#~(list "make" "-C" ".." "test" "GUIX_SHELL=")
#~(list "make" "test" "GUIX_SHELL=")
#:emacs emacs-no-x ;tests require built-in SQLite support
#:phases
#~(modify-phases %standard-phases
@@ -22767,9 +22709,9 @@ are common in Chromium-derived projects.")
"/.emacs.d"))))
(add-before 'install 'make-info
(lambda _
(invoke "make" "-C" ".." "doc" "GUIX_SHELL="))))))
(invoke "make" "doc" "GUIX_SHELL="))))))
(native-inputs (list texinfo))
(propagated-inputs (list emacs-keymap-popup))
(propagated-inputs (list emacs-transient))
(home-page "https://thanosapollo.org/projects/gnosis/")
(synopsis "Personal knowledge system for GNU Emacs")
(description
@@ -25429,7 +25371,7 @@ with Eglot.")
(define-public emacs-jabber
(package
(name "emacs-jabber")
(version "0.10.6")
(version "0.10.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -25438,7 +25380,7 @@ with Eglot.")
(file-name (git-file-name name version))
(sha256
(base32
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
(build-system emacs-build-system)
(arguments
(list
@@ -25460,6 +25402,16 @@ with Eglot.")
"../src/picomemo")
(invoke "chmod" "--recursive" "u+w"
"../src/picomemo")))
(add-after 'unpack 'fix-test-runner
(lambda _
;; Replace grep -oP (Perl regex) with a
;; POSIX-compatible alternative so the test
;; runner counts results correctly.
(substitute* "../Makefile"
(("grep -oP '\\^Ran \\\\K\\[0-9\\]\\+'")
(string-append
"grep -o 'Ran [0-9]*'"
" | grep -o '[0-9]*'")))))
(add-after 'unpack 'disable-failing-tests
(lambda _
;; These 4 tests pass outside the build
@@ -25495,7 +25447,7 @@ with Eglot.")
(base32
"044xd1gn9lpd5yrb3c1lmvqsc1chbkhd3vnh7800hxn23a0hxbzj")))))
(inputs (list mbedtls))
(propagated-inputs (list emacs-fsm emacs-keymap-popup))
(propagated-inputs (list emacs-fsm))
(home-page "https://thanosapollo.org/projects/jabber/")
(synopsis "XMPP (Jabber) client for Emacs")
(description
@@ -28692,7 +28644,7 @@ match and total match information in the mode-line in various search modes.")
(define-public emacs-pg
(package
(name "emacs-pg")
(version "0.66")
(version "0.65")
(source (origin
(method git-fetch)
(uri (git-reference (url "https://github.com/emarsden/pg-el")
@@ -28700,7 +28652,7 @@ match and total match information in the mode-line in various search modes.")
(file-name (git-file-name name version))
(sha256
(base32
"1il3p0pckmyrkr5sbrv04wnyqmy7pfknlps5lp56r294x59bdyw7"))))
"164kfd0lc1qw3wnlxqyjmqd3yhmkkf81qmgdx0kydlrij8a7z594"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-peg))
(home-page "https://github.com/emarsden/pg-el")
@@ -32218,32 +32170,6 @@ symbols. Currently the code distinguishes Lisp functions, built-in functions,
macros, faces and variables. To enable call @code{highlight-defined-mode}.")
(license license:gpl3+)))
(define-public emacs-highlight-quoted
;; The last tagged release is from 2014 and predates a license change from
;; BSD 3-clause to BSD 2-clause.
(let ((commit "24103478158cd19fbcfb4339a3f1fa1f054f1469")
(revision "0"))
(package
(name "emacs-highlight-quoted")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Fanael/highlight-quoted")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1gq8inxfni9zgz2brqm4nlswgr8b0spq15wr532xfrgr456g10ks"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://github.com/Fanael/highlight-quoted")
(synopsis "Highlight Lisp quotes and quoted symbols")
(description
"@code{highlight-quoted-mode} is a minor mode for highlighting Lisp
quotes and quoted symbols.")
(license license:bsd-2))))
(define-public emacs-parinfer-mode
(package
(name "emacs-parinfer-mode")
@@ -35274,36 +35200,21 @@ customisation options to control its behaviour.")
(license license:gpl3+)))
(define-public emacs-dired-launch
(let ((commit "97eb002a2090518df86182e9f1db703850534fb7")
(revision "0"))
(package
(name "emacs-dired-launch")
(version (git-version "0.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thomp/dired-launch")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1rnjp0fb0rakaky7pa6vdpz8cpf2dg5k9zsvxl8h6lcc9b7qa61c"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; No tests
(home-page "https://codeberg.org/thomp/dired-launch")
(synopsis "Extra command to launch external programs")
(description
"This package provides a method to open entries in external programs from dired.")
(license license:gpl3+))))
(define-public emacs-dired-launch-superseded-version
(package
(inherit emacs-dired-launch)
(name "emacs-dired-launch")
(version "20240809.1910")
(properties (list (cons 'superseded emacs-dired-launch)))))
(source (origin
(method url-fetch)
(uri (string-append "https://melpa.org/packages/dired-launch-"
version ".tar"))
(sha256
(base32
"1zgs1hzy04pywpcgn5r8s7aah2bv1p5x5lmlcqg9yranxj8a9k6d"))))
(build-system emacs-build-system)
(synopsis "Extra command to launch external programs")
(description "This package provides a method to open entries in external programs from dired.")
(home-page "https://codeberg.org/thomp/dired-launch")
(license license:gpl3+)))
(define-public emacs-dired-rsync
(package
@@ -35682,7 +35593,7 @@ and comments.")
(define-public emacs-yeetube
(package
(name "emacs-yeetube")
(version "2.3.0")
(version "2.1.12")
(source
(origin
(method git-fetch)
@@ -35691,7 +35602,7 @@ and comments.")
(commit version)))
(sha256
(base32
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@@ -35706,7 +35617,7 @@ and comments.")
(format #f "~s" (search-input-file inputs
(string-append "/bin/" program))))))))))
(inputs (list mpv torsocks yt-dlp))
(propagated-inputs (list emacs-compat emacs-keymap-popup))
(propagated-inputs (list emacs-compat))
(home-page "https://thanosapollo.org/projects/yeetube/")
(synopsis "Youtube front-end for Emacs")
(description
@@ -37004,48 +36915,6 @@ Nix expressions. It supports syntax highlighting, indenting and refilling of
comments.")
(license license:lgpl2.1+)))
(define-public emacs-nix-ts-mode
(package
(name "emacs-nix-ts-mode")
(version "0.1.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nix-community/nix-ts-mode.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1x8flq97vrxqvqmf25dr5wnmvwpa0l3zv5hyz2af3aj4yy1ic35n"))))
(build-system emacs-build-system)
(arguments
(list
#:emacs emacs-no-x ; tests need treesit support
#:test-command #~(list "ert-runner" "-l" "test/guix-treesit.el")
#:phases
#~(modify-phases %standard-phases
;; Tests load the Nix tree-sitter grammar. Guix informs Emacs of
;; tree-sitter grammars via site-run-file, which ert-runner does not
;; load by default.
(add-before 'check 'fix-tests
(lambda _
(with-output-to-file "test/guix-treesit.el"
(lambda _
(display "\
(with-eval-after-load 'treesit
(when-let* ((grammar-path (getenv \"TREE_SITTER_GRAMMAR_PATH\")))
(mapcar (lambda (x) (add-to-list 'treesit-extra-load-path x))
(split-string grammar-path \":\"))))
"))))))))
(native-inputs (list emacs-ert-runner))
(propagated-inputs (list tree-sitter-nix))
(home-page "https://github.com/nix-community/nix-ts-mode")
(synopsis "Major mode for Nix expressions, powered by tree-sitter")
(description
"This package provides a major mode for editing Nix expressions, powered
by built-in Emacs tree-sitter support.")
(license license:gpl3+)))
(define-public emacs-libmpdel
(package
(name "emacs-libmpdel")
@@ -38162,7 +38031,7 @@ in Docker environment.")
(define-public emacs-dape
(package
(name "emacs-dape")
(version "0.27.1")
(version "0.26.0")
(source
(origin
(method git-fetch)
@@ -38171,7 +38040,7 @@ in Docker environment.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "12cvry61nrr7xjsd7f445ik273lv4na4wkxad795pflibqz7q6r3"))))
(base32 "0pib99g20kx7jqxbr7xv6xgpihjrb1yyd84qs05i0xscpgy8yj9l"))))
(build-system emacs-build-system)
(arguments
;; FIXME python tests pass, JS tests require additional dependencies
@@ -38783,7 +38652,7 @@ as Emacs Lisp.")
(define-public emacs-transient
(package
(name "emacs-transient")
(version "0.13.2")
(version "0.13.1")
(source
(origin
(method git-fetch)
@@ -38792,7 +38661,7 @@ as Emacs Lisp.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c5kdzs55xzn4ksrxlm94s4w4mbamh7l5ycjnq9pvgqvggzijqng"))))
(base32 "161drbhzdp9fn0xkc0aza992g9h8prml513y8byyxvi6lqbqn8x4"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #f ;no test suite
@@ -41308,39 +41177,6 @@ work.")
text-property translator.")
(license license:bsd-2)))
(define-public emacs-kkp
;; No tags.
(let ((commit "73957230ffdd3dedf16f4436f61471bd1365abf6")
(revision "0"))
(package
(name "emacs-kkp")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/benotn/kkp")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1j5igiys8asjg0v18flc7p71xjynqi7v8s06qgkac8djvjamd4lh"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command
#~(list "emacs" "--batch" "-L" "." "-l" "kkp-tests.el"
"-f" "ert-run-tests-batch-and-exit")))
(propagated-inputs (list emacs-compat))
(home-page "https://github.com/benotn/kkp")
(synopsis "Kitty Keyboard Protocol input support")
(description
"@file{kkp.el} implements support for the
@url{https://sw.kovidgoyal.net/kitty/keyboard-protocol, Kitty Keyboard
Protocol} in Emacs. It provides an alternative, improved way to transmit
keyboard input from a terminal to Emacs running in that terminal. For
debugging key translation, see @file{kkp-debug.el}.")
(license license:gpl3+))))
(define-public emacs-org-noter
(package
(name "emacs-org-noter")
@@ -41872,7 +41708,7 @@ time.")
(define-public emacs-mastodon
(package
(name "emacs-mastodon")
(version "2.0.17")
(version "2.0.16")
(source
(origin
(method git-fetch)
@@ -41881,7 +41717,7 @@ time.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1pz0ac5r6g34x0nlwwh55c369swiv8h3dr6ndkkm7k2ql7f75xdv"))))
(base32 "1z8qwnc01d9hx5m1xj3acpdzllfh4rxmypzcr3jl4ipp6dybzbx6"))))
(build-system emacs-build-system)
(arguments
(list
@@ -41988,7 +41824,7 @@ a decentralized social network that runs on an Org Mode file over HTTP.")
(define-public emacs-fedi
(package
(name "emacs-fedi")
(version "0.4")
(version "0.3")
(source
(origin
(method git-fetch)
@@ -41997,7 +41833,7 @@ a decentralized social network that runs on an Org Mode file over HTTP.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0xlsh4a42mymi4jrb32ak4srbm28hq67jwijnpbyfzfkchjsqimj"))))
(base32 "0ldag8659nqphc2isw1n3xv8dqf468ppwf1q10zn03sdj4dc1i11"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list emacs-markdown-mode))
@@ -42031,7 +41867,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
(define-public emacs-fj
(package
(name "emacs-fj")
(version "0.37")
(version "0.36")
(source
(origin
(method git-fetch)
@@ -42040,9 +41876,17 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "09ff20am16ysjpbqx7b92qgmvyar9b6blm32flkvzqxccqqinxya"))))
(base32 "10v79lxnaya8h8qkdpvr7ns8330nrrl2h5mz4wh15blcp87ha37l"))))
(build-system emacs-build-system)
(arguments (list #:test-command #~(list "make" "tests" "CASK=")))
(arguments
(list
#:test-command #~(list "make" "tests")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'remove-cask
(lambda _
(substitute* "Makefile"
(("cask ") "")))))))
(native-inputs
(list emacs-el-mock emacs-exemplify-ert emacs-exemplify-eval))
(propagated-inputs (list emacs-fedi emacs-magit emacs-tp emacs-transient))
@@ -42052,96 +41896,6 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
"Fj contains basic functions for interacting with a Forgejo instance.")
(license license:gpl3+)))
(define-public emacs-keymap-popup
(package
(name "emacs-keymap-popup")
(version "0.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thanosapollo/emacs-keymap-popup")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1bzvjvczzzrnsjs3fjcaad3y1xdhbrvxab5pg9zxkypxhw3yzx8n"))))
(build-system emacs-build-system)
(arguments
(list #:tests? #f)) ;tests need a live display read-loop
(home-page "https://codeberg.org/thanosapollo/emacs-keymap-popup")
(synopsis "Elisp library to create key-driven popup menus")
(description "This package provides @code{keymap-popup-define}, a macro
to define a keymap along with popup data and documentation in one place. It
is similar to the @code{transient} Elisp library, but aims to be simpler to
use. Among its features are:
@table @code
@item :switch
buffer-local toggle with [on]/[off] display
@item :keymap
sub-menu with stack navigation (q / C-g pops back)
@item :stay-open
command executes without dismissing the popup
@item :inapt-if
grays out and blocks entries based on a predicate
@item :c-u
prefix argument mode (C-u highlights eligible entries)
@item :if
conditionally hide entries
@item :group
@itemx :row
column layout
@item keymap-popup-annotate
add popup descriptions to existing keymaps
@end table")
(license license:gpl3+)))
(define-public emacs-forgejo
(package
(name "emacs-forgejo")
(version "0.2.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thanosapollo/emacs-forgejo")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0hf4sckxdygxa84g3pi3m2qy16ngx76jsrf192q5l4fppsyirnws"))))
(build-system emacs-build-system)
(arguments
(list #:lisp-directory "lisp"
#:emacs emacs ;tests requires sqlite
#:test-command #~(list "make" "-C" ".." "test")))
(propagated-inputs (list emacs-keymap-popup emacs-markdown-mode))
(home-page "https://codeberg.org/thanosapollo/emacs-forgejo")
(synopsis "Emacs front-end for Forgejo instances")
(description "This package provides an Emacs front-end for Forgejo
instances such as Codeberg or self-hosted servers. It allows you to browse,
filter, and manage issues and pull requests from Emacs. All API responses are
cached in a local SQLite database for fast offline re-display. Among the
other things it can do are:
@itemize
@item
Submit and merge PRs via
AGit-Flow (https://forgejo.org/docs/latest/user/agit-support/) push options
@item
Full code review workflow with threaded comments
@item
Watch rules with per-repo filter polling and desktop notifications
@item
Label, assignee, and milestone management
@item
SQLite cache for instant display and offline usage
@item
Multi-host support with per-instance token configuration
@item
@code{#} and @code{@@} completion in composition buffers (@code{gfm-mode})
@item
Repository settings editor
@end itemize")
(license license:gpl3+)))
(define-public emacs-ebdb-i18n-chn
(package
(name "emacs-ebdb-i18n-chn")
@@ -45980,28 +45734,29 @@ the selected region with @code{| tr -d a-z}.")
(license license:gpl3+))))
(define-public emacs-shell-pop
(package
(name "emacs-shell-pop")
(version "0.70")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kyagi/shell-pop-el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sdi7ckn3dcxy9kw7xz2b5z46fgjjn5mvwpqsmjh3qa6kqirlwmi"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://github.com/kyagi/shell-pop-el")
(synopsis "Utility which helps with pop up shell buffer")
(description
"This Emacs utility helps you pop up and pop out shell buffer window
(let ((commit "4b4394037940a890a313d715d203d9ead2d156a6")
(revision "0"))
(package
(name "emacs-shell-pop")
(version (git-version "0.64" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kyagi/shell-pop-el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0s77n6b9iw1x3dv91ybkpgy3zvqd12si7zw3lg0m2b6j1akrawsg"))))
(build-system emacs-build-system)
(home-page "https://github.com/kyagi/shell-pop-el")
(synopsis "Utility which helps with pop up shell buffer")
(description
"This Emacs utility helps you pop up and pop out shell buffer window
easily. Four pre-set options are: @samp{shell}, @samp{terminal},
@samp{ansi-term}, and @samp{eshell}. You can also set your custom shell if
you use some other configuration.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-shell-here
(let ((commit "eeb437ff26d62a5009046b1b3b4503b768e3131a")
@@ -47283,71 +47038,6 @@ notebooks")
execute code split into cells according to certain magic comments.")
(license license:gpl3+))))
(define-public emacs-codex-ide
(package
(name "emacs-codex-ide")
(version "0.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dgillis/emacs-codex-ide")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xasn1yp494wqr2z9ddq3s71la27cvdvlv4alid2k5bjj89fv2gz"))))
(build-system emacs-build-system)
(arguments
(list
#:include #~(cons "^bin/codex-ide-mcp-server\\.py$" %default-include)
#:test-command #~(list "bin/run-tests.sh")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-bridge-script-path
(lambda _
(emacs-substitute-variables "codex-ide-mcp-bridge.el"
("codex-ide-emacs-bridge-script-path"
(string-append #$output "/share/emacs/site-lisp/codex-ide2-"
#$version "/bin/codex-ide-mcp-server.py")))))
(add-before 'check 'remove-failing-tests
(lambda _
(emacs-batch-edit-file "codex-ide.el"
'(progn
(defun remove-test (file all-test-names)
(with-current-buffer
(find-file-noselect
(format "tests/codex-ide-%s-tests.el" file))
(dolist (test-name all-test-names)
(save-excursion
(re-search-forward
(format "codex-ide-%s" test-name))
(beginning-of-defun)
(goto-char (match-beginning 0))
(kill-sexp)))
(basic-save-buffer)))
(remove-test
"context"
(list (concat "compose-turn-input-does-not-"
"duplicate-prompt-context-block")))
(remove-test
"mcp"
(list "mcp-script-uses-emacsclient-bridge-responses"
(concat "mcp-script-decodes-base64-bridge-"
"response-with-control-and-unicode-text")
(concat "mcp-script-starts-with-"
"optional-server-name-flag"))))))))))
(native-inputs (list zsh))
(propagated-inputs (list emacs-transient python))
(home-page "https://github.com/dgillis/emacs-codex-ide")
(synopsis "Codex app-server integration for Emacs")
(description
"Codex IDE for Emacs provides a native Emacs interface for Codex
app-server sessions. It renders conversations in Emacs buffers, supports
interactive approvals, clickable file references, diff views, session
management, and an optional MCP bridge for exposing live Emacs context to
Codex.")
(license license:expat)))
(define-public emacs-ein
;; XXX: Upstream doesn't make any release, and didn't set any version.
(let ((commit "998ba22660be2035cd23bed1555e47748c4da8a2"))
+3 -3
View File
@@ -702,8 +702,8 @@ editor (with wide ints)" )
#~(cons "--with-wide-int" #$flags))))))
(define-public emacs-next-minimal
(let ((commit "d969185878bf50faedbafbd609c361875b891b53")
(revision "3"))
(let ((commit "509228fc6c026921c67459f21164e0325efc583b")
(revision "2"))
(package
(inherit emacs-minimal)
(name "emacs-next-minimal")
@@ -717,7 +717,7 @@ editor (with wide ints)" )
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1pmx71b6pazjpyfs1d2ngby1idsviwbap3xbr5b7dgf0rngim32s"))
(base32 "04aalyrx5jysk5fhlka98fhfx23sy99zp8j16i0ils20sflyig6n"))
(patches
(search-patches "emacs-next-disable-jit-compilation.patch"
"emacs-next-exec-path.patch"
+7 -11
View File
@@ -1920,7 +1920,7 @@ and Zilog Z80 families, plus many of their variants.")
(define-public python-psptool
(package
(name "python-psptool")
(version "3.6")
(version "3.1")
(source
(origin
(method git-fetch)
@@ -1929,40 +1929,36 @@ and Zilog Z80 families, plus many of their variants.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1s53bqimh1ih0xqmyppm2ikphi8r9492k67kn4pz3jngh2gp1wnf"))))
(base32 "1fbx3b42cr7dv07p2b9qgzrgs19i066ysfasgvlfjscg2v68j8d0"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'unittest))
(native-inputs
(list python-hatch-vcs
python-hatchling
python-psptrace-bootstrap
(list python-psptrace-bootstrap
python-setuptools))
(propagated-inputs
(list python-cryptography
python-prettytable))
(home-page "https://github.com/PSPReverse/psptool")
(synopsis "Tool for dealing with AMD binary blobs")
(description "PSPTool is a tool for dealing with AMD binary blobs.")
(description "PSPTool is a tool for dealing with AMD binary blobs")
(license license:gpl3+)))
(define-public python-psptrace
(package
(name "python-psptrace")
(version "0.11")
(version "0.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "psptrace" version))
(sha256
(base32 "0lzv0dy2m5g6q4rpjd4wpw0p7n8v8crkx7akbp53lpy1c6y40iw8"))))
(base32 "1mrympnpkkns2dxq34h9x9qn667ihdvbbf0wpmbp3jli0n7bj7ih"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f)) ;no tests in PyPI or Git
(native-inputs
(list python-hatch-vcs
python-hatchling
python-setuptools))
(list python-setuptools))
(propagated-inputs
(list python-prettytable
python-psptool))
+16 -21
View File
@@ -148,7 +148,7 @@
(define-public ares
(package
(name "ares")
(version "147")
(version "145")
(source
(origin
(method git-fetch)
@@ -157,28 +157,23 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1b4xixngp8md2ishf3cyfwpzjcsvjb5zp678can5dcmv9z1dlsis"))
(modules '((guix build utils)))
(snippet
;; Delete non-free blobs: Supersoft Diagnostics II.
#~(delete-file-recursively "tests/i8080/tests"))))
(base32 "074kkgrbiga7grkwhnhw51ih7krxgf91m9zrrwjkj4q1hdjhlz5a"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ; non-free blobs
#:configure-flags
#~(list "-DARES_BUILD_LOCAL=FALSE"
"-DARES_BUILD_OFFICIAL=TRUE"
"-DARES_BUNDLE_SHADERS=FALSE"
"-DARES_SKIP_DEPS=TRUE"
(string-append "-DARES_VERSION_OVERRIDE=" #$version))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'avoid-libglvnd
(lambda _
;; TODO: Our mesa doesn't have libglvnd support.
(substitute* "ruby/cmake/os-linux.cmake"
(("OpenGL::GLX") "OpenGL::GL")))))))
(list #:tests? #f ; No tests
#:configure-flags
#~(list "-DARES_BUILD_LOCAL=FALSE"
"-DARES_BUILD_OFFICIAL=TRUE"
"-DARES_BUNDLE_SHADERS=FALSE"
"-DARES_SKIP_DEPS=TRUE"
(string-append "-DARES_VERSION_OVERRIDE=" #$version))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'avoid-libglvnd
(lambda _
;; XXX: Our mesa doesn't have libglvnd support.
(substitute* "ruby/cmake/os-linux.cmake"
(("OpenGL::GLX") "OpenGL::GL")))))))
(native-inputs
(list pkg-config))
(inputs
+216 -334
View File
@@ -33,7 +33,7 @@
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022, 2024-2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022, 2024, 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022, 2023, 2025 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2023 Theofilos Pechlivanis <theofilos.pechlivanis@gmail.com>
@@ -46,7 +46,7 @@
;;; Copyright © 2025 Matthew Elwin <elwin@northwestern.edu>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2025-2026 bdunahu <bdunahu@operationnull.com>
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Daniel Khodabakhsh <d@niel.khodabakh.sh>
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
@@ -438,8 +438,9 @@ optimizer; and it can produce photorealistic and design review images.")
"0x37vfp6k0d2z3gnig0hbicvi0jp8v267xjnn3z8jdllpiaa6p3k"))
(snippet
;; Remove a non-free file.
#~(begin
(delete-file "doc/psfig.sty")))
'(begin
(delete-file "doc/psfig.sty")
#t))
(patches (search-patches "fastcap-mulSetup.patch"
"fastcap-mulGlobal.patch"))))
(build-system gnu-build-system)
@@ -449,93 +450,79 @@ optimizer; and it can produce photorealistic and design review images.")
;; LaTeX Warning: Citation `nabors91' on page 2 undefined on input line
;; 3.
`(("texlive" ,(texlive-local-tree))
("ghostscript" ,ghostscript)
("libfaketime" ,libfaketime)))
("ghostscript" ,ghostscript)))
(arguments
(list
#:make-flags #~(list "CC=gcc" "RM=rm" "SHELL=sh"
(string-append
"CFLAGS="
"-Wno-error=implicit-int"
" -Wno-error=return-mismatch"
" -Wno-error=implicit-function-declaration")
"all")
`(#:make-flags '("CC=gcc" "RM=rm" "SHELL=sh" "all")
#:parallel-build? #f
#:tests? #f ;; no tests-suite
#:modules `((srfi srfi-1)
,@%default-gnu-modules)
#:modules ((srfi srfi-1)
,@%default-gnu-modules)
#:phases
#~(modify-phases %standard-phases
(add-after 'build 'make-doc
(lambda _
(invoke "faketime"
"1970-01-01 00:00:00"
"make" "CC=gcc" "RM=rm" "SHELL=sh" "manual")))
(add-before 'make-doc 'fix-doc
(lambda _
(substitute* "doc/Makefile" (("/bin/rm") (which "rm")))
(substitute* (find-files "doc" "\\.tex")
(("\\\\special\\{psfile=([^,]*),.*scale=([#0-9.]*).*\\}"
all file scale)
(string-append "\\includegraphics[scale=" scale "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*),.*width=([#0-9.]*in).*\\}"
all file width)
(string-append "\\includegraphics[width=" width "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*),.*height=([#0-9.]*in).*\\}"
all file height)
(string-append "\\includegraphics[height=" height "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*)\\}" all file)
(string-append "\\includegraphics{" file "}")))
(substitute* '("doc/mtt.tex" "doc/tcad.tex" "doc/ug.tex")
(("^\\\\documentstyle\\[(.*)\\]\\{(.*)\\}"
all options class)
(string-append "\\documentclass[" options "]{"
class "}\n"
"\\usepackage{graphicx}\n"
"\\usepackage{robinspace}"))
(("\\\\setlength\\{\\\\footheight\\}\\{.*\\}" all)
(string-append "%" all))
(("\\\\setstretch\\{.*\\}" all)
(string-append "%" all)))))
(delete 'configure)
(add-before 'install 'clean-bin
(lambda _
(delete-file (string-append (getcwd) "/bin/README"))))
(add-before 'install 'make-pdf
(lambda _
(setenv "TEXMFVAR" "/tmp") ;For texlive font cache
(with-directory-excursion "doc"
(for-each (lambda (file)
(invoke "faketime"
"-f"
"1970-01-01 00:00:00"
"dvips" file "-o"))
(find-files "." "\\.dvi"))
(for-each (lambda (file)
(invoke "faketime"
"-f"
"1970-01-01 00:00:00"
"ps2pdf" file))
'("mtt.ps" "ug.ps" "tcad.ps"))
(invoke "make" "clean"))))
(replace 'install
(lambda _
(let* ((data (string-append #$output "/share"))
(bin (string-append #$output "/bin"))
(doc (string-append data "/doc/" #$name "-" #$version))
(examples (string-append doc "/examples")))
(with-directory-excursion "bin"
(for-each (lambda (f)
(install-file f bin))
(find-files "." ".*")))
(with-directory-excursion "doc"
(for-each (lambda (f)
(install-file f doc))
(find-files "." ".pdf")))
(copy-recursively "examples" examples)))))))
(modify-phases %standard-phases
(add-after 'build 'make-doc
(lambda _
(invoke "make" "CC=gcc" "RM=rm" "SHELL=sh" "manual")))
(add-before 'make-doc 'fix-doc
(lambda _
(substitute* "doc/Makefile" (("/bin/rm") (which "rm")))
(substitute* (find-files "doc" "\\.tex")
(("\\\\special\\{psfile=([^,]*),.*scale=([#0-9.]*).*\\}"
all file scale)
(string-append "\\includegraphics[scale=" scale "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*),.*width=([#0-9.]*in).*\\}"
all file width)
(string-append "\\includegraphics[width=" width "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*),.*height=([#0-9.]*in).*\\}"
all file height)
(string-append "\\includegraphics[height=" height "]{"
file "}"))
(("\\\\psfig\\{figure=([^,]*)\\}" all file)
(string-append "\\includegraphics{" file "}")))
(substitute* '("doc/mtt.tex" "doc/tcad.tex" "doc/ug.tex")
(("^\\\\documentstyle\\[(.*)\\]\\{(.*)\\}"
all options class)
(string-append "\\documentclass[" options "]{"
class "}\n"
"\\usepackage{graphicx}\n"
"\\usepackage{robinspace}"))
(("\\\\setlength\\{\\\\footheight\\}\\{.*\\}" all)
(string-append "%" all))
(("\\\\setstretch\\{.*\\}" all)
(string-append "%" all)))
#t))
(delete 'configure)
(add-before 'install 'clean-bin
(lambda _
(delete-file (string-append (getcwd) "/bin/README"))
#t))
(add-before 'install 'make-pdf
(lambda _
(setenv "TEXMFVAR" "/tmp") ;For texlive font cache
(with-directory-excursion "doc"
(and
(for-each (lambda (file)
(invoke "dvips" file "-o"))
(find-files "." "\\.dvi"))
(for-each (lambda (file)
(invoke "ps2pdf" file))
'("mtt.ps" "ug.ps" "tcad.ps"))
(invoke "make" "clean")))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(data (string-append out "/share"))
(bin (string-append out "/bin"))
(doc (string-append data "/doc/" ,name "-" ,version))
(examples (string-append doc "/examples")))
(with-directory-excursion "bin"
(for-each (lambda (f)
(install-file f bin))
(find-files "." ".*")))
(copy-recursively "doc" doc)
(copy-recursively "examples" examples)
#t))))))
(home-page "https://www.rle.mit.edu/cpg/research_codes.htm")
(synopsis "Multipole-accelerated capacitance extraction program")
(description
@@ -914,65 +901,64 @@ user-level language.")
;; TODO: Keep in sync with radare2.
(define-public iaito
(package
(name "iaito")
(version "6.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radareorg/iaito")
(commit version)))
(sha256
(base32
"16sp73k6ighjwp80nvf55lwzv0fb8p4ki76mnsc8xhl3vq7pka0w"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no tests
#:modules '((guix build gnu-build-system) (guix build qt-utils)
(guix build utils))
#:imported-modules `((guix build qt-utils)
,@%default-gnu-imported-modules)
#:phases
#~(modify-phases %standard-phases
;; The build system assumes the sdb lib is installed alongside
;; radare2. We already patch the radare2 package to use a
;; system-installed sdb rather than install its own, so we must
;; propagate those changes here.
(add-before 'configure 'add-sdb-libs
(lambda _
(substitute* '("./src/lib_radare2.pri")
(("pkg-config --libs r_core" all)
(string-append all " sdb")))))
(add-after 'install 'wrap-qt
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-all-qt-programs #:outputs outputs
#:inputs inputs
#:qtbase (assoc-ref inputs "qtbase")))))))
(inputs
(list capstone
libuv
libzip
lz4
openssl
qtbase
qtsvg
qtwayland
radare2
sdb))
(native-inputs
(list pkg-config python-minimal-wrapper))
(native-search-paths (list (search-path-specification
(variable "R2_LIBR_PLUGINS")
(files (list "lib/radare2"))
(separator #f)))) ;single value
(home-page "https://github.com/radareorg/iaito")
(synopsis "Official radare2 GUI")
(description "Iaito is the official graphical interface for radare2, a
;; Commit "Release 6.1.2"
(let ((commit "790878048ecb62f4d2f1b5f848948059dd5bb8fe")
(revision "1"))
(package
(name "iaito")
(version (git-version "6.1.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radareorg/iaito")
(commit commit)))
(sha256
(base32
"00nqn3mx2fj5higz4niwl0nx04vnjwzccw6zjx3rhwf6fj5yfamm"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no tests
#:modules '((guix build gnu-build-system) (guix build qt-utils)
(guix build utils))
#:imported-modules `((guix build qt-utils)
,@%default-gnu-imported-modules)
#:phases
#~(modify-phases %standard-phases
;; The build system assumes the sdb lib is installed alongside
;; radare2. We already patch the radare2 package to use a
;; system-installed sdb rather than install its own, so we must
;; propagate those changes here.
(add-before 'configure 'add-sdb-libs
(lambda _
(substitute* '("./src/lib_radare2.pri")
(("pkg-config --libs r_core" all)
(string-append all " sdb")))))
(add-after 'install 'wrap-qt
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-all-qt-programs #:outputs outputs
#:inputs inputs
#:qtbase (assoc-ref inputs "qtbase")))))))
(inputs
(list capstone
libuv
libzip
lz4
openssl
qtbase
qtsvg
qtwayland
radare2
sdb))
(native-inputs
(list pkg-config python-minimal-wrapper))
(home-page "https://github.com/radareorg/iaito")
(synopsis "Official radare2 GUI")
(description "Iaito is the official graphical interface for radare2, a
libre reverse engineering framework. Iaito focuses on simplicity, parity with
commands, features, and keybindings.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public inspekt3d
(let ((commit "703f52ccbfedad2bf5240bf8183d1b573c9d54ef")
@@ -1056,6 +1042,32 @@ in the context of per-cpu data. The library offers ABI headers to interface
with the kernel and various utilities such as per-cpu counters.")
(license (list license:lgpl2.1 license:expat)))))
(define-public linsmith
(package
(name "linsmith")
(version "0.99.33")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/linsmith/linsmith/linsmith-"
version "/linsmith-" version ".tar.gz"))
(sha256
(base32
"1629p29casy9pgy8hzva1bmgrvh923qk01ls3anik6zqn6swkjfn"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("CFLAGS=-fcommon")))
(native-inputs
(list pkg-config))
(inputs
(list gtk+-2 libgnomeui))
(home-page "https://jcoppens.com/soft/linsmith/index.en.php")
(synopsis "Smith Charting program")
(description "LinSmith is a Smith Charting program, mainly designed for
educational use. As such, there is an emphasis on capabilities that improve
the 'showing the effect of'-style of operation.")
(license license:gpl2+)))
(define-public valeronoi
(package
(name "valeronoi")
@@ -1228,7 +1240,7 @@ specified in rfc2217 and a (Linux specific) CAN mode.")
(define-public minicom
(package
(name "minicom")
(version "2.11.1")
(version "2.10")
(source
(origin
(method git-fetch)
@@ -1236,7 +1248,7 @@ specified in rfc2217 and a (Linux specific) CAN mode.")
(url "https://salsa.debian.org/minicom-team/minicom.git")
(commit version)))
(sha256
(base32 "15k20qbxrjdxadwzkp31hjy7apdasrsgs532kwmlkpzs92ff4ghs"))
(base32 "0sxbyf1li3lsrvkjpn04xz6ywa42ggfc1fhdrmsibfkhqja9abn0"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -1361,33 +1373,24 @@ determines the frequencies, decay constants, amplitudes, and phases of those sin
(define-public guile-libctl
(package
(name "guile-libctl")
(version "4.6.0")
(version "4.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/NanoComp/libctl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri
(string-append
"https://github.com/NanoComp/libctl/releases/download/v"
version "/libctl-" version ".tar.gz"))
(sha256
(base32
"1lsch1qc5w9yyprrvawfwbnz7na4qah0p752kxxv144xp8yq98x7"))))
"0x8r56lpfq83kfbq28vr25icl19xpfd6fjrxzcpdmv30l9pash83"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list "--enable-shared")
#:phases
#~(modify-phases %standard-phases
;; Avoid bin/sh shebang in configure.
(add-before 'bootstrap 'no-/bin/sh
(lambda _ (delete-file "autogen.sh"))))))
`(#:configure-flags '("--enable-shared")))
(native-inputs
(list autoconf
automake
libtool
gfortran))
`(("fortran" ,gfortran)))
(inputs
(list guile-3.0))
(home-page "https://libctl.readthedocs.io/en/latest/")
(list guile-2.2))
(home-page "http://ab-initio.mit.edu/wiki/index.php/Libctl")
(synopsis "Flexible control files implementation for scientific simulations")
(description
"Libctl is a Guile-based library implementing flexible control files
@@ -1397,7 +1400,7 @@ for scientific simulations.")
(define-public mpb
(package
(name "mpb")
(version "1.12.0")
(version "1.8.0")
(source (origin
(method url-fetch)
(uri
@@ -1406,41 +1409,50 @@ for scientific simulations.")
version "/mpb-" version ".tar.gz"))
(sha256
(base32
"197dm8z5hfikivb73rhywyq976rn1k621bf1admgc5xjaii20awd"))))
"1jgrb7dd6qs6j6y1gnxmdgrh79l2bvqa6nk60a4pw1annsks4brd"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list
(string-append "--with-libctl="
#$(this-package-input "guile-libctl") "/share/libctl")
"--enable-shared")))
`(#:configure-flags
(list (string-append "--with-libctl="
(assoc-ref %build-inputs "libctl")
"/share/libctl")
"--enable-shared")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'relax-gcc-14-strictness
(lambda _
(setenv "CFLAGS"
(string-join
(list "-Wno-error=incompatible-pointer-types"
"-Wno-error=implicit-function-declaration"
"-Wno-error=int-conversion")
" ")))))))
(native-inputs
(list gfortran
pkg-config
swig-4.4))
`(("fortran" ,gfortran)
("pkg-config" ,pkg-config)
("swig" ,swig-4.0)))
(inputs
(list fftw
gsl
guile-3.0
guile-libctl
hdf5
openblas
readline
zlib))
(home-page "https://mpb.readthedocs.io/en/latest/")
`(("fftw" ,fftw)
("gsl" ,gsl)
("guile" ,guile-2.2)
("hdf5" ,hdf5)
("openblas" ,openblas)
("libctl" ,guile-libctl)
("readline" ,readline)
("zlib" ,zlib)))
(home-page "http://ab-initio.mit.edu/wiki/index.php/MIT_Photonic_Bands")
(synopsis "Computes band structures and electromagnetic modes of dielectric
structures")
(description
"MIT Photonic-Bands (MPB) computes definite-frequency eigenstates
(harmonic modes) of Maxwell's equations in periodic dielectric structures for
arbitrary wavevectors, using fully-vectorial and three-dimensional methods.")
"MIT Photonic-Bands (MPB) computes definite-frequency eigenstates (harmonic modes)
of Maxwell's equations in periodic dielectric structures for arbitrary wavevectors, using
fully-vectorial and three-dimensional methods.")
(license license:gpl2+)))
(define-public meep
(package
(name "meep")
(version "1.33.0")
(version "1.30.1")
(source (origin
(method url-fetch)
(uri
@@ -1449,7 +1461,7 @@ arbitrary wavevectors, using fully-vectorial and three-dimensional methods.")
version "/meep-" version ".tar.gz"))
(sha256
(base32
"1azhgz6s95siqmnxb3if6waxbvia3bij5jmxgxjz4sgn2ahw1axx"))))
"1h80d7i7v06fxfdsa496b542dvr105c4v1n7pk8m3jssvbxvv2a0"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@@ -1459,11 +1471,11 @@ arbitrary wavevectors, using fully-vectorial and three-dimensional methods.")
(native-inputs
(list gfortran
pkg-config
swig-4.4))
swig-4.0))
(inputs
(list fftw
gsl
guile-3.0
guile-2.2
guile-libctl
harminv
hdf5
@@ -1718,7 +1730,7 @@ bootloader in Espressif ESP8266 & ESP32 series chips.")
(define-public radare2
(package
(name "radare2")
(version "6.1.4") ;keep in sync with iaito
(version "6.1.2") ;keep in sync with iaito
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1726,7 +1738,7 @@ bootloader in Espressif ESP8266 & ESP32 series chips.")
(commit version)))
(sha256
(base32
"0gq90rwwmkfc7v1rhyr3lw859rsm1ryhzrwidhhh6pbp6jv03k6w"))
"1d4sslhjxm00fchqcszfa59wf51v632jvf7aj4af0vdhl9f9n8k2"))
(file-name (git-file-name name version))
(patches
(search-patches "radare2-fix-meson-build-to-use-sys-sdb.patch"
@@ -1782,10 +1794,6 @@ bootloader in Espressif ESP8266 & ESP32 series chips.")
(propagated-inputs
;; In the Libs: section of r_hash.pc.
(list xxhash))
(native-search-paths (list (search-path-specification
(variable "R2_LIBR_PLUGINS")
(files (list "lib/radare2"))
(separator #f)))) ;single value
(home-page "https://radare.org/")
(synopsis "Reverse engineering framework")
(description
@@ -1803,131 +1811,6 @@ like relocation symbols. It is able to deal with malformed binaries, making
it suitable for security research and analysis.")
(license license:lgpl3)))
(define-public r2ghidra
(package
(name "r2ghidra")
(version "6.1.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radareorg/r2ghidra")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "04x7vmg67zz0llkz3r3nmcky5z8c4ha31z8jzkm19dnyslw2qlxr"))
(modules '((guix build utils)))
(snippet
;; Delete bundled libs and remove their references.
#~(begin (delete-file-recursively "subprojects")
(substitute* "ghidra/deps.mk"
(("ZLIB_LDFLAGS=.*") "")
(("ZLIB_CFLAGS=.*") ""))
(substitute* "src/Makefile"
(("(all:) subprojects-zlib" _ f) f)
(("PUGIXML_OBJS=.*") "")
(("PUGIXML_SRCS=.*") "")
(("PUGIXML_CFLAGS=.*") ""))))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(let* ((zlib #$(this-package-input "zlib"))
(pugixml #$(this-package-input "pugixml-next")))
(list (string-append "CC=" #$(cc-for-target))
(format #f "ZLIB_LDFLAGS=-L~a/lib/ -lz" zlib)
(format #f "LDFLAGS=-L~a/lib/ -lpugixml" pugixml)
(format #f "ZLIB_CFLAGS=-I~a/include/" zlib)
(format #f "PUGIXML_CFLAGS=-I~a/include/" pugixml)
;; Ensure this matches R2_LIBR_PLUGINS as exported
;; by radare2 & iaito.
(format #f "PLUGDIR=~a/lib/radare2" #$output)))
#:tests? #f ;no 'check' rule, test dir may require 3rd-party binaries
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-git-and-copy-ghidra
(lambda _
;; GIT is assumed to point to the git binary, but it is
;; only checked to be a file; this short-circuits the check.
(setenv "GIT" "configure")
(copy-recursively
(search-input-directory %build-inputs "share/ghidra-native")
"subprojects/ghidra-native")))
(add-before 'build 'set-system-sleighhome
;; Helper files which try to install in radare2's path
;; in the store, irrespective of PLUGDIR. As long as
;; r2ghidra knows where to find them, we can place them
;; anywhere.
(lambda _
(let ((sleighhome
(in-vicinity #$output "lib/radare2/sleighhome")))
;; Hardcoded path to check.
(substitute* "src/SleighAsm.cpp"
(("(path = strdup \\()[^\\)]*" _ f)
(string-append f "\"" sleighhome "\"")))
;; Install location.
(substitute* "ghidra/Makefile"
(("(sleigh-install D=\")\\$\\(DD\\)" _ f)
(string-append f sleighhome)))))))))
(inputs
(list capstone
libuv
libzip
lz4
openssl
pugixml-next
radare2
sdb
zlib))
(native-inputs
(list ghidra-native
pkg-config
python-minimal))
(home-page "https://www.radare.org/")
(synopsis "Native Ghidra Decompiler for radare2")
(description
"r2ghidra is a radare2 plugin which integrates the
@url{https://www.nsa.gov/ghidra,Ghidra} decompiler.")
;; Specified lgpl3 'only' in README.
(license license:lgpl3)))
(define-public ghidra-native
;; Latest commit; last release (8/2025) incompatible with current r2ghidra.
(let ((commit "df065bad0f9e7cea233479048681f811c4f640a2")
(revision "1"))
(package
(name "ghidra-native")
(version (git-version "0.6.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radareorg/ghidra-native")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "14bzrl856x3bsqjpks85rzxcxncfmnjwc5knv2h4lybfz4bxcn39"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no tests
#:make-flags #~(list "patch")
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'install ;no install target
(lambda _
(let ((ghidra-native-patched
(in-vicinity #$output "/share/ghidra-native/src")))
(copy-recursively "src" ghidra-native-patched)))))))
(home-page "https://www.radare.org/")
(synopsis "Native parts of ghidra")
(description
"This package contains the native parts of ghidra, to be used from
r2ghidra.")
(properties '((hidden? . #t))) ;only provides source files
(license license:asl2.0))))
(define-public rayforge
(package
(name "rayforge")
@@ -2128,7 +2011,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
(define-public gpx
(package
(name "gpx")
(version "2.6.8")
(version "2.5.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2137,7 +2020,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
(file-name (git-file-name name version))
(sha256
(base32
"1izs8s5npkbfrsyk17429hyl1vyrbj9dp6vmdlbb2vh6mfgl54h8"))))
"1yab269x8qyf7rd04vaxyqyjv4pzz9lp4sc4dwh927k23avr3rw5"))))
(build-system gnu-build-system)
(home-page "https://github.com/markwal/GPX")
(synopsis "Converting gcode to x3g files for 3D printing")
@@ -2252,7 +2135,7 @@ specification can be downloaded at @url{http://3mf.io/specification/}.")
(define-public manifold
(package
(name "manifold")
(version "3.4.1")
(version "3.3.2")
(source
(origin
(method git-fetch)
@@ -2261,7 +2144,7 @@ specification can be downloaded at @url{http://3mf.io/specification/}.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0x65708r6xln8sd53abbn1qnhz3wxnicn2837ida73ihargk5js1"))))
(base32 "0bq1gzvhyp0b9v0q6magwf0yi9lzqgh3fj9104wqfvpl2skgzkg7"))))
(build-system cmake-build-system)
(inputs (list onetbb clipper2 assimp python-nanobind googletest))
(arguments
@@ -2759,7 +2642,7 @@ but also adds new features and improves existing ones.")
(define-public emacs-scad-mode
(package
(name "emacs-scad-mode")
(version "99.0")
(version "98.0")
(source
(origin
(method git-fetch)
@@ -2767,10 +2650,9 @@ but also adds new features and improves existing ones.")
(url "https://github.com/openscad/emacs-scad-mode")
(commit version)))
(sha256
(base32 "0mqfvff8f7lqjviwz30j7vkb098xd0k8bdzznb77aw4q7gdsf8nm"))
(base32 "19mn6z98c8s7mspa7j8xw7za33gmpsy4iw2r9xiggdv7yh6mh8h8"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list emacs-compat))
(synopsis "Emacs mode to edit OpenSCAD files")
(description
@@ -3045,7 +2927,7 @@ Runge-Kutta method of order 5(4) from @code{scipy.integrate.solve_ivp.}")
(define-public cgns
(package
(name "cgns")
(version "4.5.2")
(version "4.3.0")
(source
(origin
(method git-fetch)
@@ -3054,7 +2936,7 @@ Runge-Kutta method of order 5(4) from @code{scipy.integrate.solve_ivp.}")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0r8y6lddp7q9nb6804c6bbr4y0pv7ssdzi9m5ddx50ksvfv382fw"))))
(base32 "0jig1y7lv9qk1ri2gqws7ffpajmhxnank7gbyna9hfaghsxdlnvd"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
@@ -4087,7 +3969,7 @@ G-codes to binary and vice versa.")
(list bash-minimal
boost-1.83
cereal
cgal-5
cgal
curl
dbus
eigen
+38
View File
@@ -136,3 +136,41 @@ whenever possible to the extent that the above points are not compromised.
affect your score when code golfing.")
(properties `((lint-hidden-cpe-vendors "premio" "jenkins")))
(license license:expat)))
(define-public shakespeare-spl
(package
(name "shakespeare-spl")
(version "1.2.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/shakespearelang/spl-"
version ".tar.gz"))
(sha256
(base32
"1lxpfhv01kcwy4l4xgx7j765g8g0v74jns0cr908nfw55h5fy1hj"))
(patches
(search-patches
"shakespeare-spl-fix-grammar.patch"))))
(build-system copy-build-system)
(arguments
`(#:imported-modules (,@%default-gnu-imported-modules
(guix build copy-build-system))
#:modules ((guix build copy-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:install-plan '(("spl/bin" "bin")
("spl/lib" "lib")
("spl/include" "include"))
#:phases
(modify-phases %standard-phases
(add-before 'install 'build
(assoc-ref gnu:%standard-phases 'build)))))
(native-inputs
(list bison flex))
(home-page "http://shakespearelang.sourceforge.net/")
(synopsis "Write programs like Shakespearean plays")
(description "Shakespeare is a programming language with the design goal
of making programs read like plays. The characters in the play are variables.
If you want to assign a character, let's say Juliet, a positive value, you put
her and another character on the stage and let that character praise Juliet.")
(license license:gpl2+)))
+4 -18
View File
@@ -2,7 +2,7 @@
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2023, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2023 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -226,19 +226,15 @@ testing InfiniBand networks.")
(string-append "--with-rdmacm="
#$(this-package-input "rdma-core"))
#$@(if (this-package-input "rocr-runtime")
#~((string-append "--with-rocm="
#$(this-package-input
"rocr-runtime")))
#~()))
(string-append "--with-rocm="
#$(this-package-input "rocr-runtime")))
;; Be verbose so that compiler flags are displayed.
#:make-flags #~'("V=1")))
(native-inputs
(list autoconf automake libtool pkg-config))
(inputs
(list numactl rdma-core))
(list numactl rdma-core rocr-runtime))
(synopsis "Optimized communication layer for message passing in HPC")
(description
"Unified Communication X (UCX) provides an optimized communication layer
@@ -254,13 +250,3 @@ memory mechanisms for efficient intra-node communication.")
;; and x86_64 as supported.
(supported-systems '("x86_64-linux" "aarch64-linux" "powerpc64le-linux"
"riscv64-linux"))))
;; Note: ROCm support is kept separate to avoid a significant increase in
;; closure size: <https://codeberg.org/guix/guix/issues/7225>.
(define-public ucx-rocm
(package/inherit ucx
(name "ucx-rocm")
(inputs (modify-inputs inputs
(append rocr-runtime)))
(synopsis "Optimized communication layer for message passing in HPC (with
ROCm support)")))
+30 -37
View File
@@ -15,13 +15,11 @@
;;; Copyright © 2024 Ahmad Draidi <a.r.draidi@redscript.org>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 Julian Flake <flake@uni-koblenz.de>
;;; Copyright © 2025-2026 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2020-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 45mg <45mg.writes@gmail.com>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1140,23 +1138,28 @@ transaction log.
(source #f)
(build-system trivial-build-system)
(arguments
(list
#:modules '((guix build utils))
#:builder
#~(begin
(use-modules (guix build utils))
(let* ((sbin (string-append #$output "/sbin"))
(fsck (string-append sbin "/jfs_fsck")))
(install-file (search-input-file %build-inputs "sbin/jfs_fsck")
sbin)
(remove-store-references fsck)
(chmod fsck #o555)))))
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 ftw)
(srfi srfi-26))
(let* ((jfsutils (assoc-ref %build-inputs "jfsutils"))
(fsck "jfs_fsck")
(out (assoc-ref %outputs "out"))
(sbin (string-append out "/sbin")))
(mkdir-p sbin)
(with-directory-excursion sbin
(install-file (string-append jfsutils "/sbin/" fsck)
".")
(remove-store-references fsck)
(chmod fsck #o555))
#t))))
(inputs
(list jfsutils/static))
`(("jfsutils" ,jfsutils/static)))
(home-page (package-home-page jfsutils))
(synopsis "Statically-linked jfs_fsck command from jfsutils")
(description
"This package provides statically-linked jfs_fsck command taken
(description "This package provides statically-linked jfs_fsck command taken
from the jfsutils package. It is meant to be used in initrds.")
(license (package-license jfsutils))))
@@ -1527,8 +1530,6 @@ supports automatic snapshots timelines.")
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~'("CFLAGS=-Wno-error=implicit-int")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-tool-locations
@@ -1663,7 +1664,7 @@ with the included @command{xfstests-check} helper.")
(define-public zfs
(package
(name "zfs")
(version "2.4.2")
(version "2.4.1")
(outputs '("out" "module" "src"))
(source
(origin
@@ -1672,7 +1673,7 @@ with the included @command{xfstests-check} helper.")
"/download/zfs-" version
"/zfs-" version ".tar.gz"))
(sha256
(base32 "13y7pqdkpplai7vkb06xv1c7pw5fl70clhg2qnjbx5gjd870s9ky"))))
(base32 "140k7hf83s509zq3igdh7dm7vw3hd99wgf4fax7ia8q01xvnjyy1"))))
(build-system linux-module-build-system)
(arguments
(list
@@ -1701,7 +1702,7 @@ with the included @command{xfstests-check} helper.")
(search-input-directory
inputs
"lib/modules/build")))))
(add-after 'bootstrap 'patch-source
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
;; New feature "compatibility=" in 2.1.0.
;; This feature looks up in two locations:
@@ -1763,15 +1764,11 @@ with the included @command{xfstests-check} helper.")
(("\\$\\(sysconfdir)") (string-append #$output "/etc")))
(substitute* "udev/vdev_id"
(("PATH=/bin:/sbin:/usr/bin:/usr/sbin")
(format #f "PATH=~a"
(list->search-path-as-string
(map (lambda (name)
(dirname (search-input-file inputs name)))
'("bin/chmod"
"bin/grep"
"bin/sed"
"bin/gawk"))
":"))))
(string-append "PATH="
(dirname (which "chmod")) ":"
(dirname (which "grep")) ":"
(dirname (which "sed")) ":"
(dirname (which "gawk")))))
(substitute* '("Makefile.am" "Makefile.in")
(("\\$\\(prefix)/src") (string-append #$output:src "/src")))
(substitute* (find-files "udev/rules.d/" ".rules.in$")
@@ -1806,11 +1803,8 @@ with the included @command{xfstests-check} helper.")
(string-append #$output
"/share/bash-completion/completions")))))))
(native-inputs
(list attr autoconf automake libtool kmod pkg-config))
(inputs (list coreutils-minimal
eudev
gawk
grep
(list attr kmod pkg-config))
(inputs (list eudev
kmod
libaio
libtirpc
@@ -1818,7 +1812,6 @@ with the included @command{xfstests-check} helper.")
openssl
python
python-cffi
sed
util-linux
`(,util-linux "lib")
zlib))
+80 -16
View File
@@ -42,7 +42,6 @@
;;; Copyright © 2025-2026 Hennadii Stepanov <hebasto@gmail.com>
;;; Copyright © 2025 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2026 Robin Templeton <robin@guixotic.coop>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -236,15 +235,14 @@ line client and a client based on Qt.")
"04kh88xklyq5w2x0zykfas6ssxajp1z33c2899fq342jnfr510b6"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags original-flags '())
#~(cons "-DWITH_QT_VERSION=6"
#$original-flags))))
((#:qtbase original-flags #f)
qtbase-5)))
(native-inputs
(modify-inputs native-inputs
(delete qttools)
(append imagemagick
librsvg
qttools)))
qttools-5)))
(home-page "https://bitcoinknots.org")
(synopsis "Enhanced Bitcoin node/wallet based on Bitcoin Core")
(description "Bitcoin Knots connects to the Bitcoin peer-to-peer network
@@ -909,7 +907,7 @@ blockchain.")
;; the system's dynamically linked library.
(package
(name "monero")
(version "0.18.5.0")
(version "0.18.4.6")
(source
(origin
(method git-fetch)
@@ -918,15 +916,16 @@ blockchain.")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(patches (search-patches "monero-use-system-miniupnpc.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled dependencies.
(for-each
delete-file-recursively
'("external/rapidjson"))))
'("external/miniupnp" "external/rapidjson"))))
(sha256
(base32 "0i0x4aacw2id877hdarp4vjc0cgs0yijsgrx85890xdypik2m8zq"))))
(base32 "0s03rwa1pfxxrj03f170sr6yd5v2wpqdfzam7gas1s71gg6v6ap6"))))
(build-system cmake-build-system)
(native-inputs
(list doxygen
@@ -943,6 +942,7 @@ blockchain.")
libsodium
libunwind
libusb
miniupnpc-2.1
openssl
protobuf
rapidjson
@@ -1012,7 +1012,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.18.5.0")
(version "0.18.4.7")
(source
(origin
(method git-fetch)
@@ -1028,7 +1028,7 @@ the Monero command line client and daemon.")
;; See the 'extract-monero-sources' phase.
(delete-file-recursively "monero")))
(sha256
(base32 "17r588gwdy5q0r9zy6382c64aglhym0l3a4pd8rr1v3li5v78fcb"))))
(base32 "1nbv07jjwznz2x0ch1467vhnd0b4j3y01gv78dzbm7pilbb9wh72"))))
(build-system qt-build-system)
(native-inputs
`(,@(package-native-inputs monero)
@@ -1553,7 +1553,7 @@ agent.")
(define-public kitsas
(package
(name "kitsas")
(version "5.11.1")
(version "5.9")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1562,7 +1562,7 @@ agent.")
(file-name (git-file-name name version))
(sha256
(base32
"1rlg36r62ngl4zpqja7fv407i6xnax2wh7y5jcplsx3zi7nrnkk5"))))
"0hx8fad8pyma6gq60ziiqd5mbflwzjn0115lsdvf72sz86jryl70"))))
(build-system qt-build-system)
(inputs (list libzip qtsvg qtwebengine qt5compat))
(arguments
@@ -2544,7 +2544,7 @@ files.")
(define-public xmrig
(package
(name "xmrig")
(version "6.26.0")
(version "6.25.0")
(source
(origin
(method git-fetch)
@@ -2552,7 +2552,7 @@ files.")
(url "https://github.com/xmrig/xmrig")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32 "12s0nk3b1nyh76gqcfdr3158y0kcrkfprahajnbv0k34rp49m4k4"))
(sha256 (base32 "0hchl2vwsn7aps6y1zjhxczm8l8lvl5ac8hblwl3qj0y2n7iszjz"))
(modules '((guix build utils)))
(snippet
;; TODO: Try to use system libraries instead of bundled ones in
@@ -2601,7 +2601,7 @@ mining.")
(define-public p2pool
(package
(name "p2pool")
(version "4.15.1")
(version "4.14")
(source
(origin
(method git-fetch)
@@ -2610,7 +2610,7 @@ mining.")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256 (base32 "0v0wpm4bxikm8b78hsc3rp9x59574b2r39sbk2z3sjbyyshrqfpx"))
(sha256 (base32 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
(modules '((guix build utils)))
(snippet
#~(for-each delete-file-recursively
@@ -2652,3 +2652,67 @@ combines the advantages of pool and solo mining; you still fully control your
Monero node and what it mines, but you get frequent payouts like on a regular
pool.")
(license license:gpl3)))
(define-public opentaxsolver
;; The OTS version is formatted like tax-year_version. So, at time of
;; writing, the version is 2023_21.03. Each part of this is used in
;; different places in the source uri, so it's convenient to have them
;; separately like this.
(let ((tax-year "2023")
(ots-version "21.03"))
(package
(name "opentaxsolver")
(version (string-append tax-year "_" ots-version))
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/opentaxsolver/OTS_"
tax-year "/v" ots-version
"_linux/OpenTaxSolver" version "_linux64.tgz"))
(sha256
(base32
"1i543bvclnyiwnyjlskhr2bxlsigggvwdhg2519rf12lsghgfszq"))
(patches (search-patches "opentaxsolver-file-browser-fix.patch"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ;no configure script
;; OTS does provide a shellscript that does exactly this, but we
;; need to do it ourselves to specify the correct compiler and to
;; delete the GUI binaries.
(replace 'build
(lambda _
(delete-file "Run_taxsolve_GUI")
(delete-file-recursively "bin")
(mkdir "bin")
(chdir "src/Gui_gtk")
(invoke "make"
(string-append "CC=" #$(cc-for-target)))
(chdir "..")
(invoke "make"
(string-append "CC=" #$(cc-for-target)))))
;; OTS doesn't provide a `make install` target, because it assumes
;; it'll be run from the tarball. So, we do it ourselves, making
;; sure to replicate the directory structure of the tarball.
(replace 'install
(lambda _
(copy-recursively "../bin"
(string-append #$output "/bin"))
(symlink (string-append #$output "/bin/ots_gui2")
(string-append #$output "/bin/Run_taxsolve_GUI"))
(copy-recursively "../tax_form_files"
(string-append #$output "/tax_form_files"))
(copy-recursively "formdata"
(string-append #$output "/src/formdata")))))))
(native-inputs (list pkg-config))
(inputs (list gtk+-2))
(synopsis "Yearly tax preparation tool")
(description
"OpenTaxSolver is a program for calculating tax form entries for
federal and state personal income taxes. It automatically fills out and
prints your forms for mailing.")
(home-page "https://opentaxsolver.sourceforge.net/")
(license license:gpl2+))))
+3 -390
View File
@@ -73,7 +73,6 @@
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Joan Vilardaga Castro <codeberg-hn80@joanvc.cat>
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1634,392 +1633,6 @@ These fonts include glyphs from multiple icon sets:
@item Codeicons
@end itemize
The monospaced variant ensures all glyphs have uniform width, which is essential
for terminal emulators that require consistent character spacing.")
;; https://github.com/ryanoasis/nerd-fonts/blob/master/license-audit.md
(license (list license:expat license:cc-by4.0 license:unlicense
license:asl2.0 license:silofl1.1))))
(define-public font-nerd-fira-code
(package
(name "font-nerd-fira-code")
(version "3.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ryanoasis/nerd-fonts")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0adash47a0pmvhhbqr9wzp3r287hzj50f28pswdxm30l0br6zgfa"))
(modules '((srfi srfi-26)
(ice-9 ftw)
(guix build utils)))
(snippet
;; Remove fonts we don't use to save space and build time.
#~(begin
(delete-file-recursively "patched-fonts")
(with-directory-excursion "src/unpatched-fonts"
(let ((keep? (cut member <>
'("." ".." "FiraCode"))))
(for-each delete-file-recursively
(scandir "."
(negate keep?)))))))))
(build-system font-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'change-directory
(lambda _
(chdir "src/unpatched-fonts/FiraCode")))
(add-before 'install 'build
(lambda _
(for-each (lambda (font)
;; Patch every font variant with normal, mono and
;; proportional modes.
;; --complete: Include all icon sets.
;; --mono will generate the Mono variants.
;; --variable-width-glyphs will generate the
;; Proportional variants (used for graphical
;; environments).
;; If no flag is specified, the no-mono no-proportional
;; font will be built.
;; --ext ttf: Generate TrueType font.
;; --no-progressbars: Disable progress bars for clean build
;; output.
(for-each (lambda (mode)
(apply invoke "fontforge" "-script"
"../../../font-patcher"
`("--complete" ,@(if mode
(list mode)
'())
"--ext"
"ttf"
"--no-progressbars"
"--outputdir"
"."
,font)))
'(#nil "--mono" "--variable-width-glyphs")))
'("Bold/FiraCode-Bold.ttf"
"Light/FiraCode-Light.ttf"
"Medium/FiraCode-Medium.ttf"
"Regular/FiraCode-Regular.ttf"
"Retina/FiraCode-Retina.ttf"
"SemiBold/FiraCode-SemiBold.ttf"))))
(add-after 'build 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(for-each (lambda (font)
;; Use Python script with fontforge to validate the font.
(invoke "python3" "-c"
(format #f
"import fontforge
name = ~s
font = fontforge.open(name)
glyph_count = len([g for g in font.glyphs() if g.unicode > 0])
print(f'Font has {glyph_count} glyphs with Unicode mapping')
if glyph_count < 8000:
raise ValueError(f'Font has too few glyphs: {glyph_count}')
print(f' Font validation passed for {name}')
font.close()~%"
font)))
'("FiraCodeNerdFont-Bold.ttf"
"FiraCodeNerdFont-Light.ttf"
"FiraCodeNerdFont-Medium.ttf"
"FiraCodeNerdFont-Regular.ttf"
"FiraCodeNerdFont-Retina.ttf"
"FiraCodeNerdFont-SemiBold.ttf"
"FiraCodeNerdFontMono-Bold.ttf"
"FiraCodeNerdFontMono-Light.ttf"
"FiraCodeNerdFontMono-Medium.ttf"
"FiraCodeNerdFontMono-Regular.ttf"
"FiraCodeNerdFontMono-Retina.ttf"
"FiraCodeNerdFontMono-SemiBold.ttf"
"FiraCodeNerdFontPropo-Bold.ttf"
"FiraCodeNerdFontPropo-Light.ttf"
"FiraCodeNerdFontPropo-Medium.ttf"
"FiraCodeNerdFontPropo-Regular.ttf"
"FiraCodeNerdFontPropo-Retina.ttf"
"FiraCodeNerdFontPropo-SemiBold.ttf"))))))))
(native-inputs (list fontforge python-minimal))
(home-page "https://www.nerdfonts.com/")
(synopsis "Fira Code with an iconic font collection")
(description
"This package provides the Fira Code font with the extra
glyphs from Nerd Fonts.
@itemize
@item Fira Code
@item Fira Code Mono
@end itemize
These fonts include glyphs from multiple icon sets:
@itemize
@item Powerline with Extra Symbols
@item Font Awesome and Font Awesome Extension
@item Material Design Icons
@item Weather Icons
@item Devicons
@item Octicons
@item Font Logos (formerly Font Linux)
@item Pomicons
@item Codeicons
@end itemize
The monospaced variant ensures all glyphs have uniform width, which is essential
for terminal emulators that require consistent character spacing.")
;; https://github.com/ryanoasis/nerd-fonts/blob/master/license-audit.md
(license (list license:expat license:cc-by4.0 license:unlicense
license:asl2.0 license:silofl1.1))))
(define-public font-nerd-jetbrains-mono
(package
(name "font-nerd-jetbrains-mono")
(version "3.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ryanoasis/nerd-fonts")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0adash47a0pmvhhbqr9wzp3r287hzj50f28pswdxm30l0br6zgfa"))
(modules '((srfi srfi-26)
(ice-9 ftw)
(guix build utils)))
(snippet
;; Remove fonts we don't use to save space and build time.
#~(begin
(delete-file-recursively "patched-fonts")
(with-directory-excursion "src/unpatched-fonts"
(let ((keep? (cut member <>
'("." ".." "JetBrainsMono"))))
(for-each delete-file-recursively
(scandir "."
(negate keep?)))))))))
(build-system font-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'change-directory
(lambda _
(chdir "src/unpatched-fonts/JetBrainsMono")))
(add-before 'install 'build
(lambda _
(for-each (lambda (font)
;; Patch every font variant with normal, mono and
;; proportional modes.
;; --complete: Include all icon sets.
;; --mono will generate the Mono variants.
;; --variable-width-glyphs will generate the
;; Proportional variants (used for graphical
;; environments).
;; If no flag is specified, the no-mono no-proportional
;; font will be built.
;; --ext ttf: Generate TrueType font.
;; --no-progressbars: Disable progress bars for clean build
;; output.
(for-each (lambda (mode)
(apply invoke "fontforge" "-script"
"../../../font-patcher"
`("--complete" ,@(if mode
(list mode)
'())
"--ext"
"ttf"
"--no-progressbars"
"--outputdir"
"."
,font)))
'(#nil "--mono" "--variable-width-glyphs")))
`("Ligatures/Bold/JetBrainsMono-Bold.ttf"
"Ligatures/BoldItalic/JetBrainsMono-BoldItalic.ttf"
"Ligatures/ExtraBold/JetBrainsMono-ExtraBold.ttf"
,(string-append "Ligatures/ExtraBoldItalic/"
"JetBrainsMono-ExtraBoldItalic.ttf")
"Ligatures/ExtraLight/JetBrainsMono-ExtraLight.ttf"
,(string-append "Ligatures/ExtraLightItalic/"
"JetBrainsMono-ExtraLightItalic.ttf")
"Ligatures/Italic/JetBrainsMono-Italic.ttf"
"Ligatures/Light/JetBrainsMono-Light.ttf"
"Ligatures/LightItalic/JetBrainsMono-LightItalic.ttf"
"Ligatures/Medium/JetBrainsMono-Medium.ttf"
,(string-append "Ligatures/MediumItalic/"
"JetBrainsMono-MediumItalic.ttf")
"Ligatures/Regular/JetBrainsMono-Regular.ttf"
"Ligatures/SemiBold/JetBrainsMono-SemiBold.ttf"
,(string-append "Ligatures/SemiBoldItalic/"
"JetBrainsMono-SemiBoldItalic.ttf")
"Ligatures/Thin/JetBrainsMono-Thin.ttf"
"Ligatures/ThinItalic/JetBrainsMono-ThinItalic.ttf"
"NoLigatures/Bold/JetBrainsMonoNL-Bold.ttf"
,(string-append "NoLigatures/BoldItalic/"
"JetBrainsMonoNL-BoldItalic.ttf")
"NoLigatures/ExtraBold/JetBrainsMonoNL-ExtraBold.ttf"
,(string-append "NoLigatures/ExtraBoldItalic/"
"JetBrainsMonoNL-ExtraBoldItalic.ttf")
,(string-append "NoLigatures/ExtraLight/"
"JetBrainsMonoNL-ExtraLight.ttf")
,(string-append "NoLigatures/ExtraLightItalic/"
"JetBrainsMonoNL-ExtraLightItalic.ttf")
"NoLigatures/Italic/JetBrainsMonoNL-Italic.ttf"
"NoLigatures/Light/JetBrainsMonoNL-Light.ttf"
,(string-append "NoLigatures/LightItalic/"
"JetBrainsMonoNL-LightItalic.ttf")
"NoLigatures/Medium/JetBrainsMonoNL-Medium.ttf"
,(string-append "NoLigatures/MediumItalic/"
"JetBrainsMonoNL-MediumItalic.ttf")
"NoLigatures/Regular/JetBrainsMonoNL-Regular.ttf"
"NoLigatures/SemiBold/JetBrainsMonoNL-SemiBold.ttf"
,(string-append "NoLigatures/SemiBoldItalic/"
"JetBrainsMonoNL-SemiBoldItalic.ttf")
"NoLigatures/Thin/JetBrainsMonoNL-Thin.ttf"
,(string-append "NoLigatures/ThinItalic/"
"JetBrainsMonoNL-ThinItalic.ttf")))))
(add-after 'build 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(for-each (lambda (font)
;; Use Python script with fontforge to validate the font.
(invoke "python3" "-c"
(format #f
"import fontforge
name = ~s
font = fontforge.open(name)
glyph_count = len([g for g in font.glyphs() if g.unicode > 0])
print(f'Font has {glyph_count} glyphs with Unicode mapping')
if glyph_count < 8000:
raise ValueError(f'Font has too few glyphs: {glyph_count}')
print(f' Font validation passed for {name}')
font.close()~%"
font)))
'("JetBrainsMonoNerdFont-Bold.ttf"
"JetBrainsMonoNerdFont-Bold.ttf"
"JetBrainsMonoNerdFontMono-Bold.ttf"
"JetBrainsMonoNerdFontMono-Bold.ttf"
"JetBrainsMonoNerdFontPropo-Bold.ttf"
"JetBrainsMonoNerdFontPropo-Bold.ttf"
"JetBrainsMonoNerdFont-BoldItalic.ttf"
"JetBrainsMonoNerdFont-BoldItalic.ttf"
"JetBrainsMonoNerdFontMono-BoldItalic.ttf"
"JetBrainsMonoNerdFontMono-BoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-BoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-BoldItalic.ttf"
"JetBrainsMonoNerdFont-ExtraBold.ttf"
"JetBrainsMonoNerdFont-ExtraBold.ttf"
"JetBrainsMonoNerdFontMono-ExtraBold.ttf"
"JetBrainsMonoNerdFontMono-ExtraBold.ttf"
"JetBrainsMonoNerdFontPropo-ExtraBold.ttf"
"JetBrainsMonoNerdFontPropo-ExtraBold.ttf"
"JetBrainsMonoNerdFont-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFont-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf"
"JetBrainsMonoNerdFont-ExtraLight.ttf"
"JetBrainsMonoNerdFont-ExtraLight.ttf"
"JetBrainsMonoNerdFontMono-ExtraLight.ttf"
"JetBrainsMonoNerdFontMono-ExtraLight.ttf"
"JetBrainsMonoNerdFontPropo-ExtraLight.ttf"
"JetBrainsMonoNerdFontPropo-ExtraLight.ttf"
"JetBrainsMonoNerdFont-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFont-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf"
"JetBrainsMonoNerdFont-Italic.ttf"
"JetBrainsMonoNerdFont-Italic.ttf"
"JetBrainsMonoNerdFontMono-Italic.ttf"
"JetBrainsMonoNerdFontMono-Italic.ttf"
"JetBrainsMonoNerdFontPropo-Italic.ttf"
"JetBrainsMonoNerdFontPropo-Italic.ttf"
"JetBrainsMonoNerdFont-Light.ttf"
"JetBrainsMonoNerdFont-Light.ttf"
"JetBrainsMonoNerdFontMono-Light.ttf"
"JetBrainsMonoNerdFontMono-Light.ttf"
"JetBrainsMonoNerdFontPropo-Light.ttf"
"JetBrainsMonoNerdFontPropo-Light.ttf"
"JetBrainsMonoNerdFont-LightItalic.ttf"
"JetBrainsMonoNerdFont-LightItalic.ttf"
"JetBrainsMonoNerdFontMono-LightItalic.ttf"
"JetBrainsMonoNerdFontMono-LightItalic.ttf"
"JetBrainsMonoNerdFontPropo-LightItalic.ttf"
"JetBrainsMonoNerdFontPropo-LightItalic.ttf"
"JetBrainsMonoNerdFont-Medium.ttf"
"JetBrainsMonoNerdFont-Medium.ttf"
"JetBrainsMonoNerdFontMono-Medium.ttf"
"JetBrainsMonoNerdFontMono-Medium.ttf"
"JetBrainsMonoNerdFontPropo-Medium.ttf"
"JetBrainsMonoNerdFontPropo-Medium.ttf"
"JetBrainsMonoNerdFont-MediumItalic.ttf"
"JetBrainsMonoNerdFont-MediumItalic.ttf"
"JetBrainsMonoNerdFontMono-MediumItalic.ttf"
"JetBrainsMonoNerdFontMono-MediumItalic.ttf"
"JetBrainsMonoNerdFontPropo-MediumItalic.ttf"
"JetBrainsMonoNerdFontPropo-MediumItalic.ttf"
"JetBrainsMonoNerdFont-Regular.ttf"
"JetBrainsMonoNerdFont-Regular.ttf"
"JetBrainsMonoNerdFontMono-Regular.ttf"
"JetBrainsMonoNerdFontMono-Regular.ttf"
"JetBrainsMonoNerdFontPropo-Regular.ttf"
"JetBrainsMonoNerdFontPropo-Regular.ttf"
"JetBrainsMonoNerdFont-SemiBold.ttf"
"JetBrainsMonoNerdFont-SemiBold.ttf"
"JetBrainsMonoNerdFontMono-SemiBold.ttf"
"JetBrainsMonoNerdFontMono-SemiBold.ttf"
"JetBrainsMonoNerdFontPropo-SemiBold.ttf"
"JetBrainsMonoNerdFontPropo-SemiBold.ttf"
"JetBrainsMonoNerdFont-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFont-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf"
"JetBrainsMonoNerdFont-Thin.ttf"
"JetBrainsMonoNerdFont-Thin.ttf"
"JetBrainsMonoNerdFontMono-Thin.ttf"
"JetBrainsMonoNerdFontMono-Thin.ttf"
"JetBrainsMonoNerdFontPropo-Thin.ttf"
"JetBrainsMonoNerdFontPropo-Thin.ttf"
"JetBrainsMonoNerdFont-ThinItalic.ttf"
"JetBrainsMonoNerdFont-ThinItalic.ttf"
"JetBrainsMonoNerdFontMono-ThinItalic.ttf"
"JetBrainsMonoNerdFontMono-ThinItalic.ttf"
"JetBrainsMonoNerdFontPropo-ThinItalic.ttf"
"JetBrainsMonoNerdFontPropo-ThinItalic.ttf"))))))))
(native-inputs (list fontforge python-minimal))
(home-page "https://www.nerdfonts.com/")
(synopsis "JetBrains Mono with an iconic font collection")
(description
"This package provides the JetBrains Mono font with the extra
glyphs from Nerd Fonts.
@itemize
@item JetBrains
@item JetBrains Mono
@end itemize
These fonts include glyphs from multiple icon sets:
@itemize
@item Powerline with Extra Symbols
@item Font Awesome and Font Awesome Extension
@item Material Design Icons
@item Weather Icons
@item Devicons
@item Octicons
@item Font Logos (formerly Font Linux)
@item Pomicons
@item Codeicons
@end itemize
The monospaced variant ensures all glyphs have uniform width, which is essential
for terminal emulators that require consistent character spacing.")
;; https://github.com/ryanoasis/nerd-fonts/blob/master/license-audit.md
@@ -4260,17 +3873,17 @@ typographical palette.")
(define-public font-mona-sans
(package
(name "font-mona-sans")
(version "2.0.26")
(version "2.0.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/github/mona-sans")
(commit (string-append "v" version))))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"09b6apxq659y4dkkm5swy683q6hviibv1cd48ragm5rd1376hsaz"))))
"1gdblparf0v5mdbp891wnsc5x4dxr433fg0dmz0mhzrdw9vaalig"))))
(build-system font-build-system)
(outputs '("out" "ttf" "woff"))
(home-page "https://github.com/mona-sans")
+2 -41
View File
@@ -44,7 +44,6 @@
;;; Copyright © 2025 wvlab <me@wvlab.xyz>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -142,6 +141,7 @@
#:use-module (gnu packages rsync)
#:use-module (gnu packages rust)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages rust-crates)
#:use-module (gnu packages samba)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sqlite)
@@ -748,7 +748,7 @@ other applications that need to directly deal with input devices.")
python-pytest
python-structlog
python-pyaml
valgrind/pinned))
valgrind/interactive))
(home-page "https://libinput.pages.freedesktop.org/libei/")
(synopsis "Emulated Input protocol implementation")
(description
@@ -3475,45 +3475,6 @@ remote-desktop @code{xdg-desktop-portal} interfaces for wlroots based
compositors.")
(license license:expat)))
(define-public xdg-desktop-portal-termfilechooser
(package
(name "xdg-desktop-portal-termfilechooser")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wvmwl678fr5pxz7x248pm5v4jd3bycz8nqa2q87akys5b9d1xpd"))))
(build-system meson-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((sed (search-input-file inputs "/bin/sed")))
(substitute* (find-files #$output "-wrapper\\.sh")
((" sed") (string-append " " sed)))))))))
(native-inputs
(list cmake-minimal
pkg-config
scdoc))
(inputs
(list basu
libinih
sed))
(home-page "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
(synopsis "@code{xdg-desktop-portal} backend for choosing files with your
favorite terminal file chooser")
(description
"This package provides a backend implementation for xdg-desktop-portal that
allows using your preferred terminal file manager as file chooser in other
applications.")
(license license:expat)))
(define-public poweralertd
(package
(name "poweralertd")
+2 -16
View File
@@ -7,7 +7,6 @@
;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -184,7 +183,7 @@ FTP browser, as well as non-interactive commands such as @code{ncftpput} and
(define-public weex
(package
(name "weex")
(version "2.8.3")
(version "2.8.2")
(source
(origin
(method url-fetch)
@@ -193,21 +192,8 @@ FTP browser, as well as non-interactive commands such as @code{ncftpput} and
"/weex_" version ".tar.gz"))
(sha256
(base32
"00qnw5q2i0xa2a51jp5737r3jx959rl1gbi9flpwin8s8ymqd9bj"))))
"1ir761hjncr1bamaqcw9j7x57xi3s9jax3223bxwbq30a0vsw1pd"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags #~(list "--disable-dependency-tracking")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-/bin/sh
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "po/Makefile.in.in"
(("/bin/sh")
(search-input-file inputs "/bin/sh")))
(substitute* "intl/Makefile.in"
(("/bin/sh")
(search-input-file inputs "/bin/sh"))))))))
(native-inputs
(list automake autoconf gettext-minimal))
(home-page "https://weex.sourceforge.net/")
+56 -110
View File
@@ -558,7 +558,7 @@ PCM data.")
(define-public nml
(package
(name "nml")
(version "0.9.0")
(version "0.8.1")
(source
(origin
(method git-fetch)
@@ -567,7 +567,7 @@ PCM data.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1kn70sskwpl2wcjlkdvxqja04khjb0vwwkgnyr67df1q3mga6l8m"))))
(base32 "03qrpnv2r2kjjfqkc67sqjzxq59li7vb1jhbdhgif8kf2x92805k"))))
(arguments
(list
#:phases
@@ -2391,47 +2391,6 @@ games.")
(home-page "https://openmw.org")
(license license:gpl3)))
(define-public jolt-physics
(package
(name "jolt-physics")
(version "5.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jrouwe/JoltPhysics")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0dzqi4mxrzg5cyf5k8rdlb078939ib849n7gs6014d3ljymf839r"))
(modules '((guix build utils)))
;; Unbundle Roboto font.
(snippet
'(begin
(delete-file-recursively "Assets/Fonts")
(substitute* "TestFramework/TestFramework.cmake"
((".*Roboto-Regular\\.ttf.*") ""))))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON")
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'change-directory
(lambda _
(chdir "Build")))
(add-after 'install 'change-directory
(lambda _
(chdir ".."))))))
(home-page "https://github.com/jrouwe/JoltPhysics")
(synopsis "Rigid body physics and collision detection library")
(description
"Jolt Physics is a multi core friendly rigid body physics and collision
detection library, written in C++. It is suitable for games and VR
applications.")
(license license:expat)))
(define-public godot-lts
(package
(name "godot")
@@ -3620,76 +3579,63 @@ physics engine is just a system for procedural animation.")
(define-public libtcod
(package
(name "libtcod")
(version "2.2.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libtcod/libtcod")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1zl1w4kpiiarh0f1q3j95k9vp90fx98hxl1ykma9hlkfw33srmy0"))
(modules '((guix build utils)))
(snippet
'(begin
(rmdir "vcpkg")
(with-directory-excursion "src"
;; Delete the bundled third party libraries.
(with-directory-excursion "vendor"
(for-each delete-file
'("khrplatform.h"
"lodepng.c"
"lodepng.h"
"stb_ds.h"
"stb_truetype.h"))
(for-each delete-file-recursively '("utf8proc" "zlib")))
;; Do not fetch the libraries from their Git repositories.
;; Instead, find the required packages available in Guix and link
;; them.
(substitute* "CMakeLists.txt"
(("FetchContent_MakeAvailable\\(SDL3\\)")
"find_package(SDL3 REQUIRED)")
(("FetchContent_MakeAvailable\\(ZLIB\\)")
"find_package(ZLIB REQUIRED)")
(("FetchContent_MakeAvailable\\(lodepng-c\\)")
"find_library(LODEPNG_LIB NAMES lodepng REQUIRED)")
(("lodepng-c") "${LODEPNG_LIB}")
(("FetchContent_MakeAvailable\\(utf8proc\\)")
(string-append "find_package(PkgConfig REQUIRED)\n"
" pkg_check_modules(UTF8PROC REQUIRED"
" libutf8proc)"))
(("utf8proc\\:\\:utf8proc") "utf8proc")
((".*FetchContent_MakeAvailable\\(Stb.*") "")))))))
(build-system cmake-build-system)
(version "1.15.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libtcod/libtcod")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0pzr8ajmbqvh43ldjajx962xirj3rf8ayh344p6mqlrmb8gxrfr5"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/vendor/utf8proc")
(delete-file-recursively "src/vendor/zlib")
(delete-file "src/vendor/stb_truetype.h")
(delete-file "src/vendor/stb_sprintf.h")
(delete-file "src/vendor/lodepng.cpp")
(delete-file "src/vendor/lodepng.h")
(substitute* "buildsys/autotools/sources.am"
(("\\.\\./\\.\\./src/vendor/lodepng\\.cpp \\\\\n") "")
(("\\.\\./\\.\\./src/vendor/stb\\.c \\\\")
"../../src/vendor/stb.c")
(("\\.\\./\\.\\./src/vendor/utf8proc/utf8proc\\.c") ""))
(substitute* "src/libtcod/sys_sdl_img_png.cpp"
(("\\.\\./vendor/") ""))
(substitute* '("src/libtcod/color/canvas.cpp"
"src/libtcod/sys_sdl_img_png.cpp"
"src/libtcod/tileset/truetype.cpp"
"src/libtcod/tileset/tilesheet.cpp")
(("\\.\\./\\.\\./vendor/") ""))
(substitute* "src/libtcod/console/printing.cpp"
(("\\.\\./\\.\\./vendor/utf8proc/") ""))
#t))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list "-DLIBTCOD_TESTS=ON"
"-DBUILD_SHARED_LIBS=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-commands
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/libtcod/tileset_fallback.c"
(("popen\\(\"fc-match")
(string-append "popen(\""
(search-input-file inputs "/bin/fc-match"))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "tests"
(copy-recursively "../../source/data" "data")
(setenv "LD_LIBRARY_PATH" "..")
(setenv "XDG_RUNTIME_DIR" (getcwd))
(setenv "HOME" (getcwd))
(invoke "./unittest"
;; No video device available.
"~[!nonportable]"))))))))
`(#:configure-flags '("--with-gnu-ld"
"LIBS=-lutf8proc -llodepng")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'change-to-build-dir
(lambda _
(chdir "buildsys/autotools")
(patch-shebang "get_version.py"))))))
(native-inputs
(list catch2-3.8 pkg-config))
(list autoconf
automake
libtool
python
pkg-config
stb-sprintf
stb-truetype))
(inputs
(list fontconfig lodepng/c sdl3 stb-truetype utf8proc zlib))
(list lodepng sdl2 utf8proc zlib))
(home-page "https://github.com/libtcod/libtcod")
(synopsis "Library specifically designed for writing roguelikes")
(description
+112 -111
View File
@@ -227,7 +227,6 @@
#:use-module (gnu packages shells)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages squirrel)
#:use-module (gnu packages stb)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
#:use-module (gnu packages terminals)
@@ -1235,11 +1234,11 @@ original rogue game found on 4.2BSD.")
(license license:bsd-3)))
(define-public sgt-puzzles
(let ((commit "06e37f1e334d85c7c779f79ef9e484ff2f708269")
(let ((commit "28032bd5a0d3dc409eb225b8bdb23fd0b18a28d7")
(revision "0"))
(package
(name "sgt-puzzles")
(version (git-version "20260308" revision commit))
(version (git-version "20251120" revision commit))
(source
(origin
(method git-fetch)
@@ -1248,7 +1247,7 @@ original rogue game found on 4.2BSD.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "141d57s1va2ng7nxjzdgmsqh5mdb0mpy3yiqaj4rplya8xlhm34h"))))
(base32 "0533fzzagmi7g7sw1fdgpzy6gjpif77gxf3avz1qnjsma5gq7f2l"))))
(build-system cmake-build-system)
(arguments
(list
@@ -1407,10 +1406,10 @@ want what you have.")
(license license:cc-by-sa3.0)))
(define-public cockatrice
(let ((release-date "2026-05-08"))
(let ((release-date "2023-09-14"))
(package
(name "cockatrice")
(version "3.0.0")
(version "2.9.0")
(source
(origin
(method git-fetch)
@@ -1420,30 +1419,28 @@ want what you have.")
(file-name (git-file-name name version))
(sha256
(base32
"11hzw3zmnnsfc4w23kwhzpflmbaj3bgrvsz734wk89fvs5dcdccc"))
"1jhn6pprd3j8m312mm8nlb9hwcchg3qkks5rw0x7d22alk922dlv"))
(modules '((guix build utils)))
(snippet
;; Strip image URLs as they point towards non-free web services
'(substitute* "libcockatrice_settings/libcockatrice/settings/download_settings.cpp"
(("\"https://.*\",?") "")))))
'(substitute* "cockatrice/src/settings/downloadsettings.cpp"
(("downloadURLs.append\\(\".*\"\\);") "")))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase
#:configure-flags #~(list "-DWITH_SERVER=1"
"-DWITH_CLIENT=1"
"-DWITH_ORACLE=1"
"-DTEST=1")))
`(#:configure-flags '("-DWITH_SERVER=1"
"-DWITH_CLIENT=1"
"-DWITH_ORACLE=1"
"-DTEST=1")))
(native-inputs
(list googletest pkg-config))
(inputs
(list protobuf
qtmultimedia
qtsvg
qttools
qttranslations
qtwebsockets
qtwayland
qtbase-5
qtmultimedia-5
qtsvg-5
qttools-5
qtwebsockets-5
qtwayland-5
xz
zlib))
(home-page "https://cockatrice.github.io")
@@ -5351,78 +5348,36 @@ also available.")
(sha256
(base32 "05aj09rm50xb6910zx6imarj8k728x9bpvpa7ydwgb4sj1nypil8"))
(modules '((guix build utils)))
(snippet
'(begin
(with-directory-excursion "thirdparty"
;; Delete third party ibraries, except these libraries:
;; glad: header file is not available in the system glad package.
;; imgui: configured with "srb2_imconfig.h".
;; libwebm: Not available in Guix.
;; renamenoise: Not available in Guix.
;; tracy: header files are not available in the system tracy
;; package.
(for-each delete-file-recursively
'("discord-rpc"
"glm"
"nlohmann-json"
"overlay-ports/libyuv"
"tcbrindle_span"
"vma"
"volk"
"vulkan-headers"
"xmp-lite"))
;; Unbundle stb.
(with-directory-excursion "stb"
(for-each delete-file
'("include/stb_rect_pack.h"
"stb_vorbis.c"))
(substitute* "stb_rect_pack.c"
(("\"include\\/stb_rect_pack\\.h\"") "<stb_rect_pack.h>"))
(substitute* "CMakeLists.txt"
(("include\\/stb_rect_pack\\.h ") "")))
;; Find third party libraries from the system and do not add the
;; deleted directories.
(substitute* "CMakeLists.txt"
(("add_subdirectory\\((glm|discord-rpc|xmp-lite|fmt|volk)\\)"
_ keep)
(string-append "find_package(" keep " REQUIRED)"))
(("xmp-lite") "libxmp")
((".*nlohmann-json.*") "")
((".*tcbrindle_span.*") "")
((".*vulkan-headers.*") "")
((".*vma.*") "")))
(with-directory-excursion "src"
;; Link the system libraries instead of the unbundled ones.
(substitute* "CMakeLists.txt"
((".*tcbrindle::span.*") "")
(("glm::glm") "glm")
(("xmp-lite::xmp-lite") "xmp")
(("fmt::fmt-header-only") "fmt")
((".*nlohmann_json::nlohmann_json.*") "")))
;; Rename the icon to match with the executable file.
(rename-file "srb2.png" "ringracers.png")))))
(snippet '(begin
(with-directory-excursion "thirdparty"
(delete-file-recursively "glm")
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(glm\\)")
"find_package(glm REQUIRED)")))
(with-directory-excursion "src"
(substitute* "CMakeLists.txt"
(("glm::glm")
"glm")))
;; Rename the icon to match with the executable file.
(rename-file "srb2.png" "ringracers.png")))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;There are no tests.
#:configure-flags
#~(list "-DSRB2_CONFIG_ENABLE_DISCORDRPC=OFF"
"-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
#~(list "-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
"-DCMAKE_CXX_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-stb_vorbis.c
(lambda* (#:key inputs #:allow-other-keys)
(install-file (search-input-file inputs "/stb_vorbis.c")
"thirdparty/stb")))
(replace 'install
(lambda _
(install-file "bin/ringracers" (string-append #$output "/bin"))
(install-file "../source/ringracers.png"
(string-append #$output "/share/pixmaps"))))
(add-after 'install 'wrap-program
;; Install executable to $out/bin.
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/ringracers")
(wrap-program "bin/ringracers"
`("RINGRACERSWADDIR" =
(,(assoc-ref inputs "ring-racers-data"))))))
(add-after 'wrap-program 'create-desktop-entry
@@ -5438,37 +5393,26 @@ also available.")
#:exec (string-append #$output "/bin/ringracers")
#:startup-notify #f
#:categories '("Application" "Game"))))))))
(native-inputs
(list pkg-config
(package-source stb)))
(inputs (list bash-minimal
curl
fmt
glm
(native-inputs (list pkg-config))
(inputs (list glm
libogg
libpng
libvorbis
libvpx
libxmp
libyuv
nlohmann-json
opus
ring-racers-data
sdl2
stb-rect-pack
tcbrindle-span
vulkan-headers
vulkan-memory-allocator
vulkan-volk
zlib))
(home-page "https://www.kartkrew.org/")
zlib
curl))
(home-page "https://kartkrew.org")
(synopsis "Technical kart racing game")
(description
"Dr.@: Robotnik's Ring Racers is a kart racing game drawing inspiration
from \"anti-gravity\" racers, fighting games, and traditional-style kart
racing. Ring Racers is designed with an emphasis on player agency in the face
of highly technical game-play challenges in both single-player and online
multiplayer modes.")
"Dr. Robotnik's Ring Racers is a kart racing game drawing inspiration from
``anti-gravity'' racers, fighting games, and traditional-style kart racing.
Ring Racers is designed with an emphasis on player agency in the face of highly
technical game-play challenges in both single-player and online multiplayer
modes.")
(license license:gpl2+)))
(define-public unknown-horizons
@@ -5799,14 +5743,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
(define-public openttd-engine
(package
(name "openttd-engine")
(version "15.3")
(version "15.2")
(source
(origin (method url-fetch)
(uri (string-append "https://cdn.openttd.org/openttd-releases/"
version "/openttd-" version "-source.tar.xz"))
(sha256
(base32
"1rrvjxsr2dp9zr6b35ifiw41c0dwqqcaq90r0x18misrgpm1x8jy"))))
"0xpzschcf562giqh3p8jj9gbi8chqrikdwgqqipabyn0nwbvd6nj"))))
(build-system cmake-build-system)
(inputs
(list allegro
@@ -6040,7 +5984,7 @@ Transport Tycoon Deluxe.")
(package
(inherit openttd)
(name "openttd-jgrpp")
(version "0.72.2")
(version "0.71.2")
(source
(origin
(method git-fetch)
@@ -6049,7 +5993,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "jgrpp-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02w6ka0pvqwdc5hpx7xaw24rgi24zrsxnn40zkb71kgrgbwxcpa2"))))
(base32 "1gb5gickmf1d1wkzqny5ryapvw32a2g94f77iq0102xhyyw8g8s0"))))
(inputs (modify-inputs inputs
(append zstd harfbuzz)))
(arguments
@@ -7749,7 +7693,7 @@ for Un*x systems with X11.")
(define-public freeciv
(package
(name "freeciv")
(version "3.2.4")
(version "3.2.3")
(source
(origin
(method url-fetch)
@@ -7761,7 +7705,7 @@ for Un*x systems with X11.")
(version-major+minor version) "/" version
"/freeciv-" version ".tar.xz")))
(sha256
(base32 "0b6kxm214ljklh7x7nz2rjzp5mwl6wjr3lsiqavlzp39pw49b8g0"))))
(base32 "01ykv00dd5p1lql98dvsz01zsdbcxvymmqp7k547mnacpmc6v7cq"))))
(build-system gnu-build-system)
(inputs
(list curl cyrus-sasl gtk+ sdl2-mixer sqlite zlib))
@@ -9246,7 +9190,7 @@ making Yamagi Quake II one of the most solid Quake II implementations available.
(define-public nudoku
(package
(name "nudoku")
(version "8.0.0")
(version "7.0.0")
(source
(origin
(method git-fetch)
@@ -9255,7 +9199,7 @@ making Yamagi Quake II one of the most solid Quake II implementations available.
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1hcbzgn5jivy1mca1h25mwrmy7iav4j7dp7vmp3fa2lx6qwmiv7s"))))
(base32 "07y7278s3k8dvpsv2vykfyzkbiv9sh62lvmmzrpj2nyf915pc3g2"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake gettext-minimal pkg-config))
@@ -9968,6 +9912,63 @@ ncurses for text display.")
(home-page "https://frotz.sourceforge.net")
(license license:gpl2+)))
(define-public naev
(package
(name "naev")
(version "0.12.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/naev/naev")
(commit (string-append "v" version))
(recursive? #t))) ; for game data
(file-name (git-file-name name version))
(sha256
(base32 "14rvwacvc2gqyh193w8ymaznqrrymbznndfp6f5fjcs90iqnc4p5"))))
(build-system meson-build-system)
(arguments
;; XXX: Do not add debugging symbols, which cause the build to fail.
`(#:configure-flags (list "--buildtype=release")
#:tests? #f)) ;sole test fails with a missing "/dev/dri" error
(native-inputs
(list gettext-minimal pkg-config))
(inputs
(list enet
freetype
glpk
libpng
libunibreak
libvorbis
libwebp
libxml2
luajit
openal
openblas
pcre2
physfs
python
python-pyyaml
sdl2
sdl2-image
suitesparse))
(home-page "https://naev.org/")
(synopsis "Game about space exploration, trade and combat")
(description
"Naev is a 2d action/rpg space game that combines elements from
the action, RPG and simulation genres. You pilot a spaceship from
a top-down perspective, and are more or less free to do what you want.
As the genre name implies, youre able to trade and engage in combat
at will. Beyond that, theres an ever-growing number of story-line
missions, equipment, and ships; even the galaxy itself grows larger
with each release. For the literacy-inclined, there are large amounts
of lore accompanying everything from planets to equipment.")
(license (list license:gpl3
license:public-domain
license:expat ;edtaa3func.c
license:bsd-2 ;distance_field.c
license:bsd-3)))) ;perlin.c
(define-public frotz-dumb-terminal
(package
(name "frotz-dumb-terminal")
@@ -11001,7 +11002,7 @@ fight each other on an arena-like map.")
(define-public flare-engine
(package
(name "flare-engine")
(version "1.15")
(version "1.14")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -11010,7 +11011,7 @@ fight each other on an arena-like map.")
(file-name (git-file-name name version))
(sha256
(base32
"1fnqirvislxl48jad9i1mwn7zlbd4zrmhjis4dmzy4wng5qjv1x3"))))
"1gyaxr6zykwg5kg9xc3vlb5a6fas4z3zbk53y0zlfl35n4vqlh84"))))
(build-system cmake-build-system)
(arguments
(list
@@ -11030,7 +11031,7 @@ action RPGs.")
(define-public flare-game
(package
(name "flare-game")
(version "1.15")
(version "1.14")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -11039,7 +11040,7 @@ action RPGs.")
(file-name (git-file-name name version))
(sha256
(base32
"1d7asy7wqas6r6nq846fmvdrshr98mzpwg0xi86wwmpbjrnjipnv"))))
"1as9dsg0ddz14jjk4y5nj0ml20cwncrcnbdk10r1jaa2vss9bbn3"))))
(build-system cmake-build-system)
(arguments
(list
+2 -8
View File
@@ -44,7 +44,7 @@
(define-public gramps
(package
(name "gramps")
(version "6.0.8")
(version "5.2.3")
(source
(origin
(method git-fetch)
@@ -53,7 +53,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06kdcf6h9rqdcsx097a3n2z4q8yvln20ja7ajwrna1i133591bra"))))
(base32 "1gzhi5hxpgc6pxs40xsxf67hndjifnfhm89s3ly68c70x83qmwhd"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -68,11 +68,6 @@
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'fix-gexiv2-dependency
(lambda _
;; Use our own version
(substitute* (find-files "." ".*\\.py$")
(("\"GExiv2\", \"0.10\"") "\"GExiv2\", \"0.16\""))))
(add-before 'check 'prepare-tests
(lambda _
(setenv "HOME" (getenv "TMPDIR"))
@@ -118,7 +113,6 @@
python-bsddb3
python-jsonschema
python-lxml
python-orjson
python-pillow
python-pycairo
python-pygobject
+33 -13
View File
@@ -2122,9 +2122,28 @@ Unidata/UCAR UDUNITS-2 library, and the cftime calendar functionality.")
(sha256
(base32
"1f5l7b372dfyibawhcnlz700z11a0dxqd7kr731nwfmhwz2v3438"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "vendor")))))
(modules '((guix build utils)))
;; TODO: Unbundle more when missing packages are available.
(snippet #~(with-directory-excursion "vendor"
(for-each delete-file-recursively
'("github.com/BurntSushi"
"github.com/SAP"
"github.com/ajstarks"
"github.com/aws"
"github.com/beorn7"
"github.com/dgryski"
"github.com/go-test"
"github.com/gofrs"
"github.com/golang"
"github.com/google"
"github.com/jmespath"
"github.com/mattn"
"github.com/prometheus"
"github.com/redis"
"github.com/spf13"
"go.uber.org"
"golang.org/x"
"google.golang.org/protobuf"))))))
(build-system go-build-system)
(arguments
(list
@@ -2138,16 +2157,16 @@ Unidata/UCAR UDUNITS-2 library, and the cftime calendar functionality.")
"-X github.com/go-spatial/tegola/internal/"
"build.Version=" #$version))))
(inputs
(list go-cloud-google-com-go-storage
(list ;; go-cloud-google-com-go-storage
go-github-com-ajstarks-svgo
go-github-com-akrylysov-algnhsa
go-github-com-aws-aws-sdk-go
go-github-com-azure-azure-storage-blob-go
;; go-github-com-azure-azure-storage-blob-go
go-github-com-burntsushi-toml
go-github-com-dimfeld-httptreemux
go-github-com-gdey-tbltest
go-github-com-go-spatial-cobra
go-github-com-go-spatial-geom
;; go-github-com-go-spatial-cobra
;; go-github-com-go-spatial-geom
go-github-com-go-spatial-proj
go-github-com-go-test-deep
go-github-com-golang-protobuf
@@ -2160,14 +2179,15 @@ Unidata/UCAR UDUNITS-2 library, and the cftime calendar functionality.")
go-github-com-prometheus-client-golang
go-github-com-redis-go-redis-v9
go-github-com-sap-go-hdb
go-github-com-theckman-goconstraint
;; go-github-com-theckman-goconstraint
go-go-uber-org-zap
go-gopkg-in-go-playground-colors-v1
;; go-gopkg-in-go-playground-colors-v1
;; XXX: These packages have to be bootstrapped to break cycle with
;; go-google-golang-org-grpc.
go-github-com-envoyproxy-go-control-plane
go-github-com-envoyproxy-go-control-plane-envoy))
;; XXX: Indirect dependencies, remove when all direct ones are
;; packaged.
go-github-com-golang-groupcache ;go.opencensus.io/trace
go-github-com-spf13-pflag ;github.com/go-spatial/cobra
go-golang-org-x-xerrors)) ;cloud.google.com/go
(home-page "https://tegola.io")
(synopsis "Vector tile server for maps")
(description "Tegola is a free vector tile server written in Go. Tegola
+4 -4
View File
@@ -682,7 +682,7 @@ and a high score table.")
(define-public komikku
(package
(name "komikku")
(version "50.3.0")
(version "50.1.0")
(source
(origin
(method git-fetch)
@@ -692,7 +692,7 @@ and a high score table.")
(file-name (git-file-name name version))
(sha256
(base32
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
(build-system meson-build-system)
(arguments
(list
@@ -780,7 +780,7 @@ developed with the aim of being used with the Librem 5 phone.")
(define-public komikku-servers
(package
(name "komikku-servers")
(version "50.3.0")
(version "50.1.0")
(source
(origin
(method git-fetch)
@@ -790,7 +790,7 @@ developed with the aim of being used with the Librem 5 phone.")
(file-name (git-file-name name version))
(sha256
(base32
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
(build-system copy-build-system)
(arguments
(list
-37
View File
@@ -2074,43 +2074,6 @@ used in text editing environments to provide a complete and integrated
feature-set for programming Vala effectively.")
(license license:lgpl2.1+)))
(define-public vala-lint
(package
(name "vala-lint")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vala-lang/vala-lint")
(commit "28dbf44dd2c5ec2fc7273982d35ff8cb0ef46283")))
(file-name (git-file-name name version))
(sha256
(base32 "1pl581xaxr8f1gm66fygazfa3ms9mdjqvb3zpl55gbbsc36fjyhs"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-vala-lint-symlink
(lambda _
(let ((bindir (string-append #$output "/bin")))
(symlink "io.elementary.vala-lint"
(string-append bindir "/vala-lint"))))))))
(native-inputs
(list gobject-introspection
pkg-config
vala))
(inputs
(list glib json-glib vala))
(home-page "https://github.com/vala-lang/vala-lint")
(synopsis "Code-style checker for Vala")
(description
"Vala-lint checks Vala source code for common formatting and style
issues. It can be configured to enable or disable individual checks and can
report line and column locations for detected issues.")
(license license:gpl2+)))
(define-public yaru-theme
(package
+1 -71
View File
@@ -11564,71 +11564,6 @@ accessibility infrastructure.")
(license license:lgpl2.0)
(properties '((upstream-name . "pyatspi")))))
(define-public accerciser
(package
(name "accerciser")
(version "3.48.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/GNOME/accerciser.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1ddh466im0hxqx0ncxglrif72jfwcdl1ayarw874mp1464wkbc4m"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:imported-modules (append %meson-build-system-modules
%pyproject-build-system-modules)
#:modules
`((guix build meson-build-system)
((guix build pyproject-build-system) #:prefix py:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gnome-post-install
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))))
(add-after 'install 'wrap-python
(assoc-ref py:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-program
(lambda _
(let ((typelib-path (getenv "GI_TYPELIB_PATH")))
(wrap-program (string-append #$output "/bin/accerciser")
`("GI_TYPELIB_PATH" ":" prefix (,typelib-path)))))))))
(native-inputs
(list (list glib "bin")
gettext-minimal
gobject-introspection
pkg-config
yelp-tools))
(inputs
(list appstream
appstream-glib
at-spi2-core
bash-minimal
gdk-pixbuf
glib
gtk+
python
python-dbus
python-pyatspi
python-pycairo
python-pygobject
python-pyxdg))
(synopsis "Accessibility explorer")
(description "This package provides an interactive accessibility explorer
for the GNOME desktop.")
(home-page "https://gitlab.gnome.org/GNOME/accerciser")
(license license:bsd-3)))
(define-public orca
(package
(name "orca")
@@ -12966,8 +12901,7 @@ to.")
(inputs
(list gtk+ (librsvg-for-system) libxml2))
(arguments
`(#:configure-flags
'("CFLAGS=-fcommon -Wno-error=incompatible-pointer-types")))
`(#:configure-flags '("CFLAGS=-fcommon")))
(home-page "https://glabels.org/")
(synopsis "Program for creating labels and business cards")
(description
@@ -13004,10 +12938,6 @@ card sheets that youll find at most office supply stores.")
libgee
tepl
uchardet))
(arguments
(list
#:configure-flags
#~(list "CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types")))
(home-page "https://wiki.gnome.org/Apps/GNOME-LaTeX")
(synopsis "LaTeX editor for the GNOME desktop")
(description
+45 -102
View File
@@ -82,7 +82,6 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#: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 meson)
@@ -436,16 +435,16 @@ libskba (working with X.509 certificates and CMS data).")
(substitute* "checks/Makefile.in"
(("/bin/sh") (which "sh"))))))))))
(define-public gpgme-2
(define-public gpgme
(package
(name "gpgme")
(version "2.0.1")
(version "1.24.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gpgme/gpgme-" version ".tar.bz2"))
(sha256
(base32 "0rj9g0kablnmj7vh6hfhmmz0qhdhj869i09afm8snbl4bilv06l2"))))
(base32 "0px87fbp90xp8vf1wms02flk14zmrqsfr135f5his1kiiqjx01ga"))))
(build-system gnu-build-system)
(arguments
(list
@@ -457,7 +456,7 @@ libskba (working with X.509 certificates and CMS data).")
(propagated-inputs
;; As required by the pkg-config's Requires.private.
(list libgpg-error libassuan))
(home-page "https://gnupg.org/software/gpgme/index.html")
(home-page "https://www.gnupg.org/related_software/gpgme/")
(synopsis "Library providing simplified access to GnuPG functionality")
(description
"GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
@@ -471,107 +470,57 @@ instead. This way bug fixes or improvements can be done at a central place
and every application benefits from this.")
(license license:lgpl2.1+)))
(define-public gpgme-1
(package
(inherit gpgme-2)
(version "1.24.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gpgme/gpgme-" version ".tar.bz2"))
(sha256
(base32 "0px87fbp90xp8vf1wms02flk14zmrqsfr135f5his1kiiqjx01ga"))))))
(define-public gpgme gpgme-1)
(define-public gpgmepp
(package
(name "gpgmepp")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gpgmepp/gpgmepp-" version ".tar.xz"))
(sha256
(base32 "10jkaqzjr5gy04bmcw75q6iy2isk17plixwn61ps4237q14n0yfl"))))
(build-system cmake-build-system)
(arguments
(list
;; FIXME: BUILD_TESTING variable is enabled by deault, but still no tests
;; are found.
#:tests? #f))
(propagated-inputs
;; As required by the pkg-config's Requires.private.
(list gpgme-2 libgpg-error))
(home-page "https://gnupg.org/software/gpgme/index.html")
(synopsis "C++ bindings/wrapper for GPGME")
(description
"GPGME++ is a C++ wrapper (or C++ bindings) for the GnuPG project's
@acronym{GPGME, GnuPG Made Easy} library.")
(license license:lgpl2.1+)))
(define-public qgpgme-qt5
(package
(inherit gpgme)
(name "qgpgme-qt5")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnupg/qgpgme/qgpgme-" version ".tar.xz"))
(sha256
(base32 "1bb198dk49bd7yx4cf4w07acjhllilx1nczdna7139ncflj5nr0m"))))
(build-system qt-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
(setenv "HOME" (getcwd))
(invoke "gpg-agent" "--daemon"))))))
(propagated-inputs
(list gpgme-2 ;for FindGpgme.cmake and QGpgmeQt6Config.cmake
gpgmepp ;for QGpgmeQt6Config.cmake
libgpg-error)) ;for FindLibGpgError.cmake and QGpgmeQt6Config.cmake
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'chdir-and-symlink
(lambda* (#:key inputs #:allow-other-keys)
(let ((gpgme (assoc-ref inputs "gpgme")))
(symlink (string-append gpgme "/lib/libgpgmepp.la")
"lang/cpp/src/libgpgmepp.la")
(symlink (string-append gpgme "/lib/libgpgme.la")
"src/libgpgme.la"))
(chdir "lang/qt"))))))
(propagated-inputs (list gpgme)) ;required by QGpgmeConfig.cmake
(native-inputs
(list gnupg ;for tests
pkg-config))
(home-page "https://gnupg.org/software/gpgme/index.html")
(modify-inputs native-inputs
(prepend pkg-config)))
(inputs
(modify-inputs inputs
(prepend qtbase-5)))
(synopsis "Qt API bindings for gpgme")
(description "QGpgme provides a very high level Qt API around GpgMEpp.
QGpgME was originally developed as part of libkleo and incorporated into
gpgpme starting with version 1.7.")
(license license:gpl2+)))
(license license:gpl2+))) ;; Note: this differs from gpgme
(define-public qgpgme
(package
(inherit gpgme)
(name "qgpgme")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnupg/qgpgme/qgpgme-" version ".tar.xz"))
(sha256
(base32 "1bb198dk49bd7yx4cf4w07acjhllilx1nczdna7139ncflj5nr0m"))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
(setenv "HOME" (getcwd))
(invoke "gpg-agent" "--daemon"))))))
(propagated-inputs
(list gpgme-2 ;for FindGpgme.cmake and QGpgmeQt6Config.cmake
gpgmepp ;for QGpgmeQt6Config.cmake
libgpg-error)) ;for FindLibGpgError.cmake and QGpgmeQt6Config.cmake
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'chdir-and-symlink
(lambda* (#:key inputs #:allow-other-keys)
(let ((gpgme (assoc-ref inputs "gpgme")))
(symlink (string-append gpgme "/lib/libgpgmepp.la")
"lang/cpp/src/libgpgmepp.la")
(symlink (string-append gpgme "/lib/libgpgme.la")
"src/libgpgme.la"))
(chdir "lang/qt"))))))
(propagated-inputs (list gpgme)) ;required by QGpgmeConfig.cmake
(native-inputs
(list gnupg ;for tests
pkg-config))
(home-page "https://gnupg.org/software/gpgme/index.html")
(modify-inputs native-inputs
(prepend pkg-config)))
(inputs
(modify-inputs inputs
(prepend qtbase)))
(synopsis "Qt API bindings for gpgme")
(description "QGpgme provides a very high level Qt API around GpgMEpp.")
(license license:gpl2+)))
@@ -635,20 +584,21 @@ interface (FFI) of Guile.")
(define-public python-gpg
(package
(name "python-gpg")
(version "2.0.0")
(version "1.10.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "gpg" version))
(patches (search-patches "python-gpg-setup-72.patch"))
(sha256
(base32
"0f2l0iyc8gp49i604c5wpliaa1dsyj0i0p9xc9zfj4z7fwaavdsf"))))
"1ji3ynhp36m1ccx7bmaq75dhij9frpn19v9mpi4aajn8csl194il"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ; No test suite.
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'patch-setup.py
(add-before 'build 'set-environment
(lambda _
;; GPGME is built with large file support, so we need to set
;; _FILE_OFFSET_BITS to 64 in all users of the GPGME library.
@@ -658,16 +608,9 @@ interface (FFI) of Guile.")
"extra_macros = { \"_FILE_OFFSET_BITS\": 64 }")))
#~())
(substitute* "setup.py"
(("cc") (which "gcc"))
(("\\/usr\\/lib\\/x86_64-linux-gnu( -lgpg-error)" _ keep)
(string-append #$(this-package-input "libgpg-error") "/lib"
keep))
(("\\/usr\\/lib\\/x86_64-linux-gnu( -lgpgme)" _ keep)
(string-append #$(this-package-input "gpgme") "/lib" keep))
(("\\/usr\\/local(', 'include', 'gpgme\\.h')" _ keep)
(string-append #$(this-package-input "gpgme") keep))))))))
(("cc") (which "gcc"))))))))
(inputs
(list gpgme-2 libgpg-error))
(list gpgme))
(native-inputs
(list swig-4.0 python-setuptools))
(home-page (package-home-page gpgme))
+27 -26
View File
@@ -605,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"zh-TW"))
;;; Please keep these versions in sync with icedove.
(define %icecat-base-version "140.11.0")
(define %icecat-base-version "140.10.1")
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
(define %icecat-build-id "20260519000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20260428000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@@ -627,9 +627,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0a70qpx0grqyqxzdyaxdb2xcc5932dai05bsh0jdlvrm2whls0qv"))))
"1fx52y52c3dmgr5gm64x40r2n6zq5ckqiqsd6vlhsly5wb1w0xaf"))))
(gnuzilla-commit "056d96e6f753cee6320873a57c18e0b31a7ce57a")
(gnuzilla-commit "5162cbc74c483c361ad5709c767c5cb2395ff4f9")
(gnuzilla-source
(origin
(method git-fetch)
@@ -640,7 +640,7 @@ in the case of Firefox, it is browser/locales/all-locales."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"1yr7zlqsk4qh7l994clmrnansq50pdv1c9bmrvr6avbi9p47ns25"))))
"06qyirgjjgy7fwn7mbrz23wsdv9a88w70pz8qm1yszln74xxdsp0"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@@ -1250,14 +1250,14 @@ testing.")
(cpe-version . ,(first (string-split version #\-)))))))
;;; TEMPORARY old version of icecat-source for use by icedove until it is updated.
(define %icecat-140.10.2-base-version "140.10.2")
(define %icecat-140.10.2-version (string-append %icecat-140.10.2-base-version "-gnu1"))
(define icecat-140.10.2-source
(let* ((major-version (first (string-split %icecat-140.10.2-base-version #\.)))
(minor-version (second (string-split %icecat-140.10.2-base-version #\.)))
(sub-version (third (string-split %icecat-140.10.2-base-version #\.)))
(define %icecat-140.9.1-base-version "140.9.1")
(define %icecat-140.9.1-version (string-append %icecat-140.9.1-base-version "-gnu1"))
(define icecat-140.9.1-source
(let* ((major-version (first (string-split %icecat-140.9.1-base-version #\.)))
(minor-version (second (string-split %icecat-140.9.1-base-version #\.)))
(sub-version (third (string-split %icecat-140.9.1-base-version #\.)))
(upstream-firefox-version (string-append %icecat-140.10.2-base-version "esr"))
(upstream-firefox-version (string-append %icecat-140.9.1-base-version "esr"))
(upstream-firefox-source
(origin
(method url-fetch)
@@ -1267,9 +1267,9 @@ testing.")
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0xsfy8b80mh6kb13928ym3pdrnfyfs98xwz6fwrc20p7f99zcsvr"))))
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
(gnuzilla-commit "f04b721394b9d1103e92dbe989060f96756fe54c")
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
(gnuzilla-source
(origin
(method git-fetch)
@@ -1280,7 +1280,7 @@ testing.")
(string-take gnuzilla-commit 8)))
(sha256
(base32
"05d3793565pxz1h3wmwxk8j4cfqci4c0jic4q4ys8rbnfz98cj6z"))))
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@@ -1290,7 +1290,7 @@ testing.")
(origin
(method computed-origin-method)
(file-name (string-append "icecat-" %icecat-140.10.2-version ".tar.zst"))
(file-name (string-append "icecat-" %icecat-140.9.1-version ".tar.zst"))
(sha256 #f)
(uri
(delay
@@ -1298,9 +1298,9 @@ testing.")
#~(begin
(use-modules (guix build utils))
(let ((firefox-dir
(string-append "firefox-" #$%icecat-140.10.2-base-version))
(string-append "firefox-" #$%icecat-140.9.1-base-version))
(icecat-dir
(string-append "icecat-" #$%icecat-140.10.2-version)))
(string-append "icecat-" #$%icecat-140.9.1-version)))
(set-path-environment-variable
"PATH" '("bin")
@@ -1408,13 +1408,14 @@ preferences/advanced-scripts.dtd"
"--sort=name"
icecat-dir)))))))))
(define %icedove-build-id "20260509000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20260403000000") ;must be of the form YYYYMMDDhhmmss
;;; See <https://product-details.mozilla.org/1.0/thunderbird_versions.json>
;;; for the source of truth regarding Thunderbird releases.
;;; Please keep these version numbers in sync with icecat.
;;; Please also update thunderbird-comm-source and thunderbird-comm-l10n to
;;; the icedove version.
(define %icedove-version "140.10.2")
(define %icedove-version "140.9.1")
;; Provides the "comm" folder which is inserted into the icecat source.
;; Avoids the duplication of Icecat's source tarball. Pick the changeset that
@@ -1426,11 +1427,11 @@ preferences/advanced-scripts.dtd"
(method hg-fetch)
(uri (hg-reference
(url "https://hg.mozilla.org/releases/comm-esr140")
(changeset "098a7023447feeb0b722efc9eed25f56ed3e9bc1")))
(changeset "427d792f23672fc4adbe9436ce7dddbb2bfb287a")))
(file-name (string-append "thunderbird-" %icedove-version "-checkout"))
(sha256
(base32
"1dy24va6qwhmx55paj1mcvh5rxbpdr8l5pbxk6rkgbs1kdi6rbf7"))
"09fj375a0zb5kgvw94f13997zhcj67a4g5ylpdbjzfql0chh572p"))
(patches (search-patches "icedove-observer-fix.patch"))))
;;; To regenerate, see the `format-locales' helper defined above.
@@ -1506,9 +1507,9 @@ preferences/advanced-scripts.dtd"
(define thunderbird-comm-l10n
;; The commit to use can be found in the mail/locales/l10n-changesets.json
;; file in Thunderbird's source (e.g.:
;; <https://hg-edge.mozilla.org/releases/comm-esr140/file/098a7023447feeb0b722efc9eed25f56ed3e9bc1/mail/locales/l10n-changesets.json>)
;; <https://hg-edge.mozilla.org/releases/comm-esr140/file/efb07defaa2d56105675dc1d936af581ebfd8ffa/mail/locales/l10n-changesets.json>)
;; where the hash in the URL is the changeset from thunderbird-comm-source.
(let* ((commit "938c3663efd9771a2bbdcc02d1236142424a50de")
(let* ((commit "7c86eab97e77f00ca7ed8f224d38338a3ed46693")
(revision "0")
(version (git-version %icedove-version revision commit)))
(origin
@@ -1519,7 +1520,7 @@ preferences/advanced-scripts.dtd"
(file-name (git-file-name "thunderbird-l10n" version))
(sha256
(base32
"1ncn0rfz0g3ich7h3hc6znvndydsyzj1ml8gd31hpslcnc33ydjx")))))
"1navma2gwcgbbiwcwrc5lrx2jk3qmrnrc6i8pvhb8156pz4cg5nd")))))
(define icedove-source
(let ((name (string-append "icedove-" %icedove-version)))
@@ -1542,7 +1543,7 @@ preferences/advanced-scripts.dtd"
;; Extract the base Icecat tarball, renaming its top-level
;; directory.
(invoke "tar" "--transform" (string-append "s,[^/]*," #$name ",")
"-xf" #$icecat-140.10.2-source)
"-xf" #$icecat-140.9.1-source)
(chdir #$name)
;; Merge the Thunderdbird localization data.
+2 -2
View File
@@ -706,7 +706,7 @@ files.")
(package
(inherit go-github-com-nwaples-rardecode)
(name "go-github-com-nwaples-rardecode-v2")
(version "2.2.2")
(version "2.0.0-beta.2")
(source
(origin
(method git-fetch)
@@ -715,7 +715,7 @@ files.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1i48ca45726jyhg8i1j14ikf0pc16i1gq027zlmf12l3z37vzw78"))))
(base32 "1344mxfdgs5fps6mqxk6352arrfszi33kmq394rgmqpf4394f1y7"))))
(arguments
(list
#:import-path "github.com/nwaples/rardecode/v2"))))
+11 -96
View File
@@ -493,32 +493,6 @@ originated from https://github.com/zhenjl/cityhash and
https://github.com/zentures/cityhash projects.")
(license license:expat)))
(define-public go-github-com-bramvdbogaerde-go-scp
(package
(name "go-github-com-bramvdbogaerde-go-scp")
(version "1.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bramvdbogaerde/go-scp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16rf7fzrfhqadlzcxfqi3q7dv73hjmnr4fgad33psrjan1kq5w78"))))
(build-system go-build-system)
(arguments
(list
#:tests? #f ;Tests fail, as they try to connect to a local server
#:import-path "github.com/bramvdbogaerde/go-scp"))
(propagated-inputs
(list go-golang-org-x-crypto))
(home-page "https://github.com/bramvdbogaerde/go-scp")
(synopsis "Golang scp client")
(description
"This package is a simple scp package to copy files over SSH.")
(license license:mpl2.0)))
(define-public go-github-com-btcsuite-btcd-btcec
(let ((commit "67e573d211ace594f1366b4ce9d39726c4b19bd0")
(revision "0"))
@@ -1286,34 +1260,6 @@ for Go applications. It's an alternative fork of deprecated
@url{https://github.com/mozilla-services/pkcs7}.")
(license license:expat)))
(define-public go-github-com-dromara-dongle
(package
(name "go-github-com-dromara-dongle")
(version "1.2.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dromara/dongle")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c4kiv2xk0s6lb2svdy2y38rklx4qj95asniwv3s24h69frabb6x"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/dromara/dongle"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-golang-org-x-crypto))
(home-page "https://dongle.go-pkg.com/")
(synopsis "Semantic and developer-friendly crypto package for Golang")
(description
"Package dongle is a simple, semantic and developer-friendly Golang
crypto package.")
(license license:expat)))
(define-public go-github-com-dvsekhvalnov-jose2go
(package
(name "go-github-com-dvsekhvalnov-jose2go")
@@ -1803,33 +1749,6 @@ See http://keccak.noekeon.org.")
MurmurHash} revision (aka MurmurHash3).")
(license license:bsd-3)))
(define-public go-github-com-hdevalence-ed25519consensus
(package
(name "go-github-com-hdevalence-ed25519consensus")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hdevalence/ed25519consensus")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1dmkl3hnv0h0r4apvs34jf1cz4wcj34cksiiij4p1z4kqcldwdi9"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/hdevalence/ed25519consensus"))
(propagated-inputs
(list go-filippo-io-edwards25519))
(home-page "https://github.com/hdevalence/ed25519consensus")
(synopsis "Ed25519 signature library for Golang")
(description
"This package provides an @url{https://en.wikipedia.org/wiki/EdDSA,
Ed25519} implementation with validation rules intended for consensus-critical
contexts.")
(license license:bsd-3)))
(define-public go-github-com-hiddeco-sshsig
(package
(name "go-github-com-hiddeco-sshsig")
@@ -2154,7 +2073,7 @@ the Go standard library's TLS 1.3 implementation.")
(define-public go-github-com-melbahja-goph
(package
(name "go-github-com-melbahja-goph")
(version "1.5.0")
(version "1.4.0")
(source
(origin
(method git-fetch)
@@ -2163,7 +2082,7 @@ the Go standard library's TLS 1.3 implementation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ncvs9pbjg7m8yp3h8wbhxvzvks1g06a5qcjrkw2k515m2yqhg8k"))))
(base32 "1w6sn6m3bsh60flp0fdbv70c2d1ky12mpj09100qf64w0v1d32k0"))))
(build-system go-build-system)
(arguments
(list
@@ -2960,17 +2879,15 @@ package.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/refraction-networking/utls")
(commit (string-append "v" version))))
(url "https://github.com/refraction-networking/utls")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03kgwxdm2lg28fn2w5q7ql2szsiwj2xjdf477h1g3a4a9y9j6zk0"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/refraction-networking/utls"
#:test-flags
#~(list "-skip" "TestVerifyHostname")))
`(#:import-path "github.com/refraction-networking/utls"
#:tests? #f)) ;requires internet access
(propagated-inputs
(list go-github-com-andybalholm-brotli
go-github-com-cloudflare-circl
@@ -2982,12 +2899,10 @@ package.")
go-golang-org-x-sys))
(home-page "https://github.com/refraction-networking/utls")
(synopsis "Fork of the Go standard TLS library")
(description
"uTLS is a fork of @code{crypto/tls}, which provides
@url{https://www.rfc-editor.org/rfc/rfc9849.html, ClientHello} fingerprinting
resistance, low-level access to handshake, fake session tickets and some other
features. Handshake is still performed by @code{crypto/tls}, this library
merely changes ClientHello part of it and provides low-level access.")
(description "uTLS is a fork of crypto/tls, which provides ClientHello
fingerprinting resistance, low-level access to handshake, fake session tickets
and some other features. Handshake is still performed by crypto/tls, this
library merely changes ClientHello part of it and provides low-level access.")
(license license:bsd-3)))
(define-public go-github-com-rfjakob-eme
@@ -3985,7 +3900,7 @@ is an extremely fast non-cryptographic hash algorithm.")
;; XXX: Source only, to break cycle with
;; go-github-com-zmap-zcrypto. Addintional inputs requaired only to
;; build CLI:
;;
;;
;; - github.com/sirupsen/logrus
;; - github.com/zmap/zcrypto
;; - github.com/zmap/zlint/v3
+25 -515
View File
@@ -2288,7 +2288,7 @@ functions.")
(define-public go-github-com-aws-aws-sdk-go-v2
(package
(name "go-github-com-aws-aws-sdk-go-v2")
(version "1.41.7")
(version "1.41.1")
(source
(origin
(method git-fetch)
@@ -2297,14 +2297,27 @@ functions.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1j68835z0dgzxwf3m4gfir50wi6r30yx3g78y63x55sdg2imbhsk"))
(base32 "04cv6g96hhmjl6snql6a909grq4yxyjk95a3dzk6mpihvg79q47p"))
;; XXX: It contains a lot of sub packages defined with go.mod, consider
;; to pack them separately.
(modules '((guix build utils)))
(snippet
#~(begin
;; All of the submodules prefixed with
;; "github.com/aws/aws-sdk-go-v2" and contain go.mod file.
;; Submodules with their own go.mod files and packaged separately:
;;
;; - github.com/aws/aws-sdk-go-v2/config
;; - github.com/aws/aws-sdk-go-v2/credentials
;; - github.com/aws/aws-sdk-go-v2/feature/ec2/imds
;; - github.com/aws/aws-sdk-go-v2/feature/s3/manager
;; - github.com/aws/aws-sdk-go-v2/internal/configsources
;; - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2
;; - github.com/aws/aws-sdk-go-v2/service/iam
;; - github.com/aws/aws-sdk-go-v2/service/kms
;; - github.com/aws/aws-sdk-go-v2/service/s3
;; - github.com/aws/aws-sdk-go-v2/service/sqs
;; - github.com/aws/aws-sdk-go-v2/service/sso
;; - github.com/aws/aws-sdk-go-v2/service/ssoidc
;; - github.com/aws/aws-sdk-go-v2/service/sts
(for-each delete-file-recursively
(list "config"
"credentials"
@@ -2312,12 +2325,10 @@ functions.")
"feature/s3/manager"
"internal/configsources"
"internal/endpoints/v2"
"service/cloudwatchlogs"
"service/iam"
"service/kms"
"service/s3"
"service/sqs"
"service/ssm"
"service/sso"
"service/ssooidc"
"service/sts"))))))
@@ -2338,7 +2349,7 @@ functions.")
(define-public go-github-com-aws-aws-sdk-go-v2-config
(package
(name "go-github-com-aws-aws-sdk-go-v2-config")
(version "1.32.17")
(version "1.32.7")
(source
(origin
(method git-fetch)
@@ -2348,7 +2359,7 @@ functions.")
#:subdir "config"))))
(file-name (git-file-name name version))
(sha256
(base32 "1j68835z0dgzxwf3m4gfir50wi6r30yx3g78y63x55sdg2imbhsk"))
(base32 "04cv6g96hhmjl6snql6a909grq4yxyjk95a3dzk6mpihvg79q47p"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
@@ -2607,50 +2618,6 @@ configuration sources in AWS.")
structured records.")
(license license:asl2.0)))
(define-public go-github-com-aws-aws-sdk-go-v2-service-cloudwatchlogs
(package
(name "go-github-com-aws-aws-sdk-go-v2-service-cloudwatchlogs")
(version "1.66.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aws/aws-sdk-go-v2")
(commit (go-version->git-ref version
#:subdir "service/cloudwatchlogs"))))
(file-name (git-file-name name version))
(sha256
(base32 "133768fizkn8hp0xrf90bh64y14gxzj45zfa1711igwafijwlvnl"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
(snippet
#~(begin
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "service" "cloudwatchlogs")
(delete-all-but "." "service")))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs"
#:unpack-path "github.com/aws/aws-sdk-go-v2"))
(propagated-inputs
(list go-github-com-aws-aws-sdk-go-v2
go-github-com-aws-aws-sdk-go-v2-internal-configsources
go-github-com-aws-aws-sdk-go-v2-internal-endpoints-v2
go-github-com-aws-smithy-go))
(home-page "https://github.com/aws/aws-sdk-go-v2")
(synopsis "AWS SDK for Go v2 - CloudWatch Logs module")
(description
"This package provides the API client, operations, and parameter types
for Amazon CloudWatch Logs.")
(license license:asl2.0)))
(define-public go-github-com-aws-aws-sdk-go-v2-service-kms
(package
(name "go-github-com-aws-aws-sdk-go-v2-service-kms")
@@ -2825,50 +2792,6 @@ parameter types for AWS Secrets Manager.")
Amazon Simple Queue Service.")
(license license:asl2.0)))
(define-public go-github-com-aws-aws-sdk-go-v2-service-ssm
(package
(name "go-github-com-aws-aws-sdk-go-v2-service-ssm")
(version "1.67.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aws/aws-sdk-go-v2")
(commit (go-version->git-ref version
#:subdir "service/ssm"))))
(file-name (git-file-name name version))
(sha256
(base32 "055i6c41zppxhf5kgxky7a8nc1wzsaxd6vbdyv0wqqbg8zbw5fjb"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
(snippet
#~(begin
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "service" "ssm")
(delete-all-but "." "service")))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/aws/aws-sdk-go-v2/service/ssm"
#:unpack-path "github.com/aws/aws-sdk-go-v2"))
(propagated-inputs
(list go-github-com-aws-aws-sdk-go-v2
go-github-com-aws-aws-sdk-go-v2-internal-configsources
go-github-com-aws-aws-sdk-go-v2-internal-endpoints-v2
go-github-com-aws-smithy-go))
(home-page "https://github.com/aws/aws-sdk-go-v2")
(synopsis "AWS Golang SDK for Simple Systems Manager")
(description
"Package ssm provides the API client, operations, and parameter types for
Amazon Simple Systems Manager.")
(license license:asl2.0)))
(define-public go-github-com-aws-aws-sdk-go-v2-service-sso
(package
(name "go-github-com-aws-aws-sdk-go-v2-service-sso")
@@ -3048,7 +2971,7 @@ signing.")
(define-public go-github-com-aws-smithy-go-metrics-smithyotelmetrics
(package
(name "go-github-com-aws-smithy-go-metrics-smithyotelmetrics")
(version "1.0.15")
(version "1.0.2")
(source
(origin
(method git-fetch)
@@ -3058,29 +2981,15 @@ signing.")
#:subdir "metrics/smithyotelmetrics"))))
(file-name (git-file-name name version))
(sha256
(base32 "15f2j863rb9cp4927sn48gsccnn6cm6cn8zjc8mycas4fw07lswr"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
(snippet
#~(begin
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "metrics" "smithyotelmetrics")
(delete-all-but "." "metrics")))))
(base32 "16jbv7cyj85048f4kcrib8k2yif165sc099h0aklal5dwlf85xcg"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/aws/smithy-go/metrics/smithyotelmetrics"
#:unpack-path "github.com/aws/smithy-go"))
(propagated-inputs
(list go-github-com-aws-smithy-go
go-go-opentelemetry-io-otel
go-go-opentelemetry-io-otel-metric))
(list go-go-opentelemetry-io-otel
go-go-opentelemetry-io-otel)) ; for go.opentelemetry.io/otel/metric
(home-page "https://github.com/aws/smithy-go")
(synopsis "AWS Smithy OTEL metrics adapter")
(description
@@ -3183,35 +3092,6 @@ the OTEL Go SDK.")
"This package provides a minimal templating engine for Golang.")
(license license:expat)))
(define-public go-github-com-azure-azure-pipeline-go
(package
(name "go-github-com-azure-azure-pipeline-go")
(version "0.2.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Azure/azure-pipeline-go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "154qwr7v1q2wjp263jhkvrygi728q568zc930h3fxp75v32laqwb"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/Azure/azure-pipeline-go"))
(propagated-inputs
(list go-github-com-mattn-go-ieproxy
go-github-com-pkg-errors))
(home-page "https://github.com/Azure/azure-pipeline-go")
(synopsis "HTTP request/response middleware pipeline for Go")
(description
"Package pipeline implements an HTTP request/response middleware pipeline
whose policy objects mutate an HTTP request's URL, query parameters, and/or
headers before the request is sent over the wire.")
(license license:expat)))
(define-public go-github-com-azure-azure-sdk-for-go-sdk-azcore
(package
(name "go-github-com-azure-azure-sdk-for-go-sdk-azcore")
@@ -3544,40 +3424,6 @@ Servers with Azure File Sync for fast access near where the data is being
used.")
(license license:expat)))
(define-public go-github-com-azure-azure-storage-blob-go
(package
(name "go-github-com-azure-azure-storage-blob-go")
(version "0.0.0-20180706173141-f0a732ea9441")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Azure/azure-storage-blob-go")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "1y3ql7208a2h2pf3zrd2qrqpyjda2mpf78cw9jyvi33211cqcdky"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:tests? #f
#:import-path "github.com/Azure/azure-storage-blob-go"))
(native-inputs
(list go-gopkg-in-check-v1))
(propagated-inputs
(list go-github-com-google-uuid
go-github-com-azure-azure-pipeline-go
;; TODO: Complete packaging.
#;go-github-com-azure-go-autorest-autorest-adal))
(home-page "https://github.com/Azure/azure-storage-blob-go")
(synopsis "Microsoft Azure Blob Storage Library for Go")
(description
"The Microsoft Azure Storage SDK for Go to build applications that takes
advantage of Azure's scalable cloud storage.")
(license license:expat)))
(define-public go-github-com-azure-go-ntlmssp
(package
(name "go-github-com-azure-go-ntlmssp")
@@ -3887,43 +3733,6 @@ differentiate between installs of Mozilla software in @code{installs.ini} and
@code{profiles.ini}.")
(license license:expat)))
(define-public go-github-com-bradfitz-go-tool-cache
(package
(name "go-github-com-bradfitz-go-tool-cache")
(version "0.0.0-20260315044010-9fc622d67f65")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bradfitz/go-tool-cache")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "1qzjh8wglknfhik4vpksx4ya5kci818q6mvny9fjqcgpaywj0v15"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/bradfitz/go-tool-cache"
#:build-flags #~(list "-tags=libsqlite3")
#:test-flags #~(list "-tags=libsqlite3")))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list go-github-com-bradfitz-parentdeath
go-github-com-go-jose-go-jose-v4
go-github-com-golang-jwt-jwt-v5
go-github-com-pierrec-lz4-v4
go-github-com-prometheus-client-golang
go-github-com-prometheus-client-model
go-modernc-org-sqlite))
(home-page "https://github.com/bradfitz/go-tool-cache")
(synopsis "Share Go test caching across network")
(description
"This package allows a user to share their Go build cache across the
network,using GOCACHEPROG.")
(license license:bsd-3)))
(define-public go-github-com-brianvoe-gofakeit-v6
(package
(name "go-github-com-brianvoe-gofakeit-v6")
@@ -4538,116 +4347,6 @@ OAuth authorization against a server, typically @code{GitHub.com}.")
transient error handling.")
(license license:bsd-2)))
(define-public go-github-com-cloudflare-cfssl
(package
(name "go-github-com-cloudflare-cfssl")
(version "1.6.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cloudflare/cfssl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rs1mn6ddylcv9kfjjvs9aghwz4r2i22f1ksfnv2q9jbmfzykk2x"))
(modules '((guix build utils)))
(snippet #~(begin (delete-file-recursively "vendor")))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/cloudflare/cfssl"
#:unpack-path "github.com/cloudflare/cfssl"
#:test-subdirs
#~(list "api/..."
"auth/..."
;;"bundle/..."
"certinfo/..."
"certdb/..."
"cli/..."
"config/..."
"crl/..."
"crypto/..."
"csr/..."
"errors/..."
"helpers/..."
"info/..."
"initca/..."
"log/..."
"multiroot/..."
"ocsp/..."
"revoke/..."
;; "scan/..."
"selfsign/..."
"signer/..."
"transport/..."
"ubiquity/..."
"whitelist/...")
#:test-flags
#~(list "-vet=off"
"-skip" (string-join
;; panic: attempt to write a readonly database [recovered]
(list "TestSqliteTrivial"
"TestRevokeMain"
"TestSQLite"
"TestParseSerialNumber"
"TestSignerDBPersistence"
"TestInvalidRevocation"
"TestCRLGeneration"
"TestInsertValidCertificate"
"TestInsertMissingAKI"
"TestInsertMissingSerial"
"TestInsertMissingExpiry"
"TestInsertMissingPEM"
"TestInsertInvalidSerial"
"TestInsertInvalidAKI"
"TestInsertInvalidStatus"
"TestInsertInvalidPEM"
"TestInsertInvalidExpiry"
"TestInsertWrongSerial"
"TestInsertWrongAKI"
"TestInsertWrongExpiry"
"TestInsertRevokedCertificate"
"TestRevocation"
"TestRevokeExpiry"
"TestOCSPGeneration"
"TestOCSPGeneration"
;; exec: "cfssl": executable file not found in $PATH
"TestStartCFSSLServer"
"TestCreateCertificateChain"
"TestCreateSelfSignedCert"
"TestSignerWithDB"
"TestSqliteRealResponse"
"TestOCSPRefreshMain"
;; requires network
"TestCachedCRLSet"
"TestLdap"
"TestGood"
"TestLint")
"|"))))
(propagated-inputs
(list go-github-com-cloudflare-backoff
go-github-com-cloudflare-redoctober
go-github-com-go-sql-driver-mysql
go-github-com-google-certificate-transparency-go
go-github-com-jmhodges-clock
go-github-com-jmoiron-sqlx
go-github-com-kisielk-sqlstruct
go-github-com-lib-pq
go-github-com-mattn-go-sqlite3
go-github-com-prometheus-client-golang
go-github-com-zmap-zcrypto
go-github-com-zmap-zlint-v3
go-golang-org-x-crypto))
(home-page "https://github.com/cloudflare/cfssl")
(synopsis "Cloudflare's PKI and TLS toolkit")
(description
"This package provides the source code of CloudFlare's PKI/TLS swiss army knife.
It is both a command line tool and an HTTP API server for signing, verifying, and
bundling TLS certificates.")
(license license:bsd-2)))
(define-public go-github-com-cloudinary-cloudinary-go-v2
(package
(name "go-github-com-cloudinary-cloudinary-go-v2")
@@ -4965,7 +4664,7 @@ it mimics the functionality and signatures of the standard `os` package.")
(define-public go-github-com-containerd-containerd-api
(package
(name "go-github-com-containerd-containerd-api")
(version "1.8.0")
(version "1.9.0")
(source
(origin
(method git-fetch)
@@ -4975,7 +4674,7 @@ it mimics the functionality and signatures of the standard `os` package.")
#:subdir "api"))))
(file-name (git-file-name name version))
(sha256
(base32 "0pmcgi5jdcf0cx6z6qlppzqqwf6fhglfxd4sdr00wgbhvhfzchm3"))
(base32 "06pl08p1f86z70hy9si5h7p2bgassqjsy625pvzxazxix35ggq6x"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
@@ -7283,36 +6982,6 @@ Encryption, JSON Web Signature, and JSON Web Token standards.")
(list
#:import-path "github.com/go-jose/go-jose/v4"))))
(define-public go-github-com-go-json-experiment-json
(package
(name "go-github-com-go-json-experiment-json")
(version "0.0.0-20251027170946-4849db3c2f7e")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-json-experiment/json")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "02baiz4vy02zr4319mr1k8s85zz4x418kh7bddg2k82h2k6qy5gf"))))
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:test-flags
#~(list "-skip" "TestSynctestMarshal")
#:import-path "github.com/go-json-experiment/json"))
(home-page "https://github.com/go-json-experiment/json")
(synopsis "JSON serialization in Go")
(description
"This package implements semantic processing of JSON as specified in
@url{https://rfc-editor.org/rfc/rfc8259.html, RFC 8259}. JSON is a simple
data interchange format that can represent primitive data types such as
booleans, strings, and numbers, in addition to structured data types such as
objects and arrays.")
(license license:bsd-3)))
(define-public go-github-com-go-ldap-ldap-v3
(package
(name "go-github-com-go-ldap-ldap-v3")
@@ -7922,32 +7591,6 @@ for web automation and scraping, providing a simple API to control Chrome or
Chromium browsers programmatically.")
(license license:expat)))
(define-public go-github-com-go-sourcemap-sourcemap
(package
(name "go-github-com-go-sourcemap-sourcemap")
(version "2.1.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-sourcemap/sourcemap")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "11scr3yyhdinlx43k5lzyv215181d477ki74q9k9lnnff3w0jq40"))))
(build-system go-build-system)
(arguments
(list
#:tests? #f ; A test tries to download jquery.
#:import-path "github.com/go-sourcemap/sourcemap"))
(home-page "https://github.com/go-sourcemap/sourcemap")
(synopsis "Source maps consumer for Golang")
(description
"This package provides a consumer/parser for JavaScript source maps that
allows Go programs to map minified JavaScript code locations back to their
original source file locations, line numbers, and function names.")
(license license:bsd-2)))
(define-public go-github-com-go-webauthn-webauthn
(package
(name "go-github-com-go-webauthn-webauthn")
@@ -10122,37 +9765,6 @@ tolerated by attempting to communicate to potentially dead nodes through
multiple routes.")
(license license:mpl2.0)))
(define-public go-github-com-hashicorp-raft
(package
(name "go-github-com-hashicorp-raft")
(version "1.7.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hashicorp/raft")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yynmxqqc98vz3gfckky9wz0r9a4rw0mpdhw8w5nzj272wl6rjxl"))))
(build-system go-build-system)
(arguments
(list
#:tests? #f ;Tests require previous version of raft
#:import-path "github.com/hashicorp/raft"))
(native-inputs (list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-hashicorp-go-msgpack-v2
go-github-com-hashicorp-go-metrics
go-github-com-hashicorp-go-hclog))
(home-page "https://github.com/hashicorp/raft")
(synopsis "Golang implementation of the Raft consensus protocol")
(description
"This package provides a Golang implementation of the Raft Protocol,
that manages a replicated log and can be used to manage replicated state
machines.")
(license license:mpl2.0)))
(define-public go-github-com-hashicorp-serf
(package
(name "go-github-com-hashicorp-serf")
@@ -18099,32 +17711,6 @@ StatHat} account.")
REST APIs.")
(license license:expat)))
(define-public go-github-com-studio-b12-gowebdav
(package
(name "go-github-com-studio-b12-gowebdav")
(version "0.12.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/studio-b12/gowebdav")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0wa69g86vm61xr7kxvj6v6902h39xbdakkwk8z6lv883vm7mh2x4"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/studio-b12/gowebdav"))
(propagated-inputs
(list go-golang-org-x-net))
(home-page "https://github.com/studio-b12/gowebdav")
(synopsis "WebDAV client library in Go")
(description
"This package is a @code{WebDAV} client library with a command line tool
included.")
(license license:bsd-3)))
(define-public go-github-com-swaggo-echo-swagger
(package
(name "go-github-com-swaggo-echo-swagger")
@@ -18518,37 +18104,6 @@ side of the connection, using various OS-specific facilities.")
Tailscale for access control.")
(license license:bsd-3)))
(define-public go-github-com-tailscale-xnet
(package
(name "go-github-com-tailscale-xnet")
(version "0.0.0-20240729143630-8497ac4dab2e")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tailscale/xnet")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rca6xkmkf8ax50dgb165xm0kd20r39vp3xklfc15pfwachj9hw5"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:test-flags #~(list "-vet=off")
#:import-path "github.com/tailscale/xnet"))
(propagated-inputs
(list go-golang-org-x-crypto
go-golang-org-x-sys
go-golang-org-x-term
go-golang-org-x-text))
(home-page "https://github.com/tailscale/xnet")
(synopsis "Tailscale's fork of golang.org/x/net")
(description
"This package is a temporary dev fork of @code{golang.org/x/net} for use in
Tailscale.")
(license license:bsd-3)))
(define-public go-github-com-tdewolff-minify-v2
(package
(name "go-github-com-tdewolff-minify-v2")
@@ -23932,37 +23487,6 @@ feature set and features are added on as the need arises.")
;;; Executables:
;;;
(define-public cfssl
(package/inherit go-github-com-cloudflare-cfssl
(name "cfssl")
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #t) #f)
((#:skip-build? _ #t) #f)
((#:install-source? _ #t) #f)
((#:import-path _) "github.com/cloudflare/cfssl/cmd/...")))
(native-inputs
(package-propagated-inputs go-github-com-cloudflare-cfssl))
(propagated-inputs '())
(description
"This package provides Cloudflare's PKI and TLS toolkit which includes
the following commands:
@itemize
@item @command{cfssl-bundle} - create a certificate bundle that contains the
client cer
@item @command{cfssl-certinfo} - output certinfo about the given cert
@item @command{cfssl-newkey} - generate a new key and CSR
@item @command{cfssl-scan} - scan a host for issues
@item @command{cfssl} - command line tool to issue/sign/bundle client
certificate
@item @command{cfssljson} - splits out JSON with cert, csr, and key fields to
separate files
@item @command{mkbundle} - command line tool for building certificate pool
bundles
@item @command{multirootca} - program, which is a certificate authority server
that can use multiple signing keys
@end itemize")))
(define-public lyrebird
(package
(name "lyrebird")
@@ -24134,20 +23658,6 @@ go-github-com-tdewolff-minify-v2 source.")))
the TLS @acronym{SNI, Server Name Indication} of the TLS handshake. It
carries no encryption keys and cannot decode the traffic that it proxies.")))
(define-public go-tool-cache
(package/inherit go-github-com-bradfitz-go-tool-cache
(name "go-tool-cache")
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #t) #f)
((#:skip-build? _ #t) #f)
((#:install-source? _ #t) #f)
((#:import-path _) "github.com/bradfitz/go-tool-cache/cmd/...")
((#:unpack-path _ "") "github.com/bradfitz/go-tool-cache")))
(native-inputs
(package-propagated-inputs go-github-com-bradfitz-go-tool-cache))
(propagated-inputs '())))
(define-public menshen
(package/inherit go-0xacab-org-leap-menshen
(name "menshen")
File diff suppressed because it is too large Load Diff
+5 -5
View File
@@ -1075,7 +1075,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.24)
(name "go")
(version "1.25.10")
(version "1.25.8")
(source
(origin
(method git-fetch)
@@ -1084,7 +1084,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1jy7pfpmd9biqrkpys5f4mw73lh7zx9545z0qsml2nn4g69awl48"))))
(base32 "0vgz80mrxlkljr8ynficwvshinirqxbiv2ikscf941ladbv0g604"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.24)
((#:phases phases)
@@ -1120,7 +1120,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.24)
(name "go")
(version "1.26.3")
(version "1.26.1")
(source
(origin
(method git-fetch)
@@ -1129,9 +1129,9 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16yrb9si7swc6vnxjj5ga5pvyjkab5w8z589fqml61q0rypnn6ay"))))
(base32 "1blfc89jxlr7n35j77i523k8rsxvz16f44qzd0h65c940zrrmf77"))))
(arguments
(substitute-keyword-arguments arguments
(substitute-keyword-arguments (package-arguments go-1.24)
((#:phases phases)
#~(modify-phases #$phases
;; There is no real discussion on the issue among humans, a lot
+1 -1
View File
@@ -927,7 +927,7 @@ transformed into common image formats for display or printing.")
(inputs
(list boost-1.83
cairomm-1.14
cgal-5
cgal
expat
gmp
gtk+
+17 -44
View File
@@ -628,17 +628,9 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
#:configure-flags
(list
"-DEMBREE_ISPC_SUPPORT=OFF"
,@(cond
((target-x86-64?)
;; They SAY that that's the default--but it isn't
;; (that would be AVX512--and that segfaults GCC (!)).
`("-DEMBREE_MAX_ISA=AVX2"))
((target-aarch64?)
`("-DEMBREE_ARM=ON"
"-DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF"
"-DCMAKE_CXX_FLAGS=-flax-vector-conversions"))
(else
'())))))
;; They SAY that that's the default--but it isn't
;; (that would be AVX512--and that segfaults GCC (!)).
"-DEMBREE_MAX_ISA=AVX2")))
(inputs
(list glfw onetbb))
(home-page "https://www.embree.org/")
@@ -647,16 +639,13 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
"Embree is a collection of high-performance ray tracing kernels.
Embree is meant to increase performance of photo-realistic rendering
applications.")
;; From the README: Embree requires at least an x86 CPU with support for
;; SSE2 or an Apple M1 CPU.
(supported-systems '("x86_64-linux" "aarch64-linux"))
(license license:asl2.0)))
(define-public embree-3
(package
(inherit embree)
(name "embree")
(version "3.13.5")
(version "3.3.15")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1058,29 +1047,28 @@ output, ambient occlusion lighting, and support for various triangle mesh and
volumetric texture formats beneficial for molecular visualization.")
(license license:bsd-3)))
(define-public cgal-5
(define-public cgal
(package
(name "cgal")
(version "5.6.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CGAL/cgal")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rym0xi4kh4nv2pdj178gygkalvrwgx38v13b0zm3jl0v1af9bhv"))))
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/CGAL/cgal/releases/download/v" version
"/CGAL-" version ".tar.xz"))
(sha256
(base32
"0dsqvnyd2ic50pr28gfz34bpnyx3i2csf1rikmc661hywdz5xcfd"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
;; Prevent two mostly-duplicate directories. Use Guix's versioned
;; default for licences instead of CGAL's unversioned one.
(list (string-append "-DCGAL_INSTALL_DOC_DIR=share/doc/"
,name "-"
,version))
#:tests? #f)) ;no test target
(inputs (list mpfr gmp boost))
,name "-" ,version))
#:tests? #f)) ; no test target
(inputs
(list mpfr gmp boost))
(home-page "https://www.cgal.org/")
(synopsis "Computational geometry algorithms library")
(description
@@ -1097,21 +1085,6 @@ many more.")
;; permissive licenses.
(license license:gpl3+)))
(define-public cgal
(package
(inherit cgal-5)
(name "cgal")
(version "6.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CGAL/cgal")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0cbrqa9h8vx31fw0rp7fn00ndmcgip0xmcc303ycjjc8rirnsz9j"))))))
(define-public geomcpp
;; XXX: No releases.
(let ((commit "730b3d35bc4fcd5f68764239682d936bae192811")
+6 -56
View File
@@ -340,49 +340,6 @@ more.")
currently does not do much, but it might in the future.")
(license license:gpl3+)))
(define-public guile-arguments
(package
(name "guile-arguments")
(version "0.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/fishinthecalculator/arguments")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1r71l6099afk017a3ck5mpp2xhb3bm45s6nga24lhby52rxbkayl"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'generate-api-reference
(lambda _
(invoke "scripts/generate_api_reference.sh")))
(add-after 'build 'build-html-manual
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke `("make" "html" ,@make-flags))))
(add-after 'install 'install-html-manual
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke `("make" "install-html" ,@make-flags)))))))
(native-inputs
(list autoconf
automake
guile-documenta
pkg-config
texinfo))
(inputs (list guile-3.0))
(synopsis "Parse command line arguments into structured objects")
(description "This package provides a Guile library to parse command line
arguments into structured objects. It allows declaring arguments through a
small @acronym{DSL, Domain Specific Language}, then call a procedure to parse the
command line into a structured object.")
(home-page "https://codeberg.org/fishinthecalculator/arguments")
(license license:gpl3+)))
(define-public guile-oauth
(package
(name "guile-oauth")
@@ -3069,12 +3026,12 @@ users and in some situations.")
(define-public guile-g-golf
(package
(name "guile-g-golf")
(version "0.8.7")
(version "0.8.3")
(source
(g-golf-source #:version version
#:hash
(content-hash
"0lwwr78fwdcap7606r5rszw6369lsq876zmr9mdsw37d4nimm7xi")))
"1cbvb42dy94612m8040y3km9941jhi17mf78yc4pavlala8x6937")))
(build-system gnu-build-system)
(arguments
(list
@@ -3168,12 +3125,6 @@ object-oriented programming system, GOOPS.")
(package
(inherit guile-g-golf)
(name "g-golf-gtk-4-examples")
(version "0.8.3")
(source
(g-golf-source #:version version
#:hash
(content-hash
"1cbvb42dy94612m8040y3km9941jhi17mf78yc4pavlala8x6937")))
(arguments
(list
#:modules `(((guix build guile-build-system)
@@ -4692,14 +4643,14 @@ serializing continuations or delimited continuations.")
(define-public guile-hoot
(package
(name "guile-hoot")
(version "0.9.0")
(version "0.8.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://files.spritely.institute/releases"
"/guile-hoot/guile-hoot-" version ".tar.gz"))
(sha256
(base32 "1gfi2wggvsfsmqnxc4k27ir7vz6xkc7fwcjzsl72n118skig94pj"))))
(base32 "0swlwq2h6bibaqa28gqwi318izqagzaiw2jbb1afr4sb4chjb0p9"))))
(build-system gnu-build-system)
(arguments
(list
@@ -6126,7 +6077,7 @@ implementation in itself.")
(define-public guile-uuid
(package
(name "guile-uuid")
(version "0.9.1")
(version "0.9.0")
(source
(origin
(method git-fetch)
@@ -6135,7 +6086,7 @@ implementation in itself.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01gza8zsjmazc02p9vm7pgidvfzdi786asc7c4r8cnjxdn3sigvd"))))
(base32 "0g508aajkyi513wbhm1rhs03ilnb701lwlrvppkmc0vynydlk9ws"))))
(arguments
(list
#:phases
@@ -6144,7 +6095,6 @@ implementation in itself.")
(lambda _
(invoke "guile" "--no-auto-compile" "run-tests.scm")
(delete-file "run-tests.scm")
(delete-file "guix.scm")
(delete-file-recursively "tests")))
(add-after 'build 'install-info-documentation
(lambda _
+7 -7
View File
@@ -467,15 +467,15 @@ without requiring the source code to be rewritten.")
(native-search-paths
(list (search-path-specification
(variable "GUILE_LOAD_PATH")
(files '("share/guile/site/3.0")))
(variable "GUILE_LOAD_PATH")
(files '("share/guile/site/3.0")))
(search-path-specification
(variable "GUILE_LOAD_COMPILED_PATH")
(files '("lib/guile/3.0/site-ccache"
"share/guile/site/3.0")))
(variable "GUILE_LOAD_COMPILED_PATH")
(files '("lib/guile/3.0/site-ccache"
"share/guile/site/3.0")))
(search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files '("lib/guile/3.0/extensions")))))))
(variable "GUILE_EXTENSIONS_PATH")
(files '("lib/guile/3.0/extensions")))))))
(define-public guile-3.0.11
(package
+100 -103
View File
@@ -24,7 +24,6 @@
;;; Copyright © 2025 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2025 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -162,7 +161,7 @@ sets, and tools to deal with register databases.")
(define-public brillo
(package
(name "brillo")
(version "1.4.13")
(version "1.4.12")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -170,7 +169,7 @@ sets, and tools to deal with register databases.")
(commit (string-append "v" version))))
(sha256
(base32
"0qq2c2l9wyrh2kz1adicmizymln1878hynnixhyck7j5f4rk45gq"))
"16n4j45mfhd1zxwbpl8342vyqf8rj3plhcl90xp02m46hn58v8bl"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -222,94 +221,92 @@ Notable features include:
(license (list license:bsd-0 license:gpl3+))))
(define-public deskflow
(let ((commit "ef96c2c36228f853e266b9f6d80076ac8683ff02")
(revision "0"))
(package
(name "deskflow")
(version (git-version "1.26.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/deskflow/deskflow")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "05sijkk74dq9hr7j8q2wms7zdf05p15x4627nvhqdazxwdv0r03l"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DCMAKE_SKIP_RPATH=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-files
(lambda _
(substitute* "deploy/linux/deploy.cmake"
(("message.FATAL_ERROR.*os-release.*")
"set(RELEASE_FILE_CONTENTS \"\")\n"))
(substitute* "src/lib/deskflow/unix/AppUtilUnix.cpp"
(("/usr/share/X11/xkb/rules/evdev.xml")
(string-append #$(this-package-input "xkeyboard-config")
"/share/X11/xkb/rules/evdev.xml")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "QT_QPA_PLATFORM" "offscreen")
;; From the project GitHub actions: "Integration tests are
;; flakey by nature, make them optional". See:
;; <.github/workflows/continuous-integration.yml>.
(invoke "./bin/legacytests"))))
(add-after 'install 'wrap-executable
(lambda _
(let ((qtbase #$(this-package-input "qtbase")))
(wrap-program (string-append #$output "/bin/deskflow")
`("QT_QPA_PLATFORM_PLUGIN_PATH" ":" =
(,(string-append qtbase "/lib/qt6/plugins/platforms"))))))))))
(native-inputs
(list doxygen
googletest
sysprof
vulkan-headers
coreutils
help2man
pkg-config))
(inputs
(list bash-minimal
cli11
gdk-pixbuf
libei
libportal
libx11
libxi
libxinerama
libxkbcommon
libxkbfile
libxrandr
libxtst
libsm
libice
openssl
pugixml
python
qtbase
qtsvg
qttranslations
qttools
qtwayland
tomlplusplus
wayland
wayland-protocols
xkeyboard-config))
(home-page "https://deskflow.org/")
(synopsis "Share a single keyboard and mouse between multiple computers")
(description
"Deskflow is a keyboard and mouse sharing app. Use the keyboard,
(package
(name "deskflow")
(version "1.25.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/deskflow/deskflow")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fd2pasc8l0rb9k2f97ip69h4y8gppz1v7jik46476h477ykz7p7"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DCMAKE_SKIP_RPATH=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-files
(lambda _
(substitute* "deploy/linux/deploy.cmake"
(("message.FATAL_ERROR.*os-release.*")
"set(RELEASE_FILE_CONTENTS \"\")\n"))
(substitute* "src/lib/deskflow/unix/AppUtilUnix.cpp"
(("/usr/share/X11/xkb/rules/evdev.xml")
(string-append #$(this-package-input "xkeyboard-config")
"/share/X11/xkb/rules/evdev.xml")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "QT_QPA_PLATFORM" "offscreen")
;; From the project GitHub actions: "Integration tests are
;; flakey by nature, make them optional". See:
;; <.github/workflows/continuous-integration.yml>.
(invoke "./bin/legacytests"))))
(add-after 'install 'wrap-executable
(lambda _
(let ((qtbase #$(this-package-input "qtbase")))
(wrap-program (string-append #$output "/bin/deskflow")
`("QT_QPA_PLATFORM_PLUGIN_PATH" ":" =
(,(string-append qtbase "/lib/qt6/plugins/platforms"))))))))))
(native-inputs
(list doxygen
googletest
sysprof
vulkan-headers
coreutils
help2man
pkg-config))
(inputs
(list bash-minimal
cli11
gdk-pixbuf
libei
libportal
libx11
libxi
libxinerama
libxkbcommon
libxkbfile
libxrandr
libxtst
libsm
libice
openssl
pugixml
python
qtbase
qtsvg
qttranslations
qttools
qtwayland
tomlplusplus
wayland
wayland-protocols
xkeyboard-config))
(home-page "https://deskflow.org/")
(synopsis "Share a single keyboard and mouse between multiple computers")
(description
"Deskflow is a keyboard and mouse sharing app. Use the keyboard,
mouse,or trackpad of one computer to control nearby computers, and work
seamlessly between them. It's like a software KVM (but without the video).
TLS encryption is enabled by default. It supports Wayland clipboard
sharing.")
(license license:gpl2))))
(license license:gpl2)))
;; Added on 2025-09-24.
(define-deprecated-package barrier
@@ -1039,7 +1036,7 @@ specific SMBIOS tables.")
(define-public liquidctl
(package
(name "liquidctl")
(version "1.16.0")
(version "1.15.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1048,7 +1045,7 @@ specific SMBIOS tables.")
(file-name (git-file-name name version))
(sha256
(base32
"0i5865wrpkz2cbzs28ngn7qgwiifjb89h0c2qhymg3vhqhywpprl"))))
"1cj4ag6h08clklqg63wpw1vvxfjx37a7ib081dd1z5bl0580zxl9"))))
(build-system pyproject-build-system)
(arguments
(list #:phases
@@ -1382,7 +1379,7 @@ Features:
(define-public wavemon
(package
(name "wavemon")
(version "0.9.7")
(version "0.9.4")
(source
(origin
(method git-fetch)
@@ -1391,16 +1388,16 @@ Features:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0f2x433jqf2469ybdziq50ggqbk3s4mi2i8s997b9lbcvj3nbdrw"))))
(base32 "0s3yz15vzx90fxyb8bgryksn0cr2gpz9inbcx4qjrgs7zfbm4pgh"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
;; Makefile.in (ab)uses $(datadir) as $(docdir). Set it to
;; Guix's standard --docdir since it's only used as such.
(string-append "datadir=" (assoc-ref %outputs "out")
"/share/doc/" #$name "-" #$version))
#:tests? #f)) ; no tests
`(#:make-flags
(list "CC=gcc"
;; Makefile.in (ab)uses $(datadir) as $(docdir). Set it to Guix's
;; standard --docdir since it's only used as such.
(string-append "datadir=" (assoc-ref %outputs "out")
"/share/doc/" ,name "-" ,version))
#:tests? #f)) ; no tests
(native-inputs
(list pkg-config))
(inputs
@@ -1594,7 +1591,7 @@ and libtss2-tcti-mssim.")
(define-public tpm2-tools
(package
(name "tpm2-tools")
(version "5.7")
(version "5.5")
(source
(origin
(method url-fetch)
@@ -1602,7 +1599,7 @@ and libtss2-tcti-mssim.")
"releases/download/" version "/"
"tpm2-tools-" version ".tar.gz"))
(sha256
(base32 "0flqf32w7nx2z26m6cf16483pm0k4bi55rbw5x7ny9bra1mx641q"))))
(base32 "08y16q92dh7frsyw0zlm3q9gsfqyls0li248s2pgsysk633lknqz"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf
@@ -1720,7 +1717,7 @@ your network, send SCPI commands, and receive responses.")
(define-public lxi-tools
(package
(name "lxi-tools")
(version "2.8")
(version "2.5")
(source
(origin
(method git-fetch)
@@ -1730,7 +1727,7 @@ your network, send SCPI commands, and receive responses.")
(file-name (git-file-name name version))
(sha256
(base32
"0xkg1hipixzg5ssfy1k6w0yjsr9qbkv1bhx2xw2pqk9plaj9jrcn"))))
"1xc99xhca386az73rpsrf3z0j7y0hrv0xcwj1dr2ahr7lhnjznqp"))))
(build-system meson-build-system)
(arguments
(list
@@ -1740,7 +1737,7 @@ your network, send SCPI commands, and receive responses.")
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "build-aux/meson/postinstall.py"
(("gtk4-update-icon-cache") (which "true"))
(("gtk-update-icon-cache") (which "true"))
(("update-desktop-database") (which "true"))))))))
(native-inputs
(list bash-completion
+1 -61
View File
@@ -4,7 +4,7 @@
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2018, 2019, 2021, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2022, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
@@ -116,66 +116,6 @@
top of CLISP.")
(license license:bsd-4))))
(define-public hugs
(package
(name "hugs")
(version "Sep2006")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/hugs/downloads/2006-09/"
name "98-plus-" version ".tar.gz"))
(sha256
(base32
"1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))
(patches (search-patches "hugs-fix-build.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-sh-n-cp
(lambda _
(substitute*
'("configure"
"libraries/configure"
"packages/time/configure"
"packages/base/configure"
"packages/X11/configure"
"packages/HGL/configure"
"packages/OpenAL/configure"
"packages/OpenGL/configure"
"packages/network/configure"
"packages/unix/configure"
"packages/Cabal/tests/HSQL/configure"
"packages/ALUT/configure"
"packages/GLUT/configure"
"packages/base/cbits/execvpe.c"
"packages/base/System/Process/Internals.hs"
"packages/Cabal/Distribution/attic"
"packages/Cabal/Distribution/Simple/Register.hs"
"packages/Cabal/Distribution/Simple/Hugs.hs"
"tools/hugs-hc"
"src/machdep.c"
"libraries/Makefile.in")
(("/bin/sh") (which "sh")))
(substitute* '("demos/Makefile.in"
"libraries/Makefile.in")
(("/bin/cp") (which "cp")))
#t)))
#:tests? #f)) ; no test target
(native-inputs (list gcc-13))
(home-page "https://www.haskell.org/hugs/")
(synopsis "Functional programming system based on Haskell 98")
(description
"Hugs 98 is an interpreter and programming environment for developing
Haskell programs. It provides an almost complete implementation of Haskell
98, which includes expression and pattern syntax, primitives for monadic I/O,
with support for simple interactive programs, handle-based I/O, and exception
handling. Hugs has a nearly complete implementation of the Haskell module
system and supports a number of advanced extensions.")
(license (license:non-copyleft "file://License"
"See License in the distribution."))))
;; This package contains lots of generated .hc files containing C code to
;; bootstrap the compiler without a Haskell compiler. The included .hc files
;; cover not just the compiler sources but also all Haskell libraries.
+2 -2
View File
@@ -173,7 +173,7 @@ chip written in platform-independent VHDL.")
(define-public open-logic
(package
(name "open-logic")
(version "4.5.0")
(version "4.4.1")
(source
(origin
(method git-fetch)
@@ -185,7 +185,7 @@ chip written in platform-independent VHDL.")
(file-name (git-file-name name version))
(sha256
(base32
"00y8lv55b8z7dd9gy7312wb08szi342xvqbahd12k14jyxhn109j"))))
"1zydrmx35s3mi35im4s4lfd9mmzdwdrnxfh9fg4d12v4ai7ijfrk"))))
(outputs
'("out" "olo"))
(properties
+117
View File
@@ -49,6 +49,123 @@
#:use-module ((guix build utils) #:select (alist-replace))
#:use-module (srfi srfi-1))
(define-public musl-cross
(let ((revision "3")
(commit "a8a66490dae7f23a2cf5e256f3a596d1ccfe1a03"))
(package
(name "musl-cross")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/GregorR/musl-cross")
(commit commit)))
(file-name "musl-cross-checkout")
(sha256
(base32
"1xvl9y017wb2qaphy9zqh3vrhm8hklr8acvzzcjc35d1jjhyl58y"))
(patches (search-patches "musl-cross-locale.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests in main project.
#:modules
((guix build utils)
(guix build gnu-build-system)
(srfi srfi-1)) ; drop
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(setenv "SHELL" "bash")
(setenv "CONFIG_SHELL" "bash")
#t))
(add-after 'unpack 'unpack-dependencies
(lambda* (#:key inputs outputs #:allow-other-keys)
(define (install-file* source-key destination-directory
destination-suffix)
(let* ((source-file (assoc-ref inputs source-key))
(source-basename (basename source-file))
(source-parts (string-split source-basename #\-))
(destination-file
(string-join (drop source-parts 1) "-")))
(copy-file source-file
(string-append destination-directory "/"
destination-file destination-suffix))))
(for-each (lambda (name)
(install-file* name "tarballs" ""))
'("binutils" "target-gcc-5" "linux-headers" "musl"))
(copy-file (string-append (assoc-ref inputs "config.sub")
"/share/automake-1.16/config.sub")
"tarballs/config.sub;hb=3d5db9ebe860")
(copy-file (string-append (assoc-ref inputs "config.sub")
"/share/automake-1.16/config.guess")
"tarballs/config.guess;hb=3d5db9ebe860")
(substitute* "config.sh"
(("^CC_BASE_PREFIX=.*")
(string-append "CC_BASE_PREFIX=" (assoc-ref outputs "out")
"/crossgcc\n")))
;; Note: Important: source/gcc-5.3.0/gcc/exec-tool.in
;; Note: Important: source/kernel-headers-3.12.6-5/tools/install.sh
;; Note: Important: move-if-change (twice)
;; Make sure that shebangs are patched after new extractions.
(substitute* "defs.sh"
(("touch \"[$]2/extracted\"")
(string-append "touch \"$2/extracted\"
for s in mkinstalldirs move-if-change compile depcomp callprocs configure \\
mkdep compile libtool-ldflags config.guess install-sh missing config.sub \\
config.rpath progtest.m4 lib-ld.m4 acx.m4 gen-fixed.sh mkheader.sh ylwrap \\
merge.sh godeps.sh lock-and-run.sh print-sysroot-suffix.sh mkconfig.sh \\
genmultilib exec-tool.in install.sh
do
find . -name $s -exec sed -i -e 's;!/bin/sh;!" (assoc-ref inputs "bash")
"/bin/sh;' '{}' ';'
find . -name $s -exec sed -i -e 's; /bin/sh; " (assoc-ref inputs "bash")
"/bin/sh;' '{}' ';'
done
" )))
#t))
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(invoke "./build.sh")))
(delete 'install))))
(native-inputs
`(("config.sub" ,automake)
("bash" ,bash)
("flex" ,flex)
("gmp" ,gmp)
("mpfr" ,mpfr)
("mpc" ,mpc)
("binutils"
,(origin
(method url-fetch)
(uri "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.27.tar.bz2")
(sha256
(base32 "125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn"))))
("target-gcc-5"
,(origin
(method url-fetch)
(uri "https://ftpmirror.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.bz2")
(sha256
(base32 "1ny4smkp5bzs3cp8ss7pl6lk8yss0d9m4av1mvdp72r1x695akxq"))))
("linux-headers"
,(origin
(method url-fetch)
(uri "http://ftp.barfooze.de/pub/sabotage/tarballs/linux-headers-4.19.88.tar.xz")
(sha256
(base32 "1srgi2nqw892jb6yd4kzacf2xzwfvzhsv2957xfh1nvbs7varwyk"))))
("musl"
,(origin
(method url-fetch)
(uri "http://www.musl-libc.org/releases/musl-1.1.24.tar.gz")
(sha256
(base32 "18r2a00k82hz0mqdvgm7crzc7305l36109c0j9yjmkxj2alcjw0k"))))))
(supported-systems (remove target-hurd? %supported-systems))
(home-page "https://github.com/osresearch/heads")
(synopsis "Cross gcc 5 toolchain")
(description "Musl-cross toolchain: binutils, gcc 5 and musl.")
(license license:isc))))
;; This package provides a "dev.cpio" file usable as a base for booting Heads.
(define-public heads-dev-cpio
(package
+2 -2
View File
@@ -414,7 +414,7 @@ much more.")
(define-public bvi
(package
(name "bvi")
(version "1.5.0")
(version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -422,7 +422,7 @@ much more.")
"/bvi-" version ".src.tar.gz"))
(sha256
(base32
"1jvldfxdpgf044hnhjhxi24a9bkbn8adl22icc8rfarv39m72h35"))))
"1wllrvs8r8bdm11sx01095j8cj4drjmw0dlkjfdkm5lnnk11dfjb"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; no check target
(inputs
+68 -4
View File
@@ -1,4 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -16,8 +19,69 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages hugs)
#:use-module (guix deprecation)
#:use-module (gnu packages haskell))
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages gcc))
;; XXX: Deprecated on <2026-05-17>.
(define-deprecated/public-alias hugs (@ (gnu packages haskell) hugs))
(define-public hugs
(package
(name "hugs")
(version "Sep2006")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/hugs/downloads/2006-09/"
name "98-plus-" version ".tar.gz"))
(sha256
(base32
"1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))
(patches (search-patches "hugs-fix-build.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-sh-n-cp
(lambda _
(substitute*
'("configure"
"libraries/configure"
"packages/time/configure"
"packages/base/configure"
"packages/X11/configure"
"packages/HGL/configure"
"packages/OpenAL/configure"
"packages/OpenGL/configure"
"packages/network/configure"
"packages/unix/configure"
"packages/Cabal/tests/HSQL/configure"
"packages/ALUT/configure"
"packages/GLUT/configure"
"packages/base/cbits/execvpe.c"
"packages/base/System/Process/Internals.hs"
"packages/Cabal/Distribution/attic"
"packages/Cabal/Distribution/Simple/Register.hs"
"packages/Cabal/Distribution/Simple/Hugs.hs"
"tools/hugs-hc"
"src/machdep.c"
"libraries/Makefile.in")
(("/bin/sh") (which "sh")))
(substitute* '("demos/Makefile.in"
"libraries/Makefile.in")
(("/bin/cp") (which "cp")))
#t)))
#:tests? #f)) ; no test target
(native-inputs (list gcc-13))
(home-page "https://www.haskell.org/hugs/")
(synopsis "Functional programming system based on Haskell 98")
(description
"Hugs 98 is an interpreter and programming environment for developing
Haskell programs. It provides an almost complete implementation of Haskell
98, which includes expression and pattern syntax, primitives for monadic I/O,
with support for simple interactive programs, handle-based I/O, and exception
handling. Hugs has a nearly complete implementation of the Haskell module
system and supports a number of advanced extensions.")
(license (non-copyleft "file://License"
"See License in the distribution."))))
+17 -136
View File
@@ -334,61 +334,6 @@ Hurd-minimal package which are needed for both glibc and GCC.")
(define %add-to-hurd-subdirs
(list "libmachdevdde" "libddekit"))
(define-public libacpica
(let ((commit "0c3593e27947ef0734a070143caadaed28438354")
(revision "0"))
(package
(name "libacpica")
(home-page "https://salsa.debian.org/hurd-team/libacpica")
(version (git-version "20220331" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(sha256
(base32
"0hyfg4w2ch6a833kkxjcsddqq2712gqlbvrl6zv5yzvallpfzh7d"))
(file-name (git-file-name name version))))
(arguments
(list
#:tests? #f ;no tests
#:modules '((srfi srfi-26)
(ice-9 rdelim)
(guix build utils)
(guix build gnu-build-system))
#:make-flags #~`(,(string-append "CC=" #$(cc-for-target))
,(string-append "PREFIX=" #$output))
;; As we are using the Debian package as upstream, we follow their
;; build:
;; * apply patches in debian/patches taken from the
;; debian/patches/series file
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'apply-patches
(lambda* (#:key target #:allow-other-keys)
(let* ((patch-directory "debian/patches/")
(series (string-append patch-directory "series"))
(text (with-input-from-file series read-string))
(lines (string-split (string-trim-right text) #\newline))
(patches (filter (negate (cute string-prefix? "#" <>))
lines))
(patch-files (map
(cute string-append patch-directory <>)
patches)))
(for-each
(cute invoke "patch" "--force" "-p1" "-i" <>)
patch-files)))))))
(inputs (list libirqhelp
libpciaccess))
(build-system gnu-build-system)
(supported-systems %hurd-systems)
(synopsis "ACPICA as a library")
(description "libacpica provides ACPICA as a library.")
(license (list bsd-3
gpl2)))))
(define-public hurd
(package
(name "hurd")
@@ -459,73 +404,17 @@ Hurd-minimal package which are needed for both glibc and GCC.")
# Remove this script when Linux and the Hurd have xattr patches.
PATH=@PATH@
# XXX Work around a race condition (probably in the root translator).
for i in $(seq 100000); do :; done
fsck --yes --force /
fsysopts / --writable
# This is necessary to make stat / return the correct device ids.
# As / should be read-only at this point, this should be a no-op.
fsysopts / --update --readonly
if test -f /etc/fstab; then
fsck --all --preen --verbose
else
echo \"No /etc/fstab found, ignoring...\"
fi
case $? in
# Successful completion
0)
fsysopts / --writable
;;
# Filesystem modified (but ok now)
1)
fsysopts / --writable
;;
# Filesystem modified, filesystem should be restarted
# Ideally we would only restart the filesystem
2 | 3)
# Note: this /sbin gets substituted
/sbin/reboot
;;
# Fsck couldn't fix it.
4 | 5 | 8 | 9)
echo \"Automatic boot failed... help!\"
exit 1
;;
# Signal that really interrupted something
20 | 130 | 131)
echo \"Boot interrupted\"
exit 1
;;
# Special `let fsck finish' interruption (SIGQUIT)
12)
echo \"Boot interrupted (filesystem checks complete)\"
exit 1
;;
# Oh dear.
*)
echo \"Unknown error during fsck (exit status $?)\"
exit 1
;;
esac
# 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
mkdir -p /var/lib
seq 1000 > /var/lib/random-seed
# The random translators, especially /dev/urandom, need to be non-passive
# When they exist in the file-system and reference /var/lib/random-seed
# while / is read-only. console-run will hang.
settrans --create --active /dev/random /hurd/random --seed-file /var/lib/random-seed
settrans --create --active /dev/urandom /hurd/random --seed-file /var/lib/random-seed --fast
# Only after this we can run guile.
mkdir -p /servers/socket
rm -f /servers/socket/1
# Note: this /hurd gets substituted
# Note: this /hurd/ gets substituted
settrans --create /servers/socket/1 /hurd/pflocal
# Upon second boot, (file-exists? /dev/null) in hurd-boot-system hangs unless:
rm -f /dev/urandom
# parse multiboot arguments
for i in \"$@\"; do
case $i in
@@ -545,8 +434,7 @@ exec ${system}/rc \"$@\"
(coreutils (assoc-ref inputs "coreutils"))
(sed (assoc-ref inputs "sed"))
(grep (assoc-ref inputs "grep"))
(util-linux (assoc-ref inputs "util-linux"))
(e2fsprogs (assoc-ref inputs "e2fsprogs")))
(util-linux (assoc-ref inputs "util-linux")))
(substitute* '("daemons/runttys.c" "daemons/getty.c" "utils/login.c")
(("/bin/login")
(string-append out "/bin/login"))
@@ -562,13 +450,9 @@ exec ${system}/rc \"$@\"
;; name.
(substitute* '("boot/boot.c"
"daemons/console-run.c"
"startup/startup.c"
"sutils/swapon.c"
"tmpfs/tmpfs.c")
"startup/startup.c")
(("/hurd/")
(string-append out "/hurd/"))
(("/sbin/")
(string-append out "/sbin/")))
(string-append out "/hurd/")))
(substitute* '("libdiskfs/boot-start.c"
"libdiskfs/opts-std-startup.c")
(("_HURD_STARTUP")
@@ -582,15 +466,13 @@ exec ${system}/rc \"$@\"
(string-append "PATH=" out "/bin"
":" out "/sbin"
":" coreutils "/bin"
":" e2fsprogs "/sbin"
":" grep "/bin"
":" sed "/bin"
":" util-linux "/sbin\n"))
(("/sbin/") (string-append out "/sbin/"))
(("/libexec/") (string-append out "/libexec/"))
(("/hurd/") (string-append out "/hurd/")))
(substitute* "sutils/fsck.c"
(("/sbin/") (in-vicinity e2fsprogs "sbin/"))))))
#t)))
(add-after 'patch-shebangs 'patch-libexec-shebangs
(lambda* (#:key inputs outputs #:allow-other-keys)
;; XXX: Since the 'patch-shebangs' phase doesn't traverse
@@ -600,7 +482,8 @@ exec ${system}/rc \"$@\"
(path (list (string-append bash "/bin"))))
(for-each (lambda (file)
(patch-shebang file path))
(find-files (string-append out "/libexec"))))))
(find-files (string-append out "/libexec")))
#t)))
(add-after 'build 'build-libdde-linux
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(let ((arch ,(match (or (%current-target-system)
@@ -705,8 +588,7 @@ exec ${system}/rc \"$@\"
"CFLAGS=-fcommon")))
(build-system gnu-build-system)
(inputs
`(("libacpica" ,libacpica) ;for hurd/acpi.static
("libgcrypt" ,libgcrypt) ;for /hurd/random
`(("libgcrypt" ,libgcrypt) ;for /hurd/random
("libdaemon" ,libdaemon) ;for /bin/console --daemonize
("libxcrypt" ,libxcrypt) ;for password hashing
("unifont" ,unifont)
@@ -718,7 +600,6 @@ exec ${system}/rc \"$@\"
;; Tools for the /libexec/* scripts.
("bash-minimal" ,bash-minimal)
("coreutils" ,coreutils)
("e2fsprogs" ,e2fsprogs) ;for fsck.ext2
("sed" ,sed)
("grep" ,grep)
("util-linux" ,util-linux "static") ;libuuid.a, for parted
@@ -858,11 +739,11 @@ in userland processes thanks to the DDE layer.")
(license gpl2))))
(define-public rumpkernel
(let ((commit "debian/0_20250111-6")
(revision "1"))
(let ((commit "2aad456903b2dc2232fa18c7f286cea6d77b570f")
(revision "0"))
(package
(name "rumpkernel")
(version (git-version "0-20250111" revision (substring commit 7)))
(version (git-version "0-20250111" revision commit))
;; This uses the Debian Salsa rumpkernel package git as upstream as that
;; is where development happens. Once things have stabilized, upstream
;; may change to the NetBSD git from where Debian takes their snapshots.
@@ -873,7 +754,7 @@ in userland processes thanks to the DDE layer.")
(commit commit)))
(sha256
(base32
"1pvd54k06rlgvppfbzl1d0qqcjc0kshamw1iw40s3apabh87pw1i"))
"14fiv2llvd5s1vi9gigmi1vi0b9yvg2zqyc9xg67ffxl1phv7p8j"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
+45 -3
View File
@@ -18,7 +18,49 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages idutils)
#:use-module (gnu packages code)
#:use-module (guix deprecation))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
#:use-module (gnu packages emacs)
#:use-module (gnu packages))
(define-deprecated/public-alias idutils (@ (gnu packages code) idutils))
(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 `(("emacs" ,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 gpl3+)))
+27 -104
View File
@@ -71,12 +71,11 @@
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
#:use-module (gnu packages compression)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
@@ -97,11 +96,10 @@
#:use-module (gnu packages mcrypt)
#:use-module (gnu packages mp3)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ocr)
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
@@ -117,6 +115,7 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages fonts)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -184,81 +183,36 @@ convert images in more than 100 different formats.")
(define-public gradia
(package
(name "gradia")
(version "1.13.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AlexanderVanhee/Gradia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00s6xj9crj5gkh233q98fmq67f41y877xgrn49cycwb3kybp237n"))))
(version "1.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AlexanderVanhee/Gradia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "07hal4h3kkjf7la02nqmqgw19sa6hkd130bkfmgwjimkv9zi8z2i"))))
(build-system meson-build-system)
(arguments
(list
#:imported-modules (append %meson-build-system-modules
%pyproject-build-system-modules)
#:modules '((guix build meson-build-system)
((guix build pyproject-build-system)
#:prefix py:)
(guix build utils))
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))))
(add-after 'unpack 'set-tesseract-and-tessdata-path
(lambda _
(let* ((tesseract #$(this-package-input "tesseract-ocr"))
(tesseract-bin (string-append tesseract "/bin/tesseract"))
(tessdata (string-append tesseract "/share/tessdata")))
(substitute* "meson.build"
(("OCR_TESSERACT_CMD = '/app/bin/tesseract'")
(format #f "OCR_TESSERACT_CMD = '~a'" tesseract-bin))
(("OCR_ORIGINAL_TESSDATA_DIR = '/app/share/tessdata'")
(format #f "OCR_ORIGINAL_TESSDATA_DIR = '~a'" tessdata))))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/gradia")
`("GUIX_PYTHONPATH" =
(,(getenv "GUIX_PYTHONPATH") ,(py:site-packages inputs
outputs)))
`("GI_TYPELIB_PATH" =
(,(getenv "GI_TYPELIB_PATH")))
`("GDK_PIXBUF_MODULE_FILE" =
(,(getenv "GDK_PIXBUF_MODULE_FILE")))))))))
(inputs (list bash-minimal
gtk
gtksourceview
libadwaita
libportal
libsoup
python
python-pillow
python-pycairo
python-pygobject
python-pytesseract
tesseract-ocr
webp-pixbuf-loader))
(native-inputs (list blueprint-compiler
desktop-file-utils
gettext-minimal
`(,glib "bin")
gobject-introspection
pkg-config))
(list #:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false")))))))
(inputs (list gtk libadwaita python python-pygobject))
(native-inputs
(list blueprint-compiler gettext-minimal `(,glib "bin") pkg-config))
(home-page "https://github.com/AlexanderVanhee/Gradia")
(synopsis "Edit screenshots")
(description
"Gradia is a GTK 4 application for enhancing and preparing
(description "Gradia is a GTK 4 application for enhancing and preparing
screenshots for blogs, social media, and documentation. It supports background
customization, annotation tools (pen, arrow, text, highlight, stamp), padding,
cropping, @acronym{OCR, optical character recognition} and various export formats.")
cropping, and various export formats.")
(license license:gpl3+)))
(define-public iqa
@@ -2699,37 +2653,6 @@ no dependency or linkage required. It's made for C (ISO C90), and has a C++
wrapper with a more convenient interface on top.")
(license license:zlib))))
(define-public lodepng/c
(package/inherit lodepng
(name "lodepng-c")
(arguments
(substitute-keyword-arguments arguments
((#:make-flags _ '())
#~(list (string-append "CC=" #$(cc-for-target))
"CFLAGS=-fPIC"))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'patch
(lambda _
(rename-file "lodepng.cpp" "lodepng.c")))
;; The unittest target requires the <vector> header which is
;; available only for C++.
(delete 'check)
(replace 'build
(lambda* (#:key (make-flags '()) #:allow-other-keys)
(apply invoke "make" "lodepng.o" make-flags)
(invoke #$(cc-for-target) "-fPIC" "-O3"
"-o" "liblodepng.so"
"-shared" "lodepng.o")))
(replace 'install
(lambda _
(install-file "lodepng.h" (string-append #$output "/include"))
(install-file "liblodepng.so" (string-append #$output "/lib"))
(install-file "README.md"
(string-append #$output
"/share/doc/lodepng"))))))))
(properties '((upstream-name . "lodepng")))))
(define-public icoutils
(package
(name "icoutils")
+15 -26
View File
@@ -966,14 +966,16 @@ animating a series of images.")
(define-public mujs
(package
(name "mujs")
(version "1.3.9")
(version "1.3.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://mujs.com/downloads/mujs-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/ccxvii/mujs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "17fq82h1z4p1j1g5hqmzz5ar4lz2p63qfmbkhsjmmzjfvlh5lvcm"))
(base32 "031raywxz1znh70rvh915bhrcaysxa1kbv4gfhl4ghcqagpd975d"))
(snippet
#~(begin
(use-modules (guix build utils))
@@ -1086,9 +1088,9 @@ wrappers.")
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/tc39/test262")
(commit "a6f387de323eb9ae56448bdb71c5d315df631ce4")))
(commit "a5e69a1534de88d1eb29b76657d84c8541b72df7")))
(file-name "test262")
(sha256 (base32 "09avg4f75rzbmh3hcybdvjij7hbl2m79x6xp1hgl6h8ihfbn33l0"))
(sha256 (base32 "078a7nim0n9x36q7q8yvjwhk4ig29p25b03rr4l7g2b545cky66l"))
(modules '((guix build utils)))
(snippet #~(begin
(for-each delete-file
@@ -1098,7 +1100,7 @@ wrappers.")
(define-public quickjs-ng
(package
(name "quickjs-ng")
(version "0.14.0")
(version "0.11.0")
(source
(origin
(method git-fetch)
@@ -1107,7 +1109,11 @@ wrappers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05k8niswh0ly5sx0129jdhiinqs84s86b7sv29ff68v3546dl04i"))))
(base32 "0mfk32zvvh6c9a9plp6ad07888g795lhdmal3jyaclyn2k5iig9i"))
;; Remove these patches on next release as they will be included.
(patches (search-patches
"quickjs-ng-64-bits-precision-on-i686.patch"
"quickjs-ng-fix-atomics.pause-on-32-bit.patch"))))
(arguments
(list
#:configure-flags
@@ -1140,23 +1146,6 @@ wrappers.")
"")
(("BUILD_DIR=build")
"BUILD_DIR=../build"))))
;; XXX: Unknown test failures in quickjs-ng 1.4.0.
;; Remove for future versions.
(add-before 'configure 'skip-failing-tests
(lambda* (#:key inputs #:allow-other-keys)
(let* ((test262 (assoc-ref inputs "test262"))
(lang-path (in-vicinity test262 "test/language")))
(substitute* "test262.conf"
(("# list excluded tests and directories here" all)
(string-join
(cons* all
(map (lambda (f)
(in-vicinity lang-path f))
'(;; export 'foo' in module /gnu/store is ambiguous
"module-code/ambiguous-export-bindings/"
;; Could not find export 'default'
"import/import-attributes/text-self.js")))
"\n"))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
+1 -23
View File
@@ -5,7 +5,7 @@
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2024-2026 Spencer King <spencer.king@wustl.edu>
;;; Copyright © 2024, 2025 Spencer King <spencer.king@geneoscopy.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -5592,28 +5592,6 @@ arbitrary normed vector spaces (e.g. matrix-valued integrands).")
format.")
(license license:expat)))
(define-public julia-quantuminterface
(package
(name "julia-quantuminterface")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/qojulia/QuantumInterface.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05792hkhjghlpm919ip8hzbhwv8xcngmyyks2nr8bln6qa8f8r9i"))))
(build-system julia-build-system)
(native-inputs (list julia-safetestsets))
(home-page "https://github.com/qojulia/QuantumInterface.jl")
(synopsis "Lightweight interface for Quantum Physics related packages")
(description
"This package provides a lightweight interface for Quantum Physics
related packages.")
(license license:expat)))
(define-public julia-quaternions
(package
(name "julia-quaternions")
+25 -39
View File
@@ -9,7 +9,7 @@
;;; Copyright © 2023-2025 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2025, 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2025 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
@@ -65,14 +65,14 @@
(define-public kqtquickcharts
(package
(name "kqtquickcharts")
(version "26.04.1")
(version "25.12.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kqtquickcharts-" version ".tar.xz"))
(sha256
(base32
"0d4i7l41wrhgn8m408y8fj50w0s9y0v1lv2v8dyqssqbimdxgk8l"))))
"0z2421ffvxfp85pl80203g3pd3xg8dh60rd6zxy182bkr5l5hymw"))))
(build-system qt-build-system)
(native-inputs (list extra-cmake-modules))
(inputs (list qtdeclarative))
@@ -89,14 +89,14 @@ charts.")
(define-public analitza
(package
(name "analitza")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/analitza-" version ".tar.xz"))
(sha256
(base32 "1rn1w6spz776zl23ri5fdk499f7ihldkh3iv03cimda1l26h6v61"))))
(base32 "1bn5f3pz7fa9sjjmy0cxaypxsl4lbf9lsfx5pbwj0s5d4xlrh62r"))))
(native-inputs (list extra-cmake-modules qttools))
(inputs (list eigen qtbase qtdeclarative qtsvg))
(build-system qt-build-system)
@@ -111,7 +111,7 @@ expressions and let you evaluate and draw them.")
(define-public gcompris-qt
(package
(name "gcompris-qt")
(version "26.1")
(version "26.0")
(source
(origin
(method url-fetch)
@@ -119,7 +119,7 @@ expressions and let you evaluate and draw them.")
"mirror://kde//stable/gcompris/qt/src/gcompris-qt-"
version ".tar.xz"))
(sha256
(base32 "0f8kycj62ipfjwrk8bisq5a7cv7zh84p9vry3g62q0czn9ivi2f3"))))
(base32 "0czk3srhx7g370mhx8yk13ak004h6y8lzqdbj0wqhvnxjszghgbx"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -179,14 +179,14 @@ Currently available boards include:
(define-public kalgebra
(package
(name "kalgebra")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kalgebra-" version ".tar.xz"))
(sha256
(base32 "0br2ffh50p7l7w3ym5393vjcw8pzr3z9snqk9j99qdm1kpslxhck"))))
(base32 "0h08lhm9ycyzjs3vga4rbdxl04j11n6p2xypzgirxx6hmg0nhnk9"))))
(build-system qt-build-system)
(arguments
(list
@@ -231,14 +231,14 @@ such as addition, trigonometric functions or derivatives.")
(define-public ktouch
(package
(name "ktouch")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/ktouch-" version ".tar.xz"))
(sha256
(base32 "0hd2vp8yj24aa8wa3hh2lhnsjqh4i7p65i5036h0272ciyhzp4zy"))))
(base32 "0iawk7dv8zqlypgxvf0n2qzk5q0yg8kkri1cak85za7kj2sf99cy"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools pkg-config))
@@ -369,44 +369,30 @@ to perform data analysis.")
(define-public marble
(package
(name "marble")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/marble-" version ".tar.xz"))
(sha256
(base32 "04gz0ivzs385c87myh1pwiy92c8j9ycm6i979bw3k2al0jxfnjqp"))))
(base32 "078a342zkbd93pbgpv4ys1zynnrc08lk7rh6nqjzmgz046591qir"))))
(build-system qt-build-system)
(arguments
;; FIXME: libmarblewidget-qt5.so.28 not found. Also enable the
;; corresponding configure flag to build tests.
(list
#:test-exclude
(string-append "("
(string-join '("MarbleRunnerManagerTest"
"MarbleMapTest"
"MarbleWidgetTest"
"RenderPluginTest"
"AbstractDataPluginModelTest"
"AbstractDataPluginTest"
"AbstractFloatItemTest")
"|")
")")
#:tests? #f
#:qtbase qtbase
#:configure-flags
#~(list "-DBUILD_MARBLE_TOOLS=YES" ;file conversion tools
"-DBUILD_TOUCH=YES")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'alter-osmctools-lookup
(lambda _
(substitute* "tools/vectorosm-tilecreator/autotests/CMakeLists.txt"
(("\\$<TARGET_FILE:osmconvert>")
(which "osmconvert"))))))))
(native-inputs (list abseil-cpp
extra-cmake-modules
kdoctools
osmctools
python-minimal
#:configure-flags #~(list "-DBUILD_MARBLE_TOOLS=YES" ;file conversion tools
"-DBUILD_TOUCH=YES")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'alter-osmctools-lookup
(lambda _
(substitute* "tools/vectorosm-tilecreator/autotests/CMakeLists.txt"
(("\\$<TARGET_FILE:osmconvert>")
(which "osmconvert"))))))))
(native-inputs (list abseil-cpp extra-cmake-modules kdoctools osmctools
qttools))
;; One optional dependency missing: libwlocate.
(inputs (list gpsd
File diff suppressed because it is too large Load Diff
+86 -86
View File
@@ -52,14 +52,14 @@
(define-public libkdegames
(package
(name "libkdegames")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libkdegames-" version ".tar.xz"))
(sha256
(base32 "055gy1rxd7mmip0j50brmcqy3x1jxg6n3jcn9fd8gdqyhmhkpj1i"))))
(base32 "0wlczmi0i8k3fwnn8jh8hclxzxx7ffixxp1y2gcfyylqa8xr6n5j"))))
(build-system qt-build-system)
(arguments (list #:qtbase qtbase))
(native-inputs
@@ -97,14 +97,14 @@
(define-public katomic
(package
(name "katomic")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/katomic-" version ".tar.xz"))
(sha256
(base32 "0ys7166mcxzynqfb7p6x65zw9r7k9jh46m60yhmyqjw8bhz87dhx"))))
(base32 "10d274in6a89zfp543hnnfvia5y3034npjarzp7mx04p1frjc6jg"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -136,14 +136,14 @@ This package is part of the KDE games module.")
(define-public ktuberling
(package
(name "ktuberling")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ktuberling-" version ".tar.xz"))
(sha256
(base32 "1xh3k98fs1d3wqizfzmwkvkqs8xn0phrjqgrxsdj8bpm4dwk0hbh"))))
(base32 "0aajz7jxx5nka31903ri2nbyzy1djs96lkxz53m7q48j1kqyhz74"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -188,14 +188,14 @@ This package is part of the KDE games module.")
(define-public picmi
(package
(name "picmi")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/picmi-" version ".tar.xz"))
(sha256
(base32 "0l76bd4w8vszbaclz0mrbdz4p1k2a2r6xd2m56gzajzayg06ygvj"))))
(base32 "0v7gi8ar68rg6wzpx23i40mhcchwcf3rvq1a0f9zlkkgzdnls9kv"))))
(build-system qt-build-system)
(arguments (list #:qtbase qtbase))
(native-inputs
@@ -226,14 +226,14 @@ This package is part of the KDE games module.")
(define-public kolf
(package
(name "kolf")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kolf-" version ".tar.xz"))
(sha256
(base32 "13qlbah6fyhap3wjgycbs6jiadnar2rnd2w6ws723pgd0pl60wkq"))))
(base32 "0hh9h0k2fv1h7r945xi52m5n5kgi2xy409fmjlw0f5nkgy0b1sg3"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -277,14 +277,14 @@ This package is part of the KDE games module.")
(define-public libkmahjongg
(package
(name "libkmahjongg")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/libkmahjongg-" version ".tar.xz"))
(sha256
(base32 "0y1chr4hsfzghh02pavbbskknnbagdc8lyirss31d383mg8rr39f"))))
(base32 "016f3n09n3d1ca81cg6yqczap0zy8vjn1vz1fxkj6b5z70y5bsx1"))))
(build-system qt-build-system)
(arguments
(list
@@ -326,14 +326,14 @@ other Mah Jongg like games.")
(define-public kmahjongg
(package
(name "kmahjongg")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kmahjongg-" version ".tar.xz"))
(sha256
(base32 "09klny0g9nrwqwr52f71mqdv7zpzdblv853myzkyrfy40f5khi37"))))
(base32 "1w8l7lm87ngpfn6978cx1bwmxngfxifivazci1322z7y3s5x97yd"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -368,14 +368,14 @@ This package is part of the KDE games module.")
(define-public kshisen
(package
(name "kshisen")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kshisen-" version ".tar.xz"))
(sha256
(base32 "1nwxbfbz4gjj4mscqd4ylx3hz97vj2s09d24vggmj4nslma3bbcs"))))
(base32 "13fp2mwslzlfpc15figwxf48lnd0z6cgfrxr8mlnai7kpyd22giv"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules
@@ -407,14 +407,14 @@ This package is part of the KDE games module.")
(define-public kajongg
(package
(name "kajongg")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kajongg-" version ".tar.xz"))
(sha256
(base32 "10cdzia7mcq70bpsqxz9rp2q9qd0vgjax6q3p7fkjk649igij0d1"))))
(base32 "0ccyg22w50bv9qa7fzk33wwbvjzs1605653i6byh2sv2bi2ngyh5"))))
(build-system qt-build-system)
(arguments
(list
@@ -481,14 +481,14 @@ This package is part of the KDE games module.")
(define-public kbreakout
(package
(name "kbreakout")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kbreakout-" version ".tar.xz"))
(sha256
(base32 "1mn6dfn2ggmnhc8nz4bzwwfbcf9ry2qmmvyz532z4023z6d2jrq1"))))
(base32 "1iy99a87j8zr3ldy8mpqgngahpaqkqg5afm6ddyvfnq5qm3cgm6m"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -522,14 +522,14 @@ This package is part of the KDE games module.")
(define-public kmines
(package
(name "kmines")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kmines-" version ".tar.xz"))
(sha256
(base32 "0sndzackvaxhmsxha5jfigyxid53ansja94ck5haw81n68k9hjng"))))
(base32 "1a4iqlhl182lxglrq1gp3bqr981dpa70k6lv6va9074xhkf0fazi"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -563,14 +563,14 @@ This package is part of the KDE games module.")
(define-public konquest
(package
(name "konquest")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/konquest-" version ".tar.xz"))
(sha256
(base32 "1an8l67xi9fb0ls7sgfchkxixnhajw01ha36r4gdml71fz0q7dmr"))))
(base32 "0aaq599xjf3llxh3rirx20ajca9r8c5s71gw36div4v3q0g650zk"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -606,14 +606,14 @@ This package is part of the KDE games module.")
(define-public kbounce
(package
(name "kbounce")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kbounce-" version ".tar.xz"))
(sha256
(base32 "1dndx57s210dh14l8mdbgw7fbsmx4yf2jdy56wwrqwbmi5pazfgc"))))
(base32 "081v9m1s7zccqb3myvq645z2xcg2kk1kz61iljb98bdngrmk7m6m"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -648,14 +648,14 @@ This package is part of the KDE games module.")
(define-public kblocks
(package
(name "kblocks")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kblocks-" version ".tar.xz"))
(sha256
(base32 "1pj3wwiqnz1643lafnpafbjaqkhl2rgjj5r8l5v5q33gpkm4invy"))))
(base32 "01s46l0rr7jiz0daa9ja5k7ippy4bppn5qadp3pajv7z5psbahmw"))))
(build-system qt-build-system)
(arguments (list #:qtbase qtbase))
(native-inputs
@@ -690,14 +690,14 @@ This package is part of the KDE games module.")
(define-public ksudoku
(package
(name "ksudoku")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/ksudoku-" version ".tar.xz"))
(sha256
(base32 "0hjs5k38g845bhqw5g5mdpawqgqv8nvz6dxcb61dg7g5hspjygsy"))))
(base32 "1rsf7ybnx3z3v9bq8dgfjzs2f3syzy2pbriiq14pfpnfa1slsgpv"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -754,14 +754,14 @@ This package is part of the KDE games module.")
(define-public klickety
(package
(name "klickety")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/klickety-" version ".tar.xz"))
(sha256
(base32 "0c62xn0ragm49bpkrdpd0askik5cw7caf30bfv29aydmg48pqqa1"))))
(base32 "11fqabgvmvsg2wlzdbnpzkpghvx7ma5hzxyr213f56nlir8zk7ki"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -793,14 +793,14 @@ This package is part of the KDE games module.")
(define-public klines
(package
(name "klines")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/klines-" version ".tar.xz"))
(sha256
(base32 "193hg84y5d01yyyqn8y76nry88li55hivp7il4b5620yl691jlv5"))))
(base32 "00w17ranmxvxrr55ddys2pw0yc66d4nshz6hp0rm2rmhpim1kmgz"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -840,14 +840,14 @@ This package is part of the KDE games module.")
(define-public kgoldrunner
(package
(name "kgoldrunner")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kgoldrunner-" version ".tar.xz"))
(sha256
(base32 "1d7wkz6pis04cz40n8xpgwj47dxhmgrjz3xplgn00ybrbisczmml"))))
(base32 "1g0b8xr7lbhq2wgpg2vr6ij0dpymr9d1fx1qdccc7w6ay2dxc6xm"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -885,14 +885,14 @@ This package is part of the KDE games module.")
(define-public kdiamond
(package
(name "kdiamond")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kdiamond-" version ".tar.xz"))
(sha256
(base32 "1q4wlibl1v8rd3fxj9ghnd2mkislcrc4j1fm5j3v2g5dfazjjhw9"))))
(base32 "1hj7mywkq1m30sb2nklwwfn0xly96g9645655mv2c8l27h2if6g1"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -927,14 +927,14 @@ This package is part of the KDE games module.")
(define-public kfourinline
(package
(name "kfourinline")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kfourinline-" version ".tar.xz"))
(sha256
(base32 "1p1hd3v627gpbbblc5gsag6wvngxzviyziw216gvhnppjc1vkjhn"))))
(base32 "09ihfdc93mdbyq42l89kmyxw3cp714jw5gkcrxjwdp82l8mw5wvp"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -970,14 +970,14 @@ This package is part of the KDE games module.")
(define-public kblackbox
(package
(name "kblackbox")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kblackbox-" version ".tar.xz"))
(sha256
(base32 "0zrbsric78hn67mw3j4x8nfdpwkd3068jv8ingm1hbpfkljzl1pc"))))
(base32 "08gg4bpk9wjyfa554mx8z1ndmf01xqnl8b893lgc90irhb8l8809"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1014,14 +1014,14 @@ This package is part of the KDE games module.")
(define-public knetwalk
(package
(name "knetwalk")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/knetwalk-" version ".tar.xz"))
(sha256
(base32 "1n8kjcvx6k6n7r1qvbsc4xrsgka1zf4syh9mw82nqkw6bhq9ap5w"))))
(base32 "1ymsc6xc2ip4rkd8d2lifp0vj5sz820yf4dndf3bvfg8adbsrksm"))))
(build-system qt-build-system)
(arguments (list #:qtbase qtbase))
(native-inputs
@@ -1057,14 +1057,14 @@ This package is part of the KDE games module.")
(define-public bomber
(package
(name "bomber")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/bomber-" version ".tar.xz"))
(sha256
(base32 "0vchfzgldsqbd3bfbxn26z9i6zfspkfywk0vykmjc4bz955j7aiy"))))
(base32 "09azzlgp3b2866q5hd03imliq2xw8j7pwh6m37n3hl2bx5sdby54"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1102,14 +1102,14 @@ This package is part of the KDE games module.")
(define-public granatier
(package
(name "granatier")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/granatier-" version ".tar.xz"))
(sha256
(base32 "059fqfav12kkd3zwpkjpij7cfaxmy03w4q0r6psxpfxxgdfbyayp"))))
(base32 "042abagdg79rzb874cs7bl5wn32x8085xbhc8i3yvra4rwjpjagc"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1143,14 +1143,14 @@ This package is part of the KDE games module.")
(define-public ksirk
(package
(name "ksirk")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ksirk-" version ".tar.xz"))
(sha256
(base32 "0wyhp4hcz7qd2593h457r1xgkjj9vhkz1lxc1kxwvvzmw817r39s"))))
(base32 "1lz53zmhdflwwbnfkbazbwvagqaq47ra6f973d9g09nq1jlzikw6"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1204,14 +1204,14 @@ This package is part of the KDE games module.")
(define-public palapeli
(package
(name "palapeli")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/palapeli-" version ".tar.xz"))
(sha256
(base32 "0x0c5pw1qzr9jc3pw1i94xab64kyamlsfdlpxjaqznrqq2zxqm0q"))))
(base32 "06352k9xdls5x76x2s6qachfym92lx2sb4hm1fpl5li456lcp7p2"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1254,14 +1254,14 @@ This package is part of the KDE games module.")
(define-public kiriki
(package
(name "kiriki")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kiriki-" version ".tar.xz"))
(sha256
(base32 "173dsb51hx5nlka4mkz3c0wq08b322lcl6aagayndjmyzl3xaiz7"))))
(base32 "1122j4m2llvxy1rn95a2r19q9v2dhw33asznf2axylywb3456gi6"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1295,14 +1295,14 @@ This package is part of the KDE games module.")
(define-public kigo
(package
(name "kigo")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kigo-" version ".tar.xz"))
(sha256
(base32 "0xzdv6jm8f1chnnb2d550k6hdn5bla3iy1bczgkaagbmarvhcsnw"))))
(base32 "0pykhcfpmkq6c31igdhdcv442nlsx7pryq14ngjf64a9d1s4p6jh"))))
(build-system qt-build-system)
(arguments
(list
@@ -1352,14 +1352,14 @@ This package is part of the KDE games module.")
(define-public kubrick
(package
(name "kubrick")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kubrick-" version ".tar.xz"))
(sha256
(base32 "019b497vqm17r0p8kbyn8sshhkigbfncf18626yka0gby07d4l9k"))))
(base32 "0szjcc5npqb7sgnbh4yngnyf8fa8zl0n5c74ixayly4x6n4fahqq"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1398,14 +1398,14 @@ This package is part of the KDE games module.")
(define-public lskat
(package
(name "lskat")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/lskat-" version ".tar.xz"))
(sha256
(base32 "08c5w4bbh8wz6whm85fxdj4d94m7cra0gcdds6a4zhvya3i7h72c"))))
(base32 "0pn4lz07vxl3f5qdr62za016yvqic35zgrm9m9a1q1zs3044x65n"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1441,14 +1441,14 @@ This package is part of the KDE games module.")
(define-public kapman
(package
(name "kapman")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kapman-" version ".tar.xz"))
(sha256
(base32 "1bxyj6y1hgrl0j9iwg9m6d4r93w0q7jnhmypx0sr9zqhy3mcadr1"))))
(base32 "1p6swx7pyggfl2m8hsjk9mn9jf273gvy5w6fz0670g03pprjypxy"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1484,14 +1484,14 @@ This package is part of the KDE games module.")
(define-public kspaceduel
(package
(name "kspaceduel")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kspaceduel-" version ".tar.xz"))
(sha256
(base32 "0nczsxsbjdl84xqhw147a8858c6lnh484yqd5i2gv8abqgmcrs8r"))))
(base32 "02r39b2fh111y5dsm2w29mq7hpin08iwxm6k901acv07wswyyixp"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1522,14 +1522,14 @@ This package is part of the KDE games module.")
(define-public bovo
(package
(name "bovo")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/bovo-" version ".tar.xz"))
(sha256
(base32 "10i4iajxdlhf7z020vq1fpschiijs7cq7n42f90hw9gd8y2phnz5"))))
(base32 "05i2xn8yvl63prq4rsfgiaspnygpwvr5p5xa71ai0wp9j4h9679b"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -1562,14 +1562,14 @@ This package is part of the KDE games module.")
(define-public killbots
(package
(name "killbots")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/killbots-" version ".tar.xz"))
(sha256
(base32 "1gn0pmgkscnvg6rk0m215y96liphyf7xcif8gs2g1r2fm2qc1rgc"))))
(base32 "1n36219klwcxjlwzczn3saczb2358cvm31xvijwf1hibr0ghj1i1"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1607,14 +1607,14 @@ This package is part of the KDE games module.")
(define-public ksnakeduel
(package
(name "ksnakeduel")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ksnakeduel-" version ".tar.xz"))
(sha256
(base32 "1wdvvq68y4i3lxsqxg5h8x47qkz3b69d61kfwxm2hrvmgam6mrcb"))))
(base32 "1c1qd0g01lns4wmv9x1n5rg95av7p8i9v73ngwi78y52wjwkwfpz"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1649,14 +1649,14 @@ This package is part of the KDE games module.")
(define-public kollision
(package
(name "kollision")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kollision-" version ".tar.xz"))
(sha256
(base32 "0kim3gg2hiqfgnm6bfj457lr40qskajd81chij5mm67f6rfh1mz7"))))
(base32 "04l6g5c08baxld7hbab8m6qsmk73n4xqdzrkbvyqqpapvwb18993"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1690,14 +1690,14 @@ This package is part of the KDE games module.")
(define-public knavalbattle
(package
(name "knavalbattle")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/knavalbattle-" version ".tar.xz"))
(sha256
(base32 "0ss4kxg1ayh8sk77dcc90mrvvfv0gf0b3gprhprmr63cb06wgnvx"))))
(base32 "1cza6dx918jg34pn0fciwmm93m1vw07pvhin5qyzxw0yr1izjn14"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1733,14 +1733,14 @@ This package is part of the KDE games module.")
(define-public kreversi
(package
(name "kreversi")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kreversi-" version ".tar.xz"))
(sha256
(base32 "036a6s1q2szzh1ryyk4wfm11i0kkb47v3w1ffz06p1fwwsdjqmpz"))))
(base32 "0x405j51c4qqdb8l0ai149j6wkhiqbs0mq5i6n9rpwsqm19wkpws"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1778,14 +1778,14 @@ This package is part of the KDE games module.")
(define-public ksquares
(package
(name "ksquares")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ksquares-" version ".tar.xz"))
(sha256
(base32 "01f2qnarrfi86p6iiajaqq4k51hc0wg0fs47g61cg15s6h851f6a"))))
(base32 "03yib6qj09xx8ic6z9cmcwf76pk5irkw0fp1mwpkqaawxrhwiaw3"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1817,14 +1817,14 @@ This package is part of the KDE games module.")
(define-public kjumpingcube
(package
(name "kjumpingcube")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kjumpingcube-" version ".tar.xz"))
(sha256
(base32 "0r098bqbh9i0ihvrkhichaczbxm6gdq5yhrihfwx2v7glca3p72d"))))
(base32 "0pix07vgymw61kw5w5fnp2cxs14qb3468rsx1i49m9l3v8sfm2a0"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1858,14 +1858,14 @@ This package is part of the KDE games module.")
(define-public knights
(package
(name "knights")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/knights-" version ".tar.xz"))
(sha256
(base32 "0gs3kz37gjv08fh8cxnh62irc2ikdgra3j6vpx384nh4c5m8kfj1"))))
(base32 "0vvlggcgxmq0al8f44667dfqq0h9nv8r48m655igps16m3nfb4kp"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1922,14 +1922,14 @@ This package is part of the KDE games module.")
(define-public kpat
(package
(name "kpat")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kpat-" version ".tar.xz"))
(sha256
(base32 "0ymjhr60q8wpv5v01gcjymq9c4rw0v7km9slz1q3jmlqrhim3a9m"))))
(base32 "0lr9c6a90485s9vxvhl1fcfd1a9pglpf07m58w2hi6v348yra2k4"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -1979,14 +1979,14 @@ This package is part of the KDE games module.")
(define-public skladnik
(package
(name "skladnik")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/skladnik-" version ".tar.xz"))
(sha256
(base32 "1rhhajnwamdwj9pswab5hncvrgcn0iw5qip73c6812vnj8wda4x2"))))
(base32 "0jjawicyn3ng1n7fpricb3my3lx1gfhaw96ba7pa2rl9c2vlgp9v"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
+30 -30
View File
@@ -13,7 +13,7 @@
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Mehmet Tekman <mtekman89@gmail.com>
;;; Copyright © 2023, 2025, 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2023, 2025 Sughosha <sughosha@disroot.org>
;;; Copyright © 2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2024 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
@@ -98,14 +98,14 @@
(define-public kquickimageeditor
(package
(name "kquickimageeditor")
(version "0.6.1")
(version "0.6.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1ylrpb8znxcb4jg7hpcpdymj56pcrklnnscxdkilx0dvp45q0s5q"))))
(base32 "0yjl4b8ix9ffya89nq9pp1gmvdwshjslh5dw1gavda34q7hlrv8i"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -125,14 +125,14 @@ image editing capabilities.")
(define-public ksanecore
(package
(name "ksanecore")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ksanecore-" version ".tar.xz"))
(sha256
(base32 "1qh5j8aljskh7lznbx760ps8xkgj4m8jvkfph8kwvbiz46avibbj"))))
(base32 "02dsvq7gwkdph1xjp91gdpixgv2pbzvncv73h5krha5w24aw0z44"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -152,14 +152,14 @@ for scanner hardware.")
(define-public colord-kde
(package
(name "colord-kde")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/colord-kde-" version ".tar.xz"))
(sha256
(base32 "0dvv2wcvpbbq1lz2msid1zdbjny8y43d9mirw76yx3nn3cd7ibym"))))
(base32 "1zzz1i1p14z325zb4fgg4nzigxfwplpcr0n1yxkwbl4ayyzl5hkg"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f)) ;no tests
@@ -187,13 +187,13 @@ for scanner hardware.")
(define-public digikam
(package
(name "digikam")
(version "9.0.0")
(version "8.8.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/digikam/"
version "/digiKam-" version ".tar.xz"))
(sha256
(base32 "1wwfs3phwknxxmv7bs657fcw78dlnzj5zr4hc34i03p09w1fm03n"))))
(base32 "16kbxfyx1fsaxr7m6rnbk38yrljx8m93y07qvzih7ybk7ip1nfnv"))))
(build-system qt-build-system)
(home-page "https://www.digikam.org/download/git/")
(arguments (list
@@ -311,14 +311,14 @@ settings and rules that process and organize imported items on-the-fly.")
(define-public gwenview
(package
(name "gwenview")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/gwenview-" version ".tar.xz"))
(sha256
(base32 "1g83191ylv8r8c5vy11vdp4fpxz1ywrv5x4d2glcdhqygkcxdj27"))))
(base32 "1yw3wrfscnh64ad8piaqpkv1l7hjyp8845cncvrsrsb8842xfqqf"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -374,7 +374,7 @@ annotating features.")
(define-public kcolorchooser
(package
(name "kcolorchooser")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
@@ -382,7 +382,7 @@ annotating features.")
"/src/kcolorchooser-" version ".tar.xz"))
(sha256
(base32
"0kj8zgpm835cndkr6wysl67dyr82bdqppjhffdykf9a87figwp15"))))
"08dl7bc1p7n6plabrd5rxhyjri573xfr7r3hmjjs4rfkfx0i4bpj"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
@@ -402,14 +402,14 @@ annotating features.")
(define-public kdegraphics-mobipocket
(package
(name "kdegraphics-mobipocket")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "1ggpkwa4s8zg0x5zdpakdck2d44am21n88lk72cg80j464vkhdfy"))))
(base32 "1i1sh1kk76d43ci81qzfifsclm67kfhl3alhb8ic3j22qhpamxgh"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f
@@ -427,14 +427,14 @@ Mobipocket e-books in Dolphin and other KDE apps.")
(define-public kdegraphics-thumbnailers
(package
(name "kdegraphics-thumbnailers")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "006257sl50vrvd91w5gkzjwf98s0k4c1dy08k689j2v0pp4ffkv8"))))
(base32 "1lvfz1l37f68ammgszs2yg1z2jv46ysk6ynxrsmxi8hsmpjvkshz"))))
(build-system cmake-build-system)
(arguments
(list
@@ -533,14 +533,14 @@ replace the other outdated Graphviz tools.")
(define-public kolourpaint
(package
(name "kolourpaint")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kolourpaint-" version ".tar.xz"))
(sha256
(base32 "02b6szjb6l1yx4yvki9xp2zc1pr8iiml4s1c1b29hx5gnaad2992"))))
(base32 "11ngb9ypi9ngj8xgaris5mg9glkf4d47kfhfxkypjykryw566ssj"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@@ -567,7 +567,7 @@ painting, image manipulating and icon editing.")
(define-public krita
(package
(name "krita")
(version "6.0.1.1")
(version "5.2.15")
(source
(origin
(method url-fetch)
@@ -575,7 +575,7 @@ painting, image manipulating and icon editing.")
"mirror://kde/stable/krita/" version "/krita-" version
".tar.gz"))
(sha256
(base32 "0v45gxnaz0havc3ci08n8x605q03qfvprnn36z5sh4h011ppxiap"))
(base32 "0f9vj15hvyv90rcs5v5s6yr6xpkxf08gp67mvsac4rwp3m1gi54v"))
(patches (search-patches "krita-bump-sip-abi-version-to-12.8.patch"))))
(build-system qt-build-system)
(arguments
@@ -676,7 +676,7 @@ features include brush stabilizers, brush engines and wrap-around mode.")
(define-public kseexpr
(package
(name "kseexpr")
(version "6.0.0.0")
(version "4.0.4.0")
(source
(origin
(method git-fetch)
@@ -703,14 +703,14 @@ expression library, that is used in Krita.")
(define-public libkdcraw
(package
(name "libkdcraw")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "1vwspn83v5czkmqj5dns8x39ab20c82mlxs7dll1wk7qi1s8p2fw"))))
(base32 "15rp4k7fp0qapkf463h1kxazaslqr6xn7cgpav10q3wg3pbgrxpj"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config extra-cmake-modules))
@@ -739,14 +739,14 @@ decode RAW picture files.")
(define-public libksane
(package
(name "libksane")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libksane-" version ".tar.xz"))
(sha256
(base32 "07gf3zgs0vkiir9csbravmabf62m4d26481vmfpp4n7kg1gk6y4d"))))
(base32 "1j2qj0zq1l64yzqg8v19a86xw6m9rw6i1nbs950wgr9m95bfvqc0"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -769,14 +769,14 @@ scanners.")
(define-public libkexiv2
(package
(name "libkexiv2")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "1rckkjqrh77wipmijhmzaz2d0qrnhcm6l6vjl1cx0qsbvc8cf9vq"))))
(base32 "1dkqfxzfsxpvbsr214hhbdlg19w0951ay1qp78nlwsx97k819ndq"))))
(build-system cmake-build-system)
(arguments
(list
@@ -795,14 +795,14 @@ picture metadata as EXIF/IPTC and XMP.")
(define-public okular
(package
(name "okular")
(version "26.04.1")
(version "25.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "19mvqvzxqsh4i50dlbnf09mfqnypxnks141ij5d46qpyx7cs11rx"))))
(base32 "0zwki1m7wvnsyd9a9gba38d7dxdn8hi92ck4nn80kpd3w87si14w"))))
(build-system qt-build-system)
(arguments
(list

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