1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-08 10:24:05 +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
117 changed files with 4617 additions and 22694 deletions
+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)
+60 -280
View File
@@ -4780,91 +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;
@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,
@@ -4999,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}
@@ -5106,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,
@@ -5896,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))
@@ -5911,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
@@ -14835,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
@@ -16167,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:
@@ -16233,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
@@ -16310,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
@@ -20902,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}.
@@ -46412,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
@@ -49430,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
@@ -51490,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
+11 -11
View File
@@ -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,10 +138,10 @@ $(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" "$@"
-66
View File
@@ -43,72 +43,6 @@
(channel-news
(version 0)
(entry (commit "c9dcd203e5356f13b736d5be121fd61874be1a93")
(title
(en "@command{pull} and @command{time-machine} can download channel
files")
(fr "@command{pull} et @command{time-machine} peuvent télécharger des
fichiers canaux"))
(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.")
(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.")))
(entry (commit "a7c8e68dc51144a6d3981b770aca9c4897fc7c0c")
(title
(en "Records can refer to inherited values of thunked fields")
-5
View File
@@ -1666,11 +1666,6 @@ the \"texlive\" importer."
"gemmaro")
ruby)
(define-member (person "bdunahu"
"bdunahu@operationnull.com"
"bdunahu")
games)
(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)
+5 -11
View File
@@ -756,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 \
@@ -1169,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 \
@@ -1179,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 \
@@ -1199,7 +1201,6 @@ dist_patch_DATA = \
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
%D%/packages/patches/django-compressor-build-with-beautifulsoup-4.14+.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/dmd-hurd.patch \
%D%/packages/patches/doc++-gcc-14.patch \
%D%/packages/patches/docbook-utils-documentation-edits.patch \
%D%/packages/patches/docbook-utils-escape-characters.patch \
@@ -1376,8 +1377,6 @@ dist_patch_DATA = \
%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/gdc-11-druntime-hurd.patch \
%D%/packages/patches/gdc-14-druntime-hurd.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
%D%/packages/patches/gcc-asan-missing-include.patch \
@@ -1427,7 +1426,6 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-11-libstdc++-hurd-libpthread.patch \
%D%/packages/patches/gcc-12-cross-environment-variables.patch \
%D%/packages/patches/gcc-11-libstdc++-powerpc.patch \
%D%/packages/patches/gcc-11-x86_64-gnu.patch \
%D%/packages/patches/gcc-13-cross-system-header-dir.patch \
%D%/packages/patches/gcc-12-libsanitizer-no-crypt.patch \
%D%/packages/patches/gcc-13-libsanitizer-no-crypt.patch \
@@ -1517,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 \
@@ -1670,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 \
@@ -1989,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 \
@@ -2019,7 +2014,6 @@ dist_patch_DATA = \
%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 \
@@ -2102,7 +2096,6 @@ dist_patch_DATA = \
%D%/packages/patches/pdl-2.100-reproducibility.patch \
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
%D%/packages/patches/pharo-vm-cmake.patch \
%D%/packages/patches/phobos-hurd.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/plasp-fix-normalization.patch \
%D%/packages/patches/plasp-include-iostream.patch \
@@ -2294,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 \
@@ -2627,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 \
+4 -10
View File
@@ -202,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
@@ -395,7 +395,9 @@ Available locations:~%~%~a~%~%For more details, see: ~a")
(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)
@@ -590,14 +592,6 @@ 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
# Modify the install script to point the systemd unit of the /gnu/store
# mountpoint to the same /mnt/tmp/gnu/store which was introduced above.
store_fix=\"sed -i 's#Where=/gnu/store#Where=/mnt/tmp/gnu/store#'
~~root/.config/guix/current/lib/systemd/system/gnu-store.mount\"
sed -i \"s@install_unit gnu-store.mount\"\\
\"@$(printf \"%q \" $store_fix)\\ninstall_unit gnu-store.mount@\" /tmp/guix-install.sh
chmod +x /tmp/guix-install.sh
set +o pipefail # avoid hangup on 'yes' killing this script
yes '' | /tmp/guix-install.sh
+2 -2
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
+4 -113
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>
@@ -127,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)
@@ -195,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")
@@ -4505,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")
@@ -4936,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")
@@ -7368,7 +7265,6 @@ as is the case with audio plugins.")
(find-files "bin")))))))))
(inputs
(list alsa-lib
bash-minimal
ffmpeg
fluidsynth
file
@@ -7426,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")
@@ -7441,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
@@ -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
-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
+72
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")
+19
View File
@@ -1327,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")
+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)
-107
View File
@@ -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)
@@ -1673,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")
@@ -3701,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")
@@ -4560,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 -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
+17 -47
View File
@@ -342,7 +342,7 @@ integration tests...\n")
;; and their names must have the same length to avoid corrupting the
;; binary.
(name "dmd")
(version "2.112.0")
(version "2.111.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -351,9 +351,7 @@ integration tests...\n")
(file-name (git-file-name "dmd" version))
(sha256
(base32
"0qvg2fb73kyng8k1wj482g07ar2qw5laa5fynwx7pdd610n0pjpc"))
(patches
(search-patches "dmd-hurd.patch"))))
"0cz5qdd1j89w2s7nzw9ahzwsqiraidg4ajy7syy7qkk7mwcyrf6r"))))
(build-system gnu-build-system)
(arguments
(list
@@ -374,16 +372,7 @@ integration tests...\n")
;; Do not build the shared libphobos2.so library, to avoid
;; retaining a reference to gcc:lib.
"SHARED=0"
#$@(if (target-hurd?)
(list (string-append "DISABLED_TESTS=core/thread/osthread "
"std/parallelism " ;; pthread stubs
"std/file " ;; rename (NULL, "")
"std/socket " ;; ENOPROTOOPT
"std/datetime/systime "
"std/datetime/timezone " ;; TZDIR
"std/net/curl ")) ;; dlopen curl
'())
"DIFFABLE=1" ;constant timestamp
"DIFFABLE=1" ;constant timestamp
"VERBOSE=1")
#:modules
`(,@%default-gnu-modules
@@ -481,19 +470,7 @@ integration tests...\n")
"long_backtrace_trunc rt_trap_exceptions "))
""))
(substitute* "dmd/druntime/test/gc/Makefile"
((" invariant ") " "))
#$@(if (target-hurd?)
'((for-each
delete-file
;; environment differs in LD_ORIGIN_PATH
'("dmd/compiler/test/dshell/sameenv.d"
;; Non _GLIBCXX_USE_CXX98_ABI version prints a warning
"dmd/compiler/test/runnable_cxx/cppa.d"))
;; Segfault
(substitute* "dmd/druntime/test/shared/Makefile"
(("loadDR host ") "")))
'())))
((" invariant ") " "))))
(delete 'bootstrap)
(delete 'configure)
(replace 'build
@@ -515,8 +492,7 @@ integration tests...\n")
(phase-in-sub-dir 'check "phobos"))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((platform (cond (#$(target-linux?) "linux")
(#$(target-hurd?) "hurd")))
(let* ((platform (cond (#$(target-linux?) "linux")))
(bits (if #$(target-64bit?) 64 32))
(build-sub-dir (format #f "generated/~a/release/~a"
platform bits))
@@ -560,22 +536,17 @@ integration tests...\n")
(inputs
(list bash-minimal))
(native-inputs
(append
(if (target-linux?)
;; gdb tests only on on linux
(list gdb/pinned)
'())
(list gdmd which
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"0afi5glnf96242cbnr10ccjvfsgkh4k5y7qnmxv4ph5g0izvi1dc"))
(patches (search-patches "phobos-hurd.patch"))))))
(list gdmd which
gdb/pinned ; for tests
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"1ydls3ar6d3f7ffqvidr46x3zrz3wlzjln5qa0nbz843ndjr4g7n")))))
(outputs '("out" "lib" "debug"))
(synopsis "Reference D Programming Language compiler")
(description "@acronym{DMD, Digital Mars D compiler} is the reference
@@ -584,8 +555,7 @@ compiler for the D programming language.")
(home-page "https://github.com/dlang/dmd")
;; As reported by upstream:
;; https://wiki.dlang.org/Compilers#Comparison
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"
"i586-gnu" "x86_64-gnu"))
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))
;; This variant exists only for bootstrapping purposes.
(properties '((hidden? . #t)))))
+2 -2
View File
@@ -841,14 +841,14 @@ to result in system-wide compromise.")
(define-public unbound
(package
(name "unbound")
(version "1.25.0")
(version "1.24.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.unbound.net/downloads/unbound-"
version ".tar.gz"))
(sha256
(base32 "1iyyplggqhh2h1sbssq65v8z2s8mk1v9n1z4pr0z1qizfbd6wah6"))))
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
(build-system gnu-build-system)
(outputs '("out" "python"))
(native-inputs
+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")
+87 -285
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
@@ -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")
@@ -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")
@@ -11948,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")
@@ -22726,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)
@@ -22735,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
@@ -22754,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
@@ -25416,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
@@ -25425,7 +25380,7 @@ with Eglot.")
(file-name (git-file-name name version))
(sha256
(base32
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
(build-system emacs-build-system)
(arguments
(list
@@ -25447,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
@@ -25482,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
@@ -32205,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")
@@ -35261,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
@@ -35669,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)
@@ -35678,7 +35602,7 @@ and comments.")
(commit version)))
(sha256
(base32
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@@ -35693,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
@@ -38107,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)
@@ -38116,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
@@ -41253,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")
@@ -42005,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.2.7")
(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
"1p48nnzf6m4r5jg3qxp7cv78gfwz521zi4zq0d54jmjwyszjjw1z"))))
(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.0")
(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
"1nqcxg902zdabwlgyx0iv4p339kh4n1nk293i2lnv752q8as0dc6"))))
(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")
@@ -45933,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")
+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"
+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)")))
+19 -15
View File
@@ -20,7 +20,6 @@
;;; 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>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1139,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))))
+2 -2
View File
@@ -2601,7 +2601,7 @@ mining.")
(define-public p2pool
(package
(name "p2pool")
(version "4.15")
(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 "1jfrq3dnkkvrk9zsn3viix5dcjwk0nmp15y1m1vj5py89hm57rxq"))
(sha256 (base32 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
(modules '((guix build utils)))
(snippet
#~(for-each delete-file-recursively
+2 -2
View File
@@ -3873,7 +3873,7 @@ typographical palette.")
(define-public font-mona-sans
(package
(name "font-mona-sans")
(version "2.0.23")
(version "2.0.8")
(source
(origin
(method git-fetch)
@@ -3883,7 +3883,7 @@ typographical palette.")
(file-name (git-file-name name version))
(sha256
(base32
"1pa6bghch1y0drxmz627055fwgsbdyp9vsj0f3va64pmvgkyf5jl"))))
"1gdblparf0v5mdbp891wnsc5x4dxr433fg0dmz0mhzrdw9vaalig"))))
(build-system font-build-system)
(outputs '("out" "ttf" "woff"))
(home-page "https://github.com/mona-sans")
-40
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.
;;;
@@ -3476,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")
+32 -86
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
@@ -5349,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
@@ -5436,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
@@ -5797,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
@@ -6038,7 +5984,7 @@ Transport Tycoon Deluxe.")
(package
(inherit openttd)
(name "openttd-jgrpp")
(version "0.72.0")
(version "0.71.2")
(source
(origin
(method git-fetch)
@@ -6047,7 +5993,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "jgrpp-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xbnnx03y8vhbgi6s7hsxhiqhsy6rhj7fypq6dfqh0z74m5bldkf"))))
(base32 "1gb5gickmf1d1wkzqny5ryapvw32a2g94f77iq0102xhyyw8g8s0"))))
(inputs (modify-inputs inputs
(append zstd harfbuzz)))
(arguments
+1 -15
View File
@@ -928,8 +928,7 @@ It also includes runtime support libraries for these languages.")
"gcc-5.0-libvtv-runpath.patch"
"gcc-10-libsanitizer-no-crypt.patch"
"gcc-11-libstdc++-hurd-libpthread.patch"
"gcc-libstdc++-newer-gcc.patch"
"gcc-11-x86_64-gnu.patch"))
"gcc-libstdc++-newer-gcc.patch"))
(modules '((guix build utils)))
(snippet gcc-canadian-cross-objdump-snippet)))
(properties
@@ -1409,21 +1408,8 @@ as the 'native-search-paths' field."
(define version (package-version gdc))
(define (since-version? since) (version>=? version since))
(define (until-version? until) (version>? until version))
(define patches (cond ((and (since-version? "11")
(until-version? "12"))
(search-patches "gdc-11-druntime-hurd.patch"))
((and (since-version? "14")
(until-version? "15"))
(search-patches "gdc-14-druntime-hurd.patch"))
(else '())))
(package
(inherit gdc)
(source
(origin
(inherit (package-source gdc))
(patches
(append (origin-patches (package-source gdc))
patches))))
(arguments
(substitute-keyword-arguments arguments
((#:modules modules)
+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
+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
+5 -5
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.10.2")
(define %icecat-base-version "140.10.1")
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
(define %icecat-build-id "20260509000000") ;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
"0xsfy8b80mh6kb13928ym3pdrnfyfs98xwz6fwrc20p7f99zcsvr"))))
"1fx52y52c3dmgr5gm64x40r2n6zq5ckqiqsd6vlhsly5wb1w0xaf"))))
(gnuzilla-commit "f04b721394b9d1103e92dbe989060f96756fe54c")
(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
"05d3793565pxz1h3wmwxk8j4cfqci4c0jic4q4ys8rbnfz98cj6z"))))
"06qyirgjjgy7fwn7mbrz23wsdv9a88w70pz8qm1yszln74xxdsp0"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
-43
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")
+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
+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
+5 -61
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")
@@ -643,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)
@@ -795,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.
@@ -810,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
+27 -73
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
+8 -21
View File
@@ -1088,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
@@ -1100,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)
@@ -1109,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
@@ -1142,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?
+8 -34
View File
@@ -233,12 +233,7 @@ This package is part of the KDE multimedia module.")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; testsqlscanmanager fails, even when run manually.
(invoke "ctest" "-E" "testsqlscanmanager"))))
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/amarok")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(invoke "ctest" "-E" "testsqlscanmanager")))))))
(native-inputs
(list extra-cmake-modules
googletest
@@ -903,16 +898,8 @@ autoloading of subtitle files for use while playing video.")
qtdeclarative
qtwayland))
(arguments
(list
#:qtbase qtbase
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/kamoso")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(list #:qtbase qtbase
#:tests? #f))
(home-page "https://apps.kde.org/kamoso/")
(synopsis "Take pictures and videos out of your webcam")
(description "Kamoso is a simple and friendly program to use your
@@ -1259,27 +1246,14 @@ APIs. It can also play videos from PeerTube sources.")
"0iaandlbv2v4a6wsdxk19ynj77axd3kc72nw28bvbsfb0kqc0mai"))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/rattlesnake")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(list #:qtbase qtbase
#:tests? #f)) ;no tests
(native-inputs
(list extra-cmake-modules))
(inputs
(list gst-plugins-base
gst-plugins-good
gstreamer
kirigami
kirigami-addons
qtdeclarative
qtmultimedia
qtwayland))
(list kirigami qtdeclarative qtmultimedia qtwayland))
(propagated-inputs
(list gstreamer gst-plugins-base gst-plugins-good))
(home-page "https://invent.kde.org/multimedia/rattlesnake")
(synopsis "Metronome")
(description "Rattlesnake is a metronome app.")
+4 -4
View File
@@ -164,14 +164,14 @@ resolution, asynchronous file system operations, and threading primitives.")
(package
(inherit libuv)
(name "libuv")
(version "1.49.2")
(version "1.51.0")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"1a75p8wp4l43y2ffj1szs1ssm6nzjad7k51bqi2r04ngs9mp044c"))))
"1szqivvs7izbhw1a3nd1ipbk012yvqqkjg0sjmqxw1hi1fwmf1az"))))
(properties '((hidden? . #t)))))
(define-public libuv-for-r-httpuv
@@ -219,14 +219,14 @@ resolution, asynchronous file system operations, and threading primitives.")
(package
(inherit libuv)
(name "libuv")
(version "1.44.2")
(version "1.43.0")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"1d1wy1061cf2mfygr2j6jbm0da2mhsf0l9yq4rjkqrsmijbdrz6c"))))
"194kwq3jfj9s628kzkchdca534rikjw0xiyas0cjbphqmsvjpmwh"))))
(properties '((hidden? . #t)))))
(define-public perl-anyevent
+479 -385
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2021, 2021-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2021, 2021-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
@@ -531,7 +531,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "mainline" kernel.
(define-public linux-libre-7.0-version "7.0.5")
(define-public linux-libre-7.0-version "7.0.3")
(define-public linux-libre-7.0-gnu-revision "gnu")
(define deblob-scripts-7.0
(linux-libre-deblob-scripts
@@ -541,7 +541,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0a7572zw5y3k4gs4p3h5w0s9bhd63pdjxz6vxbr96sq6r8b6k02n")))
(define-public linux-libre-7.0-pristine-source
(let ((version linux-libre-7.0-version)
(hash (base32 "0g5c732144ig8rk2nrlsbwdh88q5ghi3n1n6c3y9jlv7q6hv0pwn")))
(hash (base32 "074zjl0v901a9hafgpcxyyd395qs7y4kr4fcpgg3ssc8ayzsvv8b")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-7.0)))
@@ -564,7 +564,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(%upstream-linux-source version hash)
deblob-scripts-6.19)))
(define-public linux-libre-6.18-version "6.18.28")
(define-public linux-libre-6.18-version "6.18.26")
(define-public linux-libre-6.18-gnu-revision "gnu")
(define deblob-scripts-6.18
(linux-libre-deblob-scripts
@@ -574,7 +574,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0qlih8w8wg4v5cwbmd34rbhb6mjgbx69i9rx3s2vxw7h42q9l0ai")))
(define-public linux-libre-6.18-pristine-source
(let ((version linux-libre-6.18-version)
(hash (base32 "0x3vsz25ci192zcv1vmi1lnbdmpafvzbzcja1fighv2qhfa7hq7k")))
(hash (base32 "1v5h0w3s8p5m22jxg992x1jfpwyi80ia70cdgiv47q3n6xfjyxsk")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.18)))
@@ -583,7 +583,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.12-version "6.12.87")
(define-public linux-libre-6.12-version "6.12.85")
(define-public linux-libre-6.12-gnu-revision "gnu")
(define deblob-scripts-6.12
(linux-libre-deblob-scripts
@@ -593,12 +593,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1x48hpmvajz7v5wn1vdd7l5r14mq4ngzh5npz3pj81z4f1g61i0a")))
(define-public linux-libre-6.12-pristine-source
(let ((version linux-libre-6.12-version)
(hash (base32 "0c4qidff0qs2x0mvba83cw3ksaz2af3xwabvc839xvsc9djaf4nc")))
(hash (base32 "1v8a0z6znmr2m26l4744wndaimsh24zz6q4d7m4p8s0ayjcwjnp3")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.12)))
(define-public linux-libre-6.6-version "6.6.138")
(define-public linux-libre-6.6-version "6.6.137")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
@@ -608,12 +608,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0xp9b2vkrb0g0rn4i33b59rhp4sgh1dbwzk28vwz7kwac6l5rcpi")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
(hash (base32 "03x8ald0sjzdb6kpzrw8adnc78r3mdxrx8mzbxbpwp35vdgnpl5d")))
(hash (base32 "1i2npnsnhk41a88vimr521rxg77kljbkqmlyk1zrv7z4ic6ykwcj")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
(define-public linux-libre-6.1-version "6.1.172")
(define-public linux-libre-6.1-version "6.1.170")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@@ -623,12 +623,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1w5pfws6l39dpc3lzazs1n6r4m96f6rdf6vb2scy5fhmrd933ldc")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "16dlfdzjcsc21m5sfbhamg8y3ay54rz8a0qqvqrmxq691mhjwrzi")))
(hash (base32 "0i29gilsvl7vx7p6vqg0bc0d40ir1b968hyfjhdfms55g4pr2y5m")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.206")
(define-public linux-libre-5.15-version "5.15.204")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@@ -638,12 +638,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1s6km2r2mad0wpf7nqn4rqsykw1lm386l1yskmil24239fbva1f1")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "07z6lla7xpnn4sn3l4zw3x7m8ih8w6h54k71qrxrf5zv9i7wxijz")))
(hash (base32 "1kfvfvzhdgjcj1pa2aqks3iah00ilfpp1i9bmbwjr3na0crlrzcv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.255")
(define-public linux-libre-5.10-version "5.10.252")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@@ -653,7 +653,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hgza8fsps7bkjf4i0f2xgvrh1r183z3i6lxrr2nr8qbi5d13qs7")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "19v6g2fq4nqv38irlcd9x14s6d398c56mxzpyc03q4xmpy3v6mir")))
(hash (base32 "1yqa4zmvi5ihf50kxcff06abfi6xw0b9ajzagvy6gdzfr7igpcrl")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@@ -1493,48 +1493,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
("CONFIG_VHOST_VDPA" . m))
(default-extra-linux-options linux-libre-lts-version))))
(define-public reform-debian-packages-for-7.0
(package
(name "reform-debian-packages")
(version "2023-07-10-559-gced99e4") ;from git describe
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://source.mnt.re/reform/reform-debian-packages.git")
(commit "ced99e4f4b1fa7294823ac57f1561490d5d4e1f1")))
(file-name (git-file-name name version))
(sha256
(base32 "1rnk22dg0xrljpfzhc0lvlksd2zpddwhivvph3q6kgbac4afwv9r"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("linux/patches7.0/" "/patches7.0")
("linux/" "/dts/amlogic"
#:include-regexp ("meson.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("imx8.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("fsl.*\\.dts$"))
("linux/" "/dts/rockchip"
#:include-regexp ("rk3588.*\\.dts$"))
("linux/config" "config"))))
(home-page "https://source.mnt.re/reform/reform-debian-packages")
(synopsis
"Linux kernel patches and device-trees used for MNT Reform systems")
(description
"Linux kernel patches and device-trees used for the MNT Reform systems")
(license (list
(license:fsf-free "file://filter-output"
"https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html")
license:bsd-2
license:expat
license:gpl2
license:gpl2+
license:gpl3
license:x11))))
(define-public reform-debian-packages-for-6.19
(package
(name "reform-debian-packages")
@@ -1661,317 +1619,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
license:gpl3
license:x11))))
(define (mnt-reform-kernel-options version)
`(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . m)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_VIDEO_DW100" . m)
("CONFIG_IMX_AIPSTZ" . m)
("CONFIG_IMX_DSP" . m)
("CONFIG_IMX_REMOTEPROC" . m)
("CONFIG_IMX_DSP_REMOTEPROC" . m)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m)
,@(if (version>=? version "6.18")
'(("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true))
;; 6.12 or older gets this instead:
'(("CONFIG_ROCKCHIP_INNO_HDMI" . #true)
("CONFIG_ROCKCHIP_LVDS" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI" . #true)))))
(define-public linux-libre-arm64-mnt-reform-7.0
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
(let ((base (make-linux-libre* linux-libre-7.0-version
linux-libre-7.0-gnu-revision
linux-libre-7.0-source
'("aarch64-linux")
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append (mnt-reform-kernel-options
linux-libre-7.0-version)
(default-extra-linux-options
linux-libre-7.0-version)))))
(package
(inherit base)
(inputs (list reform-debian-packages-for-7.0))
(synopsis (string-append (package-synopsis base)
" for MNT/Reform systems"))
(description (string-append (package-description base)
" Configuration options and patches have been applied for use with MNT/Reform systems."))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'apply-reform-patches
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (patch)
(invoke "patch" "-p1" "-i"
(search-input-file inputs
(string-append
"patches7.0/" patch))))
(list
"imx8mp-mnt-pocket-reform/2ghz/0001-imx8mp-2ghz-clk.patch"
"imx8mp-mnt-pocket-reform/2ghz/0002-imx8mp-2ghz-opp.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0001-sdhci-add-no-sd-uhs-sdr104-devicetree-property.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0002-During-the-card-init-the-host-side-sometimes-may-nee.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0003-USDHC-IP-has-one-limitation-the-tuning-circuit-can-t.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0001-v5-add-multi-display-panel-driver.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0002-pocket-panel-fix-sleep-add-orientation.patch"
"imx8mp-mnt-reform2/0001-sn65dsi86-use-hs-clock-of-samsung-dsim-host-directly.patch"
"imx8mp-mnt-reform2/0002-lcdif-dont-exceed-desired-pixel-clock.patch"
"imx8mq-mnt-reform2/0001-imx8mq-mnt-reform2.dts-multiple-fixes-for-display-wi.patch"
"imx8mq-mnt-reform2/0001-nwl-dsi-fixup-mode-only-for-LCDIF-input-not-DCSS.patch"
"imx8mq-mnt-reform2/0002-Revert-drm-bridge-nwl-dsi-Use-vsync-hsync-polarity-f.patch"
"imx8mq-mnt-reform2/0003-lcdif-fix-pcie-interference.patch"
"imx8mq-mnt-reform2/0004-mnt4002-imx-gpcv2-wake-smccc.patch.patch"
"imx8mq-mnt-reform2/0005-pci-imx6-add-support-for-internal-refclk-imx8mq.patch"
"imx8mq-mnt-reform2/0006-imx8mq-import-HDMI-driver-and-make-DCSS-compatible-w.patch"
"ls1028a-mnt-reform2/0000-dtsi-add-hdptx.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0001-a311d-viu-fifo-lines-config.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0002-a311d-viu-fifo-lines-config-header.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0003-tlv320aic31xx-add-1228800hz-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-Revert-drm-bridge-synopsys-dw-mipi-dsi-enable-EoTp-b.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-meson-g12b-bananapi-cm4-mnt-reform2.dts-fix-audio-an.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0011-dw-mipi-dsi-phy-stop-wait-time.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0012-innolux-n125hce-gn1-timing-tweaks.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0013-meson-viu-hold-fifo-lines.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0014-meson-venc-sync.patch.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0015-meson-dw-mipi-dsi-sync-invert.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0016-sn65dsi86-burst-mode-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0018-sn65dsi86-never-turn-off.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0020-LOCAL-ALSA-Assign-internal-PCM-chmap-ELD-IEC958-kctl.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0021-HACK-of-partial-revert-of-fdt.c-changes.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0022-add-bt-and-eth-resets.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0023-sdio-pullups.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0024-sdio-improve-wifi-speed.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0030-WORKAROUND-meson-plane-disable-afbc-32x8.patch"
"rk3588-mnt-reform2/0024-math.h-add-DIV_ROUND_UP_NO_OVERFLOW.patch"
"rk3588-mnt-reform2/0025-clk-divider-Fix-divisor-masking-on-64-bit-platforms.patch"
"rk3588-mnt-reform2/0026-clk-composite-replace-open-coded-abs_diff.patch"
"rk3588-mnt-reform2/0029-PCI-dw-rockchip-Restore-vpcie3v3-regulator-handle.patch"
"rk3588-mnt-reform2/0030-mfd-rk8xx-Fix-shutdown-handler.patch"
"rk3588-mnt-reform2/0031-dt-bindings-display-vop2-Add-VP-clock-resets.patch"
"rk3588-mnt-reform2/0032-drm-rockchip-vop2-Add-clock-resets-support.patch"
"rk3588-mnt-reform2/0033-arm64-dts-rockchip-Add-VOP-clock-resets-for-rk3588s.patch"
"rk3588-mnt-reform2/0035-drm-rockchip-vop2-Add-core-reset-support.patch"
"rk3588-mnt-reform2/0062-PCI-dw-rockchip-Move-devm_phy_get-out-of-phy_init.patch"
"rk3588-mnt-reform2/0063-PCI-dw-rockchip-Add-helper-function-for-enhanced-LTS.patch"
"rk3588-mnt-reform2/0064-PCI-dw-rockchip-Add-helper-function-for-controller-m.patch"
"rk3588-mnt-reform2/0065-PCI-dw-rockchip-Add-helper-function-for-DDL-indicato.patch"
"rk3588-mnt-reform2/0066-PCI-dw-rockchip-Add-pme_turn_off-support.patch"
"rk3588-mnt-reform2/0067-PCI-dw-rockchip-Add-system-PM-support.patch"
"rk3588-mnt-reform2/0078-PCI-dw-rockchip-Fix-LTSSM-set-functions.patch"
"rk3588-mnt-reform2/0079-RFC-PCI-dw-rockchip-port-some-suspend-code-from-vend.patch"
"rk3588-mnt-reform2/0089-DEBUG-phy-rockchip-samsung-hdptx-Add-verbose-logging.patch"
"rk3588-mnt-reform2/0092-drm-rockchip-dw_hdmi_qp-Do-not-send-HPD-events-for-a.patch"
"rk3588-mnt-reform2/0093-drm-Add-CRTC-background-color-property.patch"
"rk3588-mnt-reform2/0094-drm-rockchip-vop2-Support-setting-custom-background-.patch"
"rk3588-mnt-reform2/0095-drm-bridge-Add-detect_ctx-hook-and-drm_bridge_detect.patch"
"rk3588-mnt-reform2/0096-drm-bridge-connector-Switch-to-using-detect_ctx-hook.patch"
"rk3588-mnt-reform2/0097-drm-bridge-dw-hdmi-qp-Add-high-TMDS-clock-ratio-and-.patch"
"rk3588-mnt-reform2/0098-WIP-YUV420-drm-rockchip-vop2-Add-YUV420-output-forma.patch"
"rk3588-mnt-reform2/0099-WIP-YUV420-drm-rockchip-dw_hdmi_qp-Add-YUV420-output.patch"
"rk3588-mnt-reform2/0103-WIP-FRL-arm64-dts-rockchip-Assign-ACLK_VOP-to-750-MH.patch"
"rk3588-mnt-reform2/0104-WIP-FRL-drm-connector-hdmi-Handle-FRL-in-hdmi_clock_.patch"
"rk3588-mnt-reform2/0105-WIP-FRL-drm-bridge-dw-hdmi-qp-Add-HDMI-2.1-FRL-suppo.patch"
"rk3588-mnt-reform2/0106-WIP-FRL-drm-rockchip-dw_hdmi_qp-Add-HDMI-2.1-FRL-sup.patch"
"rk3588-mnt-reform2/0107-WIP-FRL-drm-rockchip-vop2-Add-HDMI-2.1-FRL-support.patch"
"rk3588-mnt-reform2/0108-dt-bindings-phy-rockchip-usbdp-add-improved-ports-sc.patch"
"rk3588-mnt-reform2/2001-drm-bridge-dw-hdmi-qp-Return-0-in-audio-prepare-when.patch"
"rk3588-mnt-reform2/2003-drm-bridge-synopsys-Do-not-warn-about-audio-params-c.patch"
"rk3588-mnt-reform2/5200-drm-rockchip-Set-dma-mask-to-64-bit.patch"))))
(add-after 'apply-reform-patches 'copy-reform-dts-files
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (dts)
(copy-file (search-input-file inputs
(string-append
"/dts/" dts))
(string-append "arch/arm64/boot/dts/"
dts)))
(list
"amlogic/meson-g12b-bananapi-cm4-mnt-pocket-reform.dts"
"freescale/fsl-ls1028a-mnt-reform2.dts"
"freescale/imx8mp-mnt-pocket-reform.dts"
"freescale/imx8mp-mnt-reform2.dts"
"freescale/imx8mq-mnt-reform2-hdmi.dts"
"rockchip/rk3588-mnt-desktop-reform.dts"
"rockchip/rk3588-mnt-pocket-reform.dts"
"rockchip/rk3588-mnt-reform-next.dts"
"rockchip/rk3588-mnt-reform2.dts"
"rockchip/rk3588-mnt-reform2-dsi.dts"
))))
(add-after 'apply-reform-patches 'adjust-makefiles-with-new-dtb
(lambda _
(substitute* "arch/arm64/boot/dts/amlogic/Makefile"
(("meson-g12b-bananapi-cm4-mnt-reform2.dtb")
"meson-g12b-bananapi-cm4-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-bananapi-cm4-mnt-pocket-reform.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("fsl-ls1028a-rdb.dtb")
"fsl-ls1028a-rdb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-mnt-reform2.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("imx8mq-mnt-reform2.dtb")
"imx8mq-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-pocket-reform.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-mnt-reform2-hdmi.dtb"))
(substitute* "arch/arm64/boot/dts/rockchip/Makefile"
(("rk3588-mnt-reform2.dtb")
"rk3588-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-desktop-reform.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform2-dsi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform-next.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
(define-public linux-libre-arm64-mnt-reform-6.19
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
@@ -1982,8 +1629,163 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append (mnt-reform-kernel-options
linux-libre-6.19-version)
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . m)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_VIDEO_DW100" . m)
("CONFIG_IMX_AIPSTZ" . m)
("CONFIG_IMX_DSP" . m)
("CONFIG_IMX_REMOTEPROC" . m)
("CONFIG_IMX_DSP_REMOTEPROC" . m)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(default-extra-linux-options
linux-libre-6.19-version)))))
(package
@@ -2144,8 +1946,158 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append (mnt-reform-kernel-options
linux-libre-6.18-version)
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . #true)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(default-extra-linux-options
linux-libre-6.18-version)))))
(package
@@ -2327,8 +2279,158 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append (mnt-reform-kernel-options
linux-libre-6.12-version)
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_INNO_HDMI" . #true)
("CONFIG_ROCKCHIP_LVDS" . #true)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . m)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(default-extra-linux-options
linux-libre-6.12-version)))))
(package
@@ -2703,7 +2805,7 @@ This package provides the @command{corefreqd} data collection daemon, the
(define-public tuxedo-keyboard
(package
(name "tuxedo-keyboard")
(version "4.22.2")
(version "4.15.4")
(source
(origin
(method git-fetch)
@@ -2712,7 +2814,7 @@ This package provides the @command{corefreqd} data collection daemon, the
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0akjyz8nhhpcr4y4xmhghd4253mndzhhi5qggr2z315vpxfr7rl4"))))
(base32 "0mimgcbp57gp3smd439g8040sl80qqnfzmh2vhs2qv1kwyxs75sq"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f)) ; no test suite
@@ -10358,6 +10460,7 @@ known as Slingshot.")
(cons package extra)
'()))))
(append (list rdma-core libnl)
(if-supported rocr-runtime)
(if-supported psm)
(if-supported psm2)
(if-supported libcxi curl json-c))))
@@ -10401,15 +10504,6 @@ applications deal with directly. It works in conjunction with provider
libraries, which are often integrated directly into libfabric.")
(license (list license:bsd-2 license:gpl2)))) ;dual
;; Note: ROCm support is kept separate to avoid a significant increase in
;; closure size: <https://codeberg.org/guix/guix/issues/7225>.
(define-public libfabric-rocm
(package/inherit libfabric
(name "libfabric-rocm")
(inputs (modify-inputs inputs
(append rocr-runtime)))
(synopsis "Open Fabric Interfaces (with ROCm support)")))
(define-public libfabric-1 ;needed by Open MPI 4.x
(package
(inherit libfabric)
+2 -10
View File
@@ -29424,7 +29424,7 @@ running into parallelism problems when having to change directory.")
(define-public sbcl-simple-matrix
(package
(name "sbcl-simple-matrix")
(version "3.16")
(version "3.15")
(source
(origin
(method git-fetch)
@@ -29433,7 +29433,7 @@ running into parallelism problems when having to change directory.")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-simple-matrix" version))
(sha256
(base32 "1yfh40kvpgjaq0vlm5lqnfpll9swl7gzcxnd0qlk6hshhqyc373q"))))
(base32 "1lpmqp1mcnzkpxi0zfsd4n85c6gr6d01hlf8yka8068kyypbhkvg"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-fiveam))
(synopsis "Matrix library for Common Lisp")
@@ -32061,14 +32061,6 @@ a simple-array ensuring that the resulting array is still a simple-array.")
(arguments
`(#:phases
(modify-phases %standard-phases
;; sbcl 2.6.4 is too smart, and figures out the test will trigger a
;; division by zero at compile time and refuse to compile the file. It
;; looks like the test already tries to avoid compile time checks, so
;; we go a step further and EVAL parts of the expression.
(add-after 'unpack 'circumvent-compile-time-check
(lambda _
(substitute* "test/tests.lisp"
(("\\(expt 1024 0\\)") "(eval '(expt 1024 0))"))))
(add-after 'check 'delete-test-results
(lambda* (#:key outputs #:allow-other-keys)
(let ((test-results (string-append (assoc-ref outputs "out")
+2 -78
View File
@@ -109,7 +109,6 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages readline)
#:use-module (gnu packages sdl)
#:use-module (gnu packages stb)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
@@ -893,16 +892,13 @@ interface to the Tk widget system.")
(arguments
(list #:make-flags
#~(list
(string-append "PREFIX=" #$output)
(string-append "DESTDIR=" #$output)
(string-append "PREFIX=")
(string-append "CC=" #$(cc-for-target)))
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure))))
(native-search-paths
(list (search-path-specification
(variable "JANET_PATH")
(files (list "lib/janet")))))
(home-page "https://janet-lang.org/")
(synopsis "Functional, imperative and embeddable programming language")
(description
@@ -1003,78 +999,6 @@ tool and its main uses are installing dependencies, compiling C/C++ to native
libraries, and other management tasks for Janet projects.")
(license license:expat)))
(define-public janet-spork
(package
(name "janet-spork")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/janet-lang/spork")
(commit (string-append "v" version))))
(modules '((guix build utils)))
(snippet #~(for-each
delete-file-recursively
'("deps/miniz" "deps/stb")))
(file-name (git-file-name name version))
(sha256
(base32 "0c9f54wl8g7zazrqk5f6nhp9lp38pymkxmcipagrip915i8ks0v8"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(delete 'check)
(add-after 'unpack 'fixes
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("test/suite-cjanet.janet")
(("\\(end-jit\\)" all)
(simple-format #f "(setdyn :cc ~s)\n~a"
#$(cc-for-target) all)))
(substitute* '("src/zip.c")
(("\"\\.\\./deps/miniz/miniz\\.h\"") "<miniz/miniz.h>"))
(let ((stb (dirname (search-input-file inputs "stb_image.h"))))
(substitute* '("project.janet")
(("\"deps/miniz/miniz\\.c\"") "")
((":headers @\\[\"deps/miniz/miniz\\.h\"\\]")
":ldflags @[\"-lminiz\"]")
(("\"-Ideps/stb\"") (string-append "\"-I" stb "\""))))))
(replace 'build
(lambda _
(invoke "janet" "-l" "./bundle" "-e" "(build)")))
(replace 'install
(lambda _
(let* ((janet-path (string-append #$output "/lib/janet")))
(mkdir-p janet-path)
(setenv "JANET_PATH" janet-path))
(invoke "janet" "--install" ".")))
(add-after 'install 'fix-output
(lambda _
(let* ((inc (string-append #$output "/include/janet/spork"))
(bin (string-append #$output "/lib/janet/bin"))
(man (string-append #$output "/lib/janet/man")))
(mkdir-p inc)
(rename-file
(string-append #$output "/lib/janet/tarray.h")
(string-append inc "/tarray.h"))
(rename-file bin (string-append #$output "/bin"))
(mkdir-p (string-append #$output "/share"))
(rename-file man (string-append #$output "/share/man")))))
(add-after 'fix-output 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "janet" "-l" "./bundle" "-e" "(check)")))))))
(inputs (list janet miniz stb))
(home-page "https://github.com/janet-lang/spork")
(synopsis "Extended standard library for Janet")
(description
"Spork is a utility library for Janet. It contains small modules
that should be useful for general programming in Janet but are not included
in the standard library.")
(license license:expat)))
(define-public lisp-repl-core-dumper
(package
(name "lisp-repl-core-dumper")
+33 -16
View File
@@ -229,25 +229,42 @@ provides some unique features such as CSV log format and wide string support.")
(define-public multitail
(package
(name "multitail")
(version "7.1.5")
(version "6.5.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/folkertvanheusden/multitail")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11kkd2rg3qc7ck5iyha0f8l5lqc1bvwypn80di0h77h7p106blvk"))))
(build-system cmake-build-system)
(method git-fetch)
(uri (git-reference
(url "https://github.com/halturin/multitail")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17hg5qpangyx4m7hp2x4h56mp6w3wsaslg1il39qcpwsffh1rihc"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-curses-headers
(lambda _
(substitute* "mt.h"
(("ncursesw/") "")))))))
`(#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))
"SYSCONFDIR=$(PREFIX)/etc")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-broken-build
;; With some luck, you might be able to remove this when updating…
(lambda _
(substitute* "Makefile"
((" \\*\\.txt") "")
((".*CONFIG_DIR.*") "")
(("^install: .*" match)
(string-append match
"\t$(INSTALL_DIR) $(DESTDIR)$(SYSCONFDIR)\n")))
(substitute* "version"
(("(VERSION=).*" _ assign)
(string-append assign ,version)))))
(add-after 'unpack 'patch-curses-headers
(lambda _
(substitute* "mt.h"
(("ncursesw/") ""))))
(delete 'configure)) ; no configure script
#:tests? #f)) ; no test suite (make check just runs cppcheck)
(inputs (list ncurses))
(home-page "https://vanheusden.com/multitail/")
(synopsis "Monitor multiple log files")
+6 -5
View File
@@ -1129,7 +1129,7 @@ Grammars (PEGs).")
(define (make-lua-luv name lua)
(package
(name name)
(version "1.44.2-0")
(version "1.43.0-0")
(source (origin
;; The release tarball includes the sources of libuv but does
;; not include the pkg-config files.
@@ -1140,7 +1140,7 @@ Grammars (PEGs).")
(file-name (git-file-name name version))
(sha256
(base32
"0jdvsznzha290gnzd66vscsdacd5dapq0scwy4zj64d9wnsv39p7"))))
"1yzi4bm845vl84wyv2qw4z1n1v285lgwm681swmp84brfy2s7czp"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ; there are none
@@ -1821,7 +1821,7 @@ multiple local rocks trees.")
(define-public fennel
(package
(name "fennel")
(version "1.6.1")
(version "1.6.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1830,10 +1830,11 @@ multiple local rocks trees.")
(file-name (git-file-name name version))
(sha256
(base32
"0n58410gmxfnmgggdw6ap12fa68z5s7f83487b2apim52a8wpd9h"))))
"09gky2w8z83qqv0n9vx8jqsfldni14kjr6l7y5k44lq5i30i0fsv"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags #~(list (string-append "PREFIX=" #$output))
(list #:make-flags #~(list (string-append "PREFIX="
(assoc-ref %outputs "out")))
#:test-target "test"
#:phases #~(modify-phases %standard-phases
(delete 'configure)
+14 -19
View File
@@ -450,7 +450,7 @@ programming languages.")
(define-public cvc5
(package
(name "cvc5")
(version "1.3.4")
(version "1.3.3")
(source
(origin
(method git-fetch)
@@ -458,8 +458,10 @@ programming languages.")
(url "https://github.com/cvc5/cvc5/")
(commit (string-append "cvc5-" version))))
(file-name (git-file-name name version))
(patches (search-patches "cvc5-reproducible-build.patch"
"cvc5-symfpu-compatibility.patch"))
(sha256
(base32 "1xix197pyd45jakk10apam3bhl38nk14zjk0fzr9rj4knh10x5rx"))))
(base32 "0ynz7di4dyyiiydgmf0z9dc2jl7nm44xi0amch29rcgznwr4wy5m"))))
(build-system cmake-build-system)
(arguments
(list
@@ -3689,7 +3691,7 @@ script files.")
;; 'Automated Testing System', which may be accessed after
;; installation via the draw.sh script. draw.sh is located in
;; the bin directory. For details see:
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
;; https://www.opencascade.com/doc/occt-7.3.0/overview/html/\
;; occt_dev_guides__tests.html
#:tests? #f
#:configure-flags
@@ -3698,7 +3700,7 @@ script files.")
"-DUSE_FREEIMAGE:BOOL=ON"
"-DUSE_RAPIDJSON:BOOL=ON"
"-DUSE_TBB:BOOL=ON"
"-DUSE_VTK:BOOL=ON"
"-DUSE_VTK:BOOL=OFF"
"-DBUILD_DOC_Overview:BOOL=OFF"
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
@@ -3716,10 +3718,9 @@ script files.")
onetbb
rapidjson
tcl
tk
vtk))
tk))
;; TODO: build Overview documentation and add 'doc' output.
(home-page "https://dev.opencascade.org")
(home-page "https://www.opencascade.com")
(synopsis "Libraries for 3D modeling and numerical simulation")
(description
"Open CASCADE is a set of libraries for the development of applications
@@ -3789,7 +3790,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
;; 'Automated Testing System', which may be accessed after
;; installation via the draw.sh script. draw.sh is located in
;; the bin directory. For details see:
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
;; https://www.opencascade.com/doc/occt-7.3.0/overview/html/\
;; occt_dev_guides__tests.html
#:tests? #f
;; Configure without freeimage: attempting to link against the
@@ -3799,7 +3800,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
(list "-DCMAKE_CXX_FLAGS=-fpermissive" ;from unsigned char* to char*
"-DUSE_FREEIMAGE:BOOL=OFF"
"-DUSE_TBB:BOOL=ON"
"-DUSE_VTK:BOOL=ON"
"-DUSE_VTK:BOOL=OFF"
"-DBUILD_DOC_Overview:BOOL=OFF"
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
@@ -3815,10 +3816,9 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
mesa
tbb-2020
tcl
tk
vtk))
tk))
;; TODO: build Overview documentation and add 'doc' output.
(home-page "https://dev.opencascade.org")
(home-page "https://www.opencascade.com")
(synopsis "Libraries for 3D modeling and numerical simulation")
(description
"Open CASCADE is a set of libraries for the development of applications
@@ -7941,7 +7941,7 @@ set.")
"doc")) ;12 MiB of documentation
(native-inputs
(list doc++
doxygen-1.16
doxygen
ghostscript
python
python-breathe
@@ -7967,16 +7967,13 @@ set.")
texlive-jknapltx
texlive-latexmk
texlive-listofitems
texlive-ltablex
texlive-multirow
texlive-natbib
texlive-needspace
texlive-newunicodechar
texlive-ninecolors
texlive-parskip
texlive-sectsty
texlive-stackengine
texlive-tabularray
texlive-tabulary
texlive-tex-gyre
texlive-titlesec
@@ -7988,7 +7985,6 @@ set.")
texlive-wasysym
texlive-wrapfig
texlive-xcolor
texlive-xltabular
texlive-xypic))))
(inputs
(list openblas))
@@ -8071,8 +8067,7 @@ problems.")
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~`("--with-MPI" ,@(delete "--without-MPI"
#$flags)))
#~`("--with-MPI" ,@(delete "--without-MPI" #$flags)))
((#:phases phases)
#~(modify-phases #$phases
(add-before 'check 'mpi-setup
+5 -6
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2024, 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,7 +27,6 @@
#:use-module (guix build-system trivial)
#:use-module (gnu packages base)
#:use-module (gnu packages c)
#:use-module (gnu packages crypto)
#:use-module (gnu packages digest)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages tls)
@@ -37,7 +36,7 @@
(define-public mold
(package
(name "mold")
(version "2.41.0")
(version "2.40.4")
(source
(origin
(method git-fetch)
@@ -46,14 +45,14 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1r4mvgwh652klhns1q45qy5axi54jx904ss0s428y98a9qk4brrp"))
(base32 "05prkdr3v8wb8l99qrri9r27yar5yl8aiv1ns41b556ckdjdw8q6"))
(modules '((guix build utils)))
(snippet
#~(begin
(for-each
(lambda (x)
(delete-file-recursively (string-append "third-party/" x)))
'("blake3" "mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
'("mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
(build-system cmake-build-system)
(arguments
(list
@@ -87,7 +86,7 @@
(if (target-64bit?)
(list mimalloc)
'())
(list libblake3 onetbb xxhash zlib `(,zstd "lib"))))
(list onetbb xxhash zlib `(,zstd "lib"))))
(home-page "https://github.com/rui314/mold")
(synopsis "Fast linker")
(description
+3 -5
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
@@ -432,7 +432,7 @@ software vendors, application developers and computer science researchers.")
(package/inherit openmpi-5
(name "openmpi-rocm")
(arguments
(substitute-keyword-arguments arguments
(substitute-keyword-arguments (package-arguments openmpi-5)
((#:configure-flags flags '())
#~(cons* (string-append "--with-rocm="
#$(this-package-input "rocm-hip-runtime"))
@@ -440,9 +440,7 @@ software vendors, application developers and computer science researchers.")
(inputs (modify-inputs (package-inputs openmpi-5)
;; XXX: This might break openmpi-5 for architectures where ROCm
;; is not supported.
(append rocm-hip-runtime)
(replace "ucx" ucx-rocm)
(replace "libfabric" libfabric-rocm)))
(append rocm-hip-runtime)))
(synopsis "MPI-3 implementation (with ROCm support)")))
(define-public openmpi-c++
+17 -139
View File
@@ -45,7 +45,7 @@
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Thomas Albers Raviola <thomas@thomaslabs.org>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022, 2023, 2024, 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2022, 2023, 2024 Sughosha <sughosha@disroot.org>
;;; Copyright © 2022, 2025, 2026 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
@@ -171,7 +171,6 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages messaging)
#:use-module (gnu packages mp3)
#:use-module (gnu packages mpd)
@@ -225,7 +224,6 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages wine)
#:use-module ((srfi srfi-1) #:select (last)))
(define-public alsa-scarlett-gui
@@ -818,7 +816,7 @@ Winamp/XMMS skins.")
(define-public strawberry
(package
(name "strawberry")
(version "1.2.19")
(version "1.2.14")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -827,7 +825,17 @@ Winamp/XMMS skins.")
(file-name (git-file-name name version))
(sha256
(base32
"1bxrqqi2xi057v9qaz73dl44jyyhpqvi51pjs6pzprfiqgy1gi11"))))
"0sli0wm1l34ca8y6m3rfa604v1bbzbaiala13kzndcqqwnrsh66f"))
(modules '((guix build utils)))
;; Unbundle and disable discord-rpc.
(snippet
'(begin
(delete-file-recursively "3rdparty")
(substitute* "CMakeLists.txt"
((".*3rdparty\\/discord-rpc.*") "")
((".*src/discord.*") "")
((".*:discord-rpc.*") "")
(("DISCORD_RPC ON") "DISCORD_RPC OFF"))))))
(build-system qt-build-system)
(arguments
(list
@@ -958,7 +966,7 @@ many input formats and provides a customisable Vi-style user interface.")
(define-public ctune
(package
(name "ctune")
(version "1.3.10")
(version "1.3.4")
(source
(origin
(method git-fetch)
@@ -966,15 +974,11 @@ many input formats and provides a customisable Vi-style user interface.")
(url "https://github.com/An7ar35/ctune")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(patches (search-patches "ctune-cmake-disable-git-clone.patch"))
(sha256
(base32 "0g7a2yz5nnhd4dln07hiax5701hc4b7sn97c36jgvm8pq6ap2bd4"))))
(base32 "05gs1a1pc303qrnd1bz0z0wkzxkpm310hqznnq6zz7nl4vs3b9nz"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;no check target
;; We do not have the headers of ncurses inside 'ncursesw' subdirectory.
#:configure-flags
#~(list "-DNO_NCURSESW=ON")))
(arguments '(#:tests? #f)) ;no check target
(native-inputs (list pkg-config
json-c
ffmpeg-6
@@ -5351,132 +5355,6 @@ includes instruments based on audio samples and various soft sythesizers. It
can receive input from a MIDI keyboard.")
(license license:gpl2+)))
;; This version tracks the latest commit from master branch.
(define-public lmms-next
(let ((commit "83313e737d3137f7939f3daa9063a94a1ac01f7c")
(revision "0"))
(package/inherit lmms
(name "lmms-next")
(version (git-version "1.3.0-alpha.1" revision commit))
(source
(origin
(inherit (package-source lmms))
(uri (git-reference
(url "https://github.com/LMMS/lmms")
(commit commit)
;; Clone recursively only for the optional plugins. The 3rd
;; party libraries will be deleted by the snippet.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1mpp449rvn9f10bcxhpmxfinvj3jdv4s6qjhlp0sj9l783pv3h69"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete the bundled 3rd party libraries.
(for-each delete-file-recursively
(list "plugins/CarlaBase/carla"
"plugins/OpulenZ/adplug"
"plugins/Xpressive/exprtk"
"src/3rdparty"))
;; Do not check submodules.
(substitute* "CMakeLists.txt"
((".*CheckSubmodules.*") "")
;; Do not use the bundled weakjack.
(("JACK libraries\" ON") "JACK libraries\" OFF"))
(substitute* "src/CMakeLists.txt"
;; Do not add 3rd party libraries.
((".*3rdparty.*") "")
;; Use adplug and ringbuffer from the system.
(("\\$\\{EXTRA_LIBRARIES\\}" all)
(string-append all
"\n\tadplug"
"\n\tringbuffer")))
(with-directory-excursion "plugins"
;; Use carla from the system.
(substitute* "CarlaBase/Carla.h"
(("#include <CarlaDefines")
"#include <carla/includes/CarlaDefines")
(("#include <CarlaNative")
"#include <carla/includes/CarlaNative")
(("#include <CarlaBackend") "#include <carla/CarlaBackend")
(("#include <CarlaUtils") "#include <carla/CarlaUtils"))
(with-directory-excursion "OpulenZ"
;; Do not use the bundled adplug.
(substitute* "CMakeLists.txt"
((".*adplug .*") "")
((".*adplug/.*") "")
(("^\\)") "")
(("\\.png\"") ".png\"\n)"))
;; Use adplug from the system.
(substitute* "OpulenZ.cpp"
(("<opl\\.h>") "<adplug/opl.h>")
(("<temuopl\\.h>") "<adplug/temuopl.h>")
(("<mididata\\.h>") "<adplug/mididata.h>")))
;; Do not use the bundled hiir.
(substitute* "SlewDistortion/CMakeLists.txt"
(("TARGET_LINK_LIBRARIES\\(slewdistortion hiir\\)") ""))
;; Do not use the bundled exprtk.
(substitute* "Xpressive/CMakeLists.txt"
((".*\\(exprtk .*") "")
((".*xpressive exprtk.*") "")))
;; Avoid "invalid conversion from 'const unsigned char*' to
;; 'unsigned char*'" error.
(substitute* "plugins/OpulenZ/OpulenZ.cpp"
(("unsigned char \\*inst") "const unsigned char *inst"))))))
(arguments
(substitute-keyword-arguments arguments
((#:qtbase _ #f) qtbase)
((#:configure-flags flags)
#~(cons* "-DWANT_QT6=ON" (delete "-DWANT_QT5=ON" #$flags)))
((#:phases phases)
#~(modify-phases #$phases
(delete 'unpack-rpmalloc)
(replace 'fix-carla-export
;; Taken from NixOS package definition.
(lambda _
(substitute* "plugins/CarlaBase/Carla.h"
(("CARLA_EXPORT")
"CARLA_API_EXPORT"))))))))
(native-inputs
(modify-inputs native-inputs
(delete "rpmalloc")
(replace "qttools" qttools)))
(inputs
(modify-inputs inputs
(delete "qtx11extras")
(replace "carla" carla-2.6)
(replace "qtwayland" qtwayland)
(replace "sdl12-compat" sdl2)
(append adplug
exprtk
hiir
libxml2
lilv
lv2
perl
perl-list-moreutils
perl-xml-parser
qtsvg
ringbuffer
suil)))
(native-search-paths
(list (search-path-specification
(variable "LV2_PATH")
(files '("lib/lv2"))))))))
(define-public lmms-next-with-vst
(package/inherit lmms-next
(name "lmms-next-with-vst")
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(cons* (string-append "-DWINE_LOCATIONS=" #$(wine-for-system))
(delete "-DWANT_VST=OFF" #$flags)))))
(inputs
(modify-inputs inputs
(append (wine-for-system))))))
(define-public stargate
(package
(name "stargate")
+13 -13
View File
@@ -1994,7 +1994,7 @@ and up to 1 Mbit/s downstream.")
(define-public whois
(package
(name "whois")
(version "5.6.6")
(version "5.6.5")
(source
(origin
(method git-fetch)
@@ -2003,7 +2003,7 @@ and up to 1 Mbit/s downstream.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05549a8r7qr6rv26i7kwg4h6ciwa4cc8dsd5zhfprjrjk909ga24"))))
(base32 "145lp72347vmr1ipai8rz10bqi6lkjx104g3rq2dmdi2ygfqq9nc"))))
(build-system gnu-build-system)
(arguments
(list
@@ -2948,7 +2948,7 @@ that block port 22.")
(define-public iperf
(package
(name "iperf")
(version "3.21")
(version "3.19.1")
(source
(origin
(method git-fetch)
@@ -2957,7 +2957,7 @@ that block port 22.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1r4873czw1hyq2g0z1dfxpbsdxcf6i2iizyvqaz24z8dshr2kdmi"))))
(base32 "1kj2p3dprxv1r77whd5g1wak2k71c7khhrkkx60lcnkf70qy5q67"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -3397,7 +3397,7 @@ to test using multiple servers in a single run.")
(define-public atftp
(package
(name "atftp")
(version "0.8.1")
(version "0.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3405,7 +3405,7 @@ to test using multiple servers in a single run.")
(commit (string-append "v" version))))
(sha256
(base32
"1pj0270r87iv84vrlrrbp66vkzdmaa4ramhx34b151hclkiv3c8j"))
"019qrh2wpvr577ksvs3s82q6kiqm5i6869aj7qba326b59lhkxrc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -4155,7 +4155,7 @@ never see any machines other than the one Dante is running on.")
(base32 "15j09x36i6zj6innl0w1mfzlc56qmjwrs82my8dsagqa2ikd08ya"))))
(build-system cmake-build-system)
(inputs
(list asio-1.28 catch-framework openssl))
(list asio catch-framework openssl))
(arguments
`(;; Running parallel tests results in "bind: Address already in use" error
;; in test service_status_feature_test_suite.
@@ -5489,22 +5489,22 @@ and IP address registration information in JSON format over HTTP.")
(define-public wireproxy
(package
(name "wireproxy")
(version "1.1.2")
(version "1.0.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/windtf/wireproxy")
(url "https://github.com/whyvl/wireproxy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0nzs3xzvq3rhqg808qgazymmwdx9p3nw669wl3r5xclhvibbyla7"))))
(base32 "0ypk9migx1l7xwcxr542pcdy8q2bm33wp03bqzgav0hp1fsrmi8p"))))
(build-system go-build-system)
(arguments
(list
#:install-source? #f
#:import-path "github.com/windtf/wireproxy/cmd/wireproxy"
#:unpack-path "github.com/windtf/wireproxy"
#:import-path "github.com/pufferffish/wireproxy/cmd/wireproxy"
#:unpack-path "github.com/pufferffish/wireproxy"
#:test-subdirs #~(list "../../..."))) ;to test the whole module
(native-inputs
(list go-github-com-akamensky-argparse
@@ -5515,7 +5515,7 @@ and IP address registration information in JSON format over HTTP.")
go-golang-org-x-net
go-golang-zx2c4-com-wireguard
go-suah-dev-protect))
(home-page "https://github.com/windtf/wireproxy")
(home-page "https://github.com/whyvl/wireproxy")
(synopsis "Wireguard client that exposes itself as a socks5 proxy")
(description
"wireproxy is a completely userspace application that connects to a
+45 -23
View File
@@ -276,28 +276,24 @@ HTTP.Agent instances from a function.")
(package
(name "node-balanced-match")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments
(list
#:tests? #f ;FIXME Tests require 'tape'.
#:phases
#~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json (delete-dev-dependencies)))))))
(arguments (list
#:tests? #f ; FIXME Tests require 'tape'.
#:phases #~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json
(delete-dev-dependencies)))))))
(synopsis "Match balanced character pairs, like { and }")
(description
"Match balanced string pairs, like { and } or <b> and </b>. Supports
regular expressions as well!")
(description "Match balanced string pairs, like { and } or <b> and </b>. Supports\
regular expressions as well!")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
@@ -348,7 +344,7 @@ addons in a wide array of potential locations.")
(lambda _
(modify-json (delete-dev-dependencies)))))))
(inputs
(list node-balanced-match node-concat-map))
(list node-balanced-match-1 node-concat-map))
(home-page "https://github.com/juliangruber/brace-expansion")
(synopsis "Brace expansion for JavaScript")
(description "This package provides brace expansion as known from
@@ -380,6 +376,32 @@ sh/bash, for JavaScript.")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
(define-public node-balanced-match-1
(package
(name "node-balanced-match")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments
'(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'patch-dependencies 'delete-dev-dependencies
(lambda _
(modify-json (delete-dev-dependencies)))))))
(home-page "https://github.com/juliangruber/balanced-match")
(synopsis "Match balanced string pairs in JavaScript")
(description "This package provides a way to match balanced string pairs.")
(license license:expat)))
(define-public node-buffer-crc32
(package
(name "node-buffer-crc32")
@@ -2302,7 +2324,7 @@ a string consisting of a number and a time unit is converted to milliseconds.")
(define-public node-nan
(package
(name "node-nan")
(version "2.22.0")
(version "2.26.2")
(source
(origin
(method git-fetch)
@@ -2311,7 +2333,7 @@ a string consisting of a number and a time unit is converted to milliseconds.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02gqm23x26glffvyxrnk610hy3hg0kwh2v58dhnb032l0jhjzqvp"))))
(base32 "18xv0m40jgy3sc4pldw95w6p72ms5a5h0x2sm2mimlwlmxmrjlmb"))))
(build-system node-build-system)
(arguments
`(#:phases
+48 -58
View File
@@ -274,7 +274,7 @@
(lambda (file stat)
(executable-file? file))
#:stat lstat)))))
(add-after 'install 'install-npmrc
(add-after 'install 'fix-node-gyp-reference
;; Note: programs like node-gyp only receive these values if
;; they are started via `npm` or `npx`.
;; See: https://github.com/nodejs/node-gyp#npm-configuration
@@ -482,7 +482,7 @@ Node.js and web browsers.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/indutny/llparse-builder.git")
(url "https://github.com/nodejs/llparse-builder.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -491,10 +491,6 @@ Node.js and web browsers.")
(modules '((guix build utils)))
(snippet
'(begin
;; FIXME: Unneeded runtime dependency.
;; https://github.com/indutny/llparse-builder/pull/2
(substitute* "package.json"
(("\"@types/debug.*,") ""))
;; Fix imports for esbuild.
;; https://github.com/evanw/esbuild/issues/477
(substitute* '("src/node/invoke.ts"
@@ -521,7 +517,8 @@ Node.js and web browsers.")
(add-after 'patch-dependencies 'delete-dependencies
(lambda _
(modify-json (delete-dependencies
`("@types/mocha"
`("@types/debug"
"@types/mocha"
"@types/node"
"mocha"
"ts-node"
@@ -539,7 +536,7 @@ Node.js and web browsers.")
(list node-binary-search-bootstrap node-debug-bootstrap))
(native-inputs
(list esbuild))
(home-page "https://github.com/indutny/llparse-builder#readme")
(home-page "https://github.com/nodejs/llparse-builder#readme")
(properties '((hidden? . #t)))
(synopsis "Graph builder for consumption by llparse")
(description "This package builds graphs for consumption by llparse.")
@@ -553,7 +550,7 @@ Node.js and web browsers.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/indutny/llparse-frontend.git")
(url "https://github.com/nodejs/llparse-frontend.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -602,7 +599,7 @@ Node.js and web browsers.")
(list node-debug-bootstrap node-llparse-builder-bootstrap))
(native-inputs
(list esbuild))
(home-page "https://github.com/indutny/llparse-frontend#readme")
(home-page "https://github.com/nodejs/llparse-frontend#readme")
(properties '((hidden? . #t)))
(synopsis "Frontend for the llparse compiler")
(description "This package is a frontend for the llparse compiler.")
@@ -611,17 +608,17 @@ Node.js and web browsers.")
(define-public node-llparse-bootstrap
(package
(name "node-llparse")
(version "7.1.0")
(version "7.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/indutny/llparse.git")
(url "https://github.com/nodejs/llparse.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10da273iy2if88hp79cwms6c8qpsl1fkgzll6gmqyx5yxv5mkyp6"))
"09hqjcynkz5iv7aydzdwgs42r7y2zylplv0ff7w0vkdsgb08j22a"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -645,10 +642,14 @@ Node.js and web browsers.")
(add-after 'patch-dependencies 'delete-dependencies
(lambda args
(modify-json (delete-dependencies
`("@types/debug"
`("@stylistic/eslint-plugin"
"@typescript-eslint/eslint-plugin"
"@typescript-eslint/parser"
"@types/debug"
"@types/mocha"
"@types/node"
"esm"
"eslint"
"llparse-test-fixture"
"mocha"
"ts-node"
@@ -676,7 +677,7 @@ parser definition into a C output.")
(define-public llhttp-bootstrap
(package
(name "llhttp")
(version "9.2.1")
(version "9.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -685,7 +686,7 @@ parser definition into a C output.")
(file-name (git-file-name name version))
(sha256
(base32
"0mzg19aqb1am498gms0z75cwd5kmfg9p78b1hhxw67019nsjcbac"))
"0yz4ys94pjq2fs2pihpqjvmxj2mbpm8k5prlm445z4qlajzlr4kb"))
(patches (search-patches "llhttp-ponyfill-object-fromentries.patch"))
(modules '((guix build utils)))
(snippet
@@ -747,14 +748,14 @@ source files.")
(define-public node-lts
(package
(inherit node-bootstrap)
(version "22.14.0")
(version "24.14.1")
(source (origin
(method url-fetch)
(uri (string-append "https://nodejs.org/dist/v" version
"/node-v" version ".tar.gz"))
(sha256
(base32
"12msprh604s6qdsgwymxw4kl8ivaldbaydf4v37lbp02aznk2kkc"))
"1cri5lp3a9jhh34dbd48hq2zyb7xjb9qs6zl36l3q2blawgwz642"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -770,13 +771,17 @@ source files.")
"deps/icu-small"
"deps/nghttp2"
"deps/ngtcp2"
"deps/llhttp"
"deps/uv"
"deps/zlib"))))))
"deps/zlib"
"deps/zstd"))))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags configure-flags)
''("--shared-cares"
"--shared-libuv"
"--shared-http-parser"
"--shared-http-parser-libname=llhttp"
"--shared-nghttp2"
"--shared-openssl"
"--shared-zlib"
@@ -784,6 +789,7 @@ source files.")
"--with-intl=system-icu"
"--shared-ngtcp2"
"--shared-nghttp3"
"--shared-zstd"
;;Needed for correct snapshot checksums
"--v8-enable-snapshot-compression"))
((#:phases phases)
@@ -846,9 +852,11 @@ source files.")
(for-each delete-file
'("test/parallel/test-https-agent-unref-socket.js"))
;; This test is timing-sensitive, and fails sporadically on
;; These tests are timing-sensitive, and fail sporadically on
;; slow, busy, or even very fast machines.
(delete-file "test/parallel/test-fs-utimes.js")
(for-each delete-file
'("test/parallel/test-fs-utimes.js"
"test/sequential/test-performance-eventloopdelay.js"))
;; FIXME: This test fails randomly:
;; https://github.com/nodejs/node/issues/31213
@@ -899,18 +907,6 @@ source files.")
"test/parallel/test-http2-invalid-last-stream-id.js")
(("client\\.connect\\(address\\)")
"client.connect(address.port)"))))
(add-after 'delete-problematic-tests 'replace-llhttp-sources
(lambda* (#:key inputs #:allow-other-keys)
;; Replace pre-generated llhttp sources
(let ((llhttp (assoc-ref inputs "llhttp")))
(copy-file (string-append llhttp "/src/llhttp.c")
"deps/llhttp/src/llhttp.c")
(copy-file (string-append llhttp "/src/api.c")
"deps/llhttp/src/api.c")
(copy-file (string-append llhttp "/src/http.c")
"deps/llhttp/src/http.c")
(copy-file (string-append llhttp "/include/llhttp.h")
"deps/llhttp/include/llhttp.h"))))
;; npm installs dependencies by copying their files over a tar
;; stream. A file with more than one hardlink is marked as a
;; "Link". pacote/lib/fetcher.js calls node-tar's extractor with a
@@ -935,30 +931,22 @@ source files.")
;; https://github.com/npm/pacote/issues/285
(add-after 'install 'ignore-number-of-hardlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((file (string-append (assoc-ref outputs "out")
"/lib/node_modules/npm/node_modules"
"/tar/lib/write-entry.js")))
(substitute* file
(let ((dir (string-append (assoc-ref outputs "out")
"/lib/node_modules/npm/node_modules"
"/tar/dist")))
(substitute*
(list (string-append dir "/esm/write-entry.js")
(string-append dir "/commonjs/write-entry.js"))
(("this.stat.nlink > 1") "false")))))
(add-after 'install 'install-node-gyp-wrapper
(replace 'fix-node-gyp-reference
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dir (string-append out "/lib/node_modules/npm/bin/node-gyp-bin"))
(file (string-append dir "/node-gyp")))
(mkdir-p dir)
;; See https://github.com/npm/cli/issues/6842
(call-with-output-file file
(lambda (port)
(format port "#!~a/bin/sh
if [ \"x$npm_config_node_gyp\" = \"x\" ]; then
~a/bin/node \"~a/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"$@\"
else
\"$npm_config_node_gyp\" \"$@\"
fi"
(assoc-ref inputs "bash")
out
out)))
(chmod file #o555))))))))
(let ((out (assoc-ref outputs "out")))
(for-each
(lambda (spec)
(wrap-program (string-append out spec)
`("npm_package_config_node_gyp_nodedir" = (,out))))
'("/bin/npm"
"/bin/npx")))))))))
(native-inputs
(list ;; Runtime dependencies for binaries used as a bootstrap.
c-ares-for-node-lts
@@ -974,7 +962,8 @@ fi"
pkg-config
procps
python
util-linux))
util-linux
gcc-14))
(inputs
(list bash-minimal
coreutils
@@ -987,7 +976,8 @@ fi"
nghttp3
`(,nghttp2 "lib")
openssl-3.0
zlib))
zlib
`(,zstd-1.5.7 "lib")))
(supported-systems
(cons "riscv64-linux" (package-supported-systems node-bootstrap)))
(properties (alist-delete 'hidden? (package-properties node-bootstrap)))))
@@ -1003,6 +993,6 @@ fi"
`(cons* "--shared" "--without-npm" ,flags))
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(delete 'install-npmrc)
(delete 'fix-node-gyp-reference)
(delete 'patch-nested-shebangs)
(delete 'ignore-number-of-hardlinks)))))))
+2 -60
View File
@@ -31,7 +31,6 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
@@ -47,16 +46,13 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages scanner)
#:use-module (gnu packages xml))
#:use-module (gnu packages xml)
#:use-module (gnu packages image))
(define-public ocrad
(package
@@ -79,60 +75,6 @@ feature extraction method. It can read images in PBM, PGM or PPM formats and
it produces text in 8-bit or UTF-8 formats.")
(license license:gpl3+)))
(define-public python-pytesseract
(package
(name "python-pytesseract")
(version "0.3.13")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/madmaze/pytesseract")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16arn7ygk7ain5j5ayjcy10y6yhwfcc090i3r8q553m89rr1w0w1"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(map (lambda (name)
(string-append "--deselect=tests/pytesseract_test.py::" name))
;; These tests cannot find generated files
'("test_image_to_pdf_or_hocr[pdf]"
"test_run_and_get_multiple_output[extensions0]"
"test_run_and_get_multiple_output[extensions1]"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-tesseract-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "pytesseract/pytesseract.py"
(("tesseract_cmd = 'tesseract'")
(format #f "tesseract_cmd = '~a'"
(search-input-file inputs "/bin/tesseract"))))))
(add-before 'check 'set-tessdata-prefix
(lambda _
(setenv "TESSDATA_PREFIX"
;; needs "fra" language
(string-append #$(this-package-native-input
"tesseract-ocr-tessdata-fast")
"/share/tessdata")))))))
(native-inputs (list python-numpy
python-packaging
python-pandas
python-pytest
python-setuptools
tesseract-ocr
tesseract-ocr-tessdata-fast))
(inputs (list tesseract-ocr))
(propagated-inputs (list python-pandas python-pillow))
(home-page "https://github.com/madmaze/pytesseract")
(synopsis "Python wrapper for Google's Tesseract-OCR")
(description
"This package provides @command{pytesseract} and Python wrapper library
for Google's Tesseract-@acronym{OCR, optical character recognition}.")
(license license:asl2.0)))
(define-public tesseract-ocr-tessdata-fast
(package
(name "tesseract-ocr-tessdata-fast")
+148 -101
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2026 Daniel Patrick Fahey <dpf@helmcontrol.ltd>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,7 +18,6 @@
(define-module (gnu packages opencog)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages databases)
@@ -27,12 +25,8 @@
#:use-module (gnu packages language)
#:use-module (gnu packages linux)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages networking)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages serialization)
#:use-module (gnu packages tls)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -43,8 +37,8 @@
(define-public cogutil
;; The last release was in 2016. Other OpenCog packages require a later
;; version.
(let ((commit "64dca9083dcfa485dcb70fd6fe7ba1f80e0f4082")
(revision "2"))
(let ((commit "b07b41b2eaf01627c78b27f1f28bb09ef7086f8e")
(revision "1"))
(package
(name "cogutil")
(version (git-version "2.0.3" revision commit))
@@ -56,13 +50,10 @@
(file-name (git-file-name name version))
(sha256
(base32
"01rr39sq9wakw1wnfzg7m4zl7g8qh3d35ww6q39irx19d6nq66h9"))))
"1ymmcrinp0prlxsmxmwdjjl4kgaj7wzq39d5b1q2apgg94yfdhqb"))))
(build-system cmake-build-system)
(arguments
(list
;; Skip ldconfig, which requires root and is unnecessary in Guix.
#:configure-flags
#~(list "-DSKIP_LDCONF=ON")
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -78,7 +69,7 @@
(invoke file))
(find-files "tests" "UTest$"))))))))
(inputs
(list boost))
(list boost-1.83))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
@@ -91,9 +82,9 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
(license (list license:agpl3 license:asl2.0)))))
(define-public atomspace
;; The last release was in 2016.
(let ((commit "c8d633bf272b838c2132c21b7c8ddf169a18dd22")
(revision "2"))
;; The last release was in 2016 and doesn't build with our Boost package.
(let ((commit "86c848dfc7135b3c47deb581f8da54a60f6711c9")
(revision "1"))
(package
(name "atomspace")
(version (git-version "5.0.3" revision commit))
@@ -105,20 +96,15 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
(file-name (git-file-name name version))
(sha256
(base32
"0fdqmskjh9d7363ldwmh3zhwal847shm15nhb2nan4g4aqdmckrz"))))
"0vxzhszb0z8081li38hid07a5axzxyflsmq1mcn4b1k4z1j8ggch"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache")
(string-append "-DPYTHON_INSTALL_PREFIX=" #$output
"/lib/python3.11/site-packages"))
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -131,15 +117,15 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
#:tests? tests? #:test-target "tests" args)
;; Failing tests.
(for-each delete-file
'("tests/scm/MultiAtomSpaceUTest"))
'("tests/matrix/VectorAPIUTest"
"tests/scm/MultiAtomSpaceUTest"))
(setenv "GUILE_LOAD_PATH" ".:opencog/scm")
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list boost cogutil gmp guile-3.0-latest postgresql))
(list boost cogutil gmp guile-2.2 postgresql))
(native-inputs
`(("cxxtest" ,cxxtest)
("python-cython" ,python-cython)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/atomspace/")
@@ -152,59 +138,10 @@ ordinary distributed (graph) databases, providing a large variety of advanced
features not otherwise available.")
(license license:agpl3))))
(define-public atomspace-storage
;; Storage backends for AtomSpace.
(let ((commit "ecd88d673258e51f65cc0605400003affdf4d694")
(revision "0"))
(package
(name "atomspace-storage")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/atomspace-storage")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"12ssnc313cm5n8bc6zw53dkjm9crrry90lpsknzxafnm61mzcgx3"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list atomspace boost cogutil gmp guile-3.0-latest))
(native-inputs
(list cxxtest pkg-config python-minimal))
(home-page "https://github.com/opencog/atomspace-storage")
(synopsis "Storage backends for AtomSpace")
(description "AtomSpace-Storage provides various storage backends
for the AtomSpace hypergraph database.")
(license license:agpl3))))
(define-public cogserver
;; There are no releases.
(let ((commit "3c4da0bd786262bd69a8306f9da88b13f0add1f2")
(revision "3"))
(let ((commit "ec5f3b9590db0f6a085b5d0320f5d3710e0f1635")
(revision "2"))
(package
(name "cogserver")
(version (git-version "0" revision commit))
@@ -216,21 +153,15 @@ for the AtomSpace hypergraph database.")
(file-name (git-file-name name version))
(sha256
(base32
"0hfz9z44wpzrabs9fgxhv02jzn0i40di2ncbiizn03g7gccawds5"))))
"1h0vcxb6n5dc654xqinqcxc7dxwcs6bsywgir8rhrqiykk760mzl"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;tests start network server and hang
#:configure-flags
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache")
(string-append "-DPYTHON_INSTALL_PREFIX=" #$output
"/lib/python3.11/site-packages"))
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -246,13 +177,10 @@ for the AtomSpace hypergraph database.")
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list asio atomspace atomspace-storage boost cogutil
gmp guile-3.0-latest jsoncpp openssl))
(list atomspace boost cogutil gmp guile-2.2))
(native-inputs
`(("cxxtest" ,cxxtest)
("netcat" ,netcat-openbsd)
("python" ,python)
("python-cython" ,python-cython)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/cogserver/")
(synopsis "OpenCog network server")
@@ -260,11 +188,129 @@ for the AtomSpace hypergraph database.")
OpenCog framework.")
(license license:agpl3))))
(define-public attention
;; There are no releases.
(let ((commit "87d43679280ce486cd6757765d2e1df6d502991d")
(revision "1"))
(package
(name "attention")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/attention")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0sndslphicv6w9qpag168rqkxq5sf71l5qbfx6zhsd5bzlf5fhwv"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
;; Failing tests.
(for-each delete-file
'("tests/attention/AttentionParamQueryUTest"
"tests/attention/HebbianCreationModuleUTest"
"tests/attention/ImportanceDiffusionUTest"))
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list atomspace
boost
cogserver
cogutil
gmp
guile-2.2))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/attention/")
(synopsis "OpenCog attention allocation subsystem")
(description "Attention Allocation is an OpenCog subsystem meant to
control the application of processing and memory resources to specific
tasks.")
(license license:agpl3))))
(define-public opencog
;; There are no recent releases.
(let ((commit "ceac90507610cb2d0ee98f97a2086865292b1204")
(revision "1"))
(package
(name "opencog")
(version (git-version "0.1.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/opencog")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1j8wv910fvrmph370wv5pv2f4bc2s9vl6i7bw3pkmwbdhxkhjbhm"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
`(("attention" ,attention)
("atomspace" ,atomspace)
("boost" ,boost)
("cogserver" ,cogserver)
("cogutil" ,cogutil)
("gmp" ,gmp)
("guile" ,guile-2.2)
("libuuid" ,util-linux "lib")
("link-grammar" ,link-grammar)))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/attention/")
(synopsis "Framework for integrated artificial intelligence")
(description "OpenCog is a framework for developing AI systems,
especially appropriate for integrative multi-algorithm systems, and artificial
general intelligence systems. It currently contains a functional core
framework, and a number of cognitive agents at varying levels of completion,
some already displaying interesting and useful functionalities alone and in
combination.")
(license license:agpl3))))
(define-public agi-bio
;; There are no releases.
(let ((commit "2f723ad79afc38df9dce73d340ee24c38efb2199")
(revision "2"))
(let ((commit "b5c6f3d99e8cca3798bf0cdf2c32f4bdb8098efb")
(revision "1"))
(package
(name "agi-bio")
(version (git-version "0" revision commit))
@@ -276,7 +322,7 @@ OpenCog framework.")
(file-name (git-file-name name version))
(sha256
(base32
"1gqmwjbqdjr0qz4wpsxh0k8wam59fvd3pnjxhfswdpvapcl9syk0"))))
"0c3q0nhmd03nvqm1ih10y28n596cjvfhkcfvzw2fmz1sn3ywdah4"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are none
@@ -284,10 +330,10 @@ OpenCog framework.")
(list
(string-append "-DGUILE_INCLUDE_DIR="
(assoc-ref %build-inputs "guile")
"/include/guile/3.0/")
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR="
(assoc-ref %outputs "out")
"/share/guile/site/3.0/"))
"/share/guile/site/2.2/"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-unqualified-load
@@ -296,9 +342,10 @@ OpenCog framework.")
(("\\(load \"bioscience/types/bioscience_types.scm\"\\)")
(format #f "(load \"~a/bioscience/types/bioscience_types.scm\")"
(string-append (assoc-ref outputs "out")
"/share/guile/site/3.0/opencog")))))))))
"/share/guile/site/2.2/opencog"))))
#t)))))
(inputs
(list atomspace cogutil gmp guile-3.0-latest))
(list atomspace cogutil gmp guile-2.2))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
+2 -2
View File
@@ -767,7 +767,7 @@ which are indicated in the file name.")
(define-public guix-modules
(package
(name "guix-modules")
(version "0.4.0")
(version "0.3.0")
(home-page "https://codeberg.org/guix-science/guix-modules")
(source (origin
(method git-fetch)
@@ -776,7 +776,7 @@ which are indicated in the file name.")
(file-name (string-append "guix-modules-" version "-checkout"))
(sha256
(base32
"1zmbd04y69gcak43rnizk8vjgpxhv5m67k3z4fk9cyiymcs872ky"))))
"1cdpxmhrbbazr4z53rpk6ssk3clpv4j16ivha7lr4nqg48mxha9q"))))
(build-system guile-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
+68 -82
View File
@@ -3,7 +3,6 @@
;;; Copyright © 2023 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2023, 2024 altadil <Altadil@protonmail.com>
;;; Copyright © 2024 jgart <jgart@dismail.de>
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -52,7 +51,7 @@
(define-public granite
(package
(name "granite")
(version "7.8.1")
(version "7.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -61,19 +60,13 @@
(file-name (git-file-name name version))
(sha256
(base32
"01s37b6ssfhawbzxzq5yyjcxq9m2qf16q0h4g4vfhj1c6f4l8khy"))))
"0pyvkif2kin5dskh7adadsh4r96mvx12y7cs6gnm0ml733q548dj"))))
(build-system meson-build-system)
(arguments
(list
#:configure-flags
#~(list "-Ddemo=false") ;requires libshumate
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")))))))
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(setenv "DESTDIR" "/"))))))
(inputs (list sassc))
(propagated-inputs (list glib libgee gtk)) ;required in .pc file
(native-inputs (list gettext-minimal
@@ -103,21 +96,12 @@ in apps built for the Pantheon desktop.")
(sha256
(base32
"0ilslmg63hh2x7h5rvs3mhzw1y9ixhhkqnn1j1lzwm12v2iidkaq"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags _ '())
#~'())
((#:phases phases)
#~(modify-phases #$phases
(replace 'disable-icon-cache
(lambda _
(setenv "DESTDIR" "/")))))))
(propagated-inputs (list glib libgee gtk+))))
(define-public pantheon-calculator
(package
(name "pantheon-calculator")
(version "8.0.1")
(version "8.0.0")
(source
(origin
(method git-fetch)
@@ -127,7 +111,7 @@ in apps built for the Pantheon desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"157a2xryp9013m5grr3brfrs6hqz2ndg0ys8h0184am5zvg9w4sw"))))
"1as5rxd0b6z3lnh8my36szr056rxxqwkjzvaiylspx5g2kg3qjs0"))))
(build-system meson-build-system)
(arguments
(list
@@ -158,7 +142,7 @@ desktop.")
(define-public pantheon-calendar
(package
(name "pantheon-calendar")
(version "8.0.1")
(version "8.0.0")
(source
(origin
(method git-fetch)
@@ -168,7 +152,7 @@ desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"0344wr5ka2cfkr46vrclh1w9nhrrznn0jbb5g95dfww2czrp6iwj"))))
"1bynv5gnfs4sdr5ngd1c8jh42fkiw4gl5064fb579hws2jniy540"))))
(build-system meson-build-system)
(arguments
(list
@@ -177,13 +161,12 @@ desktop.")
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false"))))
(add-after 'install 'install-symlinks
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append #$output
"/bin/io.elementary.calendar"))
(link (string-append #$output "/bin/pantheon-calendar")))
@@ -217,7 +200,7 @@ elementary OS.")
(define-public pantheon-icons
(package
(name "pantheon-icons")
(version "8.2.0")
(version "8.1.0")
(source
(origin
(method git-fetch)
@@ -226,7 +209,7 @@ elementary OS.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "04x8r1kknm7iswlg71da24aqqgrs494mivdx3jx1wz1jz5wzxnwy"))))
(base32 "1yvjisvcjdpgibnc5l5cm16rw53zffinp1pvknlllz8wcdylqnss"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "-Dvolume_icons=false"
@@ -234,7 +217,7 @@ elementary OS.")
(native-inputs (list gettext-minimal ;for msgfmt
librsvg
xcursorgen))
(propagated-inputs (list adwaita-icon-theme))
(propagated-inputs (list hicolor-icon-theme))
(synopsis "Named, vector icons for the pantheon desktop")
(description
"pantheon-icons is an original set of vector icons designed
@@ -245,7 +228,7 @@ for elementary OS and its desktop environment: Pantheon.")
(define-public pantheon-photos
(package
(name "pantheon-photos")
(version "8.0.1")
(version "8.0.0")
(source
(origin
(method git-fetch)
@@ -254,20 +237,18 @@ for elementary OS and its desktop environment: Pantheon.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "15ppxzbj882i2hpm88nn5azijhmgjc9js07i3wdpick2ciw83apr"))))
(base32 "1z3b582y093x6pb3bl7zs4w97vg88rflyhwxfaycxw0rv8pcshhi"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false"))))
(add-after 'install 'install-symlinks
(add-after 'unpack 'disable-schema-cache-generation
(lambda _
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append #$output
"/bin/io.elementary.photos"))
(link (string-append #$output "/bin/pantheon-photos")))
@@ -309,7 +290,7 @@ also be used on others.")
(define-public pantheon-screenshot
(package
(name "pantheon-screenshot")
(version "8.0.4")
(version "8.0.1")
(source
(origin
(method git-fetch)
@@ -318,7 +299,7 @@ also be used on others.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ib6g47pykpscfazd12gssxv6in0v4jlcn8lfp0i1g0i4ap36ml5"))))
(base32 "1h3xv0pckkkgvqkk6fxssydq9gmncapaf1hx4n7j19jcvhwx65da"))))
(build-system meson-build-system)
(arguments
(list
@@ -328,7 +309,7 @@ also be used on others.")
(add-after 'unpack 'disable-schema-cache-generation
(lambda _ (setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda _
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append #$output
"/bin/io.elementary.screenshot"))
(link (string-append #$output
@@ -355,7 +336,7 @@ the Pantheon desktop environment.")
(define-public pantheon-stylesheet
(package
(name "pantheon-stylesheet")
(version "8.2.2")
(version "8.1.0")
(source
(origin
(method git-fetch)
@@ -364,7 +345,7 @@ the Pantheon desktop environment.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "065zzv1b39i0j775kc60cywiwizw2rckg2kildfhs4mp81yswdv6"))))
(base32 "1h8k75m9jrqxwq0py8hrqrsc83myrwpmnrwx05aljdyr6sys06k6"))))
(build-system meson-build-system)
(native-inputs (list gettext-minimal)) ;for msgfmt
(inputs (list sassc))
@@ -377,7 +358,7 @@ desktop environment (originally from elementary OS).")
(define-public pantheon-terminal
(package
(name "pantheon-terminal")
(version "8.0.0")
(version "6.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -386,7 +367,7 @@ desktop environment (originally from elementary OS).")
(file-name (git-file-name name version))
(sha256
(base32
"0kldk74rmifgbf2wq9qbzv414dl4mgf94mzr5a4i2cags4rxlci3"))))
"142nwx2jc7ks529dk8dqhgs39gdqh6bc7gv9b10qdfm81bwqjkjv"))))
(build-system meson-build-system)
(arguments
(list
@@ -394,6 +375,10 @@ desktop environment (originally from elementary OS).")
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append #$output
@@ -408,13 +393,12 @@ desktop environment (originally from elementary OS).")
pkg-config
vala
xvfb-run))
(inputs (list granite
gtk
libadwaita
(inputs (list granite-6
gtk+
libgee
libhandy
pcre2
vte))
vte/gtk+-3))
(synopsis "Terminal emulator from elementaryOS")
(description "pantheon-terminal is a lightweight, beautiful and simple
terminal. It comes with sane defaults, browser-class tabs, sudo paste
@@ -426,7 +410,7 @@ terminal in the Pantheon desktop.")
(define-public sideload
(package
(name "sideload")
(version "6.3.1")
(version "6.2.1")
(source
(origin
(method git-fetch)
@@ -436,40 +420,42 @@ terminal in the Pantheon desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"0hn9gnzr25i0k6b81ia6c73lqmr43grfdwn18sfp8xhjiqlqqmlq"))))
"0vrj91899f13cvzpycqy3y74hmixsffjbzsj29da7n370fa3ci86"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
`(#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-symlinks
(lambda _
(let ((bin (string-append #$output
"/bin/io.elementary.sideload"))
(link (string-append #$output "/bin/sideload")))
(symlink bin link)))))))
(modify-phases %standard-phases
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin/io.elementary.sideload"))
(link (string-append out "/bin/sideload")))
(symlink bin link)))))))
(inputs
(list flatpak
glib
granite
gtk+
hicolor-icon-theme
libgee
libhandy
libostree
libxml2))
`(("flatpak" ,flatpak)
("glib" ,glib)
("granite" ,granite)
("gtk" ,gtk+)
("hicolor-icon-theme" ,hicolor-icon-theme)
("libgee" ,libgee)
("libhandy" ,libhandy)
("libostree" ,libostree)
("libxml2" ,libxml2)))
(propagated-inputs
;; Sideload needs these in the environment to fetch data securely from
;; Flatpak remotes.
(list gnupg gpgme))
(native-inputs
(list desktop-file-utils ;for update-desktop-database
gettext-minimal
`(,glib "bin")
gobject-introspection
pkg-config
vala))
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("vala" ,vala)))
(home-page "https://github.com/elementary/sideload")
(synopsis "Graphical application to side-load Flatpaks")
(description "Sideload handles flatpakref files, like those you might find
@@ -480,7 +466,7 @@ download.")
(define-public pantheon-wallpapers
(package
(name "pantheon-wallpapers")
(version "8.0.0")
(version "7.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -488,7 +474,7 @@ download.")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"163y98x0vc8icmd5prrjja7sp3clp8apvx0ha2shiaymxnprifm9"))))
"0km3h52kapbm8ymwxdxasz80qbgzkfni7981pdyf740wjp7linwb"))))
(build-system meson-build-system)
(native-inputs (list gettext-minimal)) ; for msgfmt
(inputs (list libexif))
@@ -0,0 +1,84 @@
origin patch from nixos.
see: https://raw.githubusercontent.com/NixOS/nixpkgs/d916df777523d75f7c5acca79946652f032f633e/pkgs/by-name/ct/ctune/cmake_disable_git_clone.patch
diff --git a/CMakeLists.txt.orig b/CMakeLists.txt
index ac0488e..a3724bc 100644
--- a/CMakeLists.txt.orig
+++ b/CMakeLists.txt
@@ -50,14 +50,6 @@ include(FetchContent)
set(CMAKE_VERBOSE_MAKEFILE ON)
-#========================================== PRE-CHECKS ============================================#
-include(FindGit)
-find_package(Git)
-
-if (NOT Git_FOUND)
- message(FATAL_ERROR "Required package 'Git' not found on system.")
-endif ()
-
#======================================== LIB IMPORTS =============================================#
# ======= #
# OpenSSL #
@@ -65,40 +57,17 @@ endif ()
find_package(OpenSSL REQUIRED)
include_directories(${OPENSSL_INCLUDE_DIR})
-# ============== #
-# JSON-C library #
-# ============== #
-set(JSONC_DOWNLOAD_PATH "${TEMP_DIR_PATH}/libjsonc")
-set(JSONC_INSTALL_PATH "${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}")
-
-add_custom_target(make-jsonc-install-dir ALL
- COMMAND ${CMAKE_COMMAND} -E make_directory ${JSONC_INSTALL_PATH}
-)
-
-ExternalProject_Add(libjsonc
- PREFIX "${JSONC_DOWNLOAD_PATH}"
- SOURCE_DIR "${JSONC_DOWNLOAD_PATH}/src/libjsonc-build"
- GIT_REPOSITORY "https://github.com/json-c/json-c.git"
- GIT_TAG "json-c-0.18-20240915"
- CMAKE_ARGS "-DBUILD_STATIC_LIBS=ON"
- "-DBUILD_SHARED_LIBS=OFF"
- "-DCMAKE_INSTALL_PREFIX:PATH=${JSONC_INSTALL_PATH}"
- "-DHAVE_ARC4RANDOM=OFF"
- "-DCMAKE_BUILD_TYPE=release"
- "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
-)
-
-set(JSONC_LIBRARIES
- ${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/lib/libjson-c.a
-# bsd
-)
-
# ============ #
# Curl library #
# ============ #
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(JSONC REQUIRED json-c)
+include_directories(${JSONC_INCLUDE_DIRS})
+
+
# ================================ #
# nCurses - for the user interface #
# ================================ #
@@ -410,7 +379,7 @@ add_subdirectory(docs)
#endforeach()
add_executable(ctune ${SOURCE_FILES})
-add_dependencies(ctune ctune_logger libjsonc)
+add_dependencies(ctune ctune_logger)
include_directories(${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/include)
add_dependencies(ctune ${CTUNE_PLUGIN_LIST_AUDIO_PLAYER})
@@ -450,4 +419,4 @@ if(TARGET uninstall)
add_custom_target(uninstall
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/CMakeUninstall.cmake)
-endif()
\ No newline at end of file
+endif()
@@ -0,0 +1,26 @@
This makes the cvc5 build reproducible.
See: https://github.com/cvc5/cvc5/pull/12580
diff --git a/src/options/mkoptions.py b/src/options/mkoptions.py
index 5bd9f0da1..d1fc2e6fa 100644
--- a/src/options/mkoptions.py
+++ b/src/options/mkoptions.py
@@ -281,7 +281,7 @@ def generate_public_includes(modules):
headers.add(format_include("<unordered_map>"))
for _, option in all_options(modules):
headers.update([format_include(x) for x in option.includes])
- return '\n'.join(headers)
+ return '\n'.join(sorted(headers))
def generate_option_enum_and_table(modules):
@@ -307,7 +307,7 @@ def generate_option_enum_and_table(modules):
for module, option in all_options(modules, True):
if not option.long:
continue
- for name in option.names:
+ for name in sorted(option.names):
res.append(' {{ \"{}\", OptionEnum::{} }},'
.format(name, option.enum_name()))
res.append('};')
@@ -0,0 +1,165 @@
Ensures that cvc5 is compatible with our version of SymFPU.
Taken from: https://github.com/cvc5/cvc5/commit/2ed457049cf52bd0f21a6332c1be487d82bf5678
diff --git a/cmake/FindSymFPU.cmake b/cmake/FindSymFPU.cmake
index 765ee8d36..05a86e9ee 100644
--- a/cmake/FindSymFPU.cmake
+++ b/cmake/FindSymFPU.cmake
@@ -29,8 +29,8 @@ if(NOT SymFPU_FOUND_SYSTEM)
include(ExternalProject)
include(deps-helper)
- set(SymFPU_COMMIT "e6ac3af9c2c574498ea171c957425b407625448b")
- set(SymFPU_CHECKSUM "823aa663fcc2f6844ae5e9ea83ceda4ed393cdb3dadefce9b3c7c41cd0f4f702")
+ set(SymFPU_COMMIT "227a7246b8ce513b393cc2645d6d65d3490ea1de")
+ set(SymFPU_CHECKSUM "ff22e37dbc133120ada5760878974811737bec65b12a8883f92b1ed9e3f96e99")
ExternalProject_Add(
SymFPU-EP
diff --git a/src/theory/fp/fp_word_blaster.cpp b/src/theory/fp/fp_word_blaster.cpp
index 7f2086c35..3efb0eeed 100644
--- a/src/theory/fp/fp_word_blaster.cpp
+++ b/src/theory/fp/fp_word_blaster.cpp
@@ -119,6 +119,23 @@ CVC5_SYM_ITE_DFN(traits::ubv);
#undef CVC5_SYM_ITE_DFN
+#define CVC5_SYM_ITE_BOOL_DFN(T) \
+ template <> \
+ struct ite<bool, T> \
+ { \
+ static const T iteOp(const bool& cond, const T& l, const T& r) \
+ { \
+ return cond ? l : r; \
+ } \
+ }
+
+CVC5_SYM_ITE_BOOL_DFN(traits::rm);
+CVC5_SYM_ITE_BOOL_DFN(traits::prop);
+CVC5_SYM_ITE_BOOL_DFN(traits::sbv);
+CVC5_SYM_ITE_BOOL_DFN(traits::ubv);
+
+#undef CVC5_SYM_ITE_BOOL_DFN
+
template <>
traits::ubv orderEncode<traits, traits::ubv>(const traits::ubv& b)
{
@@ -564,6 +581,13 @@ symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularAdd(
return *this + op;
}
+template <bool isSigned>
+symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularSubtract(
+ const symbolicBitVector<isSigned>& op) const
+{
+ return *this - op;
+}
+
template <bool isSigned>
symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularNegate() const
{
diff --git a/src/theory/fp/fp_word_blaster.h b/src/theory/fp/fp_word_blaster.h
index 6ce365382..8179ceb32 100644
--- a/src/theory/fp/fp_word_blaster.h
+++ b/src/theory/fp/fp_word_blaster.h
@@ -242,6 +242,8 @@ class symbolicBitVector : public nodeWrapper
symbolicBitVector<isSigned> modularDecrement() const;
symbolicBitVector<isSigned> modularAdd(
const symbolicBitVector<isSigned>& op) const;
+ symbolicBitVector<isSigned> modularSubtract(
+ const symbolicBitVector<isSigned>& op) const;
symbolicBitVector<isSigned> modularNegate() const;
/*** Comparisons ***/
diff --git a/src/util/floatingpoint_literal_symfpu_traits.cpp b/src/util/floatingpoint_literal_symfpu_traits.cpp
index af56c2b87..181069427 100644
--- a/src/util/floatingpoint_literal_symfpu_traits.cpp
+++ b/src/util/floatingpoint_literal_symfpu_traits.cpp
@@ -223,6 +223,13 @@ wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularAdd(
return *this + op;
}
+template <bool isSigned>
+wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularSubtract(
+ const wrappedBitVector<isSigned>& op) const
+{
+ return *this - op;
+}
+
template <bool isSigned>
wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularNegate() const
{
diff --git a/src/util/floatingpoint_literal_symfpu_traits.h b/src/util/floatingpoint_literal_symfpu_traits.h
index 78fc69a18..b49ef3a2a 100644
--- a/src/util/floatingpoint_literal_symfpu_traits.h
+++ b/src/util/floatingpoint_literal_symfpu_traits.h
@@ -199,6 +199,8 @@ class wrappedBitVector : public BitVector
wrappedBitVector<isSigned> modularDecrement() const;
wrappedBitVector<isSigned> modularAdd(
const wrappedBitVector<isSigned>& op) const;
+ wrappedBitVector<isSigned> modularSubtract(
+ const wrappedBitVector<isSigned>& op) const;
wrappedBitVector<isSigned> modularNegate() const;
/** Bit-vector equality. */
diff --git a/test/regress/cli/CMakeLists.txt b/test/regress/cli/CMakeLists.txt
index 915a19e09..35ff58bc7 100644
--- a/test/regress/cli/CMakeLists.txt
+++ b/test/regress/cli/CMakeLists.txt
@@ -949,12 +949,15 @@ set(regress_0_tests
regress0/fp/issue6164.smt2
regress0/fp/issue7002.smt2
regress0/fp/issue7569.smt2
+ regress0/fp/issue9505.smt2
regress0/fp/issue9854.smt2
regress0/fp/issue9858.smt2
regress0/fp/issue9864.smt2
regress0/fp/issue9966.smt2
regress0/fp/issue9972.smt2
regress0/fp/issue9972-2.smt2
+ regress0/fp/issue11139.smt2
+ regress0/fp/issue12335.smt2
regress0/fp/issuepr650.smt2
regress0/fp/proj-issue329-prereg-context.smt2
regress0/fp/proj-issue477-fp-set-comprehension.smt2
diff --git a/test/regress/cli/regress0/fp/issue11139.smt2 b/test/regress/cli/regress0/fp/issue11139.smt2
new file mode 100644
index 000000000..f4c00360e
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue11139.smt2
@@ -0,0 +1,9 @@
+; COMMAND-LINE: --check-models
+; EXPECT: sat
+(set-logic QF_FP)
+(declare-const FP_VAR_a (_ FloatingPoint 11 53))
+(declare-const FP_VAR_b (_ FloatingPoint 11 53))
+(assert ( = (fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)
+(fp.div RTN (fp.fma RTP FP_VAR_a FP_VAR_a
+(fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)) FP_VAR_b)))
+(check-sat)
diff --git a/test/regress/cli/regress0/fp/issue12335.smt2 b/test/regress/cli/regress0/fp/issue12335.smt2
new file mode 100644
index 000000000..bc2580a89
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue12335.smt2
@@ -0,0 +1,7 @@
+; EXPECT: sat
+(set-logic FP)
+(declare-const x Float32)
+(declare-const a Float32)
+(assert (forall ((V Float32) (A Float32)) (or (not (fp.lt V x)) (not (fp.eq a a)) (not (fp.gt A (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)))) (not (fp.eq (fp.div RNE A V) (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)))))))
+(assert (fp.geq a (fp (_ bv0 1) (_ bv0 8) (_ bv0 23))))
+(check-sat)
diff --git a/test/regress/cli/regress0/fp/issue9505.smt2 b/test/regress/cli/regress0/fp/issue9505.smt2
new file mode 100644
index 000000000..05674b8ff
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue9505.smt2
@@ -0,0 +1,6 @@
+; COMMAND-LINE: --fp-exp
+; EXPECT: sat
+(set-logic QF_FP)
+(declare-fun m () (_ FloatingPoint 4 12))
+(assert (fp.eq (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)) ((_ to_fp 8 24) roundNearestTiesToEven (fp.rem m (fp (_ bv0 1) (_ bv9 4) (_ bv1536 11))))))
+(check-sat)
File diff suppressed because it is too large Load Diff
@@ -1,173 +0,0 @@
For bootstrapping gdc.
The change for gcc/config/i386/t-linux is to fix the libdir on
x86_64-gnu. It is based on the 'pre-x86-configure phase for gcc-14.
The main part is gcc commit 5f8950b403f6351f125d8281d2e7430a43e7d125
rebased for gcc 11.5.
From 5f8950b403f6351f125d8281d2e7430a43e7d125 Mon Sep 17 00:00:00 2001
From: Flavio Cruz <flaviocruz@gmail.com>
Date: Thu, 26 Jan 2023 22:45:27 -0500
Subject: [PATCH] Add support for x86_64-*-gnu-* targets to build x86_64
gnumach/hurd
Tested by building a toolchain and compiling gnumach for x86_64 [1].
This is the basic version without unwind support which I think is only
required to implement exceptions.
[1]
https://github.com/flavioc/cross-hurd/blob/master/bootstrap-kernel.sh.
gcc/ChangeLog:
* config.gcc: Recognize x86_64-*-gnu* targets and include
i386/gnu64.h.
* config/i386/gnu64.h: Define configuration for new target
including ld.so location.
libgcc/ChangeLog:
* config.host: Recognize x86_64-*-gnu* targets.
* config/i386/gnu-unwind.h: Update to handle __x86_64__ with a
TODO for now.
Signed-off-by: Flavio Cruz <flaviocruz@gmail.com>
---
gcc/config.gcc | 5 ++++-
gcc/config/i386/gnu64.h | 40 +++++++++++++++++++++++++++++++++
libgcc/config.host | 8 ++++++-
libgcc/config/i386/gnu-unwind.h | 10 +++++++++
4 files changed, 61 insertions(+), 2 deletions(-)
create mode 100644 gcc/config/i386/gnu64.h
Index: gcc-11.5.0/gcc/config.gcc
===================================================================
--- gcc-11.5.0.orig/gcc/config.gcc
+++ gcc-11.5.0/gcc/config.gcc
@@ -2020,7 +2020,7 @@ i[34567]86-*-linux* | i[34567]86-*-kfree
;;
esac
;;
-x86_64-*-linux* | x86_64-*-kfreebsd*-gnu)
+x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-gnu*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h \
i386/x86-64.h i386/gnu-user-common.h i386/gnu-user64.h"
case ${target} in
@@ -2031,6 +2031,9 @@ x86_64-*-linux* | x86_64-*-kfreebsd*-gnu
x86_64-*-kfreebsd*-gnu)
tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h"
;;
+ x86_64-*-gnu*)
+ tm_file="${tm_file} gnu.h i386/gnu64.h"
+ ;;
esac
tmake_file="${tmake_file} i386/t-linux64"
x86_multilibs="${with_multilib_list}"
Index: gcc-11.5.0/gcc/config/i386/gnu64.h
===================================================================
--- /dev/null
+++ gcc-11.5.0/gcc/config/i386/gnu64.h
@@ -0,0 +1,40 @@
+/* Configuration for an x86_64 running GNU with ELF as the target machine. */
+
+/*
+Copyright (C) 2023 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC 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.
+
+GCC 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 GCC. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#define GNU_USER_LINK_EMULATION32 "elf_i386"
+#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+#undef GNU_USER_DYNAMIC_LINKER
+#define GNU_USER_DYNAMIC_LINKER32 "/lib/ld.so.1"
+#define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-x86-64.so.1"
+#define GNU_USER_DYNAMIC_LINKERX32 "/lib/ld-x32.so.1"
+
+#undef STARTFILE_SPEC
+#if defined HAVE_LD_PIE
+#define STARTFILE_SPEC \
+ "%{!shared: %{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};pie:Scrt1.o%s;static:crt0.o%s;:crt1.o%s}} \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#else
+#define STARTFILE_SPEC \
+ "%{!shared: %{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};static:crt0.o%s;:crt1.o%s}} \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#endif
Index: gcc-11.5.0/libgcc/config.host
===================================================================
--- gcc-11.5.0.orig/libgcc/config.host
+++ gcc-11.5.0/libgcc/config.host
@@ -788,6 +788,12 @@ x86_64-*-kfreebsd*-gnu)
tmake_file="${tmake_file} i386/t-crtpc t-crtfm i386/t-crtstuff t-dfprules"
tm_file="${tm_file} i386/elf-lib.h"
;;
+x86_64-*-gnu*)
+ extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
+ tmake_file="${tmake_file} i386/t-crtpc t-crtfm i386/t-crtstuff t-dfprules"
+ tm_file="${tm_file} i386/elf-lib.h"
+ md_unwind_header=i386/gnu-unwind.h
+ ;;
i[34567]86-pc-msdosdjgpp*)
;;
i[34567]86-*-lynxos*)
@@ -1561,7 +1567,7 @@ esac
case ${host} in
i[34567]86-*-linux* | x86_64-*-linux* | \
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
- i[34567]86-*-gnu*)
+ i[34567]86-*-gnu* | x86_64-*-gnu*)
tmake_file="${tmake_file} t-tls i386/t-linux i386/t-msabi t-slibgcc-libgcc"
if test "$libgcc_cv_cfi" = "yes"; then
tmake_file="${tmake_file} t-stack i386/t-stack-i386"
Index: gcc-11.5.0/libgcc/config/i386/gnu-unwind.h
===================================================================
--- gcc-11.5.0.orig/libgcc/config/i386/gnu-unwind.h
+++ gcc-11.5.0/libgcc/config/i386/gnu-unwind.h
@@ -30,6 +30,14 @@ see the files COPYING3 and COPYING.RUNTI
#include <signal.h>
+#ifdef __x86_64__
+
+/*
+ * TODO: support for 64 bits needs to be implemented.
+ */
+
+#else /* ifdef __x86_64__ */
+
#define MD_FALLBACK_FRAME_STATE_FOR x86_gnu_fallback_frame_state
static _Unwind_Reason_Code
@@ -138,4 +146,6 @@ x86_gnu_fallback_frame_state
return _URC_NO_REASON;
}
+#endif /* ifdef __x86_64__ */
+
#endif /* ifndef inhibit_libc */
Index: gcc-11.5.0/gcc/config/i386/t-linux64
===================================================================
--- gcc-11.5.0.orig/gcc/config/i386/t-linux64
+++ gcc-11.5.0/gcc/config/i386/t-linux64
@@ -33,6 +33,6 @@
comma=,
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib$(call if_multiarch,:x86_64-linux-gnu)
MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-64
View File
@@ -1,64 +0,0 @@
From e2d65597896089a8bd06992a4b83e3d14176b02c Mon Sep 17 00:00:00 2001
From: Yelninei <yelninei@tutamail.com>
Date: Tue, 24 Mar 2026 19:46:30 +0000
Subject: [PATCH] phobos: Fixes for GNU/Hurd.
---
Makefile | 2 +-
std/datetime/timezone.d | 1 +
std/math/algebraic.d | 1 +
std/process.d | 2 ++
4 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 4fa51299e..a9d4789f6 100644
--- a/Makefile
+++ b/Makefile
@@ -305,7 +305,7 @@ else
endif
# build with shared library support (defaults to true on supported platforms)
-SHARED=$(if $(findstring $(OS),linux freebsd),1,)
+SHARED=$(if $(findstring $(OS),linux freebsd hurd),1,)
TESTS_EXTRACTOR=$(ROOT)/tests_extractor$(DOTEXE)
PUBLICTESTS_DIR=$(ROOT)/publictests
diff --git a/std/datetime/timezone.d b/std/datetime/timezone.d
index 7461fcaa3..05c2999d3 100644
--- a/std/datetime/timezone.d
+++ b/std/datetime/timezone.d
@@ -338,6 +338,7 @@ public:
else version (linux) enum utcZone = "UTC";
else version (Darwin) enum utcZone = "UTC";
else version (Solaris) enum utcZone = "UTC";
+ else version (Hurd) enum utcZone = "UTC";
else static assert(0, "The location of the UTC timezone file on this Posix platform must be set.");
auto tzs = [testTZ("America/Los_Angeles", "PST", "PDT", dur!"hours"(-8), dur!"hours"(1)),
diff --git a/std/math/algebraic.d b/std/math/algebraic.d
index f96f24f15..05bf08b9c 100644
--- a/std/math/algebraic.d
+++ b/std/math/algebraic.d
@@ -631,6 +631,7 @@ else version (FreeBSD) version = GenericPosixVersion;
else version (OpenBSD) version = GenericPosixVersion;
else version (Solaris) version = GenericPosixVersion;
else version (DragonFlyBSD) version = GenericPosixVersion;
+else version (Hurd) version = GenericPosixVersion;
private real polyImpl(real x, in real[] A) @trusted pure nothrow @nogc
{
diff --git a/std/process.d b/std/process.d
index d359ca0ba..dc981c5e5 100644
--- a/std/process.d
+++ b/std/process.d
@@ -1031,6 +1031,8 @@ private Pid spawnProcessPosix(scope const(char[])[] args,
import core.sys.freebsd.unistd : closefrom;
else version (OpenBSD)
import core.sys.openbsd.unistd : closefrom;
+ else version (Hurd)
+ import core.sys.hurd.unistd : closefrom;
static if (!__traits(compiles, closefrom))
{
--
2.52.0
@@ -0,0 +1,211 @@
From bd4ee689a854252665fd607758f078d930fbc4c8 Mon Sep 17 00:00:00 2001
From: Ben Noordhuis <info@bnoordhuis.nl>
Date: Fri, 21 Nov 2025 11:56:28 +0100
Subject: [PATCH] Fix JS number rounding on x87 (#1244)
Disable 80-bits extended precision, use standard 64-bits precision.
The extra precision affects rounding and is user-observable, meaning
it causes test262 tests to fail.
The rounding mode is a per-CPU (or, more accurately, per-FPU) property,
and since quickjs is often used as a library, take care to tweak the FPU
control word before sensitive operations, and restore it afterwards.
Only affects x87. SSE is IEEE-754 conforming.
Fixes: https://github.com/quickjs-ng/quickjs/issues/1236
---
.github/workflows/ci.yml | 4 ++--
cutils.h | 19 +++++++++++++++++++
quickjs.c | 34 +++++++++++++++++++++++++++++-----
3 files changed, 50 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d1efee1b9..c722b517d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -58,7 +58,7 @@ jobs:
- { os: ubuntu-latest, configType: asan+ubsan, runTest262: true }
- { os: ubuntu-latest, configType: msan }
- { os: ubuntu-latest, configType: tcc }
- - { os: ubuntu-latest, arch: x86 }
+ - { os: ubuntu-latest, arch: x86, runTest262: true }
- { os: ubuntu-latest, arch: riscv64 }
- { os: ubuntu-latest, arch: s390x }
@@ -97,7 +97,7 @@ jobs:
uses: jirutka/setup-alpine@v1
with:
arch: ${{ matrix.config.arch }}
- packages: "build-base make cmake"
+ packages: "build-base make cmake git"
- name: uname
run: uname -a
diff --git a/cutils.h b/cutils.h
index 5129c3cb2..f5d2a8bce 100644
--- a/cutils.h
+++ b/cutils.h
@@ -634,6 +634,25 @@ int js_thread_join(js_thread_t thrd);
#endif /* !defined(EMSCRIPTEN) && !defined(__wasi__) */
+// JS requires strict rounding behavior. Turn on 64-bits double precision
+// and disable x87 80-bits extended precision for intermediate floating-point
+// results. 0x300 is extended precision, 0x200 is double precision.
+// Note that `*&cw` in the asm constraints looks redundant but isn't.
+#if defined(__i386__) && !defined(_MSC_VER)
+#define JS_X87_FPCW_SAVE_AND_ADJUST(cw) \
+ unsigned short cw; \
+ __asm__ __volatile__("fnstcw %0" : "=m"(*&cw)); \
+ do { \
+ unsigned short t = 0x200 | (cw & ~0x300); \
+ __asm__ __volatile__("fldcw %0" : /*empty*/ : "m"(*&t)); \
+ } while (0)
+#define JS_X87_FPCW_RESTORE(cw) \
+ __asm__ __volatile__("fldcw %0" : /*empty*/ : "m"(*&cw))
+#else
+#define JS_X87_FPCW_SAVE_AND_ADJUST(cw)
+#define JS_X87_FPCW_RESTORE(cw)
+#endif
+
#ifdef __cplusplus
} /* extern "C" { */
#endif
diff --git a/quickjs.c b/quickjs.c
index 3970bb247..7900c5e3d 100644
--- a/quickjs.c
+++ b/quickjs.c
@@ -13395,12 +13395,17 @@ static int js_is_array(JSContext *ctx, JSValueConst val)
static double js_math_pow(double a, double b)
{
+ double d;
+
if (unlikely(!isfinite(b)) && fabs(a) == 1) {
/* not compatible with IEEE 754 */
- return NAN;
+ d = NAN;
} else {
- return pow(a, b);
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
+ d = pow(a, b);
+ JS_X87_FPCW_RESTORE(fpcw);
}
+ return d;
}
JSValue JS_NewBigInt64(JSContext *ctx, int64_t v)
@@ -13820,11 +13825,15 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
}
break;
case OP_div:
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_number((double)v1 / (double)v2);
+ JS_X87_FPCW_RESTORE(fpcw);
return 0;
case OP_mod:
if (v1 < 0 || v2 <= 0) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_number(fmod(v1, v2));
+ JS_X87_FPCW_RESTORE(fpcw);
return 0;
} else {
v = (int64_t)v1 % (int64_t)v2;
@@ -13888,6 +13897,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
if (JS_ToFloat64Free(ctx, &d2, op2))
goto exception;
handle_float64:
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
switch(op) {
case OP_sub:
dr = d1 - d2;
@@ -13907,6 +13917,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
default:
abort();
}
+ JS_X87_FPCW_RESTORE(fpcw);
sp[-2] = js_float64(dr);
}
return 0;
@@ -14023,7 +14034,9 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp)
}
if (JS_ToFloat64Free(ctx, &d2, op2))
goto exception;
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(d1 + d2);
+ JS_X87_FPCW_RESTORE(fpcw);
}
return 0;
exception:
@@ -17998,8 +18011,10 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(JS_VALUE_GET_FLOAT64(op1) +
JS_VALUE_GET_FLOAT64(op2));
+ JS_X87_FPCW_RESTORE(fpcw);
sp--;
} else {
add_slow:
@@ -18066,8 +18081,10 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(JS_VALUE_GET_FLOAT64(op1) -
JS_VALUE_GET_FLOAT64(op2));
+ JS_X87_FPCW_RESTORE(fpcw);
sp--;
} else {
goto binary_arith_slow;
@@ -18098,7 +18115,9 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
d = JS_VALUE_GET_FLOAT64(op1) * JS_VALUE_GET_FLOAT64(op2);
+ JS_X87_FPCW_RESTORE(fpcw);
mul_fp_res:
sp[-2] = js_float64(d);
sp--;
@@ -52277,7 +52296,9 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
int yi, mi, i;
int64_t days;
volatile double temp; /* enforce evaluation order */
+ double d = NAN;
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
/* emulate 21.4.1.15 MakeDay ( year, month, date ) */
y = fields[0];
m = fields[1];
@@ -52287,7 +52308,7 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
if (mn < 0)
mn += 12;
if (ym < -271821 || ym > 275760)
- return NAN;
+ goto out;
yi = ym;
mi = mn;
@@ -52319,14 +52340,17 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
/* emulate 21.4.1.16 MakeDate ( day, time ) */
tv = (temp = day * 86400000) + time; /* prevent generation of FMA */
if (!isfinite(tv))
- return NAN;
+ goto out;
/* adjust for local time and clip */
if (is_local) {
int64_t ti = tv < INT64_MIN ? INT64_MIN : tv >= 0x1p63 ? INT64_MAX : (int64_t)tv;
tv += getTimezoneOffset(ti) * 60000;
}
- return time_clip(tv);
+ d = time_clip(tv);
+out:
+ JS_X87_FPCW_RESTORE(fpcw);
+ return d;
}
static JSValue get_date_field(JSContext *ctx, JSValueConst this_val,
@@ -0,0 +1,26 @@
From c211485e6f6c9fcd0ea9f5aa1943f8c95fdd186b Mon Sep 17 00:00:00 2001
From: Ben Noordhuis <info@bnoordhuis.nl>
Date: Sun, 9 Nov 2025 21:28:14 +0100
Subject: [PATCH] Fix Atomics.pause on 32 bits platforms
Use JS_VALUE_GET_NORM_TAG to get the type tag, not JS_VALUE_GET_TAG.
The latter doesn't work correctly with NaN boxing.
Refs: https://github.com/quickjs-ng/quickjs/issues/986#issuecomment-3508547332
---
quickjs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/quickjs.c b/quickjs.c
index 4fb9f95b7..3970bb247 100644
--- a/quickjs.c
+++ b/quickjs.c
@@ -57112,7 +57112,7 @@ static JSValue js_atomics_pause(JSContext *ctx, JSValueConst this_obj,
double d;
if (argc > 0) {
- switch (JS_VALUE_GET_TAG(argv[0])) {
+ switch (JS_VALUE_GET_NORM_TAG(argv[0])) {
case JS_TAG_FLOAT64: // accepted if and only if fraction == 0.0
d = JS_VALUE_GET_FLOAT64(argv[0]);
if (isfinite(d))
@@ -214,6 +214,85 @@ Signed-off-by: Matt Jolly <kangie@gentoo.org>
if (is_apple) {
cflags_objc = [ "-Wimplicit-retain-self" ]
cflags_objcc = [ "-Wimplicit-retain-self" ]
@@ -2848,7 +2684,8 @@ config("default_stack_frames") {
# [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000
# [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000
# [2]: https://crrev.com/c/5447532
-config("optimize") {
+config("optimize") { }
+config("xoptimize") {
if (is_win) {
# clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for
# consistency with the other platforms.
@@ -2897,7 +2734,8 @@ config("optimize") {
}
# Turn off optimizations.
-config("no_optimize") {
+config("no_optimize") { }
+config("xno_optimize") {
if (is_win) {
cflags = [
"/Od", # Disable optimization.
@@ -2932,7 +2770,8 @@ config("no_optimize") {
# Turns up the optimization level. Used to explicitly enable -O2 instead of
# -Os for select targets on platforms that use optimize_for_size. No-op
# elsewhere.
-config("optimize_max") {
+config("optimize_max") { }
+config("xoptimize_max") {
ldflags = common_optimize_on_ldflags
if (is_win) {
# Favor speed over size, /O2 must be before the common flags.
@@ -2953,7 +2792,8 @@ config("optimize_max") {
#
# TODO(crbug.com/41259697) - rework how all of these configs are related
# so that we don't need this disclaimer.
-config("optimize_speed") {
+config("optimize_speed") { }
+config("xoptimize_speed") {
ldflags = common_optimize_on_ldflags
if (is_win) {
# Favor speed over size, /O2 must be before the common flags.
@@ -2970,7 +2810,8 @@ config("optimize_speed") {
rustflags = [ "-Copt-level=3" ]
}
-config("optimize_fuzzing") {
+config("optimize_fuzzing") { }
+config("xoptimize_fuzzing") {
cflags = [ "-O1" ] + common_optimize_on_cflags
rustflags = [ "-Copt-level=1" ]
ldflags = common_optimize_on_ldflags
@@ -3115,7 +2956,8 @@ config("split_dwarf") {
}
# Full symbols.
-config("symbols") {
+config("symbols") { }
+config("xsymbols") {
rustflags = []
configs = []
if (is_win) {
@@ -3275,7 +3117,8 @@ config("symbols") {
# Minimal symbols.
# This config guarantees to hold symbol for stack trace which are shown to user
# when crash happens in unittests running on buildbot.
-config("minimal_symbols") {
+config("minimal_symbols") { }
+config("xminimal_symbols") {
configs = []
rustflags = []
if (is_win) {
@@ -3355,7 +3198,8 @@ config("minimal_symbols") {
# This configuration contains function names only. That is, the compiler is
# told to not generate debug information and the linker then just puts function
# names in the final debug information.
-config("no_symbols") {
+config("no_symbols") { }
+config("xno_symbols") {
if (is_win) {
ldflags = [ "/DEBUG" ]
--
2.52.0
+32 -33
View File
@@ -31,7 +31,6 @@
;;; Copyright © 2024 Aaron Covrig <aaron.covrig.us@ieee.org>
;;; Copyright © 2025 Jussi Timperi <jussi.timperi@iki.fi>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1612,41 +1611,41 @@ information for every pixel as the input.")
"0f242mix20rgsqz1llibhsz4r2pbvx6k32rmky0zjvnbaqaw1dwm"))))
(build-system gnu-build-system)
(arguments
(list
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-FHS-file-names
(lambda _
(substitute* "mk/Autoconf.mk"
(("/bin/echo") "echo")
(("/sbin/ldconfig -p") "echo lib"))))
(add-before 'build 'set-fcommon
(lambda _
(setenv "CFLAGS" "-fcommon")))
(delete 'configure))
#:tests? #f
#:make-flags #~(list (string-append "CC=" #+(cc-for-target))
(string-append "prefix=" #$output))))
(inputs
(list cairo-xcb
curl
eudev
fontconfig
freetype
giflib
glib
libdrm
libepoxy
libexif
libjpeg-turbo
libpng
libtiff
libwebp
mesa
poppler))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-FHS-file-names
(lambda _
(substitute* "mk/Autoconf.mk"
(("/bin/echo") "echo")
(("/sbin/ldconfig -p") "echo lib")) #t))
(add-before 'build 'set-fcommon
(lambda _
(setenv "CFLAGS" "-fcommon")))
(delete 'configure))
#:tests? #f
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out")))))
(inputs `(("libjpeg" ,libjpeg-turbo)
("curl" ,curl)
("libtiff" ,libtiff)
("libudev" ,eudev)
("libwebp" ,libwebp)
("libdrm" ,libdrm)
("giflib" ,giflib)
("glib" ,glib)
("cairo-xcb" ,cairo-xcb)
("freetype" ,freetype)
("fontconfig" ,fontconfig)
("libexif" ,libexif)
("mesa" ,mesa)
("libepoxy" ,libepoxy)
("libpng" ,libpng)
("poppler" ,poppler)))
(native-inputs (list pkg-config))
(synopsis "Framebuffer and drm-based image viewer")
(description
"fbida contains a few applications for viewing and editing images on
"fbida contains a few applications for viewing and editing images on
the framebuffer.")
(license license:gpl2+)))
-36
View File
@@ -39,42 +39,6 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
(define-public 9pfs
(package
(name "9pfs")
(version "0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ftrvxmtrx/9pfs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1fxyrny1alsbg1dr2pav3sz85s3amxiizklj8p3wsfmw08hjhgrm"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(delete 'configure)) ;no configure script
#:make-flags
#~(list
"DESTDIR="
(string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
(list pkg-config))
(inputs
(list fuse-2))
(synopsis "Mounts a 9P server's files into the file system")
(home-page "https://github.com/ftrvxmtrx/9pfs")
(description
"@command{9pfs} mounts a file system using the @acronym{9P protocol, Plan 9
Filesystem Protocol}. It is a replacement for @command{9pfuse} from
@code{plan9port}.")
(license (list license:isc license:expat))))
(define-public diod
(package
(name "diod")
+2 -2
View File
@@ -237,7 +237,7 @@ it.")
(define-public trealla
(package
(name "trealla")
(version "2.97.0")
(version "2.94.12")
(source
(origin
(method git-fetch)
@@ -246,7 +246,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
(base32 "1342xcpjmryn0l3v8wmg7w6pjvsk42c84cr9xbah36dwhj8s354z"))
(base32 "0mpzpc69agcnp2dnay08z7xjx0zq2b77ddd2kds1w6qlh2fc36s9"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
-99
View File
@@ -180,7 +180,6 @@
;;; Copyright © 2025 Isidor Zeuner <guix@quidecco.pl>
;;; Copyright © 2025 Andy Tai <atai@atai.org>
;;; Copyright © 2026 Daniel Khodabakhsh <d@niel.khodabakh.sh>
;;; Copyright © 2026 Akiyoshi Suda <code@akiyoshisuda.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2601,74 +2600,6 @@ well-formed Roman numerals.")
reused when throttling user interactions with a resource (e.g., an API).")
(license license:expat)))
(define-public python-rustworkx
(package
(name "python-rustworkx")
(version "0.17.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Qiskit/rustworkx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0sr0wrfb9wzxcljhb7swwgk2hdxqjfmcfj785jq624mx14kqc4k8"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags #~(list "--test-path" "tests")
#:imported-modules (append %cargo-build-system-modules
%pyproject-build-system-modules)
#:modules '(((guix build cargo-build-system)
#:prefix cargo:)
(guix build pyproject-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:cargo-target #$(cargo-triplet) args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums))))
(add-before 'check 'pre-check
(lambda _
;; Delete the source directory to avoid interference.
(delete-file-recursively "rustworkx")
;; Matplotlib needs to be able to write its configuration file
;; somewhere.
(setenv "MPLCONFIGDIR" "/tmp")
;; For fontconfig.
(setenv "XDG_CACHE_HOME" "/tmp"))))))
(propagated-inputs (list python-numpy))
(native-inputs
(append (list graphviz
python-matplotlib
python-networkx
python-pillow
python-setuptools
python-setuptools-rust
python-stestr
rust
`(,rust "cargo"))
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(inputs (cargo-inputs 'python-rustworkx))
(home-page "https://www.rustworkx.org")
(synopsis "High performance graph library for Python")
(description
"@code{rustworkx} is a Python package for working with graphs and complex
networks. It enables the creation, interaction with, and study of graphs and
networks.")
(license license:asl2.0)))
(define-public python-safety-schemas
(package
(name "python-safety-schemas")
@@ -41052,36 +40983,6 @@ files.")
(define-deprecated-package python-xdg
python-xdg-base-dirs)
(define-public python-xkbcommon
(package
(name "python-xkbcommon")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sde1000/python-xkbcommon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0r9fknyys2mr5fl9hbyp8n9izf27553yf49krzinzksnfr9b6c7s"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-cffi))
(native-inputs (list libxkbcommon python-setuptools))
(arguments
(list
#:test-backend
#~'unittest
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'cleanup
(lambda _
(delete-file-recursively "xkbcommon"))))))
(home-page "https://github.com/sde1000/python-xkbcommon")
(synopsis "Bindings for libxkbcommon using cffi")
(description "Bindings for libxkbcommon using cffi.")
(license license:expat)))
(define-public python-xlib
(package
(name "python-xlib")
-3
View File
@@ -768,9 +768,6 @@ def contents() -> str:
" test_threading"
" test_asyncio"
" test_shutdown"
,@(if (target-ppc32?)
'(" test_ssl")
'())
,@(if (system-hurd?)
'(" test_posix" ;multiple errors
" test_time"
+15
View File
@@ -101,3 +101,18 @@ file, without requiring the old and new versions to both be present at the
sending end. The library uses a \"streaming\" design similar to that of zlib
with the aim of allowing it to be embedded into many different applications.")
(license license:lgpl2.1+)))
(define-public librsync-0.9
(package
(inherit librsync)
(version "0.9.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/librsync/librsync/"
version "/librsync-" version ".tar.gz"))
(sha256
(base32
"1mj1pj99mgf1a59q9f2mxjli2fzxpnf55233pc1klxk2arhf8cv6"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--enable-shared")))
(inputs '())))
+6 -6
View File
@@ -1079,14 +1079,14 @@ highlighting tool to ease code review from your terminal.")
(define-public difftastic
(package
(name "difftastic")
(version "0.69.0")
(version "0.68.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "difftastic" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1wa2vhp26vbim8qp3rlahxmf65lzgacc5p6czc4hqsl3gglg0fs5"))))
(base32 "012h76wx5jv6czc9j4awfan7vhrc6g5fdgnxrjmzg5q27wn99hn6"))))
(build-system cargo-build-system)
(arguments
(list
@@ -1509,7 +1509,7 @@ defaults for 80% of the use cases.")
(define-public gitlogue
(package
(name "gitlogue")
(version "0.9.0")
(version "0.8.0")
(source
(origin
(method git-fetch)
@@ -1519,7 +1519,7 @@ defaults for 80% of the use cases.")
(file-name (git-file-name name version))
(sha256
(base32
"008cqcc4kjandfi6pqrnr689xb11d6fdhcb48kbv0227v3f5gvn3"))
"007sf2b605jkjk4qyxar1bq7fh71yvv9ixsxfqrs3hzschyj3m2g"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -3360,7 +3360,7 @@ command.")
(define-public wasm-bindgen-cli
(package
(name "wasm-bindgen-cli")
(version "0.2.120")
(version "0.2.118")
(source
(origin
(method git-fetch)
@@ -3369,7 +3369,7 @@ command.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0404jgzfcbmjvr1zl9jgw49nqs1s182cbvdzwh92i76qd2cpg166"))
(base32 "02yy57pa4p53vrhpgc8xf737dnqiifnnnjinh49yq1345kd3287j"))
(modules '((guix build utils)))
(snippet
'(begin
+2347 -2588
View File
File diff suppressed because it is too large Load Diff
+3 -7
View File
@@ -133,7 +133,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(define-public fish
(package
(name "fish")
(version "4.7.0")
(version "4.6.0")
(source
(origin
(method url-fetch)
@@ -141,7 +141,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
"releases/download/" version "/"
"fish-" version ".tar.xz"))
(sha256
(base32 "1nx9m8kis1v4w27mdzzpj9l9mpnz0w7n1v7kaajd9lv5ny63njn5"))
(base32 "1ak12wpjllckv566k9jjy59si25whsib3j8ip8yqmqm06gvnb4gw"))
;; TODO: Unbundle corrosion.
(patches (search-patches "corrosion-honor-CARGO_BUILD_TARGET.patch"))))
(build-system cmake-build-system)
@@ -218,11 +218,9 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
;; "Found existing zombie processes. Clean up zombies before running this test."
;; Disabling parallel tests does not reliably prevent it.
(delete-file "tests/checks/jobs.fish")
;; These ones need to chdir successfully.
;; This one needs to chdir successfully.
(substitute* "tests/checks/vars_as_commands.fish"
(("/usr/bin") "/tmp"))
(substitute* "tests/checks/cd.fish"
(("cd bin") "cd tmp"))
;; shebangless scripts don't work
(delete-file "tests/checks/noshebang.fish")
;; This doesn't work
@@ -238,8 +236,6 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(("/usr/bin/e\"") (string-append coreutils "/bin/e\""))
(("\"/bin") "\"/tmp")
(("\"/usr") "\"/tmp"))
(substitute* "tests/checks/colon-delimited-var.fish"
(("/usr/bin:a:.:b") "/tmp/bin:a:.:b"))
(substitute* "tests/test_driver.py"
(("\"cc\"") "\"gcc\"")))))
;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish.
+2 -14
View File
@@ -48,7 +48,6 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages emacs)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
@@ -273,24 +272,13 @@ efficiency through the use of a compact vector representation of n-grams.")
;; Disable support for proprietary TTS engines.
"--with-voxin=no" "--with-ibmtts=no"
"--with-kali=no" "--with-baratinoo=no")
#:imported-modules ,%pyproject-build-system-modules
#:modules ((guix build gnu-build-system)
((guix build pyproject-build-system)
#:prefix python:)
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-bin-bash
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/modules/generic.c"
(("/bin/bash")
(search-input-file inputs "/bin/bash")))))
(add-after 'install 'wrap-spd-conf
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (search-input-file outputs "bin/spd-conf")
`("GUIX_PYTHONPATH" =
(,(getenv "GUIX_PYTHONPATH")
,(python:site-packages inputs outputs)))))))))
(search-input-file inputs "/bin/bash"))))))))
(native-inputs
(list autoconf
automake
@@ -309,7 +297,7 @@ efficiency through the use of a compact vector representation of n-grams.")
pipewire
pulseaudio
python
python-pyxdg))
python-xdg-base-dirs))
(synopsis "Common interface to speech synthesizers")
(description "The Speech Dispatcher project provides a high-level
device independent layer for access to speech synthesis through a simple,
+3 -3
View File
@@ -118,13 +118,13 @@ is in the public domain.")
(define-public sqlite-next
(package
(inherit sqlite)
(version "3.53.0")
(version "3.51.0")
(source (origin
(method url-fetch)
(uri (sqlite-uri version 2026))
(uri (sqlite-uri version 2025))
(sha256
(base32
"0ninfc6kh0idcslsdlcv7l6261pswxjsdfp0cnmcxqig34w9n7l5"))))
"19bc2inw7f9fn0y6j3b57w4mk6bzi2q8hp5yn6qyd8kav7ynvqj2"))))
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #f)
+34 -71
View File
@@ -36,7 +36,6 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages wxwidgets)
@@ -66,71 +65,45 @@
(define-public plover
(package
(name "plover")
(version "5.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1dx5afcfqskwzkf6zfpii704f2b21z6al3d0g2h4xwza82cmknnl"))))
(version "4.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0d7vkxdz7g9jvlrn5wx9502yqcdyqmalk4yn7lkla0am9hzqp14l"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "-p" "pytest-qt"
"-p" "xvfb"
;; FIXME: Ignore failing test.
"--ignore" "test/gui_qt/test_dictionaries_widget.py"
"test")
#:phases
#~(modify-phases %standard-phases
;; FIXME: adjust after packaging pyside-6-tools.
(add-after 'unpack 'set-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "plover_build_utils/setup.py"
(("\"pyside6-(rcc|uic)\"" all prog)
(simple-format #f "~s, \"-g\", \"python\""
(search-input-file
inputs (string-append "/lib/qt6/libexec/" prog)))))))
;; FIXME: test_i18n_files_up_to_date would not pass
;; if the phase is run after build.
(add-after 'build 'update-i18n-catalog-for-tests
(lambda _
(invoke "python" "setup.py" "extract_messages" "update_catalog")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "pytest"
"-p" "pytest-qt"
"-p" "xvfb"
"test"
;; FIXME: Ignore failing test.
"--ignore" "test/gui_qt/test_dictionaries_widget.py"))))
;; Ensure that icons are found at runtime.
(add-after 'wrap 'wrap-executable
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/plover")
`("QT_PLUGIN_PATH" prefix
(,(string-append #$(this-package-input "qtwayland")
"/lib/qt6/plugins/")
,(string-append #$(this-package-input "qtsvg")
"/lib/qt6/plugins/")
,(string-append #$(this-package-input "python-pyside-6")
"/lib/qt6/plugins/")))
(,(search-input-directory inputs "/lib/qt5/plugins/")))
`("LD_LIBRARY_PATH" prefix
(,(string-append #$(this-package-input "dbus") "/lib"))))))
(add-after 'install 'install-desktop
(lambda _
(install-file "plover/assets/plover.png"
(string-append
#$output "/share/icons/hicolor/128x128/apps"))
(let ((desktop
(string-append
#$output "/share/applications/plover.desktop")))
(install-file "linux/plover.desktop" (dirname desktop))
(substitute* desktop
(("Exec=plover")
(string-append "Exec=" #$output "/bin/plover"))))))
(add-after 'install 'install-udev-rules
(lambda _
(let* ((dir (string-append #$output "/lib/udev/rules.d"))
(file (string-append dir "/99-plover-uinput.rules")))
(mkdir-p dir)
(call-with-output-file file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(rules (string-append out "/lib/udev/rules.d")))
(mkdir-p rules)
(call-with-output-file
(string-append rules "/99-plover-uinput.rules")
(lambda (port)
(display
(string-append
@@ -139,37 +112,26 @@
port)))))))))
(native-inputs
(list python-babel
python-evdev
python-mock
python-pytest
python-pytest-qt
python-pytest-xvfb
python-setuptools))
python-wheel))
(inputs
(list bash-minimal
dbus
qtbase
qtsvg
qtwayland
xhost))
(propagated-inputs
(list python-appdirs
python-appdirs
python-dbus-1.2
python-evdev
python-hidapi
python-packaging
python-pkginfo
python-plover-stroke
python-psutil
python-pygments
python-pyqt
python-pyserial
python-pyside-6
python-readme-renderer
python-requests-cache
python-requests-futures
python-rtf-tokenize
python-wcwidth
python-xkbcommon
python-xlib))
python-xlib
qtsvg-5
xhost))
(home-page "https://www.openstenoproject.org/plover/")
(synopsis "Stenography engine")
(description
@@ -177,3 +139,4 @@
allows anyone to use stenography to write on their computer, up to
speeds of 200WPM and beyond.")
(license license:gpl2+)))
+12 -25
View File
@@ -416,8 +416,8 @@ which will be used as a snippet in origin."
(define-public tree-sitter-c
(tree-sitter-grammar
"c" "C"
"19yc4g5fdibfqbn49ggywk9k2by78s8lrsjp1cx2lagb1dvxnv42"
"0.24.1"))
"1vw7jd3wrb4vnigfllfmqxa8fwcpvgp1invswizz0grxv249piza"
"0.23.5"))
(define-public tree-sitter-cairo
(tree-sitter-grammar
@@ -1148,7 +1148,7 @@ which will be used as a snippet in origin."
#:repository-url
"https://github.com/benwilliamgraham/tree-sitter-llvm")))
(define-public tree-sitter-lua-0.4
(define-public tree-sitter-lua
(tree-sitter-grammar
"lua" "Lua"
"082hc274h96sa98n3vxicjmjvnbdhrpjaimxsh002xl69rdl80jm"
@@ -1161,19 +1161,6 @@ which will be used as a snippet in origin."
(delete-file-recursively "test/highlight") ;FIXME
#$(tree-sitter-delete-generated-files grammar-directories)))))
(define-public tree-sitter-lua
(tree-sitter-grammar
"lua" "Lua"
"1mhlwpj4ajqajgjw99l9xhiqnyg9hwn7zdgvdw037vk3k8vrldjp"
"0.5.0"
#:repository-url "https://github.com/tree-sitter-grammars/tree-sitter-lua"
#:get-cleanup-snippet
(lambda (grammar-directories)
#~(begin
(use-modules (guix build utils))
(delete-file-recursively "test/highlight") ;FIXME
#$(tree-sitter-delete-generated-files grammar-directories)))))
(define-public tree-sitter-luadoc
(let ((version "1.1.0")
(commit "818acda56809f994274de64a42f97f509b3c0ad2")
@@ -1205,7 +1192,7 @@ which will be used as a snippet in origin."
"1.2.0"
#:repository-url
"https://github.com/tree-sitter-grammars/tree-sitter-luau"
#:inputs (list tree-sitter-lua-0.4)
#:inputs (list tree-sitter-lua)
#:get-cleanup-snippet
(lambda (grammar-directories)
#~(begin
@@ -1237,8 +1224,8 @@ which will be used as a snippet in origin."
(define-public tree-sitter-markdown
(tree-sitter-grammar
"markdown" "Markdown (CommonMark Spec v0.30)"
"0vz9r1dbbdj8vwf45izmbajhjbl98ww2dvlk1faqy33kx7plsiar"
"0.5.3"
"0r8jlmyr1bnyqqipmpmxxw4qw81c9n0l29xdfkz2n2zmjqps5v9r"
"0.4.1"
#:repository-url "https://github.com/MDeiml/tree-sitter-markdown"
#:grammar-directories '("tree-sitter-markdown"
"tree-sitter-markdown-inline")
@@ -1599,8 +1586,8 @@ which will be used as a snippet in origin."
(package
(inherit (tree-sitter-grammar "query"
"Query"
"1m7w05228ky26ph4k9vfwjwkhghppnpvci2i45iwncjanrni6byk"
"0.8.0"
"0fbqwg7km4yqjq8p2fkj9hpy0sfnijnf1hsk34wsirlp3af3hc67"
"0.7.0"
#:repository-url
"https://github.com/tree-sitter-grammars/tree-sitter-query"))
(synopsis "Tree-sitter grammar for Tree-sitter's query language")
@@ -2087,15 +2074,15 @@ files.")))
(define-public tree-sitter-vim
(tree-sitter-grammar "vim"
"Vimscript"
"1myz19yimx179gzd6w64zyshfb4hbxp7qfrdf6nvf9a2w8bc2wij"
"0.8.1"
"0wr0sijh3vpka0gysbf0ki8zkvwfg8r5lvhi3xbwmkbyszjzgrqw"
"0.7.0"
#:repository-url "https://github.com/tree-sitter-grammars/tree-sitter-vim"))
(define-public tree-sitter-vimdoc
(tree-sitter-grammar "vimdoc"
"Vimdoc"
"18f1dr3j79axg6yqrvm0fc2w4cil403al9xifc4h4vkkp6hg6y9b"
"4.1.0"
"1gi16hmh4vk9hdfkg9kvwxd7m4rq8r6vymk7fgxqqrbyrks9f0mw"
"4.0.0"
#:repository-url
"https://github.com/neovim/tree-sitter-vimdoc"
#:license license:expat))
+2 -2
View File
@@ -96,7 +96,7 @@ also use Valgrind to build new tools.")
(define-public valgrind
(package
(inherit valgrind/pinned)
(version "3.27.0")
(version "3.26.0")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/pub/valgrind"
@@ -105,7 +105,7 @@ also use Valgrind to build new tools.")
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
"1vsv47wkmz2yd15alzd03839ikmd26bip9wfd58qzvjphbg3fnav"))))))
"1mvbc6x0w6blkv8wn5fh7pcm6bk9p4m81bxd99jg21li08bwfm4d"))))))
(define-public valgrind/interactive
(package/inherit valgrind
+10 -2
View File
@@ -1184,7 +1184,7 @@ provides an integration with GitHub and GitLab.")
(define-public got
(package
(name "got")
(version "0.124")
(version "0.123")
(source (origin
(method url-fetch)
(uri
@@ -1193,7 +1193,7 @@ provides an integration with GitHub and GitLab.")
version ".tar.gz"))
(sha256
(base32
"0i4w1njqggdqdxw3mismyqy0kjhnr4gsrd9b2p2awhwk1ac8xwwg"))))
"09l55364d8lga34gq8h6y9rs8r3xka57d1dzjr34zvp20dgpkbjk"))))
(inputs
(list libevent
`(,util-linux "lib")
@@ -1316,6 +1316,14 @@ other git-like projects such as @code{libgit2}.")
"-DREGEX_BACKEND=pcre2"
"-DUSE_HTTP_PARSER=http-parser"
"-DUSE_SSH=ON" ; cmake fails to find libssh if this is missing
,@(if (%current-target-system)
`((string-append
"-DPKG_CONFIG_EXECUTABLE="
(search-input-file
%build-inputs
(string-append "/bin/" ,(%current-target-system)
"-pkg-config"))))
'())
;; See https://github.com/libgit2/libgit2/issues/7169
,@(if (target-32bit?)
'("-DCMAKE_C_FLAGS=-D_FILE_OFFSET_BITS=64")
+2 -2
View File
@@ -10117,7 +10117,7 @@ week, a month) and then browse/organise it while staying disconnected.")
(define-public uriparser
(package
(name "uriparser")
(version "1.0.2")
(version "1.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -10126,7 +10126,7 @@ week, a month) and then browse/organise it while staying disconnected.")
(file-name (git-file-name name version))
(sha256
(base32
"1a4032wn6p9mv5lizh5rpg5gwvq69bk7zfqix7vjv5cap1zqvk84"))))
"05y33g80wgf155lm6ir21kw2an59fgf3q4w26iaarc8zi75m324k"))))
(build-system cmake-build-system)
(native-inputs (list googletest doxygen graphviz))
(arguments (if (%current-target-system)
+8 -11
View File
@@ -3289,7 +3289,7 @@ resources and provides animations for switching between backgrounds.")
(define-public swaynotificationcenter
(package
(name "swaynotificationcenter")
(version "0.12.6")
(version "0.10.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3297,7 +3297,7 @@ resources and provides animations for switching between backgrounds.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0zg599v36ljd8561rpw1rzhacxms2x9gma6r19636cajd0gyr62k"))))
(base32 "0cx3ql7qb2wajck1vip9sm2a122jv9x8g2r0bnw4rrxd91yca7a9"))))
(build-system meson-build-system)
(arguments
(list
@@ -3324,16 +3324,13 @@ resources and provides animations for switching between backgrounds.")
scdoc
vala))
(inputs
(list blueprint-compiler
json-glib
(list json-glib
glib
granite
gtk
gtk4-layer-shell
libadwaita
granite-6
gtk+
gtk-layer-shell
libhandy
libgee
libshumate
pulseaudio
wayland-protocols))
(synopsis "Notification daemon with a graphical interface")
@@ -3361,7 +3358,7 @@ compository, supporting the following features:
(define-public waybar
(package
(name "waybar")
(version "0.15.0")
(version "0.14.0")
(source
(origin
(method git-fetch)
@@ -3370,7 +3367,7 @@ compository, supporting the following features:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ify8zywlq6zrmbzp293q72pnzy3czkvrb4zia2xnsvsmy04mmp3"))))
(base32 "1b1783382y38mzzrzw53p20lwpfs0n2npqbs91j9ddgg6xk82s4q"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "--wrap-mode=nodownload")))
+1 -1
View File
@@ -116,7 +116,7 @@ knowledge of the Z-Wave protocol.")
(lambda _
(substitute* "binding.gyp"
(("std=c\\+\\+11")
"std=c++17"))))
"std=c++20"))))
(replace 'build
;; For some reason, `npm install` doesn't build
;; the addon automatically, so we do it explicitly here.
+1 -7
View File
@@ -216,10 +216,6 @@
syslog-configuration
syslog-configuration?
syslog-configuration-syslogd
syslog-configuration-config-file
syslog-configuration-pid-file
syslog-configuration-extra-options
syslog-service ; deprecated
syslog-service-type
%default-syslog.conf
@@ -1690,8 +1686,6 @@ mail.* -/var/log/maillog
(default (file-append inetutils "/libexec/syslogd")))
(config-file syslog-configuration-config-file
(default %default-syslog.conf))
(pid-file syslog-configuration-pid-file
(default "/var/run/syslog.pid"))
(extra-options syslog-configuration-extra-options
(default '())))
@@ -1727,7 +1721,7 @@ reload its settings file.")))
"-f" #$syslog.conf
#$@(syslog-configuration-extra-options config))
#:file-creation-mask #o137
#:pid-file #$(syslog-configuration-pid-file config)))
#:pid-file "/var/run/syslog.pid"))
(stop #~(make-kill-destructor))))
(define %default-syslog-files
+1 -3
View File
@@ -801,9 +801,7 @@ port=" (number->string port) "
(list (service-extension account-service-type
(const %mysql-accounts))
(service-extension shepherd-root-service-type
mysql-shepherd-services)
(service-extension profile-service-type
(compose list mysql-configuration-mysql))))
mysql-shepherd-services)))
(default-value (mysql-configuration))
(description "Run the MySQL or MariaDB database server,
@command{mysqld}.")))
-54
View File
@@ -1,54 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;;
;;; 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 services firmware)
#:use-module (gnu packages firmware)
#:use-module (gnu services)
#:use-module (gnu services base)
#:use-module (gnu services configuration)
#:use-module (gnu services dbus)
#:use-module (guix packages)
#:use-module (guix gexp)
#:export (fwupd-configuration
fwupd-configuration?
fwupd-configuration-fields
fwupd-configuration-fwupd
fwupd-service-type))
(define-configuration/no-serialization fwupd-configuration
(fwupd
(package fwupd)
"The fwupd package that will be installed in the system profile."))
(define fwupd-service-type
(service-type
(name 'fwupd)
(extensions
(list
(service-extension profile-service-type
(compose list fwupd-configuration-fwupd))
(service-extension dbus-root-service-type
(compose list fwupd-configuration-fwupd))
(service-extension udev-service-type
(compose list fwupd-configuration-fwupd))
(service-extension polkit-service-type
(compose list fwupd-configuration-fwupd))))
(default-value (fwupd-configuration))
(description
"This service runs the fwupd daemon on the Guix System.")))
+1 -10
View File
@@ -532,16 +532,7 @@ avoid potential infinite waits blocking libvirt."))
(string-append
"LINUX_MODULE_DIRECTORY="
"/run/booted-system/kernel/lib/modules"))))
(stop #~(make-kill-destructor))
(actions
(list (shepherd-signal-action
'reload SIGHUP
#:documentation "Send a @code{SIGHUP} signal
to @command{libvirtd} to reload its configuration (both its configuration file,
and the content of @file{/etc/libvirtd}, in which live the XML files
that define e.g. the VMs and their network)."
#:message "Service libvirtd has been asked \
to reload its configuration.")))))))
(stop #~(make-kill-destructor))))))
(define (/etc/qemu/firmware config)
(let ((firmwares (libvirt-configuration-firmwares config)))
+3 -9
View File
@@ -10,7 +10,7 @@
;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020, 2022, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020, 2023, 2026 Janneke Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020, 2022, 2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com>
@@ -1033,7 +1033,7 @@ LOGO=guix-icon
HOME_URL=\"https://guix.gnu.org\"
DOCUMENTATION_URL=\"https://guix.gnu.org/en/manual\"
SUPPORT_URL=\"https://guix.gnu.org/en/help\"
BUG_REPORT_URL=\"https://codeberg.org/guix/guix/issues\"
BUG_REPORT_URL=\"https://lists.gnu.org/mailman/listinfo/bug-guix\"
"))
(define* (operating-system-etc-service os)
@@ -1537,14 +1537,9 @@ a list of <menu-entry>, to populate the \"old entries\" menu."
"pci-arbiter"
"--host-priv-port='${host-port}'"
"--device-master-port='${device-port}'"
"--next-task='${acpi-task}'"
"--next-task='${disk-task}'"
"'$(pci-task=task-create)'"
"'$(task-resume)'"))
(acpi-command
(list (file-append hurd "/hurd/acpi.static")
"acpi"
"--next-task='${disk-task}'"
"'$(acpi-task=task-create)'"))
(rumpdisk-command
(list (file-append hurd "/hurd/rumpdisk.static")
"rumpdisk"
@@ -1575,7 +1570,6 @@ a list of <menu-entry>, to populate the \"old entries\" menu."
(list (file-append hurd "/hurd/exec.static") "exec"
"'$(exec-task=task-create)'")))
(list pci-arbiter-command
acpi-command
rumpdisk-command
root-file-system-command
exec-server-command)))
+2 -3
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020, 2023, 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,7 +37,6 @@
#:use-module (gnu packages hurd)
#:use-module (gnu packages less)
#:use-module (gnu packages linux)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages texinfo)
#:use-module (gnu services)
#:use-module (gnu services base)
@@ -73,7 +72,7 @@
diffutils patch gawk tar gzip bzip2 xz lzip zstd
guile-3.0-latest guile-colorized guile-readline
net-base nss-certs inetutils less procps shadow sudo which
info-reader pciutils))
info-reader))
(define %base-services/hurd
(append (list (service hurd-console-service-type
+13 -7
View File
@@ -30,10 +30,16 @@
#:use-module (guix search-paths)
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
#:export (%node-build-system-modules
#:export (%default-lockfiles
%node-build-system-modules
node-build
node-build-system))
(define %default-lockfiles
(list "package-lock.json"
"yarn.lock"
"npm-shrinkwrap.json"))
(define %node-build-system-modules
;; Build-side modules imported by default.
`((guix build node-build-system)
@@ -47,6 +53,10 @@
"Return the default Node package, resolved lazily."
(@* (gnu packages node) node-lts))
(define (default-guile-json)
"Return the default guile-json package, resolved lazily."
(@* (gnu packages guile) guile-json-4))
(define* (lower name
#:key source inputs native-inputs outputs system target
(node (default-node))
@@ -78,17 +88,12 @@
(build node-build)
(arguments (strip-keyword-arguments private-keywords arguments)))))
(define (default-guile-json)
"Return the default guile-json package."
;; Lazily resolve the binding to avoid a circular dependency.
(let ((mod (resolve-interface '(gnu packages guile))))
(module-ref mod 'guile-json-4)))
(define* (node-build name inputs
#:key
source
(npm-flags ''())
(test-target "test")
(lockfiles %default-lockfiles)
(tests? #t)
(phases '%standard-phases)
(outputs '("out"))
@@ -110,6 +115,7 @@
#:system #$system
#:npm-flags #$npm-flags
#:test-target #$test-target
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:phases #$phases
#:outputs #$(outputs->gexp outputs)
+4
View File
@@ -105,6 +105,7 @@
source
(phases '%standard-phases)
(grammar-directories '("."))
(lockfiles %default-lockfiles)
(tests? #t)
(outputs '("out" "js"))
(search-paths '())
@@ -123,6 +124,7 @@
#:source #+source
#:system #$system
#:phases #$phases
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:grammar-directories '#$grammar-directories
#:outputs #$(outputs->gexp outputs)
@@ -145,6 +147,7 @@
guile source
(phases '%standard-phases)
(grammar-directories '("."))
(lockfiles %default-lockfiles)
(tests? #t)
(outputs '("out" "js"))
(search-paths '())
@@ -179,6 +182,7 @@
#:build #$build
#:target #$target
#:phases #$phases
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:grammar-directories '#$grammar-directories
#:outputs #$(outputs->gexp outputs)
+78 -116
View File
@@ -5,6 +5,7 @@
;;; Copyright © 2021, 2022 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2024 Daniel Khodabakhsh <d.khodabakhsh@gmail.com>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -29,6 +30,7 @@
#:use-module (ice-9 match)
#:use-module (json)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-71)
#:export (%standard-phases
delete-dependencies
@@ -40,34 +42,6 @@
replace-fields
with-atomic-json-file-replacement))
(define* (assoc-ref* alist key #:optional default)
"Like assoc-ref, but return DEFAULT instead of #f if no value exists."
(match (assoc key alist)
(#f default)
((_ . value) value)))
(define* (alist-pop alist key #:optional (= equal?))
"Return two values, the first pair in ALIST with key KEY, and the other
elements. Equality calls are made as (= KEY ALISTCAR)."
(define (found? pair)
(= key (car pair)))
(let ((before after (break found? alist)))
(if (pair? after)
(values (car after) (append before (cdr after)))
(values #f before))))
(define* (alist-update alist key proc #:optional (= equal?))
"Return an association list like ALIST, but with KEY mapped to the result of
PROC applied to the first value found under the comparison (= KEY ALISTCAR).
If no such value exists, return the list unchanged.
Unlike acons, this removes the previous association of KEY (assuming it is
unique), but the result may still share storage with ALIST."
(let ((pair rest (alist-pop alist key =)))
(if (pair? pair)
(acons key (proc (cdr pair)) rest)
alist)))
;;;
;;; package.json modification procedures
;;;
@@ -106,23 +80,19 @@ listed in 'dependencies-to-remove', a list of strings naming npm packages.
To prevent the deleted dependencies from being reintroduced, use this function
only after the 'patch-dependencies' phase."
(lambda (pkg-meta)
(fold
(lambda (dependency-key pkg-meta)
(alist-update
pkg-meta
dependency-key
(lambda (dependencies)
(remove
(lambda (dependency)
(member (car dependency) dependencies-to-remove))
dependencies))))
pkg-meta
(list
"devDependencies"
"dependencies"
"peerDependencies"
"optionalDependencies"))))
(let ((predicate (lambda (dependency)
(member (car dependency) dependencies-to-remove)))
(dependency? (cut member <> (list "devDependencies"
"dependencies"
"peerDependencies"
"optionalDependencies"))))
(lambda (pkg-meta)
(map (match-lambda
(((? dependency? key) . dependencies)
(cons key (remove predicate dependencies)))
(otherwise
otherwise))
pkg-meta))))
(define* (modify-json-fields
fields
@@ -236,8 +206,7 @@ only after the 'patch-dependencies' phase."
(begin
(mkdir dir)
(setenv "HOME" (string-append (getcwd) "/" dir))
(format #t "set HOME to ~s~%" (getenv "HOME")))))))
#t)
(format #t "set HOME to ~s~%" (getenv "HOME"))))))))
(define (module-name module)
(let* ((package.json (string-append module "/package.json"))
@@ -257,67 +226,65 @@ only after the 'patch-dependencies' phase."
(for-each (lambda (dir)
(let ((nm (string-append dir "/lib/node_modules")))
(for-each (lambda (module)
(hash-set! index (module-name module) module))
(hash-set! index (module-name module)
(string-append "file://" module)))
(list-modules nm))))
input-paths)
index))
(define* (patch-dependencies #:key inputs #:allow-other-keys)
"Replace versions by paths when found among INPUTS in `package.json'."
(define index (index-modules (map cdr inputs)))
(define resolve-dependencies
(let ((index (index-modules (map cdr inputs))))
(cut map
(match-lambda
((dependency . version)
(cons dependency (hash-ref index dependency version))))
<>)))
(define (resolve-dependencies dependencies)
(map
(match-lambda
((dependency . version)
(cons dependency (hash-ref index dependency version))))
dependencies))
(with-atomic-json-file-replacement
(define (resolve key getter)
(lambda (pkg-meta)
(fold
(lambda (proc pkg-meta) (proc pkg-meta))
pkg-meta
(list
(lambda (pkg-meta)
(alist-update pkg-meta "devDependencies" resolve-dependencies))
(lambda (pkg-meta)
(assoc-set!
pkg-meta
"dependencies"
(resolve-dependencies
; Combined "peerDependencies" and "dependencies" dependencies
; with "dependencies" taking precedent.
(fold
(lambda (dependency dependencies)
(assoc-set! dependencies (car dependency) (cdr dependency)))
(assoc-ref* pkg-meta "peerDependencies" '())
(assoc-ref* pkg-meta "dependencies" '())))))))))
#t)
(assoc-set! pkg-meta key
(resolve-dependencies (getter pkg-meta)))))
(define* (delete-lockfiles #:key inputs #:allow-other-keys)
"Delete 'package-lock.json', 'yarn.lock', and 'npm-shrinkwrap.json', if they
exist."
(modify-json
(resolve "devDependencies"
(lambda (pkg-meta)
(or (assoc-ref pkg-meta "devDependencies") '())))
(resolve "dependencies"
;; Combined "peerDependencies" and "dependencies" dependencies
;; with "dependencies" taking precedent.
(lambda (pkg-meta)
(fold
(lambda (dependency dependencies)
(assoc-set! dependencies
(car dependency) (cdr dependency)))
(or (assoc-ref pkg-meta "peerDependencies") '())
(or (assoc-ref pkg-meta "dependencies") '()))))))
(define* (delete-lockfiles #:key lockfiles #:allow-other-keys)
"Delete LOCKFILES if they exist."
(for-each (lambda (pth)
(when (file-exists? pth)
(delete-file pth)))
'("package-lock.json"
"yarn.lock"
"npm-shrinkwrap.json"))
#t)
lockfiles))
(define* (configure #:key outputs inputs #:allow-other-keys)
(define* (configure #:key inputs #:allow-other-keys)
(let ((npm (string-append (assoc-ref inputs "node") "/bin/npm")))
(invoke npm "--offline" "--ignore-scripts" "--install-links" "install")
#t))
(invoke npm "--offline"
"--ignore-scripts"
"--install-links"
"--no-audit"
"install")))
(define* (build #:key inputs #:allow-other-keys)
(let ((package-meta (call-with-input-file "package.json" json->scm)))
(if (assoc-ref* (assoc-ref* package-meta "scripts" '()) "build" #f)
(let* ((package-meta (call-with-input-file "package.json" json->scm))
(scripts (assoc-ref package-meta "scripts")))
(if (and scripts (assoc-ref scripts "build"))
(let ((npm (string-append (assoc-ref inputs "node") "/bin/npm")))
(invoke npm "run" "build"))
(format #t "there is no build script to run~%"))
#t))
(format #t "there is no build script to run~%"))))
(define* (check #:key tests? inputs test-target #:allow-other-keys)
"Run 'npm run TEST-TARGET' if TESTS?"
@@ -334,8 +301,7 @@ exist."
"--owner=0"
"--group=0"
"--numeric-owner"
"-czf" "../package.tgz" ".")
#t)
"-czf" "../package.tgz" "."))
(define* (install #:key outputs inputs #:allow-other-keys)
"Install the node module to the output store item."
@@ -347,8 +313,7 @@ exist."
"--loglevel" "info"
"--production"
"--install-links"
"install" "../package.tgz")
#t))
"install" "../package.tgz")))
(define* (avoid-node-gyp-rebuild #:key outputs #:allow-other-keys)
"Adjust the installed 'package.json' to remove an 'install' script that
@@ -376,28 +341,25 @@ would try to run 'node-gyp rebuild'."
;; For further details, see:
;; - https://docs.npmjs.com/cli/v8/configuring-npm/package-json#default-values
;; - https://docs.npmjs.com/cli/v8/using-npm/scripts#best-practices
(define installed-package.json
(search-input-file outputs (string-append "/lib/node_modules/"
(module-name ".")
"/package.json")))
;; We don't want to use an atomic replacement here, because we often don't
;; even need to overwrite this file. Therefore, let's use some helpers
;; that we'd otherwise not need.
(define pkg-meta
(call-with-input-file installed-package.json json->scm))
(define scripts
(assoc-ref* pkg-meta "scripts" '()))
(when (equal? "node-gyp rebuild" (assoc-ref* scripts "install" #f))
(call-with-output-file installed-package.json
(lambda (out)
(scm->json
(assoc-set! pkg-meta
"scripts"
(assoc-set! scripts
"install"
"echo Guix: avoiding node-gyp rebuild"))
out)))))
(let* ((installed-package.json
(search-input-file outputs (string-append "/lib/node_modules/"
(module-name ".")
"/package.json")))
;; We don't want to use an atomic replacement here, because we often
;; don't even need to overwrite this file. Therefore, let's use some
;; helpers that we'd otherwise not need.
(pkg-meta (call-with-input-file installed-package.json json->scm))
(scripts (or (assoc-ref pkg-meta "scripts") '())))
(when (equal? "node-gyp rebuild" (assoc-ref scripts "install"))
(call-with-output-file installed-package.json
(lambda (out)
(scm->json
(assoc-set! pkg-meta
"scripts"
(assoc-set! scripts
"install"
"echo Guix: avoiding node-gyp rebuild"))
out))))))
(define %standard-phases
(modify-phases gnu:%standard-phases
+1 -2
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2018, 2020-2022, 2025-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2018, 2020-2022, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2012, 2015 Free Software Foundation, Inc.
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -149,7 +149,6 @@ Raise an '&http-get-error' condition if downloading fails."
(response-code resp)))
(case code
((200)
(set-port-filename! data (uri->string uri))
(values data resp))
((301 ; moved permanently
302 ; found (redirection)
+1 -2
View File
@@ -927,8 +927,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file."
(inputs (cran-package-inputs meta repository
#:download-source download-source))
(substitutable? (and substitutable? (not git?) (not hg?)
(not (false-if-exception
(source-size-too-big? source-url)))))
(not (source-size-too-big? source-url))))
(package
`(package
(name ,(cran-guix-name name))
+4 -4
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2024, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
@@ -703,7 +703,7 @@ values.")))))))))
(loop tail 'regular
(append (append-map
for-type
(ensure-list (load* file '())))
(ensure-list (load* file (make-user-module '()))))
result))))
(('manifest . manifest)
;; Otherwise '--system' is ignored.
@@ -715,8 +715,8 @@ values.")))))))))
(manifest-entries
(ensure-manifest
(load* manifest
'((guix profiles)
(gnu)))
(make-user-module '((guix profiles)
(gnu))))
manifest)))
result))))
(('expression . str)
+4 -4
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 David Thompson <davet@gnu.org>
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.org>
;;; Copyright © 2020-2022, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2024 Richard Sent <richard@freakingpenguin.com>
;;; Copyright © 2025 Arun Isaac <arunisaac@systemreboot.net>
;;;
@@ -120,9 +120,9 @@ Perform the deployment specified by FILE.\n"))
"Load FILE as a user module."
(let* ((guix-path (dirname (search-path %load-path "guix.scm")))
(environment-modules (scheme-modules* guix-path "gnu/machine"))
(modules (append '((gnu) (gnu machine))
environment-modules)))
(load* file modules)))
(module (make-user-module (append '((gnu) (gnu machine))
environment-modules))))
(load* file module)))
(define* (show-what-to-deploy machines #:key (dry-run? #f) (roll-back? #f))
"Show the list of machines in MACHINES to deploy or roll back."
+5 -4
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018 David Thompson <davet@gnu.org>
;;; Copyright © 2015-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Mike Gerwitz <mtg@gnu.org>
;;; Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com>
;;;
@@ -319,8 +319,8 @@ use '--preserve' instead~%"))
(define (load-manifest file) ;TODO: factorize
"Load the user-profile manifest (Scheme code) from FILE and return it."
(let ((modules '((guix profiles) (gnu))))
(load* file modules)))
(let ((user-module (make-user-module '((guix profiles) (gnu)))))
(load* file user-module)))
(define (options/resolve-packages store opts)
"Return OPTS with package specification strings replaced by manifest entries
@@ -369,7 +369,8 @@ for the corresponding packages."
(packages->outputs (read/eval str) mode))
(('load mode file)
;; Add all the outputs of the package defined in FILE.
(packages->outputs (load* file '()) mode))
(let ((module (make-user-module '())))
(packages->outputs (load* file module) mode)))
(('manifest . file)
(manifest-entries (load-manifest file)))
(('nesting? . #t)

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