mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-07 17:44:03 +02:00
Compare commits
240 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 804c8104a3 | |||
| 9492cfa45b | |||
| ea5bccd423 | |||
| 9abc0a2288 | |||
| 2a210ec364 | |||
| 78c8ab5782 | |||
| 4fca464f91 | |||
| 204baea3ef | |||
| 911271ca56 | |||
| 3d2b6612b3 | |||
| d6cca68094 | |||
| 7b478ce184 | |||
| 4dc59ee36b | |||
| 0efd01162f | |||
| 76b3f5be20 | |||
| 5e2ce939a5 | |||
| f3939bbcd1 | |||
| 61065a5384 | |||
| 698559a3aa | |||
| 5f5d345f53 | |||
| 2cbe77f480 | |||
| 1ddcd976a0 | |||
| 8fc4664f0e | |||
| b56f9d2271 | |||
| 5bb8ff2edd | |||
| 295db2baea | |||
| eb9379c682 | |||
| 54e92a3c05 | |||
| 436aeea0bf | |||
| a310d46cdd | |||
| 25632f9412 | |||
| 97731feda5 | |||
| 0bef017001 | |||
| cf7adf3954 | |||
| 892a857130 | |||
| 3ef72f23e6 | |||
| 432508202f | |||
| ce87998b2c | |||
| 5c20c167b8 | |||
| 3e30ec4255 | |||
| b4ef2bb4ac | |||
| bce3de8c33 | |||
| 5b47e87694 | |||
| 79eb796cc6 | |||
| 0f6b97e1a8 | |||
| c47216bede | |||
| bd98d33841 | |||
| 6094799db8 | |||
| fc27102e8a | |||
| fcd85e7ca8 | |||
| a9b4d9dab2 | |||
| 6f8ebeb67c | |||
| 56a998e94c | |||
| 1100e266a6 | |||
| d255c4e9f2 | |||
| 7f8750a383 | |||
| b39a170b3b | |||
| d543870175 | |||
| 8ddc279254 | |||
| 03b2e7f34a | |||
| c9dcd203e5 | |||
| f13901f6cb | |||
| 4b81a4df19 | |||
| 2d4f290e17 | |||
| 882f46bdd7 | |||
| 3deecc2f87 | |||
| 36d431c051 | |||
| 568f8e97a7 | |||
| 94ae360ab4 | |||
| a6f6e6c7b3 | |||
| 9f8d0595a2 | |||
| bb40939209 | |||
| d00631a4ff | |||
| 8e8403b996 | |||
| 33550057ae | |||
| 3c85becdf7 | |||
| c451c185de | |||
| a404ada964 | |||
| fcacbd0826 | |||
| 24061dccef | |||
| 794173c04a | |||
| 18f6d3537f | |||
| 9075b70fdc | |||
| ccd324ef6d | |||
| 57fb0b2312 | |||
| b2a13dcf54 | |||
| 2ca9efb154 | |||
| 0ab9e0ad28 | |||
| 8fdcc9a4a2 | |||
| 9fbec1f16f | |||
| 2bf228ab40 | |||
| 027eec1faf | |||
| 5b0d1fc8ab | |||
| 1158d6f4ea | |||
| e39609d41b | |||
| 02b3d4d442 | |||
| 3f89f7b20c | |||
| d121362bef | |||
| a243040e4d | |||
| b48654ff08 | |||
| 6b39fe14d9 | |||
| 8bcdaeef8e | |||
| 86e413b46f | |||
| 33730f95a9 | |||
| 5f65d3f998 | |||
| 883d0e0f83 | |||
| 77ae767bae | |||
| d7aacd8c84 | |||
| e1a0cd5c7b | |||
| 355e90f787 | |||
| 3ec013018a | |||
| ef3dcc29e5 | |||
| b84d3cb9bf | |||
| cd9d6853d4 | |||
| d83568b31d | |||
| 8975ae41b7 | |||
| fff231162b | |||
| 6e0a7e14e0 | |||
| f66846de2f | |||
| e0c204b2c2 | |||
| 5cbdcd4a9a | |||
| 9c664e9a85 | |||
| 133e135cc7 | |||
| 9b91ff6e74 | |||
| d22620424b | |||
| d3b0f2323e | |||
| e420a1974c | |||
| 115aae70b6 | |||
| 117043e5e8 | |||
| 9a7db2db5d | |||
| 6dd1ff6e9e | |||
| 7b6e9748c4 | |||
| 641992f1ee | |||
| 8a505cfd48 | |||
| 10bf5b6c29 | |||
| c7871f6111 | |||
| 363ea2f547 | |||
| 3d87fa6421 | |||
| d9711641a6 | |||
| 2adf8026c4 | |||
| 984c5f07cd | |||
| 6fdb90592a | |||
| c682b5f3a5 | |||
| 47eb631d50 | |||
| 14435577a8 | |||
| b41dc8345c | |||
| 84bbece4d5 | |||
| dc4f3b708f | |||
| 2ec28cfdfa | |||
| 50aec8eeba | |||
| 8d108e2d89 | |||
| a3bce9294d | |||
| c1efd598a8 | |||
| 6e0addaab7 | |||
| e712542373 | |||
| 265b95ec9c | |||
| d884f509f8 | |||
| 17eaf9a444 | |||
| e018ecb458 | |||
| 126a51d0e5 | |||
| 04b1cac9b7 | |||
| 1b3e7af0d7 | |||
| 26e42c6c26 | |||
| fc34e4ff12 | |||
| ed6dc37044 | |||
| e0431c7d7c | |||
| 5bb48ad74b | |||
| 4ec740ec18 | |||
| 81934cf7e9 | |||
| 34bc468f33 | |||
| d066971753 | |||
| 16f9d0985f | |||
| 8f1f7b614a | |||
| fdcfe68021 | |||
| 9749500d75 | |||
| 85ce0f1fbb | |||
| 96195363d9 | |||
| 87cc50cf07 | |||
| f3bb486988 | |||
| f321a1b7de | |||
| d304eecf24 | |||
| 1da8972e11 | |||
| 20b9a9ed98 | |||
| f215a51317 | |||
| facddec38e | |||
| e965869895 | |||
| f528be103a | |||
| 428080e755 | |||
| db597f0573 | |||
| 738ce4385b | |||
| 54a3afc52b | |||
| 185b816ed9 | |||
| 98062e0c27 | |||
| 1d855b34f6 | |||
| 3b05b9d7ac | |||
| 3e1befe1d8 | |||
| c8f53f4b2e | |||
| eea9711889 | |||
| c1e2c71598 | |||
| f2f6164edb | |||
| 2c161c4c52 | |||
| a986f9176e | |||
| b68966fde5 | |||
| 104d503e0c | |||
| e4f9aaba79 | |||
| 0861076552 | |||
| ba3368fcc7 | |||
| 39acd8021b | |||
| 48dda27f41 | |||
| f3145603c8 | |||
| 4393dbcfd5 | |||
| a11eeeaf63 | |||
| 49613fb544 | |||
| 3612d6f692 | |||
| 4939bcf4bb | |||
| 2dfd0bd450 | |||
| dde0466984 | |||
| f8a599ff88 | |||
| 0ebdc92afc | |||
| 23356f4011 | |||
| ed63b0a031 | |||
| 7714e0bfb5 | |||
| acc8f821c8 | |||
| e1c5af77b2 | |||
| 2756e884dd | |||
| c1fd1e40f6 | |||
| c1897da250 | |||
| 6c666986e8 | |||
| 43833afaa1 | |||
| 0ce84291ef | |||
| e270413295 | |||
| 58c844a1ec | |||
| 47919d9f99 | |||
| c0d0ba76e5 | |||
| 9d0bb1ef26 | |||
| 2b94e23e7c | |||
| a3373301a8 | |||
| 05424e9633 | |||
| 4f73e5570d | |||
| 589f02e0c5 |
+41
-23
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019-2026 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,17 +324,31 @@ actual file name."
|
||||
((('span ('@ ('class "category")) ;raw Texinfo 6.8
|
||||
(? string-or-entity?) ...) rest ...)
|
||||
#t)
|
||||
((('span ('@ ('class "symbol-definition-category"))
|
||||
(? string-or-entity?) ...) rest ...)
|
||||
((('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 ...)
|
||||
#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
|
||||
(('dt ('@ ('id id) _ ...) rest ...)
|
||||
((or ('dt ('@ ('id id) _ ...) rest ...) ;Texinfo 6
|
||||
('dt ('@ ('class (? definition-class?)) ;Texinfo 7
|
||||
('id id))
|
||||
rest ...))
|
||||
(if (and (string-prefix? "index-" id)
|
||||
(worthy-entry? rest))
|
||||
(alist-cons (anchor-id->key id)
|
||||
@@ -505,10 +519,16 @@ 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)))))
|
||||
@@ -537,7 +557,10 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
(link (@ (rel "stylesheet")
|
||||
(type "text/css")
|
||||
(href #$syntax-css-url)))))
|
||||
(('pre ('@ ('class "lisp")) code-snippet ...)
|
||||
((or ('pre ('@ ('class "lisp")) ;Texinfo 6
|
||||
code-snippet ...)
|
||||
('pre ('@ ('class "lisp-preformatted"))
|
||||
code-snippet ...))
|
||||
`(pre (@ (class "lisp"))
|
||||
,@(highlights->sxml*
|
||||
(pair-open/close
|
||||
@@ -545,14 +568,16 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
(concatenate-snippets code-snippet)))
|
||||
anchors)))
|
||||
|
||||
;; Replace the ugly <strong> used for @deffn etc., which
|
||||
;; translate to <dt>, with more stylable markup.
|
||||
;; 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.
|
||||
(('dt ('@ ('id id)) ;raw Texinfo 6.8
|
||||
('span ('@ ('class "category")) category ...)
|
||||
('span ('strong thing)
|
||||
anchor))
|
||||
(highlight-definition id category thing '()))
|
||||
(('dt (@ ('id id))
|
||||
(('dt ('@ ('id id)) ;ditto
|
||||
('span ('@ ('class "category")) category ...)
|
||||
('span ('strong thing)
|
||||
(? space?) ('em args ...)
|
||||
@@ -808,16 +833,9 @@ in SOURCE."
|
||||
(match sxml
|
||||
(('*TOP* decl body ...)
|
||||
`(*TOP* ,decl ,@(map loop body)))
|
||||
(('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
|
||||
((or ('body ('@ _) elements ...)
|
||||
('body elements ...))
|
||||
`(body ,(navigation-bar
|
||||
;; TODO: Add "Contribute" menu, to report
|
||||
;; errors, etc.
|
||||
(list (menu-dropdown
|
||||
@@ -952,12 +970,12 @@ makeinfo OPTIONS."
|
||||
(mkdir-p (string-append #$output "/"
|
||||
(normalize language)))
|
||||
(setenv "LANGUAGE" language)
|
||||
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
||||
"-o" (string-append #$output "/"
|
||||
(normalize language)
|
||||
"/html_node")
|
||||
opts)
|
||||
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
||||
"--no-split"
|
||||
"-o"
|
||||
(string-append #$output "/"
|
||||
@@ -1409,7 +1427,7 @@ commit date (an integer)."
|
||||
(string-append #+tar "/bin:"
|
||||
#+xz "/bin:"
|
||||
#+zstd "/bin:"
|
||||
#+texinfo "/bin"))
|
||||
#+texinfo-7 "/bin"))
|
||||
(invoke "tar" "xf" #$(package-source guile))
|
||||
(mkdir-p (string-append #$output "/en/html_node"))
|
||||
|
||||
@@ -1428,7 +1446,7 @@ commit date (an integer)."
|
||||
(string-append #$output "/en/html_node")))))))))
|
||||
|
||||
(define %guile-manual-base-url
|
||||
"https://www.gnu.org/software/guile/manual")
|
||||
"https://doc.guix.gnu.org/guile/latest/en")
|
||||
|
||||
(define (for-all-languages index)
|
||||
(map (lambda (language)
|
||||
|
||||
+26
-11
@@ -646,9 +646,11 @@ This field contains a description of the source code origin. The
|
||||
|
||||
@enumerate
|
||||
@item The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
|
||||
exist, such as @code{git-fetch} for Git repositories.
|
||||
exist, such as @code{git-fetch} for Git repositories. @xref{origin
|
||||
Reference,,, guix, GNU Guix Reference Manual}, for more info on the
|
||||
available download methods.
|
||||
@item The URI, which is typically some @code{https://} location for @code{url-fetch}. Here
|
||||
the special `mirror://gnu` refers to a set of well known locations, all of
|
||||
the special @code{mirror://gnu} refers to a set of well known locations, all of
|
||||
which can be used by Guix to fetch the source, should some of them fail.
|
||||
@item The @code{sha256} checksum of the requested file. This is essential to ensure
|
||||
the source is not corrupted. Note that Guix works with base32 strings,
|
||||
@@ -1116,7 +1118,8 @@ Let's discuss those fields in depth.
|
||||
@subsubsection @code{git-fetch} method
|
||||
|
||||
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
|
||||
a Git repository and a commit. The commit can be any Git reference such as
|
||||
a Git repository and a commit (@pxref{origin Reference,,, guix, GNU Guix
|
||||
Reference Manual}). The commit can be any Git reference such as
|
||||
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
|
||||
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
|
||||
"v" version))}.
|
||||
@@ -1162,7 +1165,7 @@ Snippets might need additional Guile modules which can be imported from the
|
||||
|
||||
There are 3 different input types. In short:
|
||||
|
||||
@table @asis
|
||||
@table @code
|
||||
@item native-inputs
|
||||
Required for building but not runtime -- installing a package
|
||||
through a substitute won't install these inputs.
|
||||
@@ -1230,9 +1233,14 @@ It's advised to separate outputs only when you've shown it's worth it: if the
|
||||
output size is significant (compare with @code{guix size}) or in case the package is
|
||||
modular.
|
||||
|
||||
@xref{Packages with Multiple Outputs,,, guix, GNU Guix Reference
|
||||
Manual}, for more info.
|
||||
|
||||
@subsubsection Build system arguments
|
||||
|
||||
The @code{arguments} is a keyword-value list used to configure the build process.
|
||||
The @code{arguments} is a keyword-value list used to configure the build
|
||||
process; these arguments are passed to the @dfn{build system}
|
||||
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
|
||||
|
||||
The simplest argument @code{#:tests?} can be used to disable the test suite when
|
||||
building the package. This is mostly useful when the package does not feature
|
||||
@@ -1248,7 +1256,7 @@ following flags
|
||||
"CC=gcc")
|
||||
@end lisp
|
||||
|
||||
translate into
|
||||
translate into:
|
||||
|
||||
@example
|
||||
$ make CC=gcc prefix=/gnu/store/...-<out>
|
||||
@@ -1268,7 +1276,9 @@ Similarly, it's possible to set the configure flags:
|
||||
The @code{%build-inputs} variable is also generated in scope. It's an association
|
||||
table that maps the input names to their store directories.
|
||||
|
||||
The @code{phases} keyword lists the sequential steps of the build system. Typically
|
||||
The @code{phases} keyword lists the sequential steps of the build
|
||||
system. @xref{Build Phases,,, guix, GNU Guix Reference Manual}, for
|
||||
details; in a nutshell,
|
||||
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
|
||||
more about those phases, you need to work out the appropriate build system
|
||||
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
|
||||
@@ -1383,10 +1393,12 @@ Its return value is ignored.
|
||||
|
||||
@subsubsection Code staging
|
||||
|
||||
The astute reader may have noticed the quasi-quote and comma syntax in the
|
||||
The astute reader may have noticed the hash-tilde and hash-dollar syntax in the
|
||||
argument field. Indeed, the build code in the package declaration should not be
|
||||
evaluated on the client side, but only when passed to the Guix daemon. This
|
||||
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
|
||||
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for info on the
|
||||
this mechanism, which is called @dfn{g-expressions}.
|
||||
|
||||
@subsubsection Utility functions
|
||||
|
||||
@@ -1395,7 +1407,7 @@ equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.)@: com
|
||||
regular ``Unix-style'' installations.
|
||||
|
||||
Some like @code{chmod} are native to Guile.
|
||||
@xref{,,, guile, Guile reference manual} for a complete list.
|
||||
@xref{File System,,, guile, Guile reference manual} for a complete list.
|
||||
|
||||
Guix provides additional helper functions which prove especially handy in the
|
||||
context of package management.
|
||||
@@ -1575,7 +1587,9 @@ noticed that a significant number of them have a @code{inherit} field:
|
||||
|
||||
All unspecified fields are inherited from the parent package. This is very
|
||||
convenient to create alternative packages, for instance with different source,
|
||||
version or compilation options.
|
||||
version or compilation options. @xref{Defining Package Variant,,, guix,
|
||||
GNU Guix Reference Manual}, for a discussion of inheritance and of other
|
||||
ways to create package variants.
|
||||
|
||||
@node Getting help
|
||||
@subsection Getting help
|
||||
@@ -1616,7 +1630,8 @@ hopefully we will see your contributions soon!
|
||||
|
||||
@itemize
|
||||
@item
|
||||
The @uref{https://guix.gnu.org/manual/en/html_node/Defining-Packages.html, package reference in the manual}
|
||||
@xref{Defining Packages,,, guix, GNU Guix Reference Manual}, for the
|
||||
@code{package} reference in the manual.
|
||||
|
||||
@item
|
||||
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotr’s hacking guide to GNU Guix}
|
||||
|
||||
+286
-62
@@ -264,6 +264,7 @@ Setting Up the Daemon
|
||||
* Build Environment Setup:: Preparing the isolated build environment.
|
||||
* Daemon Offload Setup:: Offloading builds to remote machines.
|
||||
* SELinux Support:: Using an SELinux policy for the daemon.
|
||||
* AppArmor Support:: Using an AppArmor profile for the daemon.
|
||||
|
||||
System Installation
|
||||
|
||||
@@ -480,12 +481,14 @@ Home Services
|
||||
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
|
||||
* Desktop: Desktop Home Services. Services for graphical environments.
|
||||
* Guix: Guix Home Services. Services for Guix.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Fonts: Fonts Home Services. Services for managing User's fonts.
|
||||
* Sound: Sound Home Services. Dealing with audio.
|
||||
* Mail: Mail Home Services. Services for managing mail.
|
||||
* Messaging: Messaging Home Services. Services for managing messaging.
|
||||
* Media: Media Home Services. Services for managing media.
|
||||
* mpv Media Player::
|
||||
* Niri: Niri window manager. Setting up the Niri.
|
||||
* Sway: Sway window manager. Setting up the Sway configuration.
|
||||
* Networking: Networking Home Services. Networking services.
|
||||
* Secrets: Secrets Home Services. Services for storing secrets.
|
||||
@@ -4780,14 +4783,91 @@ 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}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file} instead of
|
||||
@item --channels=@var{file-or-uri}
|
||||
@itemx -C @var{file-or-uri}
|
||||
Read the list of channels from @var{file-or-uri} instead of
|
||||
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
|
||||
@var{file} must contain Scheme code that
|
||||
@var{file-or-uri} 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,
|
||||
@@ -4922,6 +5002,17 @@ 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}
|
||||
|
||||
@@ -5018,12 +5109,68 @@ 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}
|
||||
@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.
|
||||
@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.
|
||||
@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,
|
||||
@@ -5752,6 +5899,7 @@ 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))
|
||||
|
||||
@@ -5766,6 +5914,21 @@ 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
|
||||
|
||||
@@ -14675,8 +14838,32 @@ 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. @command{guix hash} has the
|
||||
following options:
|
||||
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:
|
||||
|
||||
@table @code
|
||||
|
||||
@@ -15983,51 +16170,10 @@ 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. 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.
|
||||
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.
|
||||
|
||||
The general syntax is:
|
||||
|
||||
@@ -16090,14 +16236,45 @@ definition of the Coreutils package like so:
|
||||
@end example
|
||||
|
||||
@item inputs
|
||||
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:
|
||||
Rewrite package inputs to the ``new style''. 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
|
||||
@@ -16136,6 +16313,29 @@ 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
|
||||
@@ -20705,6 +20905,9 @@ 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}.
|
||||
|
||||
@@ -46212,6 +46415,26 @@ 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
|
||||
|
||||
@@ -49210,7 +49433,7 @@ Return the default GRUB theme used by the operating system if no
|
||||
record.
|
||||
|
||||
It comes with a fancy background image displaying the Guix
|
||||
logos.
|
||||
logo.
|
||||
@end deffn
|
||||
|
||||
For example, to override the default resolution, you may use something
|
||||
@@ -51270,7 +51493,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
|
||||
@@ -52205,12 +52428,13 @@ services)}.
|
||||
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
|
||||
* Desktop: Desktop Home Services. Services for graphical environments.
|
||||
* Guix: Guix Home Services. Services for Guix.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Fonts: Fonts Home Services. Services for managing User's fonts.
|
||||
* Sound: Sound Home Services. Dealing with audio.
|
||||
* Mail: Mail Home Services. Services for managing mail.
|
||||
* Messaging: Messaging Home Services. Services for managing messaging.
|
||||
* Media: Media Home Services. Services for managing media.
|
||||
* mpv Media Player::
|
||||
* Niri: Niri window manager. Setting up the Niri.
|
||||
* Sway: Sway window manager. Setting up the Sway configuration.
|
||||
* Networking: Networking Home Services. Networking services.
|
||||
|
||||
+11
-11
@@ -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),%D%/$(2).$(lang).texi)
|
||||
lang_to_texinfo = $(foreach lang,$(1),$(srcdir)/%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_srcdir)/pre-inst-env $(GUILE) --no-auto-compile \
|
||||
$(top_builddir)/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="%D%/guix.texi" \
|
||||
--variable master="$(srcdir)/%D%/guix.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
po/doc/po4a.cfg
|
||||
$(srcdir)/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="%D%/guix-cookbook.texi" \
|
||||
--variable po="$<" \
|
||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||
--variable localized="$@.tmp" \
|
||||
--variable master="$(srcdir)/%D%/guix-cookbook.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
po/doc/po4a.cfg
|
||||
$(srcdir)/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="%D%/contributing.texi" \
|
||||
--variable master="$(srcdir)/%D%/contributing.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
po/doc/po4a.cfg
|
||||
$(srcdir)/po/doc/po4a.cfg
|
||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||
-mv "$@.tmp" "$@"
|
||||
|
||||
|
||||
+127
@@ -43,6 +43,133 @@
|
||||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(entry (commit "c9dcd203e5356f13b736d5be121fd61874be1a93")
|
||||
(title
|
||||
(en "@command{pull} and @command{time-machine} can download channel
|
||||
files")
|
||||
(de "@command{pull} und @command{time-machine} können Kanaldateien
|
||||
herunterladen")
|
||||
(fr "@command{pull} et @command{time-machine} peuvent télécharger des
|
||||
fichiers canaux")
|
||||
(pt "@command{pull} e @command{time-machine} podem baixar arquivos de canal"))
|
||||
(body
|
||||
(en "The @command{guix pull} and @command{guix time-machine} can now
|
||||
be passed a URL as their @option{-C} (or @option{--channels}) option. For
|
||||
instance, the command below pulls from the latest successfully-evaluated
|
||||
commit of the @code{master} branch:
|
||||
|
||||
@example
|
||||
guix pull \\
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
|
||||
Alternatively, one may also specify a @uref{https://swhid.org, SWHID} that
|
||||
points to a channel file:
|
||||
|
||||
@example
|
||||
guix time-machine \\
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
|
||||
-- ...
|
||||
@end example
|
||||
|
||||
To make that possible, channel files are now evaluated in an isolated
|
||||
environment (a @dfn{sandbox}), which prevents them from evaluating arbitrary
|
||||
code; if you have existing channel files that rely on \"non-standard\"
|
||||
features, you may now need to pass @option{--unsafe-channel-evaluation} to
|
||||
evaluate them. Furthermore, when fetching channels from a downloaded file,
|
||||
only @dfn{trusted channels} are allowed---one may specify them in
|
||||
@file{~/.config/guix/trusted-channels.scm}.
|
||||
|
||||
See @samp{info \"(guix)Invoking guix pull\"} for more information.")
|
||||
(de "Den Befehlen @command{guix pull} und @command{guix time-machine}
|
||||
kann jetzt eine URL mit der Option @option{-C} (oder @option{--channels})
|
||||
übergeben werden. Zum Beispiel lädt der folgende Befehl vom neuesten
|
||||
erfolgreich ausgewerteten Commit des @code{master}-Branches herunter:
|
||||
|
||||
@example
|
||||
guix pull \\
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
|
||||
Als Alternative kann man auch eine @uref{https://swhid.org, SWHID} angeben, die
|
||||
auf eine Kanaldatei verweist:
|
||||
|
||||
@example
|
||||
guix time-machine \\
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
|
||||
-- ...
|
||||
@end example
|
||||
|
||||
Damit das möglich ist, werden Kanaldateien jetzt in einer isolierten Umgebung
|
||||
ausgewertet (einer @dfn{Sandbox}), wodurch sie keinen beliebigen Code mehr
|
||||
ausführen können. Wenn Sie in bestehenden Dateien solche über den „Standard“
|
||||
hinausgehenden Funktionen benutzt haben, kann dazu jetzt verlangt werden, dass
|
||||
Sie @option{--unsafe-channel-evaluation} übergeben, um sie auszuwerten. Des
|
||||
Weiteren dürfen Kanäle aus heruntergeladenen Dateien nur als
|
||||
@dfn{vertrauenswürdig} markierte Kanäle verwenden, die Sie in
|
||||
@file{~/.config/guix/trusted-channels.scm} angeben.
|
||||
|
||||
Siehe @samp{info \"(guix.de) Aufruf von guix pull\"} für mehr Informationen.")
|
||||
(fr "Les commandes @command{guix pull} et @command{guix time-machine}
|
||||
peuvent dorénavant prendre une URL pour l'option @option{-C} (ou
|
||||
@option{--channels}). Par exemple, la commande ci-dessous tire la dernière
|
||||
révision de la branch @code{master} à avoir été évaluée avec succès :
|
||||
|
||||
@example
|
||||
guix pull \\
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
|
||||
On peut également spécifier un @uref{https://swhid.org, SWHID} qui pointe vers
|
||||
un fichier canaux :
|
||||
|
||||
@example
|
||||
guix time-machine \\
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
|
||||
-- ...
|
||||
@end example
|
||||
|
||||
Pour permettre cela, les fichiers canaux sont maintenant évalués dans un
|
||||
environnement isolé (un @dfn{bac à sable}), ce qui les empêche d'évaluer du
|
||||
code arbitraire ; lorsqu'on a des fichiers canaux qui dépendent de
|
||||
fonctionnalités « non standard », il peut dorénavant être nécessaire de passer
|
||||
l'option @option{--unsafe-channel-evaluation} pour les évaluer. De plus,
|
||||
lorsqu'un fichier canaux est téléchargé, seuls les @dfn{canaux de confiance}
|
||||
sont admis---on peut les énumérer dans
|
||||
@file{~/.config/guix/trusted-channels.scm}.
|
||||
|
||||
Voir @samp{info \"(guix.fr) Invoquer guix pull\"} pour plus
|
||||
d'informations.")
|
||||
(pt "Os comandos @command{guix pull} e @command{guix time-machine} já
|
||||
podem receber uma URL como opção para @option{-C} (or @option{--channels}).
|
||||
Por exemplo, o comando abaixo busca do commit mais recente evaluado com
|
||||
sucesso do ramo @code{master}:
|
||||
|
||||
@example
|
||||
guix pull \\
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
|
||||
Alternativamente, pode-se também especificar uma @uref{https://swhid.org,
|
||||
SWHID} que aponta para um arquivo de canal:
|
||||
|
||||
@example
|
||||
guix time-machine \\
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
|
||||
-- ...
|
||||
@end example
|
||||
|
||||
Para tornar isso possível, arquivos de canal agora são evaluados em um
|
||||
ambiente isolado (uma caixinha de areia, vulgo @dfn{sandbox}), o que os impede
|
||||
de evaluar código arbitrário; se você tem arquivos de canal que dependem de
|
||||
recursos \"não padrão\", pode ser necessário que você passe a opção
|
||||
@option{--unsafe-channel-evaluation} para evaluá-los. Além disso, quando se
|
||||
buscam canais de um arquivo baixado, somente @dfn{canais confiáveis} são
|
||||
permitidos---é possível especificá-los em
|
||||
@file{~/.config/guix/trusted-channels.scm}.
|
||||
|
||||
Veja @samp{info \"(guix.pt_BR)Invocando guix pull\"} para mais informação.")))
|
||||
|
||||
(entry (commit "a7c8e68dc51144a6d3981b770aca9c4897fc7c0c")
|
||||
(title
|
||||
(en "Records can refer to inherited values of thunked fields")
|
||||
|
||||
@@ -1666,6 +1666,11 @@ 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))
|
||||
|
||||
@@ -446,9 +446,11 @@ 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)
|
||||
|
||||
+6
-13
@@ -756,6 +756,7 @@ 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 \
|
||||
@@ -1168,7 +1169,6 @@ 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,8 +1179,6 @@ 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 \
|
||||
@@ -1366,16 +1364,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
|
||||
%D%/packages/patches/ganeti-haskell-pythondir.patch \
|
||||
%D%/packages/patches/ganeti-lens-compat.patch \
|
||||
%D%/packages/patches/ganeti-openssh-test-fix.patch \
|
||||
%D%/packages/patches/ganeti-pyyaml-compat.patch \
|
||||
%D%/packages/patches/ganeti-procps-compat.patch \
|
||||
%D%/packages/patches/ganeti-reorder-arbitrary-definitions.patch \
|
||||
%D%/packages/patches/ganeti-relax-dependencies.patch \
|
||||
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
|
||||
%D%/packages/patches/ganeti-shepherd-support.patch \
|
||||
%D%/packages/patches/ganeti-sphinx-import.patch \
|
||||
%D%/packages/patches/ganeti-template-haskell-2.17.patch \
|
||||
%D%/packages/patches/ganeti-template-haskell-2.18.patch \
|
||||
%D%/packages/patches/gawk-shell.patch \
|
||||
%D%/packages/patches/gcc-arm-bug-71399.patch \
|
||||
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
|
||||
@@ -1515,6 +1505,7 @@ 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 \
|
||||
@@ -1667,6 +1658,7 @@ 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 \
|
||||
@@ -1985,6 +1977,7 @@ 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 \
|
||||
@@ -2014,6 +2007,7 @@ 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 \
|
||||
@@ -2287,8 +2281,6 @@ 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 \
|
||||
@@ -2622,6 +2614,7 @@ 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 \
|
||||
|
||||
@@ -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 #f))
|
||||
(default #t))
|
||||
(labels hetzner-configuration-labels ; list of strings
|
||||
(default '()))
|
||||
(location hetzner-configuration-location ; #f | string
|
||||
@@ -395,9 +395,7 @@ Available locations:~%~%~a~%~%For more details, see: ~a")
|
||||
(type ,root-fs-type))
|
||||
%base-file-systems))))
|
||||
(services
|
||||
;; guix 1.4.0 does not have dhcpcd-service-type,
|
||||
;; so we use dhcp-client-service-type here.
|
||||
(cons* (service dhcp-client-service-type)
|
||||
(cons* (service dhcpcd-service-type)
|
||||
(service openssh-service-type
|
||||
(openssh-configuration
|
||||
(openssh openssh-sans-x)
|
||||
@@ -587,9 +585,9 @@ chmod 600 /mnt/root/.ssh/authorized_keys
|
||||
|
||||
# Small instance don't have much disk space. Bind mount the store of the
|
||||
# rescue system to the tmp directory of the new Guix system.
|
||||
mkdir -p /mnt/tmp/gnu/store
|
||||
mkdir -p /gnu/store
|
||||
mount --bind /mnt/tmp/gnu/store /gnu/store
|
||||
mkdir -p /mnt/tmp/gnu
|
||||
mkdir -p /gnu
|
||||
mount --bind /mnt/tmp/gnu /gnu
|
||||
|
||||
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
|
||||
chmod +x /tmp/guix-install.sh
|
||||
|
||||
@@ -1972,7 +1972,7 @@ maintenance releases.")
|
||||
(define-public dhcpcd
|
||||
(package
|
||||
(name "dhcpcd")
|
||||
(version "10.3.0")
|
||||
(version "10.3.2")
|
||||
(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 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
|
||||
(base32 "1z5rpi0n2vwhkh3c4d0dxwp38fl18br58jpy7kzh97gzg3gpk5dl"))))
|
||||
(inputs (list bash-minimal coreutils-minimal eudev sed))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
+113
-4
@@ -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 Junker <dk@junkeria.club>
|
||||
;;; Copyright © 2025, 2026 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,6 +127,7 @@
|
||||
#: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)
|
||||
@@ -194,6 +195,45 @@
|
||||
#: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")
|
||||
@@ -4465,6 +4505,33 @@ 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")
|
||||
@@ -4869,6 +4936,42 @@ 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")
|
||||
@@ -7265,6 +7368,7 @@ as is the case with audio plugins.")
|
||||
(find-files "bin")))))))))
|
||||
(inputs
|
||||
(list alsa-lib
|
||||
bash-minimal
|
||||
ffmpeg
|
||||
fluidsynth
|
||||
file
|
||||
@@ -7322,8 +7426,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 "aa400535b31c67f4b6c1b28e6e20e4d4f82111a3")
|
||||
(revision "0"))
|
||||
(let ((commit "294a80145e39c0755ab9073d90fd8b9524fbfc84")
|
||||
(revision "1"))
|
||||
(package
|
||||
(inherit carla)
|
||||
(name "carla")
|
||||
@@ -7337,7 +7441,12 @@ default and preferred audio driver but also supports native drivers like ALSA.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0cnj2sgr60f5h6wdfmihc214wf3n74686sipl3iyzmylqrcyhbjn")))))))
|
||||
(base32 "053yfwf9l9vqvq95c354by6nm8ym0wgkv3fr1434x5w9n1344z0z"))))
|
||||
(inputs
|
||||
(modify-inputs (package-inputs carla)
|
||||
(replace "python-pyqt" python-pyqt-6)
|
||||
(replace "qtbase" qtbase)
|
||||
(replace "qtwayland" qtwayland))))))
|
||||
|
||||
;; This source is a fork of vst3sdk with the documentation and VSTGUI
|
||||
;; submodules removed and a dummy `meson.build` file that just lists all
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
;; -*- lexical-binding: t; -*-
|
||||
(require 'ert)
|
||||
|
||||
(eval-when-compile
|
||||
|
||||
@@ -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 is not set
|
||||
CONFIG_SCSI_VIRTIO=m
|
||||
# CONFIG_SCSI_DH is not set
|
||||
# end of SCSI device support
|
||||
|
||||
|
||||
@@ -6272,6 +6272,17 @@ 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
|
||||
|
||||
@@ -7651,78 +7651,6 @@ 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")
|
||||
|
||||
@@ -1452,3 +1452,36 @@ It is an alternative to e.g. @command{make(1)} and @command{redo(1)}. Features:
|
||||
@end itemize
|
||||
")
|
||||
(license license:wtfpl2)))
|
||||
|
||||
(define-public xmake
|
||||
(package
|
||||
(name "xmake")
|
||||
(version "3.0.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xmake-io/xmake.git")
|
||||
(commit (string-append "v" version))
|
||||
;; Requires some dependencies from "xmake-core-*" repos
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1pdjz52w9lzfbcpx9wmzy0bsjg7i19xz43f63czk7jz9v0xba6gi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; No check rule in make
|
||||
;; TODO: find how to run Lua tests in "test" directory
|
||||
#:tests? #f))
|
||||
(home-page "https://xmake.io/")
|
||||
(synopsis "Cross-platform build utility based on Lua")
|
||||
(description "@command{xmake} is a cross-platform build utility based on Lua.
|
||||
Features:
|
||||
@itemize
|
||||
@item Built-in caching and parallel compilation,
|
||||
@item Concise Lua syntax,
|
||||
@item Custom rules, plugins and modules,
|
||||
@item Support for C++20 modules and compile_commands.json,
|
||||
@item Support for languages outside C/C++ (e.g. Go, Rust, Zig).
|
||||
@end itemize")
|
||||
(license license:asl2.0)))
|
||||
|
||||
+43
-19
@@ -81,6 +81,7 @@
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages xml))
|
||||
@@ -1327,25 +1328,6 @@ 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")
|
||||
@@ -1519,6 +1501,48 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
|
||||
(home-page "https://microsoft.github.io/mimalloc/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public mps
|
||||
(package
|
||||
(name "mps")
|
||||
(version "1.118.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Ravenbrook/mps")
|
||||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "078iv3fsz0dnfwb7g63apkvcksczbqfxrxm73k80jwnwca6pgafy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-cflags
|
||||
;; The recursive make call in the test suite doesn't pass CFLAGS
|
||||
;; down properly so we need to do it ourselves
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("CFLAGS=\"(.*)\"" _ flags)
|
||||
(string-append "CFLAGS=\"" flags " $(CFLAGS)\""))))))
|
||||
#:parallel-build? #f ;Parallel build fails
|
||||
#:test-target "test"
|
||||
#:make-flags
|
||||
#~(list "CFLAGS=-Wno-error=dangling-pointer -Wno-maybe-uninitialized"
|
||||
;; These flags are needed for the recursive make calls in testing
|
||||
(string-append "CC=" #$(cc-for-target)) "-j" "1")))
|
||||
(inputs (list sqlite))
|
||||
(home-page "http://www.ravenbrook.com/project/mps")
|
||||
(synopsis "Memory pool system")
|
||||
(description
|
||||
"This package provides a cross-platform memory management system. It
|
||||
permits the flexible combination of memory management techniques, supporting
|
||||
manual and automatic memory management, in-line allocation, finalization,
|
||||
weakness, and multiple concurrent co-operating incremental generational
|
||||
garbage collections. It also includes a library of memory pool classes
|
||||
implementing specialized memory management policies.")
|
||||
(license license:bsd-2)))
|
||||
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
|
||||
(define-public orangeduck-mpc
|
||||
;; The last release lacks an 'install' target.
|
||||
|
||||
+10
-22
@@ -337,7 +337,7 @@ reconstruction capability.")
|
||||
(define-public cdrdao
|
||||
(package
|
||||
(name "cdrdao")
|
||||
(version "1.2.5")
|
||||
(version "1.2.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -347,30 +347,18 @@ reconstruction capability.")
|
||||
(string-append "rel_" (string-replace-substring version "." "_")))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hh1lm4wr1vhsq2brczn94h88h3bppvjidj9cfqkl20jhaj38968"))))
|
||||
(build-system gnu-build-system)
|
||||
(base32 "0hb8dfb88zk01yk5nfl8m5hsg4x2scb2899pxb717zywznr8jijw"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
(list
|
||||
;; GCDMaster depends on obsolete libgnomeuimm, see
|
||||
;; <https://github.com/cdrdao/cdrdao/issues/3>.
|
||||
"--without-gcdmaster"
|
||||
;; Use the native SCSI interface.
|
||||
"--without-scglib")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'fix-configure.ac
|
||||
(lambda _
|
||||
;; Remove references to missing macros.
|
||||
(substitute* "configure.ac"
|
||||
(("^AM_GCONF_SOURCE_2.*") "")
|
||||
;; This was introduced in autoconf-2.70, but is described
|
||||
;; as usually not needed in the autoconf documentation.
|
||||
(("^AC_CHECK_INCLUDES_DEFAULT") "")))))))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list
|
||||
;; Use the native SCSI interface.
|
||||
"--without-scglib")))
|
||||
(native-inputs
|
||||
(list autoconf automake pkg-config))
|
||||
(list autoconf-2.72 automake `(,glib "bin") pkg-config))
|
||||
(inputs
|
||||
(list ao lame libmad libvorbis))
|
||||
(list ao gtkmm-3 lame libmad libsigc++-2 libvorbis))
|
||||
(home-page "https://cdrdao.sourceforge.net")
|
||||
(synopsis "Read and write CDs in disk-at-once mode")
|
||||
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
|
||||
|
||||
@@ -79,12 +79,9 @@
|
||||
'("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
|
||||
@@ -222,7 +219,6 @@
|
||||
"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
|
||||
@@ -248,8 +244,6 @@
|
||||
"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
|
||||
@@ -901,8 +895,9 @@
|
||||
"libvk_swiftshader.so"
|
||||
"vk_swiftshader_icd.json"
|
||||
|
||||
;; Chromium ships its own libGL
|
||||
;; implementation called ANGLE.
|
||||
;; Chromium ships its own libGL and
|
||||
;; vulkan implementation called ANGLE.
|
||||
"libvulkan.so.1"
|
||||
"libEGL.so" "libGLESv2.so"))
|
||||
(locales (string-append lib "/locales"))
|
||||
(resources (string-append lib "/resources"))
|
||||
@@ -921,7 +916,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)
|
||||
|
||||
@@ -150,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
|
||||
(define-public crun
|
||||
(package
|
||||
(name "crun")
|
||||
(version "1.26")
|
||||
(version "1.27.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -160,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
|
||||
"/crun-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hdwk5dpsz9danxiyfli07b7sqid6hr34qmhs5qjl2dcc00is89j"))))
|
||||
"1w782s95f3xvw3fb66l2ciqkqsg4bk7n9ph31jmvn669ap272ymy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -545,7 +545,7 @@ Layer-4 sockets.")
|
||||
(define-public cni-plugins
|
||||
(package
|
||||
(name "cni-plugins")
|
||||
(version "1.9.0")
|
||||
(version "1.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -554,7 +554,7 @@ Layer-4 sockets.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
|
||||
(base32 "12z6w2jk6xgfiwdxys7skpkxldz1cgaa7scgfcr90lsghay59s6w"))
|
||||
(snippet
|
||||
#~(begin (use-modules (guix build utils))
|
||||
(delete-file-recursively "vendor")))))
|
||||
@@ -885,7 +885,7 @@ being rootless and not requiring any daemon to be running.")
|
||||
(define-public buildah
|
||||
(package
|
||||
(name "buildah")
|
||||
(version "1.43.0")
|
||||
(version "1.43.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -893,7 +893,7 @@ being rootless and not requiring any daemon to be running.")
|
||||
(url "https://github.com/containers/buildah")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
|
||||
(base32 "00x4ja5n49jmkmiv54mmkihks9pnjnna7s7py57in6pc9g85xj2y"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
@@ -134,6 +134,7 @@
|
||||
#: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)
|
||||
@@ -1672,6 +1673,38 @@ 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")
|
||||
@@ -3668,6 +3701,39 @@ 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")
|
||||
@@ -4494,6 +4560,47 @@ 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")
|
||||
|
||||
@@ -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.137\n")))
|
||||
"/lib/libnode.so.127\n")))
|
||||
(setenv "INCLUDE_DIR"
|
||||
(string-append
|
||||
(assoc-ref inputs "libnode")
|
||||
|
||||
+18
-17
@@ -978,26 +978,27 @@ engineering.")
|
||||
(define-public seer-gdb
|
||||
(package
|
||||
(name "seer-gdb")
|
||||
(version "1.16")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/epasveer/seer.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jdvyg2jab1pvf36pvkyrfsg2wyy8zp1qx0v2ksclgrnr1hja6k6"))))
|
||||
(version "2.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/epasveer/seer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1szfqybqr5z982vian4f0hpsagiqapzys3axwibyjyg5whjswva1"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; Those are strangely manual
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "src"))))))
|
||||
(list
|
||||
#:tests? #f ;tests are strangely manual
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "src"))))))
|
||||
(inputs
|
||||
(list qtbase-5 qtcharts-5 qtwayland-5))
|
||||
(list gdb qtbase qtcharts qtsvg qtwayland))
|
||||
(synopsis "GUI frontend for GDB")
|
||||
(description "This package provides a frontend to GDB, the GNU debugger.")
|
||||
(home-page "https://github.com/epasveer/seer")
|
||||
|
||||
@@ -266,14 +266,14 @@ tmpfs/ramfs filesystems.")
|
||||
(define-public parted
|
||||
(package
|
||||
(name "parted")
|
||||
(version "3.6")
|
||||
(version "3.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/parted/parted-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
|
||||
"0yzga4cjq3yplqs47dl9714vwc3v3v8nxrj80rdc5wx4c5syb380"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -296,6 +296,7 @@ tmpfs/ramfs filesystems.")
|
||||
(,util-linux "lib")))
|
||||
(native-inputs
|
||||
(list gettext-minimal
|
||||
pkg-config
|
||||
|
||||
;; For the tests.
|
||||
e2fsprogs
|
||||
|
||||
@@ -841,14 +841,14 @@ to result in system-wide compromise.")
|
||||
(define-public unbound
|
||||
(package
|
||||
(name "unbound")
|
||||
(version "1.24.2")
|
||||
(version "1.25.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
|
||||
(base32 "1iyyplggqhh2h1sbssq65v8z2s8mk1v9n1z4pr0z1qizfbd6wah6"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "python"))
|
||||
(native-inputs
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2018, 2026 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,21 +192,20 @@ markup) can be customized and extended by the user.")
|
||||
|
||||
(define-deprecated asciidoc-py3 asciidoc)
|
||||
|
||||
(define-public doxygen
|
||||
(define-public doxygen-1.16
|
||||
(package
|
||||
(name "doxygen")
|
||||
(version "1.14.0")
|
||||
(version "1.16.1")
|
||||
(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"))))
|
||||
(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"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list bison
|
||||
@@ -250,6 +249,25 @@ 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")
|
||||
|
||||
@@ -204,48 +204,3 @@ and EFI variable management.")
|
||||
;; Library routines (in lib/) are under LGPL 2.1.
|
||||
;; Compiling/linking/using OpenSSL is permitted.
|
||||
(license (list license:gpl2 license:lgpl2.1))))
|
||||
|
||||
(define-public efilinux
|
||||
(package
|
||||
(name "efilinux")
|
||||
(version "1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mfleming/efilinux")
|
||||
(commit (string-append "efilinux-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0b4nxzr3wl5v4b52r79iw1arfgasz26xb38r2blw9v2qz2s1q9w2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "CC=gcc"
|
||||
,@(match (%current-system)
|
||||
("aarch64-linux"
|
||||
'("ARCH=aarch64"))
|
||||
("armhf-linux"
|
||||
'("ARCH=arm"))
|
||||
(_ '()))
|
||||
(string-append "INCDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||
"/include")
|
||||
(string-append "LIBDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||
"/lib"))
|
||||
#:tests? #f ; No tests exist.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "efilinux.efi"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/libexec"))
|
||||
#t)))))
|
||||
(inputs
|
||||
(list gnu-efi))
|
||||
(synopsis "Minimal Linux loader for UEFI")
|
||||
(description "This package provides a minimal Linux loader as an UEFI
|
||||
program.")
|
||||
(home-page "https://github.com/mfleming/efilinux")
|
||||
(license license:bsd-2)))
|
||||
|
||||
+320
-121
@@ -1005,7 +1005,7 @@ e.g. emacs-geiser-guile for Guile.")
|
||||
(define-public emacs-gptel
|
||||
(package
|
||||
(name "emacs-gptel")
|
||||
(version "0.9.9.4")
|
||||
(version "0.9.9.5")
|
||||
(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
|
||||
"1ffh2mwy9znjd0v9mh065lv122xg4nlnkbxwjfrsaqn1j1q2xc0c"))))
|
||||
"1bf7xynmrm859471nxc56sv028i039qnqhhmkhzkhf76mwac6cx8"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1025,8 +1025,7 @@ e.g. emacs-geiser-guile for Guile.")
|
||||
(lambda _
|
||||
(copy-recursively
|
||||
#$(this-package-native-input "emacs-gptel-test-files")
|
||||
"test")
|
||||
(invoke "chmod" "--recursive" "u+w" "test")))
|
||||
"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_")))
|
||||
@@ -1035,16 +1034,9 @@ 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-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")))))))))
|
||||
(emacs-substitute-variables "gptel-request.el"
|
||||
("gptel-use-curl"
|
||||
(search-input-file inputs "/bin/curl"))))))))
|
||||
(inputs (list curl))
|
||||
(propagated-inputs (list emacs-compat emacs-transient))
|
||||
(native-inputs
|
||||
@@ -1053,11 +1045,11 @@ e.g. emacs-geiser-guile for Guile.")
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/karthink/gptel-test")
|
||||
(commit "318c9dda9e6dbb3e61311cf4de23f124c4d2960a")))
|
||||
(commit "c62e2f78d843f3454e068eb7ec6bb8d6001b0649")))
|
||||
(file-name "emacs-gptel-test-files")
|
||||
(sha256
|
||||
(base32
|
||||
"1368qrxxrw5zd2i0gx55r7yvi5xjma1khs8p5f2w76m7c6ms83yg")))))
|
||||
"1xixi1fa2iwixi6f0wdva2pyisxb8myljwbx2v5nxd3v0i3fbgq9")))))
|
||||
(home-page "https://github.com/karthink/gptel")
|
||||
(synopsis "GPTel is a simple ChatGPT client for Emacs")
|
||||
(description
|
||||
@@ -2086,8 +2078,8 @@ when typing parentheses directly or commenting out code line by line.")
|
||||
|
||||
(define-public emacs-puni
|
||||
;; No tagged release upstream
|
||||
(let ((commit "f430f5b0a14c608176e3376058eb380ab0824621")
|
||||
(revision "3"))
|
||||
(let ((commit "fe132f803868f325cf6f162139e327b76df9e4c1")
|
||||
(revision "4"))
|
||||
(package
|
||||
(name "emacs-puni")
|
||||
(version (git-version "0" revision commit))
|
||||
@@ -2099,7 +2091,7 @@ when typing parentheses directly or commenting out code line by line.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kvxll2yx4lh5x04cigdizncp2kbva1iidz9fjnbi8qqfm6pq5qq"))))
|
||||
"0ffjpb0ilhcng1wwmnl1lx7h8v1z0bgsq6wb7x4x2rwsrvqjv9hm"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments (list #:tests? #f)) ; no actual tests
|
||||
(propagated-inputs (list emacs-with-editor))
|
||||
@@ -2872,6 +2864,31 @@ 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")
|
||||
@@ -6183,6 +6200,33 @@ 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")
|
||||
@@ -7160,7 +7204,7 @@ that the binary uses instead of the actual binary contents.")
|
||||
(define-public emacs-ellama
|
||||
(package
|
||||
(name "emacs-ellama")
|
||||
(version "1.17.0")
|
||||
(version "1.17.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -7170,7 +7214,7 @@ that the binary uses instead of the actual binary contents.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"03y4hyrsmq6m7si191r3ndp06x5w53adpig272ymm0i4v9gnzlr9"))))
|
||||
"1ibqmhp6mszr85lfb6fwfx9npn46kzcb26vqprrla61w8nrplx97"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -9280,14 +9324,16 @@ This mode supports Apache HTTP Server 2.4 and major modules.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/raxod502/apheleia")
|
||||
(url "https://github.com/radian-software/apheleia")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vs532hjkwj19laigqvvk11r0gwhv5vd8v6wh5598dzmfw3yh4bm"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments (list #:include #~(cons "^scripts/formatters/" %default-include)
|
||||
#:exclude #~(cons "\\.js$" %default-exclude)))
|
||||
(native-inputs (list emacs-buttercup))
|
||||
(home-page "https://github.com/raxod502/apheleia")
|
||||
(home-page "https://github.com/radian-software/apheleia")
|
||||
(synopsis "Reformat buffer stably")
|
||||
(description
|
||||
"This package allows for a buffer to be reformatted without moving point,
|
||||
@@ -11904,22 +11950,22 @@ not hang at all.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-elastic-modes
|
||||
(let ((commit "c577e8921a4d9bd77742729707152bc557fae3e2")
|
||||
(revision "2"))
|
||||
(let ((commit "13c2b94a994717bb1517af0c19b10de33b29a94b")
|
||||
(revision "3"))
|
||||
(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
|
||||
"0r40g7zgz9072x74qbnv8lmql0gajsz2p8b8jckmgyniakmln69v"))))
|
||||
(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"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments (list #:tests? #false)) ;no tests
|
||||
(arguments (list #:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-dash))
|
||||
(home-page "https://github.com/jyp/elastic-modes")
|
||||
(synopsis "Text and code alignment for variable-width fonts")
|
||||
@@ -18100,11 +18146,14 @@ Application Programming Interface}}, a free and open-source quotations
|
||||
(name "emacs-spinner")
|
||||
(version "1.7.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/spinner-"
|
||||
version ".tar"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Malabarba/spinner.el")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "140kss25ijbwf8hzflbjz67ry76w2cyrh02axk95n6qcxv7jr7pv"))))
|
||||
(base32
|
||||
"1m872dj1n05mkvgfyiqsbri489vmff5zdmv4xx5qj2s91sp046rl"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/Malabarba/spinner.el")
|
||||
(synopsis "Emacs mode-line spinner for operations in progress")
|
||||
@@ -20389,7 +20438,7 @@ implementation.")
|
||||
(define-public emacs-cider
|
||||
(package
|
||||
(name "emacs-cider")
|
||||
(version "1.20.0")
|
||||
(version "1.21.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -20398,26 +20447,30 @@ implementation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08hd281ybskkhir170hr3xpga1b1hwpph7rd0fk6fvm0ngdgxazs"))))
|
||||
(base32 "19wx9mc488qipm08s7hc0zrfmiylw577lmf3jpvqcjq7amx14jgc"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:include #~(cons* "^lein\\.sh$" "^clojure\\.sh$" %default-include)
|
||||
#:exclude ;don't exclude 'cider-test.el'
|
||||
#~(list "^\\.dir-locals\\.el$" "^test/")
|
||||
#:lisp-directory "lisp"
|
||||
#:test-command
|
||||
#~(list "eldev" "--use-emacsloadpath" "-dtT" "-p" "test")
|
||||
#:exclude
|
||||
#~(list "^\\.dir-locals\\.el$" "^test/")
|
||||
#:phases
|
||||
;; XXX: file "test/cider-tests.el" contains a bogus "/bin/command"
|
||||
;; string, and `patch-el-files' phase chokes on it (even though the
|
||||
;; file is excluded from installation). Remove the phase altogether
|
||||
;; since there is no "/bin/executable" to replace in the code base
|
||||
;; anyway.
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'patch-el-files)
|
||||
(add-before 'check 'skip-failing-tests
|
||||
(lambda _ ;; Require network.
|
||||
(delete-file "test/cider-jar-tests.el"))))))
|
||||
(add-after 'unpack 'remove-network-tests
|
||||
(lambda _
|
||||
(delete-file "../test/cider-jar-tests.el")))
|
||||
(replace 'check
|
||||
(lambda* (#:key test-command tests?
|
||||
#:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion ".."
|
||||
(setenv "EMACSLOADPATH"
|
||||
(string-append (getcwd) ":"
|
||||
(getenv "EMACSLOADPATH")))
|
||||
(apply invoke test-command))))))))
|
||||
(native-inputs (list emacs-buttercup emacs-eldev))
|
||||
(propagated-inputs
|
||||
(list emacs-clojure-mode
|
||||
@@ -22682,7 +22735,7 @@ are common in Chromium-derived projects.")
|
||||
(define-public emacs-gnosis
|
||||
(package
|
||||
(name "emacs-gnosis")
|
||||
(version "0.10.3")
|
||||
(version "0.10.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -22691,12 +22744,13 @@ are common in Chromium-derived projects.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0kpzc2jw51sklz15v0d0vzm5ck05n3d90l02la4nxn8r85jb1f53"))))
|
||||
(base32 "1cjm8hj62zm9k89pnsh5hbgjqqnh53byw4mijl76a7cn8args4gy"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:lisp-directory "lisp"
|
||||
#:test-command
|
||||
#~(list "make" "test" "GUIX_SHELL=")
|
||||
#~(list "make" "-C" ".." "test" "GUIX_SHELL=")
|
||||
#:emacs emacs-no-x ;tests require built-in SQLite support
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
@@ -22709,9 +22763,9 @@ are common in Chromium-derived projects.")
|
||||
"/.emacs.d"))))
|
||||
(add-before 'install 'make-info
|
||||
(lambda _
|
||||
(invoke "make" "doc" "GUIX_SHELL="))))))
|
||||
(invoke "make" "-C" ".." "doc" "GUIX_SHELL="))))))
|
||||
(native-inputs (list texinfo))
|
||||
(propagated-inputs (list emacs-transient))
|
||||
(propagated-inputs (list emacs-keymap-popup))
|
||||
(home-page "https://thanosapollo.org/projects/gnosis/")
|
||||
(synopsis "Personal knowledge system for GNU Emacs")
|
||||
(description
|
||||
@@ -25371,7 +25425,7 @@ with Eglot.")
|
||||
(define-public emacs-jabber
|
||||
(package
|
||||
(name "emacs-jabber")
|
||||
(version "0.10.3")
|
||||
(version "0.10.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -25380,7 +25434,7 @@ with Eglot.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
|
||||
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -25402,16 +25456,6 @@ 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
|
||||
@@ -25447,7 +25491,7 @@ with Eglot.")
|
||||
(base32
|
||||
"044xd1gn9lpd5yrb3c1lmvqsc1chbkhd3vnh7800hxn23a0hxbzj")))))
|
||||
(inputs (list mbedtls))
|
||||
(propagated-inputs (list emacs-fsm))
|
||||
(propagated-inputs (list emacs-fsm emacs-keymap-popup))
|
||||
(home-page "https://thanosapollo.org/projects/jabber/")
|
||||
(synopsis "XMPP (Jabber) client for Emacs")
|
||||
(description
|
||||
@@ -32170,6 +32214,32 @@ 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")
|
||||
@@ -35200,21 +35270,36 @@ 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
|
||||
(name "emacs-dired-launch")
|
||||
(inherit emacs-dired-launch)
|
||||
(version "20240809.1910")
|
||||
(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+)))
|
||||
(properties (list (cons 'superseded emacs-dired-launch)))))
|
||||
|
||||
(define-public emacs-dired-rsync
|
||||
(package
|
||||
@@ -35593,7 +35678,7 @@ and comments.")
|
||||
(define-public emacs-yeetube
|
||||
(package
|
||||
(name "emacs-yeetube")
|
||||
(version "2.1.12")
|
||||
(version "2.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -35602,7 +35687,7 @@ and comments.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
|
||||
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
@@ -35617,7 +35702,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))
|
||||
(propagated-inputs (list emacs-compat emacs-keymap-popup))
|
||||
(home-page "https://thanosapollo.org/projects/yeetube/")
|
||||
(synopsis "Youtube front-end for Emacs")
|
||||
(description
|
||||
@@ -38031,7 +38116,7 @@ in Docker environment.")
|
||||
(define-public emacs-dape
|
||||
(package
|
||||
(name "emacs-dape")
|
||||
(version "0.26.0")
|
||||
(version "0.27.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -38040,7 +38125,7 @@ in Docker environment.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0pib99g20kx7jqxbr7xv6xgpihjrb1yyd84qs05i0xscpgy8yj9l"))))
|
||||
(base32 "12cvry61nrr7xjsd7f445ik273lv4na4wkxad795pflibqz7q6r3"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
;; FIXME python tests pass, JS tests require additional dependencies
|
||||
@@ -38652,7 +38737,7 @@ as Emacs Lisp.")
|
||||
(define-public emacs-transient
|
||||
(package
|
||||
(name "emacs-transient")
|
||||
(version "0.13.1")
|
||||
(version "0.13.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -38661,7 +38746,7 @@ as Emacs Lisp.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "161drbhzdp9fn0xkc0aza992g9h8prml513y8byyxvi6lqbqn8x4"))))
|
||||
(base32 "0c5kdzs55xzn4ksrxlm94s4w4mbamh7l5ycjnq9pvgqvggzijqng"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no test suite
|
||||
@@ -41177,6 +41262,39 @@ 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")
|
||||
@@ -41867,7 +41985,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
|
||||
(define-public emacs-fj
|
||||
(package
|
||||
(name "emacs-fj")
|
||||
(version "0.36")
|
||||
(version "0.37")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -41876,17 +41994,9 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "10v79lxnaya8h8qkdpvr7ns8330nrrl2h5mz4wh15blcp87ha37l"))))
|
||||
(base32 "09ff20am16ysjpbqx7b92qgmvyar9b6blm32flkvzqxccqqinxya"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command #~(list "make" "tests")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'remove-cask
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("cask ") "")))))))
|
||||
(arguments (list #:test-command #~(list "make" "tests" "CASK=")))
|
||||
(native-inputs
|
||||
(list emacs-el-mock emacs-exemplify-ert emacs-exemplify-eval))
|
||||
(propagated-inputs (list emacs-fedi emacs-magit emacs-tp emacs-transient))
|
||||
@@ -41896,6 +42006,96 @@ 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")
|
||||
@@ -45734,29 +45934,28 @@ the selected region with @code{| tr -d a-z}.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-shell-pop
|
||||
(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
|
||||
(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
|
||||
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")
|
||||
|
||||
@@ -387,6 +387,7 @@
|
||||
(lambda ()
|
||||
(display
|
||||
(string-append
|
||||
";; -*- lexical-binding: t; -*-\n"
|
||||
"(setq find-function-C-source-directory \"" dest "\")\n\n"
|
||||
"(provide 'guix-emacs-c-source)")))))))
|
||||
(add-after 'install 'install-site-start
|
||||
@@ -413,6 +414,7 @@
|
||||
(lambda ()
|
||||
(display
|
||||
(string-append
|
||||
";; -*- lexical-binding: t; -*-\n"
|
||||
"(when (require 'guix-emacs nil t)\n"
|
||||
" (guix-emacs-autoload-packages 'no-reload)\n"
|
||||
" (advice-add 'package-load-all-descriptors"
|
||||
@@ -630,6 +632,8 @@ editor (console only)")
|
||||
libx11
|
||||
libxft
|
||||
libxpm
|
||||
libxrender
|
||||
libxt
|
||||
libwebp
|
||||
pango
|
||||
poppler)))))
|
||||
@@ -702,8 +706,8 @@ editor (with wide ints)" )
|
||||
#~(cons "--with-wide-int" #$flags))))))
|
||||
|
||||
(define-public emacs-next-minimal
|
||||
(let ((commit "509228fc6c026921c67459f21164e0325efc583b")
|
||||
(revision "2"))
|
||||
(let ((commit "d969185878bf50faedbafbd609c361875b891b53")
|
||||
(revision "3"))
|
||||
(package
|
||||
(inherit emacs-minimal)
|
||||
(name "emacs-next-minimal")
|
||||
@@ -717,7 +721,7 @@ editor (with wide ints)" )
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04aalyrx5jysk5fhlka98fhfx23sy99zp8j16i0ils20sflyig6n"))
|
||||
(base32 "1pmx71b6pazjpyfs1d2ngby1idsviwbap3xbr5b7dgf0rngim32s"))
|
||||
(patches
|
||||
(search-patches "emacs-next-disable-jit-compilation.patch"
|
||||
"emacs-next-exec-path.patch"
|
||||
|
||||
@@ -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 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019, 2023, 2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -226,15 +226,19 @@ testing InfiniBand networks.")
|
||||
|
||||
(string-append "--with-rdmacm="
|
||||
#$(this-package-input "rdma-core"))
|
||||
(string-append "--with-rocm="
|
||||
#$(this-package-input "rocr-runtime")))
|
||||
|
||||
#$@(if (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 rocr-runtime))
|
||||
(list numactl rdma-core))
|
||||
(synopsis "Optimized communication layer for message passing in HPC")
|
||||
(description
|
||||
"Unified Communication X (UCX) provides an optimized communication layer
|
||||
@@ -250,3 +254,13 @@ 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)")))
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -1138,28 +1139,23 @@ transaction log.
|
||||
(source #f)
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#: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))))
|
||||
(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)))))
|
||||
(inputs
|
||||
`(("jfsutils" ,jfsutils/static)))
|
||||
(list 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))))
|
||||
|
||||
|
||||
@@ -2601,7 +2601,7 @@ mining.")
|
||||
(define-public p2pool
|
||||
(package
|
||||
(name "p2pool")
|
||||
(version "4.14")
|
||||
(version "4.15")
|
||||
(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 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
|
||||
(sha256 (base32 "1jfrq3dnkkvrk9zsn3viix5dcjwk0nmp15y1m1vj5py89hm57rxq"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(for-each delete-file-recursively
|
||||
|
||||
@@ -3873,7 +3873,7 @@ typographical palette.")
|
||||
(define-public font-mona-sans
|
||||
(package
|
||||
(name "font-mona-sans")
|
||||
(version "2.0.8")
|
||||
(version "2.0.23")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3883,7 +3883,7 @@ typographical palette.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gdblparf0v5mdbp891wnsc5x4dxr433fg0dmz0mhzrdw9vaalig"))))
|
||||
"1pa6bghch1y0drxmz627055fwgsbdyp9vsj0f3va64pmvgkyf5jl"))))
|
||||
(build-system font-build-system)
|
||||
(outputs '("out" "ttf" "woff"))
|
||||
(home-page "https://github.com/mona-sans")
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -3475,6 +3476,45 @@ 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")
|
||||
|
||||
@@ -2391,6 +2391,47 @@ games.")
|
||||
(home-page "https://openmw.org")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public jolt-physics
|
||||
(package
|
||||
(name "jolt-physics")
|
||||
(version "5.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jrouwe/JoltPhysics")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dzqi4mxrzg5cyf5k8rdlb078939ib849n7gs6014d3ljymf839r"))
|
||||
(modules '((guix build utils)))
|
||||
;; Unbundle Roboto font.
|
||||
(snippet
|
||||
'(begin
|
||||
(delete-file-recursively "Assets/Fonts")
|
||||
(substitute* "TestFramework/TestFramework.cmake"
|
||||
((".*Roboto-Regular\\.ttf.*") ""))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'change-directory
|
||||
(lambda _
|
||||
(chdir "Build")))
|
||||
(add-after 'install 'change-directory
|
||||
(lambda _
|
||||
(chdir ".."))))))
|
||||
(home-page "https://github.com/jrouwe/JoltPhysics")
|
||||
(synopsis "Rigid body physics and collision detection library")
|
||||
(description
|
||||
"Jolt Physics is a multi core friendly rigid body physics and collision
|
||||
detection library, written in C++. It is suitable for games and VR
|
||||
applications.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public godot-lts
|
||||
(package
|
||||
(name "godot")
|
||||
|
||||
+86
-32
@@ -227,6 +227,7 @@
|
||||
#: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)
|
||||
@@ -1234,11 +1235,11 @@ original rogue game found on 4.2BSD.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public sgt-puzzles
|
||||
(let ((commit "28032bd5a0d3dc409eb225b8bdb23fd0b18a28d7")
|
||||
(let ((commit "06e37f1e334d85c7c779f79ef9e484ff2f708269")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "sgt-puzzles")
|
||||
(version (git-version "20251120" revision commit))
|
||||
(version (git-version "20260308" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1247,7 +1248,7 @@ original rogue game found on 4.2BSD.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0533fzzagmi7g7sw1fdgpzy6gjpif77gxf3avz1qnjsma5gq7f2l"))))
|
||||
(base32 "141d57s1va2ng7nxjzdgmsqh5mdb0mpy3yiqaj4rplya8xlhm34h"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -5348,36 +5349,78 @@ also available.")
|
||||
(sha256
|
||||
(base32 "05aj09rm50xb6910zx6imarj8k728x9bpvpa7ydwgb4sj1nypil8"))
|
||||
(modules '((guix build utils)))
|
||||
(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")))))
|
||||
(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")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;There are no tests.
|
||||
#:configure-flags
|
||||
#~(list "-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
|
||||
#~(list "-DSRB2_CONFIG_ENABLE_DISCORDRPC=OFF"
|
||||
"-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 "bin/ringracers"
|
||||
(wrap-program (string-append #$output "/bin/ringracers")
|
||||
`("RINGRACERSWADDIR" =
|
||||
(,(assoc-ref inputs "ring-racers-data"))))))
|
||||
(add-after 'wrap-program 'create-desktop-entry
|
||||
@@ -5393,26 +5436,37 @@ also available.")
|
||||
#:exec (string-append #$output "/bin/ringracers")
|
||||
#:startup-notify #f
|
||||
#:categories '("Application" "Game"))))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list glm
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
(package-source stb)))
|
||||
(inputs (list bash-minimal
|
||||
curl
|
||||
fmt
|
||||
glm
|
||||
libogg
|
||||
libpng
|
||||
libvorbis
|
||||
libvpx
|
||||
libxmp
|
||||
libyuv
|
||||
nlohmann-json
|
||||
opus
|
||||
ring-racers-data
|
||||
sdl2
|
||||
zlib
|
||||
curl))
|
||||
(home-page "https://kartkrew.org")
|
||||
stb-rect-pack
|
||||
tcbrindle-span
|
||||
vulkan-headers
|
||||
vulkan-memory-allocator
|
||||
vulkan-volk
|
||||
zlib))
|
||||
(home-page "https://www.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
|
||||
@@ -5743,14 +5797,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
|
||||
(define-public openttd-engine
|
||||
(package
|
||||
(name "openttd-engine")
|
||||
(version "15.2")
|
||||
(version "15.3")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "https://cdn.openttd.org/openttd-releases/"
|
||||
version "/openttd-" version "-source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xpzschcf562giqh3p8jj9gbi8chqrikdwgqqipabyn0nwbvd6nj"))))
|
||||
"1rrvjxsr2dp9zr6b35ifiw41c0dwqqcaq90r0x18misrgpm1x8jy"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list allegro
|
||||
@@ -5984,7 +6038,7 @@ Transport Tycoon Deluxe.")
|
||||
(package
|
||||
(inherit openttd)
|
||||
(name "openttd-jgrpp")
|
||||
(version "0.71.2")
|
||||
(version "0.72.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5993,7 +6047,7 @@ Transport Tycoon Deluxe.")
|
||||
(commit (string-append "jgrpp-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1gb5gickmf1d1wkzqny5ryapvw32a2g94f77iq0102xhyyw8g8s0"))))
|
||||
(base32 "0xbnnx03y8vhbgi6s7hsxhiqhsy6rhj7fypq6dfqh0z74m5bldkf"))))
|
||||
(inputs (modify-inputs inputs
|
||||
(append zstd harfbuzz)))
|
||||
(arguments
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
(define-public gramps
|
||||
(package
|
||||
(name "gramps")
|
||||
(version "5.2.3")
|
||||
(version "6.0.8")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -53,7 +53,7 @@
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1gzhi5hxpgc6pxs40xsxf67hndjifnfhm89s3ly68c70x83qmwhd"))))
|
||||
(base32 "06kdcf6h9rqdcsx097a3n2z4q8yvln20ja7ajwrna1i133591bra"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -68,6 +68,11 @@
|
||||
(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"))
|
||||
@@ -113,6 +118,7 @@
|
||||
python-bsddb3
|
||||
python-jsonschema
|
||||
python-lxml
|
||||
python-orjson
|
||||
python-pillow
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
|
||||
@@ -682,7 +682,7 @@ and a high score table.")
|
||||
(define-public komikku
|
||||
(package
|
||||
(name "komikku")
|
||||
(version "50.1.0")
|
||||
(version "50.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -692,7 +692,7 @@ and a high score table.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
|
||||
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
|
||||
(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.1.0")
|
||||
(version "50.3.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
|
||||
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
|
||||
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
@@ -11564,6 +11564,71 @@ accessibility infrastructure.")
|
||||
(license license:lgpl2.0)
|
||||
(properties '((upstream-name . "pyatspi")))))
|
||||
|
||||
(define-public accerciser
|
||||
(package
|
||||
(name "accerciser")
|
||||
(version "3.48.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/accerciser.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ddh466im0hxqx0ncxglrif72jfwcdl1ayarw874mp1464wkbc4m"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:glib-or-gtk? #t
|
||||
#:imported-modules (append %meson-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
#:modules
|
||||
`((guix build meson-build-system)
|
||||
((guix build pyproject-build-system) #:prefix py:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gnome-post-install
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false")
|
||||
(("update_desktop_database: true")
|
||||
"update_desktop_database: false"))))
|
||||
(add-after 'install 'wrap-python
|
||||
(assoc-ref py:%standard-phases 'wrap))
|
||||
(add-after 'wrap-python 'wrap-program
|
||||
(lambda _
|
||||
(let ((typelib-path (getenv "GI_TYPELIB_PATH")))
|
||||
(wrap-program (string-append #$output "/bin/accerciser")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,typelib-path)))))))))
|
||||
(native-inputs
|
||||
(list (list glib "bin")
|
||||
gettext-minimal
|
||||
gobject-introspection
|
||||
pkg-config
|
||||
yelp-tools))
|
||||
(inputs
|
||||
(list appstream
|
||||
appstream-glib
|
||||
at-spi2-core
|
||||
bash-minimal
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk+
|
||||
python
|
||||
python-dbus
|
||||
python-pyatspi
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
python-pyxdg))
|
||||
(synopsis "Accessibility explorer")
|
||||
(description "This package provides an interactive accessibility explorer
|
||||
for the GNOME desktop.")
|
||||
(home-page "https://gitlab.gnome.org/GNOME/accerciser")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public orca
|
||||
(package
|
||||
(name "orca")
|
||||
|
||||
@@ -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.1")
|
||||
(define %icecat-base-version "140.10.2")
|
||||
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
|
||||
(define %icecat-build-id "20260428000000") ;must be of the form YYYYMMDDhhmmss
|
||||
(define %icecat-build-id "20260509000000") ;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
|
||||
"1fx52y52c3dmgr5gm64x40r2n6zq5ckqiqsd6vlhsly5wb1w0xaf"))))
|
||||
"0xsfy8b80mh6kb13928ym3pdrnfyfs98xwz6fwrc20p7f99zcsvr"))))
|
||||
|
||||
(gnuzilla-commit "5162cbc74c483c361ad5709c767c5cb2395ff4f9")
|
||||
(gnuzilla-commit "f04b721394b9d1103e92dbe989060f96756fe54c")
|
||||
(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
|
||||
"06qyirgjjgy7fwn7mbrz23wsdv9a88w70pz8qm1yszln74xxdsp0"))))
|
||||
"05d3793565pxz1h3wmwxk8j4cfqci4c0jic4q4ys8rbnfz98cj6z"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
|
||||
@@ -2073,7 +2073,7 @@ the Go standard library's TLS 1.3 implementation.")
|
||||
(define-public go-github-com-melbahja-goph
|
||||
(package
|
||||
(name "go-github-com-melbahja-goph")
|
||||
(version "1.4.0")
|
||||
(version "1.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2082,7 +2082,7 @@ the Go standard library's TLS 1.3 implementation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1w6sn6m3bsh60flp0fdbv70c2d1ky12mpj09100qf64w0v1d32k0"))))
|
||||
(base32 "1ncvs9pbjg7m8yp3h8wbhxvzvks1g06a5qcjrkw2k515m2yqhg8k"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3900,7 +3900,7 @@ is an extremely fast non-cryptographic hash algorithm.")
|
||||
;; XXX: Source only, to break cycle with
|
||||
;; go-github-com-zmap-zcrypto. Addintional inputs requaired only to
|
||||
;; build CLI:
|
||||
;;
|
||||
;;
|
||||
;; - github.com/sirupsen/logrus
|
||||
;; - github.com/zmap/zcrypto
|
||||
;; - github.com/zmap/zlint/v3
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
|
||||
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
|
||||
;;; Copyright © 2023 conses <contact@conses.eu>
|
||||
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2024, 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2024 Brian Kubisiak <brian@kubisiak.com>
|
||||
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
|
||||
;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
|
||||
@@ -25544,7 +25544,17 @@ suffix comparison, rather than the string-based or tree-based approaches.")
|
||||
(arguments
|
||||
(list
|
||||
#:parallel-tests? #f
|
||||
#:import-path "github.com/syncthing/notify"))
|
||||
#:import-path "github.com/syncthing/notify"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-failing-tests
|
||||
(lambda* (#:key import-path #:allow-other-keys)
|
||||
(with-directory-excursion (string-append "src/" import-path)
|
||||
(substitute* "notify_test.go"
|
||||
;; XXX: Sometimes this test fails due to timeout.
|
||||
;; Increasing the timeout from 5s to 10s does not help.
|
||||
;; See <https://github.com/rjeczalik/notify/issues/227>
|
||||
(("TestRecreated") "OffTestRecreated"))))))))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-sys))
|
||||
(home-page "https://github.com/syncthing/notify")
|
||||
|
||||
@@ -628,9 +628,17 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
|
||||
#:configure-flags
|
||||
(list
|
||||
"-DEMBREE_ISPC_SUPPORT=OFF"
|
||||
;; They SAY that that's the default--but it isn't
|
||||
;; (that would be AVX512--and that segfaults GCC (!)).
|
||||
"-DEMBREE_MAX_ISA=AVX2")))
|
||||
,@(cond
|
||||
((target-x86-64?)
|
||||
;; They SAY that that's the default--but it isn't
|
||||
;; (that would be AVX512--and that segfaults GCC (!)).
|
||||
`("-DEMBREE_MAX_ISA=AVX2"))
|
||||
((target-aarch64?)
|
||||
`("-DEMBREE_ARM=ON"
|
||||
"-DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF"
|
||||
"-DCMAKE_CXX_FLAGS=-flax-vector-conversions"))
|
||||
(else
|
||||
'())))))
|
||||
(inputs
|
||||
(list glfw onetbb))
|
||||
(home-page "https://www.embree.org/")
|
||||
@@ -639,13 +647,16 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
|
||||
"Embree is a collection of high-performance ray tracing kernels.
|
||||
Embree is meant to increase performance of photo-realistic rendering
|
||||
applications.")
|
||||
;; From the README: Embree requires at least an x86 CPU with support for
|
||||
;; SSE2 or an Apple M1 CPU.
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux"))
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public embree-3
|
||||
(package
|
||||
(inherit embree)
|
||||
(name "embree")
|
||||
(version "3.3.15")
|
||||
(version "3.13.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
||||
@@ -340,6 +340,49 @@ 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")
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -49,123 +49,6 @@
|
||||
#:use-module ((guix build utils) #:select (alist-replace))
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public musl-cross
|
||||
(let ((revision "3")
|
||||
(commit "a8a66490dae7f23a2cf5e256f3a596d1ccfe1a03"))
|
||||
(package
|
||||
(name "musl-cross")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/GregorR/musl-cross")
|
||||
(commit commit)))
|
||||
(file-name "musl-cross-checkout")
|
||||
(sha256
|
||||
(base32
|
||||
"1xvl9y017wb2qaphy9zqh3vrhm8hklr8acvzzcjc35d1jjhyl58y"))
|
||||
(patches (search-patches "musl-cross-locale.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; No tests in main project.
|
||||
#:modules
|
||||
((guix build utils)
|
||||
(guix build gnu-build-system)
|
||||
(srfi srfi-1)) ; drop
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
(setenv "SHELL" "bash")
|
||||
(setenv "CONFIG_SHELL" "bash")
|
||||
#t))
|
||||
(add-after 'unpack 'unpack-dependencies
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(define (install-file* source-key destination-directory
|
||||
destination-suffix)
|
||||
(let* ((source-file (assoc-ref inputs source-key))
|
||||
(source-basename (basename source-file))
|
||||
(source-parts (string-split source-basename #\-))
|
||||
(destination-file
|
||||
(string-join (drop source-parts 1) "-")))
|
||||
(copy-file source-file
|
||||
(string-append destination-directory "/"
|
||||
destination-file destination-suffix))))
|
||||
(for-each (lambda (name)
|
||||
(install-file* name "tarballs" ""))
|
||||
'("binutils" "target-gcc-5" "linux-headers" "musl"))
|
||||
(copy-file (string-append (assoc-ref inputs "config.sub")
|
||||
"/share/automake-1.16/config.sub")
|
||||
"tarballs/config.sub;hb=3d5db9ebe860")
|
||||
(copy-file (string-append (assoc-ref inputs "config.sub")
|
||||
"/share/automake-1.16/config.guess")
|
||||
"tarballs/config.guess;hb=3d5db9ebe860")
|
||||
(substitute* "config.sh"
|
||||
(("^CC_BASE_PREFIX=.*")
|
||||
(string-append "CC_BASE_PREFIX=" (assoc-ref outputs "out")
|
||||
"/crossgcc\n")))
|
||||
;; Note: Important: source/gcc-5.3.0/gcc/exec-tool.in
|
||||
;; Note: Important: source/kernel-headers-3.12.6-5/tools/install.sh
|
||||
;; Note: Important: move-if-change (twice)
|
||||
;; Make sure that shebangs are patched after new extractions.
|
||||
(substitute* "defs.sh"
|
||||
(("touch \"[$]2/extracted\"")
|
||||
(string-append "touch \"$2/extracted\"
|
||||
for s in mkinstalldirs move-if-change compile depcomp callprocs configure \\
|
||||
mkdep compile libtool-ldflags config.guess install-sh missing config.sub \\
|
||||
config.rpath progtest.m4 lib-ld.m4 acx.m4 gen-fixed.sh mkheader.sh ylwrap \\
|
||||
merge.sh godeps.sh lock-and-run.sh print-sysroot-suffix.sh mkconfig.sh \\
|
||||
genmultilib exec-tool.in install.sh
|
||||
do
|
||||
find . -name $s -exec sed -i -e 's;!/bin/sh;!" (assoc-ref inputs "bash")
|
||||
"/bin/sh;' '{}' ';'
|
||||
find . -name $s -exec sed -i -e 's; /bin/sh; " (assoc-ref inputs "bash")
|
||||
"/bin/sh;' '{}' ';'
|
||||
done
|
||||
" )))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "./build.sh")))
|
||||
(delete 'install))))
|
||||
(native-inputs
|
||||
`(("config.sub" ,automake)
|
||||
("bash" ,bash)
|
||||
("flex" ,flex)
|
||||
("gmp" ,gmp)
|
||||
("mpfr" ,mpfr)
|
||||
("mpc" ,mpc)
|
||||
("binutils"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.27.tar.bz2")
|
||||
(sha256
|
||||
(base32 "125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn"))))
|
||||
("target-gcc-5"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "https://ftpmirror.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.bz2")
|
||||
(sha256
|
||||
(base32 "1ny4smkp5bzs3cp8ss7pl6lk8yss0d9m4av1mvdp72r1x695akxq"))))
|
||||
("linux-headers"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "http://ftp.barfooze.de/pub/sabotage/tarballs/linux-headers-4.19.88.tar.xz")
|
||||
(sha256
|
||||
(base32 "1srgi2nqw892jb6yd4kzacf2xzwfvzhsv2957xfh1nvbs7varwyk"))))
|
||||
("musl"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "http://www.musl-libc.org/releases/musl-1.1.24.tar.gz")
|
||||
(sha256
|
||||
(base32 "18r2a00k82hz0mqdvgm7crzc7305l36109c0j9yjmkxj2alcjw0k"))))))
|
||||
(supported-systems (remove target-hurd? %supported-systems))
|
||||
(home-page "https://github.com/osresearch/heads")
|
||||
(synopsis "Cross gcc 5 toolchain")
|
||||
(description "Musl-cross toolchain: binutils, gcc 5 and musl.")
|
||||
(license license:isc))))
|
||||
|
||||
;; This package provides a "dev.cpio" file usable as a base for booting Heads.
|
||||
(define-public heads-dev-cpio
|
||||
(package
|
||||
|
||||
@@ -414,7 +414,7 @@ much more.")
|
||||
(define-public bvi
|
||||
(package
|
||||
(name "bvi")
|
||||
(version "1.4.2")
|
||||
(version "1.5.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -422,7 +422,7 @@ much more.")
|
||||
"/bvi-" version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wllrvs8r8bdm11sx01095j8cj4drjmw0dlkjfdkm5lnnk11dfjb"))))
|
||||
"1jvldfxdpgf044hnhjhxi24a9bkbn8adl22icc8rfarv39m72h35"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:tests? #f)) ; no check target
|
||||
(inputs
|
||||
|
||||
+61
-5
@@ -334,6 +334,61 @@ 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")
|
||||
@@ -588,7 +643,8 @@ exec ${system}/rc \"$@\"
|
||||
"CFLAGS=-fcommon")))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("libgcrypt" ,libgcrypt) ;for /hurd/random
|
||||
`(("libacpica" ,libacpica) ;for hurd/acpi.static
|
||||
("libgcrypt" ,libgcrypt) ;for /hurd/random
|
||||
("libdaemon" ,libdaemon) ;for /bin/console --daemonize
|
||||
("libxcrypt" ,libxcrypt) ;for password hashing
|
||||
("unifont" ,unifont)
|
||||
@@ -739,11 +795,11 @@ in userland processes thanks to the DDE layer.")
|
||||
(license gpl2))))
|
||||
|
||||
(define-public rumpkernel
|
||||
(let ((commit "2aad456903b2dc2232fa18c7f286cea6d77b570f")
|
||||
(revision "0"))
|
||||
(let ((commit "debian/0_20250111-6")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "rumpkernel")
|
||||
(version (git-version "0-20250111" revision commit))
|
||||
(version (git-version "0-20250111" revision (substring commit 7)))
|
||||
;; 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.
|
||||
@@ -754,7 +810,7 @@ in userland processes thanks to the DDE layer.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"14fiv2llvd5s1vi9gigmi1vi0b9yvg2zqyc9xg67ffxl1phv7p8j"))
|
||||
"1pvd54k06rlgvppfbzl1d0qqcjc0kshamw1iw40s3apabh87pw1i"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
+73
-27
@@ -71,11 +71,12 @@
|
||||
#: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)
|
||||
@@ -96,10 +97,11 @@
|
||||
#: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 popt)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages popt)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-check)
|
||||
@@ -115,7 +117,6 @@
|
||||
#: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)
|
||||
@@ -183,36 +184,81 @@ convert images in more than 100 different formats.")
|
||||
(define-public gradia
|
||||
(package
|
||||
(name "gradia")
|
||||
(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"))))
|
||||
(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"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(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))
|
||||
(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))
|
||||
(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, and various export formats.")
|
||||
cropping, @acronym{OCR, optical character recognition} and various export formats.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public iqa
|
||||
|
||||
@@ -1088,9 +1088,9 @@ wrappers.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/tc39/test262")
|
||||
(commit "a5e69a1534de88d1eb29b76657d84c8541b72df7")))
|
||||
(commit "a6f387de323eb9ae56448bdb71c5d315df631ce4")))
|
||||
(file-name "test262")
|
||||
(sha256 (base32 "078a7nim0n9x36q7q8yvjwhk4ig29p25b03rr4l7g2b545cky66l"))
|
||||
(sha256 (base32 "09avg4f75rzbmh3hcybdvjij7hbl2m79x6xp1hgl6h8ihfbn33l0"))
|
||||
(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.11.0")
|
||||
(version "0.14.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1109,11 +1109,7 @@ wrappers.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(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"))))
|
||||
(base32 "05k8niswh0ly5sx0129jdhiinqs84s86b7sv29ff68v3546dl04i"))))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
@@ -1146,6 +1142,23 @@ 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?
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2021 jgart <jgart@dismail.de>
|
||||
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2024, 2025 Spencer King <spencer.king@geneoscopy.com>
|
||||
;;; Copyright © 2024-2026 Spencer King <spencer.king@wustl.edu>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -5592,6 +5592,28 @@ arbitrary normed vector spaces (e.g. matrix-valued integrands).")
|
||||
format.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public julia-quantuminterface
|
||||
(package
|
||||
(name "julia-quantuminterface")
|
||||
(version "0.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/qojulia/QuantumInterface.jl")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05792hkhjghlpm919ip8hzbhwv8xcngmyyks2nr8bln6qa8f8r9i"))))
|
||||
(build-system julia-build-system)
|
||||
(native-inputs (list julia-safetestsets))
|
||||
(home-page "https://github.com/qojulia/QuantumInterface.jl")
|
||||
(synopsis "Lightweight interface for Quantum Physics related packages")
|
||||
(description
|
||||
"This package provides a lightweight interface for Quantum Physics
|
||||
related packages.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public julia-quaternions
|
||||
(package
|
||||
(name "julia-quaternions")
|
||||
|
||||
@@ -233,7 +233,12 @@ 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")))))))
|
||||
(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")))))))))
|
||||
(native-inputs
|
||||
(list extra-cmake-modules
|
||||
googletest
|
||||
@@ -898,8 +903,16 @@ autoloading of subtitle files for use while playing video.")
|
||||
qtdeclarative
|
||||
qtwayland))
|
||||
(arguments
|
||||
(list #:qtbase qtbase
|
||||
#:tests? #f))
|
||||
(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")))))))))
|
||||
(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
|
||||
@@ -1246,14 +1259,27 @@ APIs. It can also play videos from PeerTube sources.")
|
||||
"0iaandlbv2v4a6wsdxk19ynj77axd3kc72nw28bvbsfb0kqc0mai"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:qtbase qtbase
|
||||
#:tests? #f)) ;no tests
|
||||
(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")))))))))
|
||||
(native-inputs
|
||||
(list extra-cmake-modules))
|
||||
(inputs
|
||||
(list kirigami qtdeclarative qtmultimedia qtwayland))
|
||||
(propagated-inputs
|
||||
(list gstreamer gst-plugins-base gst-plugins-good))
|
||||
(list gst-plugins-base
|
||||
gst-plugins-good
|
||||
gstreamer
|
||||
kirigami
|
||||
kirigami-addons
|
||||
qtdeclarative
|
||||
qtmultimedia
|
||||
qtwayland))
|
||||
(home-page "https://invent.kde.org/multimedia/rattlesnake")
|
||||
(synopsis "Metronome")
|
||||
(description "Rattlesnake is a metronome app.")
|
||||
|
||||
@@ -164,14 +164,14 @@ resolution, asynchronous file system operations, and threading primitives.")
|
||||
(package
|
||||
(inherit libuv)
|
||||
(name "libuv")
|
||||
(version "1.51.0")
|
||||
(version "1.49.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://dist.libuv.org/dist/v" version
|
||||
"/libuv-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1szqivvs7izbhw1a3nd1ipbk012yvqqkjg0sjmqxw1hi1fwmf1az"))))
|
||||
"1a75p8wp4l43y2ffj1szs1ssm6nzjad7k51bqi2r04ngs9mp044c"))))
|
||||
(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.43.0")
|
||||
(version "1.44.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://dist.libuv.org/dist/v" version
|
||||
"/libuv-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"194kwq3jfj9s628kzkchdca534rikjw0xiyas0cjbphqmsvjpmwh"))))
|
||||
"1d1wy1061cf2mfygr2j6jbm0da2mhsf0l9yq4rjkqrsmijbdrz6c"))))
|
||||
(properties '((hidden? . #t)))))
|
||||
|
||||
(define-public perl-anyevent
|
||||
|
||||
+385
-479
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012-2021, 2021-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012-2021, 2021-2026 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.3")
|
||||
(define-public linux-libre-7.0-version "7.0.5")
|
||||
(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 "074zjl0v901a9hafgpcxyyd395qs7y4kr4fcpgg3ssc8ayzsvv8b")))
|
||||
(hash (base32 "0g5c732144ig8rk2nrlsbwdh88q5ghi3n1n6c3y9jlv7q6hv0pwn")))
|
||||
(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.26")
|
||||
(define-public linux-libre-6.18-version "6.18.28")
|
||||
(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 "1v5h0w3s8p5m22jxg992x1jfpwyi80ia70cdgiv47q3n6xfjyxsk")))
|
||||
(hash (base32 "0x3vsz25ci192zcv1vmi1lnbdmpafvzbzcja1fighv2qhfa7hq7k")))
|
||||
(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.85")
|
||||
(define-public linux-libre-6.12-version "6.12.87")
|
||||
(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 "1v8a0z6znmr2m26l4744wndaimsh24zz6q4d7m4p8s0ayjcwjnp3")))
|
||||
(hash (base32 "0c4qidff0qs2x0mvba83cw3ksaz2af3xwabvc839xvsc9djaf4nc")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-6.12)))
|
||||
|
||||
(define-public linux-libre-6.6-version "6.6.137")
|
||||
(define-public linux-libre-6.6-version "6.6.138")
|
||||
(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 "1i2npnsnhk41a88vimr521rxg77kljbkqmlyk1zrv7z4ic6ykwcj")))
|
||||
(hash (base32 "03x8ald0sjzdb6kpzrw8adnc78r3mdxrx8mzbxbpwp35vdgnpl5d")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-6.6)))
|
||||
|
||||
(define-public linux-libre-6.1-version "6.1.170")
|
||||
(define-public linux-libre-6.1-version "6.1.172")
|
||||
(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 "0i29gilsvl7vx7p6vqg0bc0d40ir1b968hyfjhdfms55g4pr2y5m")))
|
||||
(hash (base32 "16dlfdzjcsc21m5sfbhamg8y3ay54rz8a0qqvqrmxq691mhjwrzi")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-6.1)))
|
||||
|
||||
(define-public linux-libre-5.15-version "5.15.204")
|
||||
(define-public linux-libre-5.15-version "5.15.206")
|
||||
(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 "1kfvfvzhdgjcj1pa2aqks3iah00ilfpp1i9bmbwjr3na0crlrzcv")))
|
||||
(hash (base32 "07z6lla7xpnn4sn3l4zw3x7m8ih8w6h54k71qrxrf5zv9i7wxijz")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.15)))
|
||||
|
||||
(define-public linux-libre-5.10-version "5.10.252")
|
||||
(define-public linux-libre-5.10-version "5.10.255")
|
||||
(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 "1yqa4zmvi5ihf50kxcff06abfi6xw0b9ajzagvy6gdzfr7igpcrl")))
|
||||
(hash (base32 "19v6g2fq4nqv38irlcd9x14s6d398c56mxzpyc03q4xmpy3v6mir")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.10)))
|
||||
@@ -1493,6 +1493,48 @@ 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")
|
||||
@@ -1619,6 +1661,317 @@ 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
|
||||
@@ -1629,163 +1982,8 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
|
||||
#:extra-version "arm64-mnt-reform"
|
||||
#:extra-options
|
||||
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
|
||||
(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))
|
||||
(append (mnt-reform-kernel-options
|
||||
linux-libre-6.19-version)
|
||||
(default-extra-linux-options
|
||||
linux-libre-6.19-version)))))
|
||||
(package
|
||||
@@ -1946,158 +2144,8 @@ 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 `(("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))
|
||||
(append (mnt-reform-kernel-options
|
||||
linux-libre-6.18-version)
|
||||
(default-extra-linux-options
|
||||
linux-libre-6.18-version)))))
|
||||
(package
|
||||
@@ -2279,158 +2327,8 @@ 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 `(("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))
|
||||
(append (mnt-reform-kernel-options
|
||||
linux-libre-6.12-version)
|
||||
(default-extra-linux-options
|
||||
linux-libre-6.12-version)))))
|
||||
(package
|
||||
@@ -2805,7 +2703,7 @@ This package provides the @command{corefreqd} data collection daemon, the
|
||||
(define-public tuxedo-keyboard
|
||||
(package
|
||||
(name "tuxedo-keyboard")
|
||||
(version "4.15.4")
|
||||
(version "4.22.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2814,7 +2712,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 "0mimgcbp57gp3smd439g8040sl80qqnfzmh2vhs2qv1kwyxs75sq"))))
|
||||
(base32 "0akjyz8nhhpcr4y4xmhghd4253mndzhhi5qggr2z315vpxfr7rl4"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; no test suite
|
||||
@@ -10460,7 +10358,6 @@ 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))))
|
||||
@@ -10504,6 +10401,15 @@ 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)
|
||||
|
||||
@@ -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.15")
|
||||
(version "3.16")
|
||||
(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 "1lpmqp1mcnzkpxi0zfsd4n85c6gr6d01hlf8yka8068kyypbhkvg"))))
|
||||
(base32 "1yfh40kvpgjaq0vlm5lqnfpll9swl7gzcxnd0qlk6hshhqyc373q"))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(native-inputs (list sbcl-fiveam))
|
||||
(synopsis "Matrix library for Common Lisp")
|
||||
@@ -32061,6 +32061,14 @@ 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")
|
||||
|
||||
+78
-2
@@ -109,6 +109,7 @@
|
||||
#: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)
|
||||
@@ -892,13 +893,16 @@ interface to the Tk widget system.")
|
||||
(arguments
|
||||
(list #:make-flags
|
||||
#~(list
|
||||
(string-append "DESTDIR=" #$output)
|
||||
(string-append "PREFIX=")
|
||||
(string-append "PREFIX=" #$output)
|
||||
(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
|
||||
@@ -999,6 +1003,78 @@ 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")
|
||||
|
||||
+16
-33
@@ -229,42 +229,25 @@ provides some unique features such as CSV log format and wide string support.")
|
||||
(define-public multitail
|
||||
(package
|
||||
(name "multitail")
|
||||
(version "6.5.2")
|
||||
(version "7.1.5")
|
||||
(source
|
||||
(origin
|
||||
(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)
|
||||
(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)
|
||||
(arguments
|
||||
`(#: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)
|
||||
(list
|
||||
#:tests? #f ;no test suite
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-curses-headers
|
||||
(lambda _
|
||||
(substitute* "mt.h"
|
||||
(("ncursesw/") "")))))))
|
||||
(inputs (list ncurses))
|
||||
(home-page "https://vanheusden.com/multitail/")
|
||||
(synopsis "Monitor multiple log files")
|
||||
|
||||
@@ -1129,7 +1129,7 @@ Grammars (PEGs).")
|
||||
(define (make-lua-luv name lua)
|
||||
(package
|
||||
(name name)
|
||||
(version "1.43.0-0")
|
||||
(version "1.44.2-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
|
||||
"1yzi4bm845vl84wyv2qw4z1n1v285lgwm681swmp84brfy2s7czp"))))
|
||||
"0jdvsznzha290gnzd66vscsdacd5dapq0scwy4zj64d9wnsv39p7"))))
|
||||
(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.0")
|
||||
(version "1.6.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1830,11 +1830,10 @@ multiple local rocks trees.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09gky2w8z83qqv0n9vx8jqsfldni14kjr6l7y5k44lq5i30i0fsv"))))
|
||||
"0n58410gmxfnmgggdw6ap12fa68z5s7f83487b2apim52a8wpd9h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:make-flags #~(list (string-append "PREFIX="
|
||||
(assoc-ref %outputs "out")))
|
||||
(list #:make-flags #~(list (string-append "PREFIX=" #$output))
|
||||
#:test-target "test"
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
|
||||
@@ -3919,7 +3919,7 @@ on the fly. Both programs are written in C and are very fast.")
|
||||
(define-public stalwart
|
||||
(package
|
||||
(name "stalwart")
|
||||
(version "0.16.3")
|
||||
(version "0.16.4")
|
||||
(source
|
||||
(let ((upstream-source
|
||||
(origin
|
||||
@@ -3930,7 +3930,7 @@ on the fly. Both programs are written in C and are very fast.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wcs9inwv8iv4qrayp9730wzmmpp4bna6jnpdz29ygb5c0lf2b29")))))
|
||||
"0r3p4g09012ranm4x4crhqa3p7i1m3w7xpy182c3ii74a131f5z1")))))
|
||||
(origin
|
||||
(method computed-origin-method)
|
||||
(file-name (git-file-name name version))
|
||||
@@ -3998,7 +3998,7 @@ CalDAV, CardDAV and WebDAV support and a wide range of modern features.")
|
||||
(define-public stalwart-cli
|
||||
(package
|
||||
(name "stalwart-cli")
|
||||
(version "1.0.4")
|
||||
(version "1.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4007,7 +4007,7 @@ CalDAV, CardDAV and WebDAV support and a wide range of modern features.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0rbhzd8m48fm5q8vlzkla5zxrypkbvsi8i1bplkm1ndp0bwiqdvz"))))
|
||||
(base32 "1dnmv730bd4p4vhxw5m4jazbzyvwm9bf4rdsr8g84yriv51zbz6a"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:install-source? #f))
|
||||
|
||||
+59
-14
@@ -75,6 +75,7 @@
|
||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2026 Peter Polidoro <peter@polidoro.io>
|
||||
;;; Copyright © 2026 Luca Alloatti <luca-guix@f-si.org>
|
||||
;;; Copyright © 2026 Akiyoshi Suda <code@akiyoshisuda.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -450,7 +451,7 @@ programming languages.")
|
||||
(define-public cvc5
|
||||
(package
|
||||
(name "cvc5")
|
||||
(version "1.3.3")
|
||||
(version "1.3.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -458,10 +459,8 @@ 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 "0ynz7di4dyyiiydgmf0z9dc2jl7nm44xi0amch29rcgznwr4wy5m"))))
|
||||
(base32 "1xix197pyd45jakk10apam3bhl38nk14zjk0fzr9rj4knh10x5rx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3691,7 +3690,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://www.opencascade.com/doc/occt-7.3.0/overview/html/\
|
||||
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
|
||||
;; occt_dev_guides__tests.html
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
@@ -3700,7 +3699,7 @@ script files.")
|
||||
"-DUSE_FREEIMAGE:BOOL=ON"
|
||||
"-DUSE_RAPIDJSON:BOOL=ON"
|
||||
"-DUSE_TBB:BOOL=ON"
|
||||
"-DUSE_VTK:BOOL=OFF"
|
||||
"-DUSE_VTK:BOOL=ON"
|
||||
"-DBUILD_DOC_Overview:BOOL=OFF"
|
||||
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
|
||||
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
|
||||
@@ -3718,9 +3717,10 @@ script files.")
|
||||
onetbb
|
||||
rapidjson
|
||||
tcl
|
||||
tk))
|
||||
tk
|
||||
vtk))
|
||||
;; TODO: build Overview documentation and add 'doc' output.
|
||||
(home-page "https://www.opencascade.com")
|
||||
(home-page "https://dev.opencascade.org")
|
||||
(synopsis "Libraries for 3D modeling and numerical simulation")
|
||||
(description
|
||||
"Open CASCADE is a set of libraries for the development of applications
|
||||
@@ -3790,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://www.opencascade.com/doc/occt-7.3.0/overview/html/\
|
||||
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
|
||||
;; occt_dev_guides__tests.html
|
||||
#:tests? #f
|
||||
;; Configure without freeimage: attempting to link against the
|
||||
@@ -3800,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=OFF"
|
||||
"-DUSE_VTK:BOOL=ON"
|
||||
"-DBUILD_DOC_Overview:BOOL=OFF"
|
||||
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
|
||||
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
|
||||
@@ -3816,9 +3816,10 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
|
||||
mesa
|
||||
tbb-2020
|
||||
tcl
|
||||
tk))
|
||||
tk
|
||||
vtk))
|
||||
;; TODO: build Overview documentation and add 'doc' output.
|
||||
(home-page "https://www.opencascade.com")
|
||||
(home-page "https://dev.opencascade.org")
|
||||
(synopsis "Libraries for 3D modeling and numerical simulation")
|
||||
(description
|
||||
"Open CASCADE is a set of libraries for the development of applications
|
||||
@@ -4574,6 +4575,45 @@ primes and prime k-tuplets up to 264.")
|
||||
self-contained C-extension for Python.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-constraint2
|
||||
(package
|
||||
(name "python-constraint2")
|
||||
(version "2.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/python-constraint/python-constraint")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1y62jvgb5dm91abgfs3cy260y1lxiwpvirs378a3lj4mrlmrqdsm"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "--ignore=tests/test_toml_file.py" ;release information tests
|
||||
"--ignore=tests/test_util_benchmark.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-pytest-config
|
||||
(lambda _
|
||||
;; Drop test coverage requirements
|
||||
(substitute* "pyproject.toml"
|
||||
(("--cov(-[^ ]*)?([ =][^ \"]*)?") "")))))))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
python-poetry-core ;actual build backend
|
||||
python-pytest
|
||||
python-setuptools)) ;required for cythonization
|
||||
(home-page "https://python-constraint.github.io/python-constraint")
|
||||
(synopsis "Constraint satisfaction problem resolver for Python")
|
||||
(description
|
||||
"The @code{python-constraint} module offers efficient solvers for
|
||||
@url{https://en.wikipedia.org/wiki/Constraint_satisfaction_problem, constraint
|
||||
satisfaction problems} over finite domains in an accessible Python package.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-cvxopt
|
||||
(package
|
||||
(name "python-cvxopt")
|
||||
@@ -7941,7 +7981,7 @@ set.")
|
||||
"doc")) ;12 MiB of documentation
|
||||
(native-inputs
|
||||
(list doc++
|
||||
doxygen
|
||||
doxygen-1.16
|
||||
ghostscript
|
||||
python
|
||||
python-breathe
|
||||
@@ -7967,13 +8007,16 @@ 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
|
||||
@@ -7985,6 +8028,7 @@ set.")
|
||||
texlive-wasysym
|
||||
texlive-wrapfig
|
||||
texlive-xcolor
|
||||
texlive-xltabular
|
||||
texlive-xypic))))
|
||||
(inputs
|
||||
(list openblas))
|
||||
@@ -8067,7 +8111,8 @@ 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
|
||||
|
||||
@@ -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, 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -27,6 +27,7 @@
|
||||
#: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)
|
||||
@@ -36,7 +37,7 @@
|
||||
(define-public mold
|
||||
(package
|
||||
(name "mold")
|
||||
(version "2.40.4")
|
||||
(version "2.41.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -45,14 +46,14 @@
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05prkdr3v8wb8l99qrri9r27yar5yl8aiv1ns41b556ckdjdw8q6"))
|
||||
(base32 "1r4mvgwh652klhns1q45qy5axi54jx904ss0s428y98a9qk4brrp"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(for-each
|
||||
(lambda (x)
|
||||
(delete-file-recursively (string-append "third-party/" x)))
|
||||
'("mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
|
||||
'("blake3" "mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -86,7 +87,7 @@
|
||||
(if (target-64bit?)
|
||||
(list mimalloc)
|
||||
'())
|
||||
(list onetbb xxhash zlib `(,zstd "lib"))))
|
||||
(list libblake3 onetbb xxhash zlib `(,zstd "lib"))))
|
||||
(home-page "https://github.com/rui314/mold")
|
||||
(synopsis "Fast linker")
|
||||
(description
|
||||
|
||||
@@ -754,14 +754,14 @@ Daemon (MPD).")
|
||||
(define-public rmpc
|
||||
(package
|
||||
(name "rmpc")
|
||||
(version "0.9.0")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rmpc" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "00a8z3b4wqf1j6v0ws2fckj452w46vgj1v2n446bv4ngrk7wnf06"))))
|
||||
(base32 "0j2jahbm49jl1116cdl9f47pi0rmi6h4qy5gajwswr9dnld36803"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -787,7 +787,7 @@ Daemon (MPD).")
|
||||
("target/completions/_rmpc" .
|
||||
"share/zsh/site-functions/_rmpc"))))))))
|
||||
(inputs (cargo-inputs 'rmpc))
|
||||
(home-page "https://mierak.github.io/rmpc/")
|
||||
(home-page "https://rmpc.mierak.dev/")
|
||||
(synopsis "Configurable TUI client for MPD")
|
||||
(description
|
||||
"rmpc is a terminal based Music Player Daemon client heavily inspired by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014-2026 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 (package-arguments openmpi-5)
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:configure-flags flags '())
|
||||
#~(cons* (string-append "--with-rocm="
|
||||
#$(this-package-input "rocm-hip-runtime"))
|
||||
@@ -440,7 +440,9 @@ 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)))
|
||||
(append rocm-hip-runtime)
|
||||
(replace "ucx" ucx-rocm)
|
||||
(replace "libfabric" libfabric-rocm)))
|
||||
(synopsis "MPI-3 implementation (with ROCm support)")))
|
||||
|
||||
(define-public openmpi-c++
|
||||
|
||||
+139
-17
@@ -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 Sughosha <sughosha@disroot.org>
|
||||
;;; Copyright © 2022, 2023, 2024, 2026 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,6 +171,7 @@
|
||||
#: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)
|
||||
@@ -224,6 +225,7 @@
|
||||
#: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
|
||||
@@ -816,7 +818,7 @@ Winamp/XMMS skins.")
|
||||
(define-public strawberry
|
||||
(package
|
||||
(name "strawberry")
|
||||
(version "1.2.14")
|
||||
(version "1.2.19")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -825,17 +827,7 @@ Winamp/XMMS skins.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"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"))))))
|
||||
"1bxrqqi2xi057v9qaz73dl44jyyhpqvi51pjs6pzprfiqgy1gi11"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -966,7 +958,7 @@ many input formats and provides a customisable Vi-style user interface.")
|
||||
(define-public ctune
|
||||
(package
|
||||
(name "ctune")
|
||||
(version "1.3.4")
|
||||
(version "1.3.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -974,11 +966,15 @@ 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 "05gs1a1pc303qrnd1bz0z0wkzxkpm310hqznnq6zz7nl4vs3b9nz"))))
|
||||
(base32 "0g7a2yz5nnhd4dln07hiax5701hc4b7sn97c36jgvm8pq6ap2bd4"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments '(#:tests? #f)) ;no check target
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no check target
|
||||
;; We do not have the headers of ncurses inside 'ncursesw' subdirectory.
|
||||
#:configure-flags
|
||||
#~(list "-DNO_NCURSESW=ON")))
|
||||
(native-inputs (list pkg-config
|
||||
json-c
|
||||
ffmpeg-6
|
||||
@@ -5355,6 +5351,132 @@ 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
@@ -1994,7 +1994,7 @@ and up to 1 Mbit/s downstream.")
|
||||
(define-public whois
|
||||
(package
|
||||
(name "whois")
|
||||
(version "5.6.5")
|
||||
(version "5.6.6")
|
||||
(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 "145lp72347vmr1ipai8rz10bqi6lkjx104g3rq2dmdi2ygfqq9nc"))))
|
||||
(base32 "05549a8r7qr6rv26i7kwg4h6ciwa4cc8dsd5zhfprjrjk909ga24"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2948,7 +2948,7 @@ that block port 22.")
|
||||
(define-public iperf
|
||||
(package
|
||||
(name "iperf")
|
||||
(version "3.19.1")
|
||||
(version "3.21")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2957,7 +2957,7 @@ that block port 22.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1kj2p3dprxv1r77whd5g1wak2k71c7khhrkkx60lcnkf70qy5q67"))))
|
||||
(base32 "1r4873czw1hyq2g0z1dfxpbsdxcf6i2iizyvqaz24z8dshr2kdmi"))))
|
||||
(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.0")
|
||||
(version "0.8.1")
|
||||
(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
|
||||
"019qrh2wpvr577ksvs3s82q6kiqm5i6869aj7qba326b59lhkxrc"))
|
||||
"1pj0270r87iv84vrlrrbp66vkzdmaa4ramhx34b151hclkiv3c8j"))
|
||||
(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 catch-framework openssl))
|
||||
(list asio-1.28 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.0.10")
|
||||
(version "1.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/whyvl/wireproxy")
|
||||
(url "https://github.com/windtf/wireproxy")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0ypk9migx1l7xwcxr542pcdy8q2bm33wp03bqzgav0hp1fsrmi8p"))))
|
||||
(base32 "0nzs3xzvq3rhqg808qgazymmwdx9p3nw669wl3r5xclhvibbyla7"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
#:import-path "github.com/pufferffish/wireproxy/cmd/wireproxy"
|
||||
#:unpack-path "github.com/pufferffish/wireproxy"
|
||||
#:import-path "github.com/windtf/wireproxy/cmd/wireproxy"
|
||||
#:unpack-path "github.com/windtf/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/whyvl/wireproxy")
|
||||
(home-page "https://github.com/windtf/wireproxy")
|
||||
(synopsis "Wireguard client that exposes itself as a socks5 proxy")
|
||||
(description
|
||||
"wireproxy is a completely userspace application that connects to a
|
||||
|
||||
+23
-45
@@ -276,24 +276,28 @@ 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)))
|
||||
|
||||
@@ -344,7 +348,7 @@ addons in a wide array of potential locations.")
|
||||
(lambda _
|
||||
(modify-json (delete-dev-dependencies)))))))
|
||||
(inputs
|
||||
(list node-balanced-match-1 node-concat-map))
|
||||
(list node-balanced-match 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
|
||||
@@ -376,32 +380,6 @@ 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")
|
||||
@@ -2324,7 +2302,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.26.2")
|
||||
(version "2.22.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2333,7 +2311,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 "18xv0m40jgy3sc4pldw95w6p72ms5a5h0x2sm2mimlwlmxmrjlmb"))))
|
||||
(base32 "02gqm23x26glffvyxrnk610hy3hg0kwh2v58dhnb032l0jhjzqvp"))))
|
||||
(build-system node-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
||||
+58
-48
@@ -274,7 +274,7 @@
|
||||
(lambda (file stat)
|
||||
(executable-file? file))
|
||||
#:stat lstat)))))
|
||||
(add-after 'install 'fix-node-gyp-reference
|
||||
(add-after 'install 'install-npmrc
|
||||
;; 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/nodejs/llparse-builder.git")
|
||||
(url "https://github.com/indutny/llparse-builder.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
@@ -491,6 +491,10 @@ 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"
|
||||
@@ -517,8 +521,7 @@ Node.js and web browsers.")
|
||||
(add-after 'patch-dependencies 'delete-dependencies
|
||||
(lambda _
|
||||
(modify-json (delete-dependencies
|
||||
`("@types/debug"
|
||||
"@types/mocha"
|
||||
`("@types/mocha"
|
||||
"@types/node"
|
||||
"mocha"
|
||||
"ts-node"
|
||||
@@ -536,7 +539,7 @@ Node.js and web browsers.")
|
||||
(list node-binary-search-bootstrap node-debug-bootstrap))
|
||||
(native-inputs
|
||||
(list esbuild))
|
||||
(home-page "https://github.com/nodejs/llparse-builder#readme")
|
||||
(home-page "https://github.com/indutny/llparse-builder#readme")
|
||||
(properties '((hidden? . #t)))
|
||||
(synopsis "Graph builder for consumption by llparse")
|
||||
(description "This package builds graphs for consumption by llparse.")
|
||||
@@ -550,7 +553,7 @@ Node.js and web browsers.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/nodejs/llparse-frontend.git")
|
||||
(url "https://github.com/indutny/llparse-frontend.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
@@ -599,7 +602,7 @@ Node.js and web browsers.")
|
||||
(list node-debug-bootstrap node-llparse-builder-bootstrap))
|
||||
(native-inputs
|
||||
(list esbuild))
|
||||
(home-page "https://github.com/nodejs/llparse-frontend#readme")
|
||||
(home-page "https://github.com/indutny/llparse-frontend#readme")
|
||||
(properties '((hidden? . #t)))
|
||||
(synopsis "Frontend for the llparse compiler")
|
||||
(description "This package is a frontend for the llparse compiler.")
|
||||
@@ -608,17 +611,17 @@ Node.js and web browsers.")
|
||||
(define-public node-llparse-bootstrap
|
||||
(package
|
||||
(name "node-llparse")
|
||||
(version "7.3.0")
|
||||
(version "7.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/nodejs/llparse.git")
|
||||
(url "https://github.com/indutny/llparse.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09hqjcynkz5iv7aydzdwgs42r7y2zylplv0ff7w0vkdsgb08j22a"))
|
||||
"10da273iy2if88hp79cwms6c8qpsl1fkgzll6gmqyx5yxv5mkyp6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@@ -642,14 +645,10 @@ Node.js and web browsers.")
|
||||
(add-after 'patch-dependencies 'delete-dependencies
|
||||
(lambda args
|
||||
(modify-json (delete-dependencies
|
||||
`("@stylistic/eslint-plugin"
|
||||
"@typescript-eslint/eslint-plugin"
|
||||
"@typescript-eslint/parser"
|
||||
"@types/debug"
|
||||
`("@types/debug"
|
||||
"@types/mocha"
|
||||
"@types/node"
|
||||
"esm"
|
||||
"eslint"
|
||||
"llparse-test-fixture"
|
||||
"mocha"
|
||||
"ts-node"
|
||||
@@ -677,7 +676,7 @@ parser definition into a C output.")
|
||||
(define-public llhttp-bootstrap
|
||||
(package
|
||||
(name "llhttp")
|
||||
(version "9.3.0")
|
||||
(version "9.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -686,7 +685,7 @@ parser definition into a C output.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yz4ys94pjq2fs2pihpqjvmxj2mbpm8k5prlm445z4qlajzlr4kb"))
|
||||
"0mzg19aqb1am498gms0z75cwd5kmfg9p78b1hhxw67019nsjcbac"))
|
||||
(patches (search-patches "llhttp-ponyfill-object-fromentries.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
@@ -748,14 +747,14 @@ source files.")
|
||||
(define-public node-lts
|
||||
(package
|
||||
(inherit node-bootstrap)
|
||||
(version "24.14.1")
|
||||
(version "22.14.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://nodejs.org/dist/v" version
|
||||
"/node-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cri5lp3a9jhh34dbd48hq2zyb7xjb9qs6zl36l3q2blawgwz642"))
|
||||
"12msprh604s6qdsgwymxw4kl8ivaldbaydf4v37lbp02aznk2kkc"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@@ -771,17 +770,13 @@ source files.")
|
||||
"deps/icu-small"
|
||||
"deps/nghttp2"
|
||||
"deps/ngtcp2"
|
||||
"deps/llhttp"
|
||||
"deps/uv"
|
||||
"deps/zlib"
|
||||
"deps/zstd"))))))
|
||||
"deps/zlib"))))))
|
||||
(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"
|
||||
@@ -789,7 +784,6 @@ source files.")
|
||||
"--with-intl=system-icu"
|
||||
"--shared-ngtcp2"
|
||||
"--shared-nghttp3"
|
||||
"--shared-zstd"
|
||||
;;Needed for correct snapshot checksums
|
||||
"--v8-enable-snapshot-compression"))
|
||||
((#:phases phases)
|
||||
@@ -852,11 +846,9 @@ source files.")
|
||||
(for-each delete-file
|
||||
'("test/parallel/test-https-agent-unref-socket.js"))
|
||||
|
||||
;; These tests are timing-sensitive, and fail sporadically on
|
||||
;; This test is timing-sensitive, and fails sporadically on
|
||||
;; slow, busy, or even very fast machines.
|
||||
(for-each delete-file
|
||||
'("test/parallel/test-fs-utimes.js"
|
||||
"test/sequential/test-performance-eventloopdelay.js"))
|
||||
(delete-file "test/parallel/test-fs-utimes.js")
|
||||
|
||||
;; FIXME: This test fails randomly:
|
||||
;; https://github.com/nodejs/node/issues/31213
|
||||
@@ -907,6 +899,18 @@ 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
|
||||
@@ -931,22 +935,30 @@ source files.")
|
||||
;; https://github.com/npm/pacote/issues/285
|
||||
(add-after 'install 'ignore-number-of-hardlinks
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(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"))
|
||||
(let ((file (string-append (assoc-ref outputs "out")
|
||||
"/lib/node_modules/npm/node_modules"
|
||||
"/tar/lib/write-entry.js")))
|
||||
(substitute* file
|
||||
(("this.stat.nlink > 1") "false")))))
|
||||
(replace 'fix-node-gyp-reference
|
||||
(add-after 'install 'install-node-gyp-wrapper
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(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")))))))))
|
||||
(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))))))))
|
||||
(native-inputs
|
||||
(list ;; Runtime dependencies for binaries used as a bootstrap.
|
||||
c-ares-for-node-lts
|
||||
@@ -962,8 +974,7 @@ source files.")
|
||||
pkg-config
|
||||
procps
|
||||
python
|
||||
util-linux
|
||||
gcc-14))
|
||||
util-linux))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
coreutils
|
||||
@@ -976,8 +987,7 @@ source files.")
|
||||
nghttp3
|
||||
`(,nghttp2 "lib")
|
||||
openssl-3.0
|
||||
zlib
|
||||
`(,zstd-1.5.7 "lib")))
|
||||
zlib))
|
||||
(supported-systems
|
||||
(cons "riscv64-linux" (package-supported-systems node-bootstrap)))
|
||||
(properties (alist-delete 'hidden? (package-properties node-bootstrap)))))
|
||||
@@ -993,6 +1003,6 @@ source files.")
|
||||
`(cons* "--shared" "--without-npm" ,flags))
|
||||
((#:phases phases '%standard-phases)
|
||||
`(modify-phases ,phases
|
||||
(delete 'fix-node-gyp-reference)
|
||||
(delete 'install-npmrc)
|
||||
(delete 'patch-nested-shebangs)
|
||||
(delete 'ignore-number-of-hardlinks)))))))
|
||||
|
||||
+60
-2
@@ -31,6 +31,7 @@
|
||||
#: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)
|
||||
@@ -46,13 +47,16 @@
|
||||
#: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 image))
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public ocrad
|
||||
(package
|
||||
@@ -75,6 +79,60 @@ 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")
|
||||
|
||||
+101
-148
@@ -1,5 +1,6 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -18,6 +19,7 @@
|
||||
|
||||
(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)
|
||||
@@ -25,8 +27,12 @@
|
||||
#: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)
|
||||
@@ -37,8 +43,8 @@
|
||||
(define-public cogutil
|
||||
;; The last release was in 2016. Other OpenCog packages require a later
|
||||
;; version.
|
||||
(let ((commit "b07b41b2eaf01627c78b27f1f28bb09ef7086f8e")
|
||||
(revision "1"))
|
||||
(let ((commit "64dca9083dcfa485dcb70fd6fe7ba1f80e0f4082")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "cogutil")
|
||||
(version (git-version "2.0.3" revision commit))
|
||||
@@ -50,10 +56,13 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ymmcrinp0prlxsmxmwdjjl4kgaj7wzq39d5b1q2apgg94yfdhqb"))))
|
||||
"01rr39sq9wakw1wnfzg7m4zl7g8qh3d35ww6q39irx19d6nq66h9"))))
|
||||
(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))
|
||||
@@ -69,7 +78,7 @@
|
||||
(invoke file))
|
||||
(find-files "tests" "UTest$"))))))))
|
||||
(inputs
|
||||
(list boost-1.83))
|
||||
(list boost))
|
||||
(native-inputs
|
||||
`(("cxxtest" ,cxxtest)
|
||||
("python" ,python-minimal)
|
||||
@@ -82,9 +91,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 and doesn't build with our Boost package.
|
||||
(let ((commit "86c848dfc7135b3c47deb581f8da54a60f6711c9")
|
||||
(revision "1"))
|
||||
;; The last release was in 2016.
|
||||
(let ((commit "c8d633bf272b838c2132c21b7c8ddf169a18dd22")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "atomspace")
|
||||
(version (git-version "5.0.3" revision commit))
|
||||
@@ -96,15 +105,20 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0vxzhszb0z8081li38hid07a5axzxyflsmq1mcn4b1k4z1j8ggch"))))
|
||||
"0fdqmskjh9d7363ldwmh3zhwal847shm15nhb2nan4g4aqdmckrz"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
|
||||
"/include/guile/2.2/")
|
||||
#~(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/2.2/"))
|
||||
"/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"))
|
||||
#:modules '((guix build cmake-build-system)
|
||||
((guix build gnu-build-system) #:prefix gnu:)
|
||||
(guix build utils))
|
||||
@@ -117,15 +131,15 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
|
||||
#:tests? tests? #:test-target "tests" args)
|
||||
;; Failing tests.
|
||||
(for-each delete-file
|
||||
'("tests/matrix/VectorAPIUTest"
|
||||
"tests/scm/MultiAtomSpaceUTest"))
|
||||
'("tests/scm/MultiAtomSpaceUTest"))
|
||||
(setenv "GUILE_LOAD_PATH" ".:opencog/scm")
|
||||
(for-each invoke
|
||||
(find-files "tests" "UTest$"))))))))
|
||||
(inputs
|
||||
(list boost cogutil gmp guile-2.2 postgresql))
|
||||
(list boost cogutil gmp guile-3.0-latest postgresql))
|
||||
(native-inputs
|
||||
`(("cxxtest" ,cxxtest)
|
||||
("python-cython" ,python-cython)
|
||||
("python" ,python-minimal)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/opencog/atomspace/")
|
||||
@@ -138,10 +152,59 @@ 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 "ec5f3b9590db0f6a085b5d0320f5d3710e0f1635")
|
||||
(revision "2"))
|
||||
(let ((commit "3c4da0bd786262bd69a8306f9da88b13f0add1f2")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "cogserver")
|
||||
(version (git-version "0" revision commit))
|
||||
@@ -153,15 +216,21 @@ features not otherwise available.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h0vcxb6n5dc654xqinqcxc7dxwcs6bsywgir8rhrqiykk760mzl"))))
|
||||
"0hfz9z44wpzrabs9fgxhv02jzn0i40di2ncbiizn03g7gccawds5"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;tests start network server and hang
|
||||
#:configure-flags
|
||||
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
|
||||
"/include/guile/2.2/")
|
||||
#~(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/2.2/"))
|
||||
"/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"))
|
||||
#:modules '((guix build cmake-build-system)
|
||||
((guix build gnu-build-system) #:prefix gnu:)
|
||||
(guix build utils))
|
||||
@@ -177,10 +246,13 @@ features not otherwise available.")
|
||||
(for-each invoke
|
||||
(find-files "tests" "UTest$"))))))))
|
||||
(inputs
|
||||
(list atomspace boost cogutil gmp guile-2.2))
|
||||
(list asio atomspace atomspace-storage boost cogutil
|
||||
gmp guile-3.0-latest jsoncpp openssl))
|
||||
(native-inputs
|
||||
`(("cxxtest" ,cxxtest)
|
||||
("python" ,python-minimal)
|
||||
("netcat" ,netcat-openbsd)
|
||||
("python" ,python)
|
||||
("python-cython" ,python-cython)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/opencog/cogserver/")
|
||||
(synopsis "OpenCog network server")
|
||||
@@ -188,129 +260,11 @@ features not otherwise available.")
|
||||
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 "b5c6f3d99e8cca3798bf0cdf2c32f4bdb8098efb")
|
||||
(revision "1"))
|
||||
(let ((commit "2f723ad79afc38df9dce73d340ee24c38efb2199")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "agi-bio")
|
||||
(version (git-version "0" revision commit))
|
||||
@@ -322,7 +276,7 @@ combination.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c3q0nhmd03nvqm1ih10y28n596cjvfhkcfvzw2fmz1sn3ywdah4"))))
|
||||
"1gqmwjbqdjr0qz4wpsxh0k8wam59fvd3pnjxhfswdpvapcl9syk0"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; there are none
|
||||
@@ -330,10 +284,10 @@ combination.")
|
||||
(list
|
||||
(string-append "-DGUILE_INCLUDE_DIR="
|
||||
(assoc-ref %build-inputs "guile")
|
||||
"/include/guile/2.2/")
|
||||
"/include/guile/3.0/")
|
||||
(string-append "-DGUILE_SITE_DIR="
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/guile/site/2.2/"))
|
||||
"/share/guile/site/3.0/"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-unqualified-load
|
||||
@@ -342,10 +296,9 @@ combination.")
|
||||
(("\\(load \"bioscience/types/bioscience_types.scm\"\\)")
|
||||
(format #f "(load \"~a/bioscience/types/bioscience_types.scm\")"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/guile/site/2.2/opencog"))))
|
||||
#t)))))
|
||||
"/share/guile/site/3.0/opencog")))))))))
|
||||
(inputs
|
||||
(list atomspace cogutil gmp guile-2.2))
|
||||
(list atomspace cogutil gmp guile-3.0-latest))
|
||||
(native-inputs
|
||||
`(("cxxtest" ,cxxtest)
|
||||
("python" ,python-minimal)
|
||||
|
||||
@@ -767,7 +767,7 @@ which are indicated in the file name.")
|
||||
(define-public guix-modules
|
||||
(package
|
||||
(name "guix-modules")
|
||||
(version "0.3.0")
|
||||
(version "0.4.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
|
||||
"1cdpxmhrbbazr4z53rpk6ssk3clpv4j16ivha7lr4nqg48mxha9q"))))
|
||||
"1zmbd04y69gcak43rnizk8vjgpxhv5m67k3z4fk9cyiymcs872ky"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
'(#:phases (modify-phases %standard-phases
|
||||
|
||||
+82
-68
@@ -3,6 +3,7 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -51,7 +52,7 @@
|
||||
(define-public granite
|
||||
(package
|
||||
(name "granite")
|
||||
(version "7.3.0")
|
||||
(version "7.8.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -60,13 +61,19 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pyvkif2kin5dskh7adadsh4r96mvx12y7cs6gnm0ml733q548dj"))))
|
||||
"01s37b6ssfhawbzxzq5yyjcxq9m2qf16q0h4g4vfhj1c6f4l8khy"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-icon-cache
|
||||
(lambda _
|
||||
(setenv "DESTDIR" "/"))))))
|
||||
(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")))))))
|
||||
(inputs (list sassc))
|
||||
(propagated-inputs (list glib libgee gtk)) ;required in .pc file
|
||||
(native-inputs (list gettext-minimal
|
||||
@@ -96,12 +103,21 @@ 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.0")
|
||||
(version "8.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -111,7 +127,7 @@ in apps built for the Pantheon desktop.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1as5rxd0b6z3lnh8my36szr056rxxqwkjzvaiylspx5g2kg3qjs0"))))
|
||||
"157a2xryp9013m5grr3brfrs6hqz2ndg0ys8h0184am5zvg9w4sw"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -142,7 +158,7 @@ desktop.")
|
||||
(define-public pantheon-calendar
|
||||
(package
|
||||
(name "pantheon-calendar")
|
||||
(version "8.0.0")
|
||||
(version "8.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -152,7 +168,7 @@ desktop.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bynv5gnfs4sdr5ngd1c8jh42fkiw4gl5064fb579hws2jniy540"))))
|
||||
"0344wr5ka2cfkr46vrclh1w9nhrrznn0jbb5g95dfww2czrp6iwj"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -161,12 +177,13 @@ desktop.")
|
||||
#: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 'unpack 'disable-icon-cache
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false"))))
|
||||
(add-after 'install 'install-symlinks
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(lambda _
|
||||
(let* ((bin (string-append #$output
|
||||
"/bin/io.elementary.calendar"))
|
||||
(link (string-append #$output "/bin/pantheon-calendar")))
|
||||
@@ -200,7 +217,7 @@ elementary OS.")
|
||||
(define-public pantheon-icons
|
||||
(package
|
||||
(name "pantheon-icons")
|
||||
(version "8.1.0")
|
||||
(version "8.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -209,7 +226,7 @@ elementary OS.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1yvjisvcjdpgibnc5l5cm16rw53zffinp1pvknlllz8wcdylqnss"))))
|
||||
(base32 "04x8r1kknm7iswlg71da24aqqgrs494mivdx3jx1wz1jz5wzxnwy"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "-Dvolume_icons=false"
|
||||
@@ -217,7 +234,7 @@ elementary OS.")
|
||||
(native-inputs (list gettext-minimal ;for msgfmt
|
||||
librsvg
|
||||
xcursorgen))
|
||||
(propagated-inputs (list hicolor-icon-theme))
|
||||
(propagated-inputs (list adwaita-icon-theme))
|
||||
(synopsis "Named, vector icons for the pantheon desktop")
|
||||
(description
|
||||
"pantheon-icons is an original set of vector icons designed
|
||||
@@ -228,7 +245,7 @@ for elementary OS and its desktop environment: Pantheon.")
|
||||
(define-public pantheon-photos
|
||||
(package
|
||||
(name "pantheon-photos")
|
||||
(version "8.0.0")
|
||||
(version "8.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -237,18 +254,20 @@ for elementary OS and its desktop environment: Pantheon.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1z3b582y093x6pb3bl7zs4w97vg88rflyhwxfaycxw0rv8pcshhi"))))
|
||||
(base32 "15ppxzbj882i2hpm88nn5azijhmgjc9js07i3wdpick2ciw83apr"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:glib-or-gtk? #t
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-schema-cache-generation
|
||||
(lambda _
|
||||
(setenv "DESTDIR" "/")))
|
||||
(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
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(lambda _
|
||||
(let* ((bin (string-append #$output
|
||||
"/bin/io.elementary.photos"))
|
||||
(link (string-append #$output "/bin/pantheon-photos")))
|
||||
@@ -290,7 +309,7 @@ also be used on others.")
|
||||
(define-public pantheon-screenshot
|
||||
(package
|
||||
(name "pantheon-screenshot")
|
||||
(version "8.0.1")
|
||||
(version "8.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -299,7 +318,7 @@ also be used on others.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1h3xv0pckkkgvqkk6fxssydq9gmncapaf1hx4n7j19jcvhwx65da"))))
|
||||
(base32 "0ib6g47pykpscfazd12gssxv6in0v4jlcn8lfp0i1g0i4ap36ml5"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -309,7 +328,7 @@ also be used on others.")
|
||||
(add-after 'unpack 'disable-schema-cache-generation
|
||||
(lambda _ (setenv "DESTDIR" "/")))
|
||||
(add-after 'install 'install-symlinks
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(lambda _
|
||||
(let* ((bin (string-append #$output
|
||||
"/bin/io.elementary.screenshot"))
|
||||
(link (string-append #$output
|
||||
@@ -336,7 +355,7 @@ the Pantheon desktop environment.")
|
||||
(define-public pantheon-stylesheet
|
||||
(package
|
||||
(name "pantheon-stylesheet")
|
||||
(version "8.1.0")
|
||||
(version "8.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -345,7 +364,7 @@ the Pantheon desktop environment.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1h8k75m9jrqxwq0py8hrqrsc83myrwpmnrwx05aljdyr6sys06k6"))))
|
||||
(base32 "065zzv1b39i0j775kc60cywiwizw2rckg2kildfhs4mp81yswdv6"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list gettext-minimal)) ;for msgfmt
|
||||
(inputs (list sassc))
|
||||
@@ -358,7 +377,7 @@ desktop environment (originally from elementary OS).")
|
||||
(define-public pantheon-terminal
|
||||
(package
|
||||
(name "pantheon-terminal")
|
||||
(version "6.3.1")
|
||||
(version "8.0.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -367,7 +386,7 @@ desktop environment (originally from elementary OS).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"142nwx2jc7ks529dk8dqhgs39gdqh6bc7gv9b10qdfm81bwqjkjv"))))
|
||||
"0kldk74rmifgbf2wq9qbzv414dl4mgf94mzr5a4i2cags4rxlci3"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -375,10 +394,6 @@ 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
|
||||
@@ -393,12 +408,13 @@ desktop environment (originally from elementary OS).")
|
||||
pkg-config
|
||||
vala
|
||||
xvfb-run))
|
||||
(inputs (list granite-6
|
||||
gtk+
|
||||
(inputs (list granite
|
||||
gtk
|
||||
libadwaita
|
||||
libgee
|
||||
libhandy
|
||||
pcre2
|
||||
vte/gtk+-3))
|
||||
vte))
|
||||
(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
|
||||
@@ -410,7 +426,7 @@ terminal in the Pantheon desktop.")
|
||||
(define-public sideload
|
||||
(package
|
||||
(name "sideload")
|
||||
(version "6.2.1")
|
||||
(version "6.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -420,42 +436,40 @@ terminal in the Pantheon desktop.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0vrj91899f13cvzpycqy3y74hmixsffjbzsj29da7n370fa3ci86"))))
|
||||
"0hn9gnzr25i0k6b81ia6c73lqmr43grfdwn18sfp8xhjiqlqqmlq"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:glib-or-gtk? #t
|
||||
(list
|
||||
#: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* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin/io.elementary.sideload"))
|
||||
(link (string-append out "/bin/sideload")))
|
||||
(symlink bin link)))))))
|
||||
#~(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)))))))
|
||||
(inputs
|
||||
`(("flatpak" ,flatpak)
|
||||
("glib" ,glib)
|
||||
("granite" ,granite)
|
||||
("gtk" ,gtk+)
|
||||
("hicolor-icon-theme" ,hicolor-icon-theme)
|
||||
("libgee" ,libgee)
|
||||
("libhandy" ,libhandy)
|
||||
("libostree" ,libostree)
|
||||
("libxml2" ,libxml2)))
|
||||
(list flatpak
|
||||
glib
|
||||
granite
|
||||
gtk+
|
||||
hicolor-icon-theme
|
||||
libgee
|
||||
libhandy
|
||||
libostree
|
||||
libxml2))
|
||||
(propagated-inputs
|
||||
;; Sideload needs these in the environment to fetch data securely from
|
||||
;; Flatpak remotes.
|
||||
(list gnupg gpgme))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("glib:bin" ,glib "bin")
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(list desktop-file-utils ;for update-desktop-database
|
||||
gettext-minimal
|
||||
`(,glib "bin")
|
||||
gobject-introspection
|
||||
pkg-config
|
||||
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
|
||||
@@ -466,7 +480,7 @@ download.")
|
||||
(define-public pantheon-wallpapers
|
||||
(package
|
||||
(name "pantheon-wallpapers")
|
||||
(version "7.0.0")
|
||||
(version "8.0.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -474,7 +488,7 @@ download.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32
|
||||
"0km3h52kapbm8ymwxdxasz80qbgzkfni7981pdyf740wjp7linwb"))))
|
||||
"163y98x0vc8icmd5prrjja7sp3clp8apvx0ha2shiaymxnprifm9"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list gettext-minimal)) ; for msgfmt
|
||||
(inputs (list libexif))
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
;;; Copyright © 2026 John Dawson <dawson.john.andrew@gmail.com>
|
||||
;;; Copyright © 2026 Ivan Vilata i Balaguer <ivan@selidor.net>
|
||||
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2026 Zheng Junjie <z572@z572.online>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -65,6 +66,7 @@
|
||||
|
||||
(define-module (gnu packages password-utils)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system gnu)
|
||||
@@ -91,6 +93,7 @@
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages digest)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages dotnet)
|
||||
@@ -133,6 +136,7 @@
|
||||
#:use-module (gnu packages ruby)
|
||||
#:use-module (gnu packages ruby-xyz)
|
||||
#:use-module (gnu packages security-token)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages suckless)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tls)
|
||||
@@ -776,6 +780,76 @@ age, and PGP.")
|
||||
convert SSH @code{ed25519} keys to @code{age} keys.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public vaultwarden
|
||||
(package
|
||||
(name "vaultwarden")
|
||||
(version "1.36.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dani-garcia/vaultwarden")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1lipk99gqfivg95yqg80b8q0a220vwn9nmq0f4syawxnhvn9zkcd"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
#:features '(list "sqlite_system" "s3" "postgresql")
|
||||
;; The build.rs script mandates the activation of a DB backend.
|
||||
#:cargo-test-flags
|
||||
'(list
|
||||
"--features"
|
||||
"sqlite_system,s3,postgresql"
|
||||
"--")
|
||||
#:cargo-install-paths ''(".")))
|
||||
(inputs
|
||||
(cons* openssl
|
||||
postgresql
|
||||
sqlite
|
||||
`(,zstd "lib")
|
||||
(cargo-inputs 'vaultwarden)))
|
||||
(native-inputs (list pkg-config))
|
||||
(home-page "https://github.com/dani-garcia/vaultwarden")
|
||||
(synopsis
|
||||
"Alternative implementation of the Bitwarden server API")
|
||||
(description
|
||||
"Vaultwarden is an unofficial Bitwarden server implementation written in
|
||||
Rust. It is compatible with the official Bitwarden clients, and is ideal for
|
||||
self-hosted deployments where running the official resource-heavy service is
|
||||
undesirable.
|
||||
|
||||
Supported features are:
|
||||
@itemize
|
||||
@item Personal vault support
|
||||
@item Organization vault support
|
||||
@item Groups
|
||||
@item Event Logs
|
||||
@item Password sharing and access control
|
||||
@item Collections
|
||||
@item File attachments
|
||||
@item Folders
|
||||
@item Favorites
|
||||
@item Website icons
|
||||
@item Bitwarden Authenticator (TOTP)
|
||||
@item Bitwarden Send
|
||||
@item Emergency Access
|
||||
@item Trash (soft delete, you can configure the days for automatic deletion)
|
||||
@item Master password re-prompt
|
||||
@item Personal API key
|
||||
@item Two-step login via email, Duo, YubiKey, and FIDO2 WebAuthn
|
||||
@item Username generator integration
|
||||
@item Directory Connector support
|
||||
@item Account Recovery (this requires mail to be enabled)
|
||||
@item Live sync (WebSocket only) for desktop/browser clients/extensions
|
||||
@item Live sync (push notifications) for mobile clients (Android/iOS)
|
||||
@item Single Sign-On (SSO)
|
||||
@end itemize
|
||||
")
|
||||
(license license:agpl3)))
|
||||
|
||||
(define-public yapet
|
||||
(package
|
||||
(name "yapet")
|
||||
|
||||
@@ -1,84 +0,0 @@
|
||||
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()
|
||||
@@ -1,26 +0,0 @@
|
||||
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('};')
|
||||
@@ -1,165 +0,0 @@
|
||||
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)
|
||||
@@ -1,46 +0,0 @@
|
||||
From 8a06656acf8f6e3dfa907bea77bd57a469a8d3fb Mon Sep 17 00:00:00 2001
|
||||
From: codefritzel <pascal-pf@hotmail.de>
|
||||
Date: Thu, 11 Jul 2024 23:10:41 +0200
|
||||
Subject: replace dsa with rsa in TestUpdateSshRoot
|
||||
|
||||
DSA to be deactivated in OpenSSH from 2025. Since version 7.0 dsa is
|
||||
marked as deprecated.
|
||||
|
||||
The TestUpdateSshRoot uses DSA, which will fail in the future with newer
|
||||
OpenSSH versions.
|
||||
|
||||
fixes #1752
|
||||
|
||||
Signed-off-by: codefritzel <pascal-pf@hotmail.de>
|
||||
|
||||
diff --git a/test/py/ganeti.tools.prepare_node_join_unittest.py b/test/py/ganeti.tools.prepare_node_join_unittest.py
|
||||
index fe7efdf8c..fe029b8f2 100755
|
||||
--- a/test/py/ganeti.tools.prepare_node_join_unittest.py
|
||||
+++ b/test/py/ganeti.tools.prepare_node_join_unittest.py
|
||||
@@ -229,20 +229,20 @@ class TestUpdateSshRoot(unittest.TestCase):
|
||||
def testUpdate(self):
|
||||
data = {
|
||||
constants.SSHS_SSH_ROOT_KEY: [
|
||||
- (constants.SSHK_DSA, "privatedsa", "ssh-dss pubdsa"),
|
||||
+ (constants.SSHK_RSA, "privatersa", "ssh-rsa pubrsa"),
|
||||
],
|
||||
- constants.SSHS_SSH_KEY_TYPE: "dsa",
|
||||
- constants.SSHS_SSH_KEY_BITS: 1024,
|
||||
+ constants.SSHS_SSH_KEY_TYPE: "rsa",
|
||||
+ constants.SSHS_SSH_KEY_BITS: 2048,
|
||||
}
|
||||
|
||||
prepare_node_join.UpdateSshRoot(data, False,
|
||||
_homedir_fn=self._GetHomeDir)
|
||||
self.assertEqual(os.listdir(self.tmpdir), [".ssh"])
|
||||
self.assertEqual(sorted(os.listdir(self.sshdir)),
|
||||
- sorted(["authorized_keys", "id_dsa", "id_dsa.pub"]))
|
||||
- self.assertTrue(utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa"))
|
||||
+ sorted(["authorized_keys", "id_rsa", "id_rsa.pub"]))
|
||||
+ self.assertTrue(utils.ReadFile(utils.PathJoin(self.sshdir, "id_rsa"))
|
||||
is not None)
|
||||
- pub_key = utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa.pub"))
|
||||
+ pub_key = utils.ReadFile(utils.PathJoin(self.sshdir, "id_rsa.pub"))
|
||||
self.assertTrue(pub_key is not None)
|
||||
self.assertEqual(utils.ReadFile(utils.PathJoin(self.sshdir,
|
||||
"authorized_keys")),
|
||||
@@ -1,45 +0,0 @@
|
||||
Fix compatibility with procps 4.
|
||||
|
||||
Negative UIDs are no longer allowed. Use a very high one instead.
|
||||
|
||||
Taken from upstream:
|
||||
|
||||
https://github.com/ganeti/ganeti/commit/9cd67e6a81c66ed326d68ea8c3241d14eea6550b
|
||||
|
||||
diff --git a/test/py/ganeti.uidpool_unittest.py b/test/py/ganeti.uidpool_unittest.py
|
||||
index b2f5bc5cf2..2d9227cbf5 100755
|
||||
--- a/test/py/ganeti.uidpool_unittest.py
|
||||
+++ b/test/py/ganeti.uidpool_unittest.py
|
||||
@@ -106,23 +106,24 @@ def testRequestUnusedUid(self):
|
||||
|
||||
# Check with a single, known unused user-id
|
||||
#
|
||||
- # We use "-1" here, which is not a valid user-id, so it's
|
||||
- # guaranteed that it's unused.
|
||||
- uid = uidpool.RequestUnusedUid(set([-1]))
|
||||
- self.assertEqualValues(uid.GetUid(), -1)
|
||||
+ # We use 2^30+42 here, which is a valid UID, but unlikely to be used on
|
||||
+ # most systems (even as a subuid).
|
||||
+ free_uid = 2**30 + 42
|
||||
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
|
||||
+ self.assertEqualValues(uid.GetUid(), free_uid)
|
||||
|
||||
# Check uid-pool exhaustion
|
||||
#
|
||||
- # uid "-1" is locked now, so RequestUnusedUid is expected to fail
|
||||
+ # free_uid is locked now, so RequestUnusedUid is expected to fail
|
||||
self.assertRaises(errors.LockError,
|
||||
uidpool.RequestUnusedUid,
|
||||
- set([-1]))
|
||||
+ set([free_uid]))
|
||||
|
||||
# Check unlocking
|
||||
uid.Unlock()
|
||||
# After unlocking, "-1" should be available again
|
||||
- uid = uidpool.RequestUnusedUid(set([-1]))
|
||||
- self.assertEqualValues(uid.GetUid(), -1)
|
||||
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
|
||||
+ self.assertEqualValues(uid.GetUid(), free_uid)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
@@ -1,41 +0,0 @@
|
||||
Add Loader argument to 'yaml.load' invocations as required by PyYAML 6.0.
|
||||
|
||||
Submitted upstream:
|
||||
|
||||
https://github.com/ganeti/ganeti/pull/1668
|
||||
|
||||
diff --git a/qa/qa_utils.py b/qa/qa_utils.py
|
||||
index da485df48..27428e685 100644
|
||||
--- a/qa/qa_utils.py
|
||||
+++ b/qa/qa_utils.py
|
||||
@@ -450,7 +450,7 @@ def GetObjectInfo(infocmd):
|
||||
master = qa_config.GetMasterNode()
|
||||
cmdline = utils.ShellQuoteArgs(infocmd)
|
||||
info_out = GetCommandOutput(master.primary, cmdline)
|
||||
- return yaml.load(info_out)
|
||||
+ return yaml.load(info_out, Loader=yaml.SafeLoader)
|
||||
|
||||
|
||||
def UploadFile(node, src):
|
||||
diff --git a/test/py/ganeti.cli_unittest.py b/test/py/ganeti.cli_unittest.py
|
||||
index 9cc980afa..242aac9fd 100755
|
||||
--- a/test/py/ganeti.cli_unittest.py
|
||||
+++ b/test/py/ganeti.cli_unittest.py
|
||||
@@ -1141,14 +1141,15 @@ class TestFormatPolicyInfo(unittest.TestCase):
|
||||
self._RenameDictItem(minmax, key, keyparts[0])
|
||||
self.assertTrue(constants.IPOLICY_DTS in parsed)
|
||||
parsed[constants.IPOLICY_DTS] = yaml.load("[%s]" %
|
||||
- parsed[constants.IPOLICY_DTS])
|
||||
+ parsed[constants.IPOLICY_DTS],
|
||||
+ Loader=yaml.SafeLoader)
|
||||
|
||||
@staticmethod
|
||||
def _PrintAndParsePolicy(custom, effective, iscluster):
|
||||
formatted = cli.FormatPolicyInfo(custom, effective, iscluster)
|
||||
buf = StringIO()
|
||||
cli._SerializeGenericInfo(buf, formatted, 0)
|
||||
- return yaml.load(buf.getvalue())
|
||||
+ return yaml.load(buf.getvalue(), Loader=yaml.SafeLoader)
|
||||
|
||||
def _PrintAndCheckParsed(self, policy):
|
||||
parsed = self._PrintAndParsePolicy(policy, NotImplemented, True)
|
||||
@@ -1,28 +0,0 @@
|
||||
Relax version constraints to work with Stackage LTS 19.
|
||||
|
||||
Taken from upstream:
|
||||
|
||||
https://github.com/ganeti/ganeti/commit/4f8d61ea0101721eae1c6f43be8430d819e5e611
|
||||
|
||||
diff --git a/cabal/ganeti.template.cabal b/cabal/ganeti.template.cabal
|
||||
index bb4ff8053..98491dd9f 100644
|
||||
--- a/cabal/ganeti.template.cabal
|
||||
+++ b/cabal/ganeti.template.cabal
|
||||
@@ -63,14 +63,14 @@ library
|
||||
, unix >= 2.5.1.0
|
||||
, utf8-string >= 0.3.7
|
||||
|
||||
- , attoparsec >= 0.10.1.1 && < 0.14
|
||||
- , base64-bytestring >= 1.0.0.1 && < 1.2
|
||||
+ , attoparsec >= 0.10.1.1 && < 0.15
|
||||
+ , base64-bytestring >= 1.0.0.1 && < 1.3
|
||||
, case-insensitive >= 0.4.0.1 && < 1.3
|
||||
, curl >= 1.3.7 && < 1.4
|
||||
, hinotify >= 0.3.2 && < 0.5
|
||||
, hslogger >= 1.1.4 && < 1.4
|
||||
, json >= 0.5 && < 1.0
|
||||
- , lens >= 3.10 && < 5.0
|
||||
+ , lens >= 3.10 && < 6.0
|
||||
, lifted-base >= 0.2.0.3 && < 0.3
|
||||
, monad-control >= 0.3.1.3 && < 1.1
|
||||
, parallel >= 3.2.0.2 && < 3.3
|
||||
@@ -1,90 +0,0 @@
|
||||
Fix ordering of Arbitrary definitions for GHC 9 compatibility.
|
||||
|
||||
Taken from upstream:
|
||||
|
||||
https://github.com/ganeti/ganeti/commit/feab8faa8fe055c89205497e4f277ae4c7b8caad
|
||||
|
||||
diff --git a/test/hs/Test/Ganeti/Objects.hs b/test/hs/Test/Ganeti/Objects.hs
|
||||
index 97ceb36dca..8d80be9e80 100644
|
||||
--- a/test/hs/Test/Ganeti/Objects.hs
|
||||
+++ b/test/hs/Test/Ganeti/Objects.hs
|
||||
@@ -93,8 +93,14 @@ instance Arbitrary (Container DataCollectorConfig) where
|
||||
instance Arbitrary BS.ByteString where
|
||||
arbitrary = genPrintableByteString
|
||||
|
||||
+instance Arbitrary a => Arbitrary (Private a) where
|
||||
+ arbitrary = Private <$> arbitrary
|
||||
+
|
||||
$(genArbitrary ''PartialNDParams)
|
||||
|
||||
+instance Arbitrary (Container J.JSValue) where
|
||||
+ arbitrary = return $ GenericContainer Map.empty
|
||||
+
|
||||
instance Arbitrary Node where
|
||||
arbitrary = Node <$> genFQDN <*> genFQDN <*> genFQDN
|
||||
<*> arbitrary <*> arbitrary <*> arbitrary <*> genFQDN
|
||||
@@ -297,10 +303,6 @@ genDisk = genDiskWithChildren 3
|
||||
-- validation rules.
|
||||
$(genArbitrary ''PartialISpecParams)
|
||||
|
||||
--- | FIXME: This generates completely random data, without normal
|
||||
--- validation rules.
|
||||
-$(genArbitrary ''PartialIPolicy)
|
||||
-
|
||||
$(genArbitrary ''FilledISpecParams)
|
||||
$(genArbitrary ''MinMaxISpecs)
|
||||
$(genArbitrary ''FilledIPolicy)
|
||||
@@ -309,6 +311,10 @@ $(genArbitrary ''FilledNDParams)
|
||||
$(genArbitrary ''FilledNicParams)
|
||||
$(genArbitrary ''FilledBeParams)
|
||||
|
||||
+-- | FIXME: This generates completely random data, without normal
|
||||
+-- validation rules.
|
||||
+$(genArbitrary ''PartialIPolicy)
|
||||
+
|
||||
-- | No real arbitrary instance for 'ClusterHvParams' yet.
|
||||
instance Arbitrary ClusterHvParams where
|
||||
arbitrary = return $ GenericContainer Map.empty
|
||||
@@ -331,18 +337,12 @@ instance Arbitrary OsParams where
|
||||
instance Arbitrary Objects.ClusterOsParamsPrivate where
|
||||
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
|
||||
|
||||
-instance Arbitrary a => Arbitrary (Private a) where
|
||||
- arbitrary = Private <$> arbitrary
|
||||
-
|
||||
instance Arbitrary ClusterOsParams where
|
||||
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
|
||||
|
||||
instance Arbitrary ClusterBeParams where
|
||||
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
|
||||
|
||||
-instance Arbitrary IAllocatorParams where
|
||||
- arbitrary = return $ GenericContainer Map.empty
|
||||
-
|
||||
$(genArbitrary ''Cluster)
|
||||
|
||||
instance Arbitrary ConfigData where
|
||||
diff --git a/test/hs/Test/Ganeti/Query/Language.hs b/test/hs/Test/Ganeti/Query/Language.hs
|
||||
index 04fb8c3898..fa50196f00 100644
|
||||
--- a/test/hs/Test/Ganeti/Query/Language.hs
|
||||
+++ b/test/hs/Test/Ganeti/Query/Language.hs
|
||||
@@ -59,6 +59,9 @@ import Ganeti.Query.Language
|
||||
instance Arbitrary (Filter FilterField) where
|
||||
arbitrary = genFilter
|
||||
|
||||
+instance Arbitrary FilterRegex where
|
||||
+ arbitrary = genName >>= mkRegex -- a name should be a good regex
|
||||
+
|
||||
-- | Custom 'Filter' generator (top-level), which enforces a
|
||||
-- (sane) limit on the depth of the generated filters.
|
||||
genFilter :: Gen (Filter FilterField)
|
||||
@@ -97,9 +100,6 @@ $(genArbitrary ''QueryTypeLuxi)
|
||||
|
||||
$(genArbitrary ''ItemType)
|
||||
|
||||
-instance Arbitrary FilterRegex where
|
||||
- arbitrary = genName >>= mkRegex -- a name should be a good regex
|
||||
-
|
||||
$(genArbitrary ''ResultStatus)
|
||||
|
||||
$(genArbitrary ''FieldType)
|
||||
@@ -1,12 +0,0 @@
|
||||
diff --git a/lib/build/sphinx_ext.py b/lib/build/sphinx_ext.py
|
||||
index ca8b8216e..017f52343 100644
|
||||
--- a/lib/build/sphinx_ext.py
|
||||
+++ b/lib/build/sphinx_ext.py
|
||||
@@ -45,7 +45,6 @@ import docutils.parsers.rst
|
||||
from docutils.parsers.rst import Directive
|
||||
|
||||
import sphinx.errors
|
||||
-import sphinx.util.compat
|
||||
import sphinx.roles
|
||||
import sphinx.addnodes
|
||||
|
||||
@@ -1,69 +0,0 @@
|
||||
Handle GHC 9 changes in a backwards compatible manner.
|
||||
|
||||
Taken from upstream:
|
||||
|
||||
https://github.com/ganeti/ganeti/commit/b279fa738fd5b30320584f79f4d2f0e894315aab
|
||||
|
||||
diff --git a/src/Ganeti/THH.hs b/src/Ganeti/THH.hs
|
||||
index 818c11f84..9ab93d5e3 100644
|
||||
--- a/src/Ganeti/THH.hs
|
||||
+++ b/src/Ganeti/THH.hs
|
||||
@@ -884,7 +884,7 @@ genLoadOpCode opdefs fn = do
|
||||
) $ zip mexps opdefs
|
||||
defmatch = Match WildP (NormalB fails) []
|
||||
cst = NoBindS $ CaseE (VarE opid) $ mpats++[defmatch]
|
||||
- body = DoE [st, cst]
|
||||
+ body = mkDoE [st, cst]
|
||||
-- include "OP_ID" to the list of used keys
|
||||
bodyAndOpId <- [| $(return body)
|
||||
<* tell (mkUsedKeys . S.singleton . T.pack $ opidKey) |]
|
||||
@@ -1541,7 +1541,7 @@ loadExcConstructor inname sname fields = do
|
||||
[x] -> BindS (ListP [VarP x])
|
||||
_ -> BindS (TupP (map VarP f_names))
|
||||
cval = appCons name $ map VarE f_names
|
||||
- return $ DoE [binds read_args, NoBindS (AppE (VarE 'return) cval)]
|
||||
+ return $ mkDoE [binds read_args, NoBindS (AppE (VarE 'return) cval)]
|
||||
|
||||
{-| Generates the loadException function.
|
||||
|
||||
diff --git a/src/Ganeti/THH/Compat.hs b/src/Ganeti/THH/Compat.hs
|
||||
index d29e30d18..1f51e49d7 100644
|
||||
--- a/src/Ganeti/THH/Compat.hs
|
||||
+++ b/src/Ganeti/THH/Compat.hs
|
||||
@@ -40,9 +40,11 @@ module Ganeti.THH.Compat
|
||||
, extractDataDConstructors
|
||||
, myNotStrict
|
||||
, nonUnaryTupE
|
||||
+ , mkDoE
|
||||
) where
|
||||
|
||||
import Language.Haskell.TH
|
||||
+import Language.Haskell.TH.Syntax
|
||||
|
||||
-- | Convert Names to DerivClauses
|
||||
--
|
||||
@@ -61,7 +63,11 @@ derivesFromNames names = map ConT names
|
||||
--
|
||||
-- Handle TH 2.11 and 2.12 changes in a transparent manner using the pre-2.11
|
||||
-- API.
|
||||
+#if MIN_VERSION_template_haskell(2,17,0)
|
||||
+gntDataD :: Cxt -> Name -> [TyVarBndr ()] -> [Con] -> [Name] -> Dec
|
||||
+#else
|
||||
gntDataD :: Cxt -> Name -> [TyVarBndr] -> [Con] -> [Name] -> Dec
|
||||
+#endif
|
||||
gntDataD x y z a b =
|
||||
#if MIN_VERSION_template_haskell(2,12,0)
|
||||
DataD x y z Nothing a $ derivesFromNames b
|
||||
@@ -114,3 +120,12 @@ nonUnaryTupE es = TupE $ map Just es
|
||||
#else
|
||||
nonUnaryTupE es = TupE $ es
|
||||
#endif
|
||||
+
|
||||
+-- | DoE is now qualified with an optional ModName
|
||||
+mkDoE :: [Stmt] -> Exp
|
||||
+mkDoE s =
|
||||
+#if MIN_VERSION_template_haskell(2,17,0)
|
||||
+ DoE Nothing s
|
||||
+#else
|
||||
+ DoE s
|
||||
+#endif
|
||||
@@ -1,179 +0,0 @@
|
||||
Fix compatibility with Template Haskell 2.18 and GHC 9.2.
|
||||
|
||||
|
||||
diff --git a/src/Ganeti/BasicTypes.hs b/src/Ganeti/BasicTypes.hs
|
||||
index 10d0426cd..d68bc7d5b 100644
|
||||
--- a/src/Ganeti/BasicTypes.hs
|
||||
+++ b/src/Ganeti/BasicTypes.hs
|
||||
@@ -206,12 +206,12 @@ instance MonadTrans (ResultT a) where
|
||||
instance (MonadIO m, Error a) => MonadIO (ResultT a m) where
|
||||
liftIO = ResultT . liftIO
|
||||
. liftM (either (failError . show) return)
|
||||
- . (try :: IO a -> IO (Either IOError a))
|
||||
+ . (try :: IO α -> IO (Either IOError α))
|
||||
|
||||
instance (MonadBase IO m, Error a) => MonadBase IO (ResultT a m) where
|
||||
liftBase = ResultT . liftBase
|
||||
. liftM (either (failError . show) return)
|
||||
- . (try :: IO a -> IO (Either IOError a))
|
||||
+ . (try :: IO α -> IO (Either IOError α))
|
||||
|
||||
instance (Error a) => MonadTransControl (ResultT a) where
|
||||
#if MIN_VERSION_monad_control(1,0,0)
|
||||
diff --git a/src/Ganeti/Lens.hs b/src/Ganeti/Lens.hs
|
||||
index faa5900ed..747366e6a 100644
|
||||
--- a/src/Ganeti/Lens.hs
|
||||
+++ b/src/Ganeti/Lens.hs
|
||||
@@ -93,14 +93,14 @@ makeCustomLenses' name lst = makeCustomLensesFiltered f name
|
||||
-- Most often the @g@ functor is @(,) r@ and 'traverseOf2' is used to
|
||||
-- traverse an effectful computation that also returns an additional output
|
||||
-- value.
|
||||
-traverseOf2 :: Over (->) (Compose f g) s t a b
|
||||
- -> (a -> f (g b)) -> s -> f (g t)
|
||||
+-- traverseOf2 :: Over (->) (Compose f g) s t a b
|
||||
+-- -> (a -> f (g b)) -> s -> f (g t)
|
||||
traverseOf2 k f = getCompose . traverseOf k (Compose . f)
|
||||
|
||||
-- | Traverses over a composition of a monad and a functor.
|
||||
-- See 'traverseOf2'.
|
||||
-mapMOf2 :: Over (->) (Compose (WrappedMonad m) g) s t a b
|
||||
- -> (a -> m (g b)) -> s -> m (g t)
|
||||
+-- mapMOf2 :: Over (->) (Compose (WrappedMonad m) g) s t a b
|
||||
+-- -> (a -> m (g b)) -> s -> m (g t)
|
||||
mapMOf2 k f = unwrapMonad . traverseOf2 k (WrapMonad . f)
|
||||
|
||||
-- | A helper lens over sets.
|
||||
diff --git a/src/Ganeti/THH.hs b/src/Ganeti/THH.hs
|
||||
index 9ab93d5e3..9a10a9a07 100644
|
||||
--- a/src/Ganeti/THH.hs
|
||||
+++ b/src/Ganeti/THH.hs
|
||||
@@ -996,8 +996,8 @@ buildAccessor fnm fpfx rnm rpfx nm pfx field = do
|
||||
f_body = AppE (VarE fpfx_name) $ VarE x
|
||||
return $ [ SigD pfx_name $ ArrowT `AppT` ConT nm `AppT` ftype
|
||||
, FunD pfx_name
|
||||
- [ Clause [ConP rnm [VarP x]] (NormalB r_body) []
|
||||
- , Clause [ConP fnm [VarP x]] (NormalB f_body) []
|
||||
+ [ Clause [myConP rnm [VarP x]] (NormalB r_body) []
|
||||
+ , Clause [myConP fnm [VarP x]] (NormalB f_body) []
|
||||
]]
|
||||
|
||||
-- | Build lense declartions for a field.
|
||||
@@ -1037,10 +1037,10 @@ buildLens (fnm, fdnm) (rnm, rdnm) nm pfx ar (field, i) = do
|
||||
(ConE cdn)
|
||||
$ zip [0..] vars
|
||||
let setterE = LamE [VarP context, VarP var] $ CaseE (VarE context)
|
||||
- [ Match (ConP fnm [ConP fdnm . set (element i) WildP
|
||||
+ [ Match (myConP fnm [myConP fdnm . set (element i) WildP
|
||||
$ map VarP vars])
|
||||
(body (not isSimple) fnm fdnm) []
|
||||
- , Match (ConP rnm [ConP rdnm . set (element i) WildP
|
||||
+ , Match (myConP rnm [myConP rdnm . set (element i) WildP
|
||||
$ map VarP vars])
|
||||
(body False rnm rdnm) []
|
||||
]
|
||||
@@ -1098,9 +1098,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
|
||||
$ JSON.showJSON $(varE x) |]
|
||||
let rdjson = FunD 'JSON.readJSON [Clause [] (NormalB read_body) []]
|
||||
shjson = FunD 'JSON.showJSON
|
||||
- [ Clause [ConP (mkName real_nm) [VarP x]]
|
||||
+ [ Clause [myConP (mkName real_nm) [VarP x]]
|
||||
(NormalB show_real_body) []
|
||||
- , Clause [ConP (mkName forth_nm) [VarP x]]
|
||||
+ , Clause [myConP (mkName forth_nm) [VarP x]]
|
||||
(NormalB show_forth_body) []
|
||||
]
|
||||
instJSONdecl = gntInstanceD [] (AppT (ConT ''JSON.JSON) (ConT name))
|
||||
@@ -1121,9 +1121,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
|
||||
(fromDictWKeys $(varE xs)) |]
|
||||
todictx_r <- [| toDict $(varE x) |]
|
||||
todictx_f <- [| ("forthcoming", JSON.JSBool True) : toDict $(varE x) |]
|
||||
- let todict = FunD 'toDict [ Clause [ConP (mkName real_nm) [VarP x]]
|
||||
+ let todict = FunD 'toDict [ Clause [myConP (mkName real_nm) [VarP x]]
|
||||
(NormalB todictx_r) []
|
||||
- , Clause [ConP (mkName forth_nm) [VarP x]]
|
||||
+ , Clause [myConP (mkName forth_nm) [VarP x]]
|
||||
(NormalB todictx_f) []
|
||||
]
|
||||
fromdict = FunD 'fromDictWKeys [ Clause [VarP xs]
|
||||
@@ -1136,9 +1136,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
|
||||
let forthPredDecls = [ SigD forthPredName
|
||||
$ ArrowT `AppT` ConT name `AppT` ConT ''Bool
|
||||
, FunD forthPredName
|
||||
- [ Clause [ConP (mkName real_nm) [WildP]]
|
||||
+ [ Clause [myConP (mkName real_nm) [WildP]]
|
||||
(NormalB $ ConE 'False) []
|
||||
- , Clause [ConP (mkName forth_nm) [WildP]]
|
||||
+ , Clause [myConP (mkName forth_nm) [WildP]]
|
||||
(NormalB $ ConE 'True) []
|
||||
]
|
||||
]
|
||||
@@ -1412,9 +1412,9 @@ savePParamField fvar field = do
|
||||
normalexpr <- saveObjectField actualVal field
|
||||
-- we have to construct the block here manually, because we can't
|
||||
-- splice-in-splice
|
||||
- return $ CaseE (VarE fvar) [ Match (ConP 'Nothing [])
|
||||
+ return $ CaseE (VarE fvar) [ Match (myConP 'Nothing [])
|
||||
(NormalB (ConE '[])) []
|
||||
- , Match (ConP 'Just [VarP actualVal])
|
||||
+ , Match (myConP 'Just [VarP actualVal])
|
||||
(NormalB normalexpr) []
|
||||
]
|
||||
|
||||
@@ -1440,9 +1440,9 @@ fillParam sname field_pfx fields = do
|
||||
-- due to apparent bugs in some older GHC versions, we need to add these
|
||||
-- prefixes to avoid "binding shadows ..." errors
|
||||
fbinds <- mapM (newName . ("f_" ++) . nameBase) fnames
|
||||
- let fConP = ConP name_f (map VarP fbinds)
|
||||
+ let fConP = myConP name_f (map VarP fbinds)
|
||||
pbinds <- mapM (newName . ("p_" ++) . nameBase) pnames
|
||||
- let pConP = ConP name_p (map VarP pbinds)
|
||||
+ let pConP = myConP name_p (map VarP pbinds)
|
||||
-- PartialParams instance --------
|
||||
-- fillParams
|
||||
let fromMaybeExp fn pn = AppE (AppE (VarE 'fromMaybe) (VarE fn)) (VarE pn)
|
||||
@@ -1462,7 +1462,7 @@ fillParam sname field_pfx fields = do
|
||||
memptyClause = Clause [] (NormalB memptyExp) []
|
||||
-- mappend
|
||||
pbinds2 <- mapM (newName . ("p2_" ++) . nameBase) pnames
|
||||
- let pConP2 = ConP name_p (map VarP pbinds2)
|
||||
+ let pConP2 = myConP name_p (map VarP pbinds2)
|
||||
-- note the reversal of 'l' and 'r' in the call to <|>
|
||||
-- as we want the result to be the rightmost value
|
||||
let altExp = zipWith (\l r -> AppE (AppE (VarE '(<|>)) (VarE r)) (VarE l))
|
||||
@@ -1575,9 +1575,9 @@ genLoadExc tname sname opdefs = do
|
||||
opdefs
|
||||
-- the first function clause; we can't use [| |] due to TH
|
||||
-- limitations, so we have to build the AST by hand
|
||||
- let clause1 = Clause [ConP 'JSON.JSArray
|
||||
- [ListP [ConP 'JSON.JSString [VarP exc_name],
|
||||
- VarP exc_args]]]
|
||||
+ let clause1 = Clause [myConP 'JSON.JSArray
|
||||
+ [ListP [myConP 'JSON.JSString [VarP exc_name],
|
||||
+ VarP exc_args]]]
|
||||
(NormalB (CaseE (AppE (VarE 'JSON.fromJSString)
|
||||
(VarE exc_name))
|
||||
(str_matches ++ [defmatch]))) []
|
||||
diff --git a/src/Ganeti/THH/Compat.hs b/src/Ganeti/THH/Compat.hs
|
||||
index 1f51e49d7..9b07c47ef 100644
|
||||
--- a/src/Ganeti/THH/Compat.hs
|
||||
+++ b/src/Ganeti/THH/Compat.hs
|
||||
@@ -41,6 +41,7 @@ module Ganeti.THH.Compat
|
||||
, myNotStrict
|
||||
, nonUnaryTupE
|
||||
, mkDoE
|
||||
+ , myConP
|
||||
) where
|
||||
|
||||
import Language.Haskell.TH
|
||||
@@ -129,3 +130,11 @@ mkDoE s =
|
||||
#else
|
||||
DoE s
|
||||
#endif
|
||||
+
|
||||
+-- | ConP is now qualified with an optional [Type].
|
||||
+myConP :: Name -> [Pat] -> Pat
|
||||
+myConP n patterns = ConP n
|
||||
+#if MIN_VERSION_template_haskell(2,18,0)
|
||||
+ []
|
||||
+#endif
|
||||
+ patterns
|
||||
@@ -1,211 +0,0 @@
|
||||
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,
|
||||
@@ -1,26 +0,0 @@
|
||||
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,85 +214,6 @@ 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
|
||||
|
||||
+33
-32
@@ -31,6 +31,7 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -1611,41 +1612,41 @@ information for every pixel as the input.")
|
||||
"0f242mix20rgsqz1llibhsz4r2pbvx6k32rmky0zjvnbaqaw1dwm"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#: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)))
|
||||
(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))
|
||||
(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+)))
|
||||
|
||||
|
||||
@@ -39,6 +39,42 @@
|
||||
#: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")
|
||||
|
||||
@@ -237,7 +237,7 @@ it.")
|
||||
(define-public trealla
|
||||
(package
|
||||
(name "trealla")
|
||||
(version "2.94.12")
|
||||
(version "2.97.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -246,7 +246,7 @@ it.")
|
||||
(url "https://github.com/trealla-prolog/trealla")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "0mpzpc69agcnp2dnay08z7xjx0zq2b77ddd2kds1w6qlh2fc36s9"))
|
||||
(base32 "1342xcpjmryn0l3v8wmg7w6pjvsk42c84cr9xbah36dwhj8s354z"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
|
||||
@@ -180,6 +180,7 @@
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -2600,6 +2601,74 @@ 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")
|
||||
@@ -40983,6 +41052,36 @@ 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")
|
||||
|
||||
@@ -768,6 +768,9 @@ def contents() -> str:
|
||||
" test_threading"
|
||||
" test_asyncio"
|
||||
" test_shutdown"
|
||||
,@(if (target-ppc32?)
|
||||
'(" test_ssl")
|
||||
'())
|
||||
,@(if (system-hurd?)
|
||||
'(" test_posix" ;multiple errors
|
||||
" test_time"
|
||||
|
||||
@@ -101,18 +101,3 @@ 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 '())))
|
||||
|
||||
+64
-49
@@ -1079,14 +1079,14 @@ highlighting tool to ease code review from your terminal.")
|
||||
(define-public difftastic
|
||||
(package
|
||||
(name "difftastic")
|
||||
(version "0.68.0")
|
||||
(version "0.69.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "difftastic" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "012h76wx5jv6czc9j4awfan7vhrc6g5fdgnxrjmzg5q27wn99hn6"))))
|
||||
(base32 "1wa2vhp26vbim8qp3rlahxmf65lzgacc5p6czc4hqsl3gglg0fs5"))))
|
||||
(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.8.0")
|
||||
(version "0.9.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
|
||||
"007sf2b605jkjk4qyxar1bq7fh71yvv9ixsxfqrs3hzschyj3m2g"))
|
||||
"008cqcc4kjandfi6pqrnr689xb11d6fdhcb48kbv0227v3f5gvn3"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@@ -2726,59 +2726,51 @@ choice. Supported launchers are: dmenu, fuzzel, rofi, walker and custom.")
|
||||
(define-public py-spy
|
||||
(package
|
||||
(name "py-spy")
|
||||
(version "0.4.0")
|
||||
(version "0.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "py-spy" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0fvdmrqp4qand1zb9cwks8hpkysdqajrdh9y7ks15c78985k1x64"))))
|
||||
(base32 "15vccm4q0lqgpq0q9vrzriz58dcrxj2bqf9ac9s4n2bvdxy5f0va"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
#:modules
|
||||
'((guix build cargo-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 match))
|
||||
#:cargo-test-flags
|
||||
;; python-numpy isn't in the build environment
|
||||
''("--" "--skip=test_local_vars")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-shell-completions
|
||||
(lambda* (#:key native-inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(share (string-append out "/share"))
|
||||
(bash-completions-dir
|
||||
(string-append out "/share/bash-completion/completions"))
|
||||
(zsh-completions-dir
|
||||
(string-append share "/zsh/site-functions"))
|
||||
(fish-completions-dir
|
||||
(string-append share "/fish/vendor_completions.d"))
|
||||
(elvish-completions-dir
|
||||
(string-append share "/elvish/lib"))
|
||||
(py-spy (if #$(%current-target-system)
|
||||
(search-input-file native-inputs "/bin/py-spy")
|
||||
(string-append out "/bin/py-spy"))))
|
||||
(for-each mkdir-p
|
||||
(list bash-completions-dir
|
||||
zsh-completions-dir
|
||||
fish-completions-dir
|
||||
elvish-completions-dir))
|
||||
(with-output-to-file
|
||||
(string-append bash-completions-dir "/py-spy")
|
||||
(lambda _ (invoke py-spy "completions" "bash")))
|
||||
(with-output-to-file
|
||||
(string-append zsh-completions-dir "/_py-spy")
|
||||
(lambda _ (invoke py-spy "completions" "zsh")))
|
||||
(with-output-to-file
|
||||
(string-append fish-completions-dir "/py-spy.fish")
|
||||
(lambda _ (invoke py-spy "completions" "fish")))
|
||||
(with-output-to-file
|
||||
(string-append elvish-completions-dir "/py-spy")
|
||||
(lambda _ (invoke py-spy "completions" "elvish")))))))))
|
||||
(lambda* (#:key native-inputs #:allow-other-keys)
|
||||
(for-each
|
||||
(match-lambda
|
||||
((shell . path)
|
||||
(mkdir-p (in-vicinity #$output (dirname path)))
|
||||
(let ((binary
|
||||
(if #$(%current-target-system)
|
||||
(search-input-file native-inputs "bin/py-spy")
|
||||
(in-vicinity #$output "bin/py-spy"))))
|
||||
(with-output-to-file (in-vicinity #$output path)
|
||||
(lambda _
|
||||
(invoke binary "completions" shell))))))
|
||||
'(("bash" . "share/bash-completion/completions/py-spy")
|
||||
("elvish" . "share/elvish/lib/py-spy")
|
||||
("fish" . "share/fish/vendor_completions.d/py-spy.fish")
|
||||
("zsh" . "share/zsh/site-functions/_py-spy"))))))))
|
||||
(native-inputs
|
||||
(append
|
||||
(if (%current-target-system)
|
||||
(list this-package)
|
||||
'())
|
||||
(list python-minimal-wrapper)))
|
||||
(inputs (cons libunwind (cargo-inputs 'py-spy)))
|
||||
(inputs (cargo-inputs 'py-spy))
|
||||
(home-page "https://github.com/benfred/py-spy")
|
||||
(synopsis "Sampling profiler for Python programs")
|
||||
(description
|
||||
@@ -3047,24 +3039,24 @@ browsers.")
|
||||
(define-public rust-cargo-edit
|
||||
(package
|
||||
(name "rust-cargo-edit")
|
||||
(version "0.13.2")
|
||||
(version "0.13.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "cargo-edit" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1y3pa7qdq2r13ya9qfiw0lb8xm0qbs6q64pj548q6c0hdcxw2mdm"))))
|
||||
"0m0bbrkk8lpliwji19cd7jxzgv7i7fcdimbv52icqyr9nl0xlnba"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
`(#:install-source? #f
|
||||
;; Not all files included.
|
||||
#:cargo-test-flags '("--" "--skip=::case")))
|
||||
(list #:install-source? #f
|
||||
;; Not all files included.
|
||||
#:cargo-test-flags ''("--" "--skip=::case")))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
(cons* curl
|
||||
libgit2-1.8
|
||||
libgit2-1.9
|
||||
libssh2
|
||||
openssl
|
||||
zlib
|
||||
@@ -3115,18 +3107,41 @@ rebase.")
|
||||
(define-public pastel
|
||||
(package
|
||||
(name "pastel")
|
||||
(version "0.10.0")
|
||||
(version "0.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "pastel" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1mwy4nx3jn74sr1q8ap98faja5wp7hz51yqga8l050xz645kb8wj"))))
|
||||
(base32 "0rcvas6xcjdl9whhjzbvj3pmr7q86masn5vnvc2bmn1c3788mh30"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f))
|
||||
#:install-source? #f
|
||||
#:imported-modules (append %copy-build-system-modules
|
||||
%cargo-build-system-modules)
|
||||
#:modules '((guix build cargo-build-system)
|
||||
((guix build copy-build-system) #:prefix copy:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'pre-build
|
||||
(lambda _
|
||||
(setenv "SHELL_COMPLETIONS_DIR" "target")))
|
||||
(add-after 'install 'install-extras
|
||||
(lambda args
|
||||
(apply (assoc-ref copy:%standard-phases 'install)
|
||||
#:install-plan
|
||||
'(("target/pastel.bash"
|
||||
"share/bash-completion/completions/pastel")
|
||||
("target/pastel.fish"
|
||||
"share/fish/vendor_completions.d/")
|
||||
("target/_pastel"
|
||||
"share/zsh/site-functions/")
|
||||
("target/" "share/man/man1/"
|
||||
#:include-regexp ("\\.1$")))
|
||||
args))))))
|
||||
(inputs (cargo-inputs 'pastel))
|
||||
(home-page "https://github.com/sharkdp/pastel")
|
||||
(synopsis
|
||||
@@ -3360,7 +3375,7 @@ command.")
|
||||
(define-public wasm-bindgen-cli
|
||||
(package
|
||||
(name "wasm-bindgen-cli")
|
||||
(version "0.2.118")
|
||||
(version "0.2.120")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3369,7 +3384,7 @@ command.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "02yy57pa4p53vrhpgc8xf737dnqiifnnnjinh49yq1345kd3287j"))
|
||||
(base32 "0404jgzfcbmjvr1zl9jgw49nqs1s182cbvdzwh92i76qd2cpg166"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
||||
+5176
-3670
File diff suppressed because it is too large
Load Diff
@@ -674,14 +674,14 @@ document and bibtex retrieval.")
|
||||
(define-public ugrep
|
||||
(package
|
||||
(name "ugrep")
|
||||
(version "7.8.0")
|
||||
(version "7.8.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Genivia/ugrep")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "0968cws0bvfgip7yh9vkhxfmr70dl1jr681yzgzhpn0xdv6iqg94"))
|
||||
(base32 "04vdvyf81881zqfvsyd4zwbgj9ian6grz55lcj4vbvmqk86anf90"))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
|
||||
@@ -303,10 +303,11 @@ This Guix package is built to use the nettle cryptographic library.")
|
||||
|
||||
;;
|
||||
|
||||
;; This package follows the version of the sequoia-openpgp crate.
|
||||
(define-public sequoia
|
||||
(package
|
||||
(name "sequoia")
|
||||
(version "2.2.0")
|
||||
(version "2.3.0")
|
||||
(source #f)
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
|
||||
@@ -133,7 +133,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
|
||||
(define-public fish
|
||||
(package
|
||||
(name "fish")
|
||||
(version "4.6.0")
|
||||
(version "4.7.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 "1ak12wpjllckv566k9jjy59si25whsib3j8ip8yqmqm06gvnb4gw"))
|
||||
(base32 "1nx9m8kis1v4w27mdzzpj9l9mpnz0w7n1v7kaajd9lv5ny63njn5"))
|
||||
;; TODO: Unbundle corrosion.
|
||||
(patches (search-patches "corrosion-honor-CARGO_BUILD_TARGET.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
@@ -218,9 +218,11 @@ 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")
|
||||
;; This one needs to chdir successfully.
|
||||
;; These ones need 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
|
||||
@@ -236,6 +238,8 @@ 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.
|
||||
|
||||
+14
-2
@@ -48,6 +48,7 @@
|
||||
#: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)
|
||||
@@ -272,13 +273,24 @@ 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"))))))))
|
||||
(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)))))))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
@@ -297,7 +309,7 @@ efficiency through the use of a compact vector representation of n-grams.")
|
||||
pipewire
|
||||
pulseaudio
|
||||
python
|
||||
python-xdg-base-dirs))
|
||||
python-pyxdg))
|
||||
(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,
|
||||
|
||||
@@ -118,13 +118,13 @@ is in the public domain.")
|
||||
(define-public sqlite-next
|
||||
(package
|
||||
(inherit sqlite)
|
||||
(version "3.51.0")
|
||||
(version "3.53.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (sqlite-uri version 2025))
|
||||
(uri (sqlite-uri version 2026))
|
||||
(sha256
|
||||
(base32
|
||||
"19bc2inw7f9fn0y6j3b57w4mk6bzi2q8hp5yn6qyd8kav7ynvqj2"))))
|
||||
"0ninfc6kh0idcslsdlcv7l6261pswxjsdfp0cnmcxqig34w9n7l5"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:tests? _ #f)
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#: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)
|
||||
@@ -65,45 +66,71 @@
|
||||
(define-public plover
|
||||
(package
|
||||
(name "plover")
|
||||
(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"))))
|
||||
(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"))))
|
||||
(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
|
||||
(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"))))
|
||||
;; 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")))
|
||||
;; 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
|
||||
(,(search-input-directory inputs "/lib/qt5/plugins/")))
|
||||
(,(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/")))
|
||||
`("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* (#: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 _
|
||||
(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 (port)
|
||||
(display
|
||||
(string-append
|
||||
@@ -112,26 +139,37 @@
|
||||
port)))))))))
|
||||
(native-inputs
|
||||
(list python-babel
|
||||
python-evdev
|
||||
python-mock
|
||||
python-pytest
|
||||
python-pytest-qt
|
||||
python-pytest-xvfb
|
||||
python-wheel))
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
dbus
|
||||
python-appdirs
|
||||
qtbase
|
||||
qtsvg
|
||||
qtwayland
|
||||
xhost))
|
||||
(propagated-inputs
|
||||
(list python-appdirs
|
||||
python-dbus-1.2
|
||||
python-evdev
|
||||
python-hidapi
|
||||
python-packaging
|
||||
python-pkginfo
|
||||
python-plover-stroke
|
||||
python-pyqt
|
||||
python-psutil
|
||||
python-pygments
|
||||
python-pyserial
|
||||
python-pyside-6
|
||||
python-readme-renderer
|
||||
python-requests-cache
|
||||
python-requests-futures
|
||||
python-rtf-tokenize
|
||||
python-wcwidth
|
||||
python-xlib
|
||||
qtsvg-5
|
||||
xhost))
|
||||
python-xkbcommon
|
||||
python-xlib))
|
||||
(home-page "https://www.openstenoproject.org/plover/")
|
||||
(synopsis "Stenography engine")
|
||||
(description
|
||||
@@ -139,4 +177,3 @@
|
||||
allows anyone to use stenography to write on their computer, up to
|
||||
speeds of 200WPM and beyond.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user