mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-07 16:04:07 +02:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9350cb2ce1 | |||
| 1553617278 | |||
| 896eee9c71 | |||
| 92955cac60 | |||
| eb1eb07475 | |||
| 78c535cf11 | |||
| 15c535c78e |
@@ -16,8 +16,6 @@
|
||||
( ;; primary: "D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F"
|
||||
"01FD 85F4 1A7B 7F82 0583 06A5 935E BE07 36DC 857E"
|
||||
(name "avp"))
|
||||
("5D54 CF25 57B2 38E8 8DC1 80A2 2D22 3241 0AB7 4043"
|
||||
(name "baleine"))
|
||||
( ;; primary: "34FF 38BC D151 25A6 E340 A0B5 3453 2F9F AFCA 8B8E"
|
||||
"A3A4 B419 0074 087C A7DE 5698 BC45 CA67 E2F8 D007"
|
||||
(name "bavier"))
|
||||
|
||||
@@ -179,7 +179,6 @@ guix/scripts/import/elpa\.scm @guix/emacs
|
||||
tests/import/elpa\.scm @guix/emacs
|
||||
|
||||
gnu/packages/bootloaders\.scm @guix/embedded
|
||||
gnu/packages/coreboot\.scm @guix/embedded
|
||||
gnu/packages/firmware\.scm @guix/embedded
|
||||
|
||||
gnu/packages/emulators\.scm @guix/games
|
||||
@@ -264,7 +263,6 @@ gnu/installer(\.scm$|/) @guix/installer
|
||||
gnu/packages/clojure\.scm @guix/java
|
||||
gnu/packages/java(-.+|)\.scm$ @guix/java
|
||||
gnu/packages/maven(-.+|)\.scm$ @guix/java
|
||||
gnu/packages/netbeans\.scm @guix/java
|
||||
guix/build/ant-build-system\.scm @guix/java
|
||||
guix/build/clojure-build-system\.scm @guix/java
|
||||
guix/build/clojure-utils\.scm @guix/java
|
||||
@@ -275,7 +273,6 @@ guix/build-system/ant\.scm @guix/java
|
||||
guix/build-system/clojure\.scm @guix/java
|
||||
guix/build-system/maven\.scm @guix/java
|
||||
|
||||
gnu/packages/javascript\.scm @guix/javascript
|
||||
gnu/packages/node-xyz\.scm @guix/javascript
|
||||
gnu/packages/node\.scm @guix/javascript
|
||||
guix/build-system/node\.scm @guix/javascript
|
||||
@@ -321,7 +318,6 @@ gnu/packages/tor-browsers\.scm @guix/mozilla
|
||||
|
||||
gnu/packages/ocaml\.scm @guix/ocaml
|
||||
gnu/packages/coq\.scm @guix/ocaml
|
||||
gnu/packages/rocq\.scm @guix/ocaml
|
||||
guix/build/ocaml-build-system\.scm @guix/ocaml
|
||||
guix/build/dune-build-system\.scm @guix/ocaml
|
||||
guix/build-system/ocaml\.scm @guix/ocaml
|
||||
|
||||
@@ -457,8 +457,6 @@ AUX_FILES = \
|
||||
gnu/packages/aux-files/findclass.php \
|
||||
gnu/packages/aux-files/guix.vim \
|
||||
gnu/packages/aux-files/guix-nvim.vim \
|
||||
gnu/packages/aux-files/linux-libre/7.0-arm64.conf \
|
||||
gnu/packages/aux-files/linux-libre/7.0-x86_64.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.19-arm64.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.19-i686.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.19-x86_64.conf \
|
||||
|
||||
+23
-41
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019-2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
|
||||
@@ -324,31 +324,17 @@ actual file name."
|
||||
((('span ('@ ('class "category")) ;raw Texinfo 6.8
|
||||
(? string-or-entity?) ...) rest ...)
|
||||
#t)
|
||||
((('span ;Texinfo 6, post-processed
|
||||
('@ ('class "symbol-definition-category"))
|
||||
(? string-or-entity?) ...) rest ...)
|
||||
#t)
|
||||
((('span ;Texinfo 7
|
||||
('@ ('class "category-def")) _ ...)
|
||||
('span ('strong ('@ ('class "def-name")) _ ...)
|
||||
_ ...)
|
||||
rest ...)
|
||||
((('span ('@ ('class "symbol-definition-category"))
|
||||
(? string-or-entity?) ...) rest ...)
|
||||
#t)
|
||||
(x
|
||||
#f))))
|
||||
|
||||
(define (definition-class? class)
|
||||
;; Return true for "deffn def-line", "deftp def-line", etc.
|
||||
(string-suffix? " def-line" class))
|
||||
|
||||
(let ((shtml (call-with-input-file file html->shtml)))
|
||||
(let loop ((shtml shtml)
|
||||
(anchors anchors))
|
||||
(match shtml
|
||||
((or ('dt ('@ ('id id) _ ...) rest ...) ;Texinfo 6
|
||||
('dt ('@ ('class (? definition-class?)) ;Texinfo 7
|
||||
('id id))
|
||||
rest ...))
|
||||
(('dt ('@ ('id id) _ ...) rest ...)
|
||||
(if (and (string-prefix? "index-" id)
|
||||
(worthy-entry? rest))
|
||||
(alist-cons (anchor-id->key id)
|
||||
@@ -519,16 +505,10 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
(loop rest (cons str strings)))
|
||||
((('*ENTITY* "additional" entity) . rest)
|
||||
(loop rest (cons (entity->string entity) strings)))
|
||||
((('*ENTITY* "additional-char" entity) . rest)
|
||||
(loop rest (cons (string
|
||||
(integer->char (string->number entity)))
|
||||
strings)))
|
||||
((('span _ lst ...) . rest) ;for <span class="roman">
|
||||
(loop (append lst rest) strings))
|
||||
((('var ('@ _) name) . rest) ;for @var{name} within @lisp
|
||||
((('var name) . rest) ;for @var{name} within @lisp
|
||||
(loop rest (cons name strings))) ;XXX: losing formatting
|
||||
((('var name) . rest) ;likewise (Texinfo 6)
|
||||
(loop rest (cons name strings)))
|
||||
(something
|
||||
(pk 'unsupported-code-snippet something)
|
||||
(primitive-exit 1)))))
|
||||
@@ -557,10 +537,7 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
(link (@ (rel "stylesheet")
|
||||
(type "text/css")
|
||||
(href #$syntax-css-url)))))
|
||||
((or ('pre ('@ ('class "lisp")) ;Texinfo 6
|
||||
code-snippet ...)
|
||||
('pre ('@ ('class "lisp-preformatted"))
|
||||
code-snippet ...))
|
||||
(('pre ('@ ('class "lisp")) code-snippet ...)
|
||||
`(pre (@ (class "lisp"))
|
||||
,@(highlights->sxml*
|
||||
(pair-open/close
|
||||
@@ -568,16 +545,14 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
(concatenate-snippets code-snippet)))
|
||||
anchors)))
|
||||
|
||||
;; For Texinfo 6: Replace the ugly <strong> used for @deffn
|
||||
;; etc., which translate to <dt>, with more stylable
|
||||
;; markup. No such post-processing is needed for @deffn
|
||||
;; with Texinfo 7.
|
||||
;; Replace the ugly <strong> used for @deffn etc., which
|
||||
;; translate to <dt>, with more stylable markup.
|
||||
(('dt ('@ ('id id)) ;raw Texinfo 6.8
|
||||
('span ('@ ('class "category")) category ...)
|
||||
('span ('strong thing)
|
||||
anchor))
|
||||
(highlight-definition id category thing '()))
|
||||
(('dt ('@ ('id id)) ;ditto
|
||||
(('dt (@ ('id id))
|
||||
('span ('@ ('class "category")) category ...)
|
||||
('span ('strong thing)
|
||||
(? space?) ('em args ...)
|
||||
@@ -833,9 +808,16 @@ in SOURCE."
|
||||
(match sxml
|
||||
(('*TOP* decl body ...)
|
||||
`(*TOP* ,decl ,@(map loop body)))
|
||||
((or ('body ('@ _) elements ...)
|
||||
('body elements ...))
|
||||
`(body ,(navigation-bar
|
||||
(('head elements ...)
|
||||
;; Add reference to our own manual CSS, which provides
|
||||
;; support for the language menu.
|
||||
`(head ,@elements
|
||||
(link (@ (rel "stylesheet")
|
||||
(type "text/css")
|
||||
(href #$manual-css-url)))))
|
||||
(('body ('@ attributes ...) elements ...)
|
||||
`(body (@ ,@attributes)
|
||||
,(navigation-bar
|
||||
;; TODO: Add "Contribute" menu, to report
|
||||
;; errors, etc.
|
||||
(list (menu-dropdown
|
||||
@@ -970,12 +952,12 @@ makeinfo OPTIONS."
|
||||
(mkdir-p (string-append #$output "/"
|
||||
(normalize language)))
|
||||
(setenv "LANGUAGE" language)
|
||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
||||
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||
"-o" (string-append #$output "/"
|
||||
(normalize language)
|
||||
"/html_node")
|
||||
opts)
|
||||
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
|
||||
(apply invoke #$(file-append texinfo "/bin/makeinfo")
|
||||
"--no-split"
|
||||
"-o"
|
||||
(string-append #$output "/"
|
||||
@@ -1427,7 +1409,7 @@ commit date (an integer)."
|
||||
(string-append #+tar "/bin:"
|
||||
#+xz "/bin:"
|
||||
#+zstd "/bin:"
|
||||
#+texinfo-7 "/bin"))
|
||||
#+texinfo "/bin"))
|
||||
(invoke "tar" "xf" #$(package-source guile))
|
||||
(mkdir-p (string-append #$output "/en/html_node"))
|
||||
|
||||
@@ -1446,7 +1428,7 @@ commit date (an integer)."
|
||||
(string-append #$output "/en/html_node")))))))))
|
||||
|
||||
(define %guile-manual-base-url
|
||||
"https://doc.guix.gnu.org/guile/latest/en")
|
||||
"https://www.gnu.org/software/guile/manual")
|
||||
|
||||
(define (for-all-languages index)
|
||||
(map (lambda (language)
|
||||
|
||||
@@ -1667,9 +1667,6 @@ can be turned into a version string via @code{git-version}, for example
|
||||
@code{rust-pipewire-0.8.0.fd3d8f7} and @code{rust-pubgrub-0.3.0.b70cf70}.
|
||||
@end table
|
||||
|
||||
When contributing Rust packages, we should have all modifications to these
|
||||
two modules, in the same commit as the package we are contributing.
|
||||
|
||||
To avoid merge conflicts with changes from multiple branches, these two modules
|
||||
are maintained by the Rust team (@pxref{Teams}).
|
||||
|
||||
@@ -1699,68 +1696,6 @@ tree.
|
||||
@xref{Packaging Rust Crates,,, guix-cookbook, GNU Guix Cookbook}, for
|
||||
packaging workflow.
|
||||
|
||||
@subsubsection Commit messages
|
||||
|
||||
The commit message must have a general brief mention to entry changes
|
||||
in @code{(gnu packages rust-crates)}. For changes in @code{(gnu packages
|
||||
rust-sources)}, the commit message must explicitly mention all changes to the
|
||||
packages.
|
||||
|
||||
Here are some examples for different situations:
|
||||
|
||||
@itemize
|
||||
|
||||
@item
|
||||
Adding a new Rust package:
|
||||
|
||||
@example
|
||||
gnu: Add catppuccin-whiskers.
|
||||
|
||||
* gnu/packages/rust-apps.scm (catppuccin-whiskers): New variable.
|
||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)
|
||||
[catppuccin-whiskers]: New entry.
|
||||
@end example
|
||||
|
||||
@item
|
||||
Updating a simple package:
|
||||
|
||||
@example
|
||||
gnu: watchexec: Update to 2.3.2.
|
||||
|
||||
* gnu/packages/rust-apps.scm (watchexec): Update to 2.3.2.
|
||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[watchexec]:
|
||||
Update entry.
|
||||
@end example
|
||||
|
||||
@item
|
||||
Updating a package with sources:
|
||||
|
||||
@example
|
||||
gnu: typst: Update to 0.14.0.
|
||||
|
||||
* gnu/packages/rust-apps.scm (typst): Update to 0.14.0.
|
||||
[arguments]<#:rust>: Use rust-1.88.
|
||||
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[typst]: Update
|
||||
entry.
|
||||
[rust-syntect-5]: Rename to rust-syntect-5.2.
|
||||
[rust-syntect-5.3]: New entry.
|
||||
* gnu/packages/rust-sources.scm (rust-hypher-0.1): Update to 0.1.6.
|
||||
(rust-syntect-5): Rename to rust-syntect-5.2.
|
||||
[inputs]: Rename cargo-inputs rust-syntect-5 to rust-syntect-5.2.
|
||||
(rust-syntect-5.3): New variable.
|
||||
@end example
|
||||
|
||||
@end itemize
|
||||
|
||||
@subsubsection Resolving merge conflicts in Pull Requests
|
||||
|
||||
For Rust crates, the recommended way to solve merge conflicts is to drop all
|
||||
changes to @code{gnu/packages/rust-crates.scm}, rebase onto the desired branch
|
||||
and run the lockfile importer again, manually adding back all relevant snippets
|
||||
(if any).
|
||||
|
||||
@xref{Common Workflow for Resolving Merge Conflicts on Existing Pull Requests,,, guix-cookbook, GNU Guix Cookbook} for
|
||||
a suggested workflow on resolving merge conflicts.
|
||||
|
||||
@node Elm Packages
|
||||
@subsection Elm Packages
|
||||
@@ -2715,7 +2650,6 @@ applications settings page}, granting read/write access to the
|
||||
|
||||
@cindex decision making
|
||||
@cindex consensus seeking
|
||||
Every contribution to the project involves a form of decision making.
|
||||
It is expected from all contributors, and even more so from committers,
|
||||
to help build consensus and make decisions based on consensus. By using
|
||||
consensus, we are committed to finding solutions that everyone can live
|
||||
@@ -2730,26 +2664,6 @@ resolve the deadlock. To learn what consensus decision making means and
|
||||
understand its finer details, you are encouraged to read
|
||||
@url{https://www.seedsforchange.org.uk/consensus}.
|
||||
|
||||
Day-to-day decision making, for instance discussions about pull requests
|
||||
(@pxref{Reviewing the Work of Others}), happens informally among
|
||||
interested parties such as contributors and members of the relevant
|
||||
teams (@pxref{Teams}).
|
||||
|
||||
@cindex GCD, Guix Consensus Documents
|
||||
@cindex Guix Consensus Documents (GCD)
|
||||
Decisions that are expected to have an impact on most contributors
|
||||
and/or on the broader user community---e.g., changes to project-wide
|
||||
policies, to core functionality, and so on---are made following the
|
||||
@acronym{GCD, Guix Consensus Document} process. The process provides a
|
||||
framework to formalize proposals and draw attention to them, to leave
|
||||
time for interested parties to discuss them, and to collectively accept
|
||||
or withdraw them based on input from participating team members. It is
|
||||
defined in
|
||||
@uref{https://consensus.guix.gnu.org/gcd/001-gcd-process.html,
|
||||
GCD@tie{}001}. Past GCDs can be seen at
|
||||
@uref{https://consensus.guix.gnu.org}, and discussions take place at
|
||||
@uref{https://codeberg.org/guix/guix-consensus-documents}.
|
||||
|
||||
@node Commit Access
|
||||
@section Commit Access
|
||||
|
||||
|
||||
+18
-356
@@ -146,8 +146,6 @@ Packaging Rust Crates
|
||||
* Common Workflow for Rust Packaging::
|
||||
* Cargo Workspaces and Development Snapshots::
|
||||
* Using Rust Libraries in Other Build Systems::
|
||||
* Common Workflow for Updating Existing Rust Packages::
|
||||
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
|
||||
|
||||
System Configuration
|
||||
|
||||
@@ -646,11 +644,9 @@ This field contains a description of the source code origin. The
|
||||
|
||||
@enumerate
|
||||
@item The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
|
||||
exist, such as @code{git-fetch} for Git repositories. @xref{origin
|
||||
Reference,,, guix, GNU Guix Reference Manual}, for more info on the
|
||||
available download methods.
|
||||
exist, such as @code{git-fetch} for Git repositories.
|
||||
@item The URI, which is typically some @code{https://} location for @code{url-fetch}. Here
|
||||
the special @code{mirror://gnu} refers to a set of well known locations, all of
|
||||
the special `mirror://gnu` refers to a set of well known locations, all of
|
||||
which can be used by Guix to fetch the source, should some of them fail.
|
||||
@item The @code{sha256} checksum of the requested file. This is essential to ensure
|
||||
the source is not corrupted. Note that Guix works with base32 strings,
|
||||
@@ -1118,8 +1114,7 @@ Let's discuss those fields in depth.
|
||||
@subsubsection @code{git-fetch} method
|
||||
|
||||
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
|
||||
a Git repository and a commit (@pxref{origin Reference,,, guix, GNU Guix
|
||||
Reference Manual}). The commit can be any Git reference such as
|
||||
a Git repository and a commit. The commit can be any Git reference such as
|
||||
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
|
||||
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
|
||||
"v" version))}.
|
||||
@@ -1165,7 +1160,7 @@ Snippets might need additional Guile modules which can be imported from the
|
||||
|
||||
There are 3 different input types. In short:
|
||||
|
||||
@table @code
|
||||
@table @asis
|
||||
@item native-inputs
|
||||
Required for building but not runtime -- installing a package
|
||||
through a substitute won't install these inputs.
|
||||
@@ -1233,14 +1228,9 @@ It's advised to separate outputs only when you've shown it's worth it: if the
|
||||
output size is significant (compare with @code{guix size}) or in case the package is
|
||||
modular.
|
||||
|
||||
@xref{Packages with Multiple Outputs,,, guix, GNU Guix Reference
|
||||
Manual}, for more info.
|
||||
|
||||
@subsubsection Build system arguments
|
||||
|
||||
The @code{arguments} is a keyword-value list used to configure the build
|
||||
process; these arguments are passed to the @dfn{build system}
|
||||
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
|
||||
The @code{arguments} is a keyword-value list used to configure the build process.
|
||||
|
||||
The simplest argument @code{#:tests?} can be used to disable the test suite when
|
||||
building the package. This is mostly useful when the package does not feature
|
||||
@@ -1256,7 +1246,7 @@ following flags
|
||||
"CC=gcc")
|
||||
@end lisp
|
||||
|
||||
translate into:
|
||||
translate into
|
||||
|
||||
@example
|
||||
$ make CC=gcc prefix=/gnu/store/...-<out>
|
||||
@@ -1276,9 +1266,7 @@ Similarly, it's possible to set the configure flags:
|
||||
The @code{%build-inputs} variable is also generated in scope. It's an association
|
||||
table that maps the input names to their store directories.
|
||||
|
||||
The @code{phases} keyword lists the sequential steps of the build
|
||||
system. @xref{Build Phases,,, guix, GNU Guix Reference Manual}, for
|
||||
details; in a nutshell,
|
||||
The @code{phases} keyword lists the sequential steps of the build system. Typically
|
||||
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
|
||||
more about those phases, you need to work out the appropriate build system
|
||||
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
|
||||
@@ -1393,12 +1381,10 @@ Its return value is ignored.
|
||||
|
||||
@subsubsection Code staging
|
||||
|
||||
The astute reader may have noticed the hash-tilde and hash-dollar syntax in the
|
||||
The astute reader may have noticed the quasi-quote and comma syntax in the
|
||||
argument field. Indeed, the build code in the package declaration should not be
|
||||
evaluated on the client side, but only when passed to the Guix daemon. This
|
||||
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
|
||||
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for info on the
|
||||
this mechanism, which is called @dfn{g-expressions}.
|
||||
|
||||
@subsubsection Utility functions
|
||||
|
||||
@@ -1407,7 +1393,7 @@ equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.)@: com
|
||||
regular ``Unix-style'' installations.
|
||||
|
||||
Some like @code{chmod} are native to Guile.
|
||||
@xref{File System,,, guile, Guile reference manual} for a complete list.
|
||||
@xref{,,, guile, Guile reference manual} for a complete list.
|
||||
|
||||
Guix provides additional helper functions which prove especially handy in the
|
||||
context of package management.
|
||||
@@ -1587,9 +1573,7 @@ noticed that a significant number of them have a @code{inherit} field:
|
||||
|
||||
All unspecified fields are inherited from the parent package. This is very
|
||||
convenient to create alternative packages, for instance with different source,
|
||||
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.
|
||||
version or compilation options.
|
||||
|
||||
@node Getting help
|
||||
@subsection Getting help
|
||||
@@ -1630,8 +1614,7 @@ hopefully we will see your contributions soon!
|
||||
|
||||
@itemize
|
||||
@item
|
||||
@xref{Defining Packages,,, guix, GNU Guix Reference Manual}, for the
|
||||
@code{package} reference in the manual.
|
||||
The @uref{https://guix.gnu.org/manual/en/html_node/Defining-Packages.html, package reference in the manual}
|
||||
|
||||
@item
|
||||
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotr’s hacking guide to GNU Guix}
|
||||
@@ -1664,8 +1647,6 @@ $ guix shell rust rust:cargo cargo-audit cargo-license
|
||||
* Common Workflow for Rust Packaging::
|
||||
* Cargo Workspaces and Development Snapshots::
|
||||
* Using Rust Libraries in Other Build Systems::
|
||||
* Common Workflow for Updating Existing Rust Packages::
|
||||
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
|
||||
@end menu
|
||||
|
||||
@node Common Workflow for Rust Packaging
|
||||
@@ -1724,15 +1705,6 @@ $ cargo audit
|
||||
$ cargo license
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
Before running @command{cargo generate-lockfile}, make sure you have checked
|
||||
out the correct tag for the version you are packaging. This ensures that
|
||||
@code{Cargo.toml} matches the file used in the packages's @code{source} field.
|
||||
To make sure, you can obtain the exact source with @command{./pre-inst-env guix
|
||||
build --source <package>} and only then run @command{cargo generate-lockfile} on
|
||||
that source tree.
|
||||
@end quotation
|
||||
|
||||
@command{cargo generate-lockfile} updates dependencies to compatible versions.
|
||||
Applying it to all Rust applications helps reduce a great number of Rust
|
||||
libraries we need to check later. Although sometimes libraries may fail to
|
||||
@@ -2015,316 +1987,6 @@ method, one of the most popular choices for Traditional Chinese users.")
|
||||
(license license:lgpl2.1+)))
|
||||
@end lisp
|
||||
|
||||
@node Common Workflow for Updating Existing Rust Packages
|
||||
@subsubsection Common Workflow for Updating Existing Rust Packages
|
||||
|
||||
For this example, we'll update @code{niri}. The package definition looks like
|
||||
this initially:
|
||||
|
||||
@lisp
|
||||
(define-public niri
|
||||
(package
|
||||
(name "niri")
|
||||
(version "25.08")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/YaLTeR/niri")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09nsxd211mly8r1ys2lq6ia4jxgb980h1axrbgw748r0knfbbj7n"))))
|
||||
(build-system cargo-build-system)
|
||||
...
|
||||
@end lisp
|
||||
|
||||
We start by running the usual @command{guix refresh -u niri}.
|
||||
|
||||
The @command{-u} flag will update in place the version and hash for the
|
||||
@code{niri} package.
|
||||
|
||||
The package definition will then look like this:
|
||||
|
||||
@lisp
|
||||
(define-public niri
|
||||
(package
|
||||
(name "niri")
|
||||
(version "25.11")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/YaLTeR/niri")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0752qm245wc2gak0jhp0fnr0rdj3z54m2h97k3cxbjym9pcn658n"))))
|
||||
(build-system cargo-build-system)
|
||||
...
|
||||
@end lisp
|
||||
|
||||
This means the source field was updated successfully, thus we can now proceed to
|
||||
get the updated source with @command{guix build --source niri} as follows:
|
||||
|
||||
@example shell
|
||||
$ cp -r $(./pre-inst-env guix build --source niri) /tmp
|
||||
$ cd /tmp/<hash>-niri-25.11-checkout/
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
In this specific example, the source is a git checkout, thus a directory. If the
|
||||
package source is a compressed archive, you would at this point extract it to a
|
||||
directory to proceed.
|
||||
@end quotation
|
||||
|
||||
Now, given that we have access to the @code{Cargo.toml} file, we can now run
|
||||
the following inside the checkout:
|
||||
|
||||
@example shell
|
||||
$ guix shell rust rust:cargo -- cargo generate-lockfile
|
||||
$ guix shell rust rust:cargo -- cargo audit
|
||||
$ guix shell rust rust:cargo -- cargo license
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
Sometimes the package will require a more up-to-date version of rust, that is
|
||||
not yet the default rust on guix. For these cases you can use:
|
||||
@example shell
|
||||
$ guix shell -e "(@ (gnu packages rust) rust-1.90)" \
|
||||
-e '`(,(@ (gnu packages rust) rust-1.90) "cargo")'
|
||||
@end example
|
||||
@end quotation
|
||||
|
||||
The first command will ensure that all cargo dependencies are up to date
|
||||
and semver compatible, while also providing some other benefits, as further
|
||||
explained in @ref{Common Workflow for Rust Packaging}.
|
||||
|
||||
The following command will warn if there are any known vulnerabilities in the
|
||||
crates being imported. The last one will output the license information of all
|
||||
the dependent crates.
|
||||
|
||||
If everything looks good, we can now replace the contents of the @code{niri}
|
||||
indentifier, located inside the @code{lookup-cargo-inputs} variable on the
|
||||
bottom of the @file{gnu/packages/rust-crates.scm} module, with the newer updated
|
||||
crates by running the importer on the lockfile as follows:
|
||||
|
||||
@example shell
|
||||
$ guix import -i /path/to/gnu/packages/rust-crates.scm \
|
||||
crate -f Cargo.lock niri
|
||||
@end example
|
||||
|
||||
@quotation Note
|
||||
For the purpose of contributing a package to Guix (@pxref{Contributing,,,
|
||||
guix, GNU Guix Reference Manual}), there is no need to cleanup the leftover
|
||||
crates as a result of the package update. This is tasked to the rust-team
|
||||
(@pxref{Teams,,, guix, GNU Guix Reference Manual}) to periodically run a
|
||||
convenient script in @code{etc/teams/rust} to cleanup unused crates from
|
||||
@file{gnu/packages/rust-crates.scm}.
|
||||
@end quotation
|
||||
|
||||
We then need to check whether the importer has placed some TODOs for us,
|
||||
inside @file{gnu/packages/rust-crates.scm} (you can use @command{git diff --
|
||||
gnu/packages/rust-crates.scm} for this purpose).
|
||||
|
||||
There are a few types of TODO messages that you might encounter during this
|
||||
step, each type requiring you to perform a different action.
|
||||
|
||||
The first one we encounter in our example is:
|
||||
|
||||
@lisp
|
||||
(define rust-libdisplay-info-sys-0.3.0
|
||||
;; TODO REVIEW: Check bundled sources.
|
||||
(crate-source "libdisplay-info-sys" "0.3.0"
|
||||
"07xmkc2aqcdn6d58321y87rd3gzdr4nx3ncm1mmrr7w1p1ahsn96"))
|
||||
@end lisp
|
||||
|
||||
This specific TODO message tells us that there is a high probability of
|
||||
encountering bundled sources within a crate definition generated by the
|
||||
importer.
|
||||
|
||||
We then check if there are any bundled sources within the
|
||||
@code{rust-libdisplay-info-sys-0.3.0} crate. Since there are none (in our
|
||||
example), we can simply remove the TODO line, and continue to the next TODO.
|
||||
|
||||
If there were any bundled sources inside the crate, we would have to patch
|
||||
it with a snippet, in order to unbundle it. You can see some examples on
|
||||
how to unbundle inside @file{gnu/packages/rust-crates.scm} (search for the
|
||||
@code{#:snippet} keyword).
|
||||
|
||||
@quotation Note
|
||||
If the unbundle is considered too difficult to be executed (e.g. the effort
|
||||
needed to unbundle is unreasonable), the @code{TODO REVIEW} line should be
|
||||
converted to a regular TODO comment explicitly stating the unbundle was not done
|
||||
(e.g. @code{TODO: Unbundle rust-libdisplay-info-sys.}).
|
||||
@end quotation
|
||||
|
||||
Continuing, another TODO message we encounter in this example is the following:
|
||||
|
||||
@lisp
|
||||
(define rust-smithay-0.7.0.d743e1a
|
||||
;; TODO REVIEW: Define standalone package if this is a workspace.
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/Smithay/smithay.git")
|
||||
(commit "d743e1a317fa0f01d1c4cadd96d277a1ec7b59d9")))
|
||||
(file-name (git-file-name "rust-smithay" "0.7.0.d743e1a"))
|
||||
(sha256 (base32 "11327mhxxf844bs0v5bw1g9bzjssnzhidsissywy6kwng16x727v"))))
|
||||
@end lisp
|
||||
|
||||
This specific TODO message tells us that there is a high probability of the
|
||||
@code{rust-smithay-0.7.0.d743e1a} crate being a workspace.
|
||||
|
||||
After verifying that it is indeed a workspace, we now need to make it an
|
||||
actual package in @file{gnu/packages/rust-sources.scm}, referencing it in the
|
||||
crate-source definition (see @ref{Common Workflow for Rust Packaging} for more
|
||||
details).
|
||||
|
||||
@quotation Note
|
||||
You can verify if a crate is a workspace by cloning the crate repository (in
|
||||
this case @code{https://github.com/Smithay/smithay.git}), checking out the
|
||||
specific revision (in this case @command{git checkout d743e1a}), and looking
|
||||
for @code{[workspace]} in its main @file{Cargo.toml} file. If it does not have a
|
||||
TOML @code{[workspace]} section, then it is not a workspace.
|
||||
@end quotation
|
||||
|
||||
After defining the separate source package for the workspace in
|
||||
@file{gnu/packages/rust-sources.scm} (see @ref{Common Workflow for Rust
|
||||
Packaging} for more details on how to do this), the crate definition for
|
||||
@code{rust-smithay-0.7.0.d743e1a} would then become the following (notice we
|
||||
also remove the TODO line):
|
||||
|
||||
@lisp
|
||||
(define rust-smithay-0.7.0.d743e1a package:rust-smithay-0.7.0.d743e1a)
|
||||
@end lisp
|
||||
|
||||
If @code{rust-smithay-0.7.0.d743e1a} was not a workspace, we would simply remove
|
||||
the TODO line and move on.
|
||||
|
||||
We then try to build the package with @command{guix build niri}, and make sure
|
||||
whether it builds successfully, which it does.
|
||||
|
||||
As a good practice, we can further check the output of the
|
||||
@code{check-for-pregenerated-files} phase to ensure there are no extraneous
|
||||
pregenerated files inside the crates. If there are any, it is important to
|
||||
snippet them out, like these:
|
||||
|
||||
@lisp
|
||||
(define rust-winapi-x86-64-pc-windows-gnu-0.4.0
|
||||
(crate-source "winapi-x86_64-pc-windows-gnu" "0.4.0"
|
||||
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"
|
||||
#:snippet '(delete-file-recursively "lib")))
|
||||
|
||||
(define rust-flate2-1.1.4
|
||||
(crate-source "flate2" "1.1.4"
|
||||
"1a8a3pk2r2dxays4ikc47ygydhpd1dcxlgqdi3r9kiiq9rb4wnnw"
|
||||
#:snippet '(for-each delete-file-recursively '("examples" "tests"))))
|
||||
|
||||
(define rust-flo-curves-0.3.1
|
||||
(crate-source "flo_curves" "0.3.1"
|
||||
"16x293dp8825jh465kgms4yyvl4960j26gh37h3skflq9zxpy8hw"
|
||||
#:snippet '(for-each delete-file '("logo-small.png" "logo.png"))))
|
||||
|
||||
(define rust-interception-sys-0.1.3
|
||||
(crate-source "interception-sys" "0.1.3"
|
||||
"1lgwbml7gzq5a5rriy708w68gx6yiw9cdg7xy2c5vsrrck7pbs5b"
|
||||
#:snippet '(for-each delete-file (find-files "." "\\.(dll|lib)$"))))
|
||||
@end lisp
|
||||
|
||||
@node Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
|
||||
@subsubsection Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
|
||||
|
||||
Whenever a Rust package change is merged into our target branch from a different
|
||||
Pull Request, we often encounter many merge conflicts in @code{(gnu packages
|
||||
rust-crates)} when rebasing the Pull Request on top of the target branch. Since
|
||||
we should avoid modifying the rust-crates file manually (e.g. using the git
|
||||
interface to solve merge conflicts), it is recommended (and often much faster)
|
||||
to drop all changes to @code{(gnu packages rust-crates)} and run the lockfile
|
||||
importer once again, manually adding back all the manual changes.
|
||||
|
||||
This workflow describes one of many ways to do the described procedure.
|
||||
|
||||
In this example we'll update the @code{codeberg-cli} package, which has produced
|
||||
some merge conflicts in @file{gnu/packages/rust-crates.scm} when we tried a git
|
||||
pull rebase.
|
||||
|
||||
Before starting, make sure we're not in a rebase environment, by aborting the
|
||||
rebase we tried previously (the one which created the merge conflicts by git
|
||||
pulling):
|
||||
|
||||
@example
|
||||
$ git rebase --abort
|
||||
@end example
|
||||
|
||||
@cindex git rebase --interactive
|
||||
@cindex interactive rebase
|
||||
To begin, we interactively rebase our PR branch by marking as
|
||||
@code{edit} the commit we want to edit, which is the one containing the
|
||||
@file{gnu/packages/rust-crates.scm} changes:
|
||||
|
||||
@example
|
||||
# Change 1 to the number of relevant commits
|
||||
$ git rebase -i HEAD~1
|
||||
@end example
|
||||
|
||||
In our example, we would mark the @code{codeberg-cli} commit like so:
|
||||
|
||||
@example
|
||||
edit 6ef4f1ad043 # gnu: codeberg-cli: Update to 0.5.4.
|
||||
@end example
|
||||
|
||||
After that, we'll be in rebase mode, where we can restore the changes made to
|
||||
@file{gnu/packages/rust-crates.scm}:
|
||||
|
||||
@quotation Note
|
||||
Notice that we will lose all manual changes we have previously made to
|
||||
@file{gnu/packages/rust-crates.scm} (e.g. snippets, deleting TODO comments,
|
||||
if there were any). We'll need to manually add them back after we run the guix
|
||||
lockfile importer once again, so make sure you have them saved somewhere, for
|
||||
example in your PR link under the @code{Files changed} tab.
|
||||
@end quotation
|
||||
|
||||
@example
|
||||
$ git restore --source=HEAD~ gnu/packages/rust-crates.scm
|
||||
@end example
|
||||
|
||||
Having restored the file, we can stage the changes, commit, finish the rebase
|
||||
and pull rebase from the target branch:
|
||||
|
||||
@example
|
||||
$ git add gnu/packages/rust-crates.scm
|
||||
$ git commit --amend --no-edit
|
||||
$ git rebase --continue
|
||||
$ git pull <remote> <target branch>
|
||||
@end example
|
||||
|
||||
We then proceed to run the guix lockfile importer:
|
||||
|
||||
@quotation Note
|
||||
Remember to checkout the correct tag you're packaging in the package repository
|
||||
checkout. Don't forget to run @code{cargo generate-lockfile} before running
|
||||
the lockfile importer, see @ref{Common Workflow for Rust Packaging} for more
|
||||
detailed steps on what to do before running the guix lockfile importer.
|
||||
@end quotation
|
||||
|
||||
@example
|
||||
$ guix import --insert=gnu/packages/rust-crates.scm \
|
||||
crate --lockfile=/path/to/Cargo.lock codeberg-cli
|
||||
@end example
|
||||
|
||||
Now is the time we manually add back the snippets and remove the relevant TODOs
|
||||
we have already checked (if there are any).
|
||||
|
||||
After running the lockfile importer and checking if there are any changes to
|
||||
manually add back, we can finally:
|
||||
|
||||
@example
|
||||
$ git add gnu/packages/rust-crates.scm
|
||||
# Our target commit is the last one:
|
||||
$ git commit --amend --no-edit
|
||||
@end example
|
||||
|
||||
We now have a non-conflicting tree, from which we can now update our PR with.
|
||||
|
||||
@c *********************************************************************
|
||||
@node System Configuration
|
||||
@@ -3271,8 +2933,8 @@ your Linode Summary section.) Now you can run the "install guix from
|
||||
|
||||
@example
|
||||
sudo apt-get install gpg
|
||||
wget https://codeberg.org/efraim.gpg -qO - | gpg --import -
|
||||
wget https://guix.gnu.org/guix-install.sh
|
||||
wget https://sv.gnu.org/people/viewgpg.php?user_id=15145 -qO - | gpg --import -
|
||||
wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
|
||||
chmod +x guix-install.sh
|
||||
./guix-install.sh
|
||||
guix pull
|
||||
@@ -3451,7 +3113,7 @@ Now you can run the "install guix from @pxref{Binary Installation,,,
|
||||
guix, GNU Guix}" steps:
|
||||
|
||||
@example
|
||||
wget https://guix.gnu.org/guix-install.sh
|
||||
wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
|
||||
chmod +x guix-install.sh
|
||||
./guix-install.sh
|
||||
guix pull
|
||||
@@ -4506,7 +4168,7 @@ network. Assuming your interface is named @samp{enp2s0}, the following
|
||||
command can be used to do so:
|
||||
|
||||
@example sh
|
||||
# nmcli con add type bridge-slave autoconnect yes ifname enp2s0 master br0
|
||||
# nmcli con add type bridge-slave ifname enp2s0 master br0
|
||||
@end example
|
||||
|
||||
@quotation Important
|
||||
@@ -4542,8 +4204,8 @@ bridge interface, as the default is to deny all. Add the following to
|
||||
your list of services to do so:
|
||||
|
||||
@example lisp
|
||||
(extra-special-file "/etc/qemu/bridge.conf"
|
||||
(plain-file "bridge.conf" "allow br0\n"))
|
||||
(extra-special-file "/etc/qemu/host.conf"
|
||||
(plain-file "host.conf" "allow br0\n"))
|
||||
@end example
|
||||
|
||||
@subsection Invoking QEMU with the right command line options
|
||||
@@ -4561,7 +4223,7 @@ machine making use of the bridge would cause networking issues.
|
||||
@example sh
|
||||
$ qemu-system-x86_64 [...] \
|
||||
-device virtio-net-pci,netdev=user0,mac=XX:XX:XX:XX:XX:XX \
|
||||
-netdev bridge,helper=/run/privileged/bin/qemu-bridge-helper,id=user0,br=br0 \
|
||||
-netdev bridge,id=user0,br=br0 \
|
||||
[...]
|
||||
@end example
|
||||
|
||||
|
||||
+103
-410
@@ -10,8 +10,8 @@
|
||||
@include version.texi
|
||||
|
||||
@c Identifier of the OpenPGP key used to sign tarballs and such.
|
||||
@set OPENPGP-SIGNING-KEY-ID A28BF40C3E551372662D14F741AAE7DCCA3D8351
|
||||
@set OPENPGP-SIGNING-KEY-URL https://codeberg.org/efraim.gpg
|
||||
@set OPENPGP-SIGNING-KEY-ID 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
|
||||
@set OPENPGP-SIGNING-KEY-URL https://sv.gnu.org/people/viewgpg.php?user_id=15145
|
||||
|
||||
@c Base URL for downloads.
|
||||
@set BASE-URL https://ftpmirror.gnu.org/gnu/guix
|
||||
@@ -264,7 +264,6 @@ 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
|
||||
|
||||
@@ -481,14 +480,12 @@ Home Services
|
||||
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
|
||||
* Desktop: Desktop Home Services. Services for graphical environments.
|
||||
* Guix: Guix Home Services. Services for Guix.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Fonts: Fonts Home Services. Services for managing User's fonts.
|
||||
* Sound: Sound Home Services. Dealing with audio.
|
||||
* Mail: Mail Home Services. Services for managing mail.
|
||||
* Messaging: Messaging Home Services. Services for managing messaging.
|
||||
* Media: Media Home Services. Services for managing media.
|
||||
* mpv Media Player::
|
||||
* Niri: Niri window manager. Setting up the Niri.
|
||||
* Sway: Sway window manager. Setting up the Sway configuration.
|
||||
* Networking: Networking Home Services. Networking services.
|
||||
* Secrets: Secrets Home Services. Services for storing secrets.
|
||||
@@ -2661,13 +2658,12 @@ bootloaders.
|
||||
|
||||
Once you are done partitioning the target hard disk drive, you have to
|
||||
create a file system on the relevant partition(s)@footnote{Currently
|
||||
Guix System can mount only ext4, btrfs, JFS, F2FS, and XFS file systems
|
||||
at boot time. In particular, code that reads file system UUIDs and
|
||||
labels works only for these file system types. The code for bcachefs is
|
||||
in place, but support for loading out-of-tree kernel modules in the
|
||||
initrd is not.}.
|
||||
|
||||
For the ESP, if you have one and assuming it is @file{/dev/sda1}, run:
|
||||
Guix System supports only ext4, btrfs, bcachefs, JFS, F2FS, and XFS
|
||||
file systems. In particular, code that reads file system UUIDs and
|
||||
labels works only for these file system types. For bcachefs, also add
|
||||
the @code{bcachefs-linux-module} to your @code{operating-system}'s
|
||||
@code{initrd-modules}.}. For the ESP, if you have one and assuming it is
|
||||
@file{/dev/sda1}, run:
|
||||
|
||||
@example
|
||||
mkfs.fat -F32 /dev/sda1
|
||||
@@ -4783,91 +4779,14 @@ These options are provided for convenience, but you can also specify your
|
||||
configuration in the @file{~/.config/guix/channels.scm} file or using the
|
||||
@option{--channels} option (see below).
|
||||
|
||||
@item --channels=@var{file-or-uri}
|
||||
@itemx -C @var{file-or-uri}
|
||||
Read the list of channels from @var{file-or-uri} instead of
|
||||
@item --channels=@var{file}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file} instead of
|
||||
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
|
||||
@var{file-or-uri} must contain Scheme code that
|
||||
@var{file} must contain Scheme code that
|
||||
evaluates to a list of channel objects. @xref{Channels}, for more
|
||||
information.
|
||||
|
||||
As you can guess, @var{file-or-uri} can be a URL, in which case the
|
||||
given channels file is transparently downloaded. In the example below,
|
||||
we pull from the latest revision of Guix that was successfully
|
||||
evaluated:
|
||||
|
||||
@example
|
||||
guix pull \
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
|
||||
@cindex SWHID, for channel files
|
||||
Alternatively, you can refer to a channel file by its
|
||||
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
|
||||
uniquely and unambiguously identifies contents, as in this example:
|
||||
|
||||
@example
|
||||
guix pull \
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b
|
||||
@end example
|
||||
|
||||
This command downloads the data designated by the given identifier from
|
||||
@uref{https://archive.softwareheritage.org, the Software Heritage
|
||||
archive}.
|
||||
|
||||
@anchor{trusted-channels}
|
||||
@cindex trusted channels, for downloaded channel files
|
||||
In both cases, the command errors out if the returned channels are not
|
||||
among the user's @dfn{trusted channels}, defined as:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
the channels returned by @file{~/.config/guix/trusted-channels.scm},
|
||||
which has the same format as any channel file;
|
||||
|
||||
@item
|
||||
or, if the above file doesn't exist, the currently-used channels as
|
||||
returned by @command{guix describe}.
|
||||
@end itemize
|
||||
|
||||
@item --allow-untrusted-channels[=yes|no]
|
||||
Whether to allow pulls from untrusted channels.
|
||||
|
||||
By default, @command{guix pull} aborts when downloading a channel file
|
||||
that specifies an untrusted channel and merely warns if the list of
|
||||
channels comes from a local file. This option allows you to change
|
||||
that.
|
||||
|
||||
@quotation Warning
|
||||
Allowing untrusted channels can effectively lead to arbitrary code
|
||||
execution on your system.
|
||||
@end quotation
|
||||
|
||||
@anchor{unsafe-channel-evaluation}
|
||||
@item --unsafe-channel-evaluation
|
||||
Allow arbitrary code execution from channel files, both the default
|
||||
@file{channels.scm} files and those passed with @option{--channels} as
|
||||
mentioned above.
|
||||
|
||||
@cindex sandboxing, of channel evaluation
|
||||
By default, channel files are evaluated in an isolated ``sandbox''
|
||||
where only trivial declarative code returning a list of channels is
|
||||
allowed---calls to procedures such as @code{list}, @code{cons},
|
||||
@code{string-append}, as well as the @code{channel} constructor.
|
||||
Attempts from a channel file to access unauthorized bindings such as
|
||||
@code{system} (to run shell code) or to use additional modules with
|
||||
@code{use-modules} are impossible.
|
||||
|
||||
The @option{--unsafe-channel-evaluation} option disables these
|
||||
safeguards.
|
||||
|
||||
@quotation Warning
|
||||
When using @code{--unsafe-channel-evaluation}, channel files can
|
||||
@emph{run arbitrary code on your machine}. While this is useful in some
|
||||
cases, only use @code{--unsafe-channel-evaluation} when you fully
|
||||
understand the code of the channel files you use!
|
||||
@end quotation
|
||||
|
||||
@item --no-channel-files
|
||||
@itemx -q
|
||||
Inhibit loading of the user and system channel files,
|
||||
@@ -5002,17 +4921,6 @@ information.
|
||||
In addition, @command{guix pull} supports all the common build options
|
||||
(@pxref{Common Build Options}).
|
||||
|
||||
Every time the user invokes a Guix command, Guix detects if the current
|
||||
installation has exceeded a certain duration (7 days by default) and
|
||||
alerts the user to update with @command{guix pull} if necessary.
|
||||
The duration can be configured with the following environment variable:
|
||||
|
||||
@defvr {Environment Variable} GUIX_DISTRO_AGE_WARNING
|
||||
This environment variable, if set, should be a string representing a
|
||||
duration. If the current Guix installation exceeds the duration, Guix
|
||||
will raise a warning for outdated installation.
|
||||
@end defvr
|
||||
|
||||
@node Invoking guix time-machine
|
||||
@section Invoking @command{guix time-machine}
|
||||
|
||||
@@ -5109,68 +5017,12 @@ Use the @code{guix} channel from the specified @var{url}, at the
|
||||
given @var{commit} (a valid Git commit ID represented as a hexadecimal
|
||||
string or the name of a tag), or @var{branch}.
|
||||
|
||||
@item --channels=@var{file-or-uri}
|
||||
@itemx -C @var{file-or-uri}
|
||||
Read the list of channels from @var{file-or-uri}. @var{file-or-uri}
|
||||
must contain Scheme code that evaluates to a list of channel objects.
|
||||
@item --channels=@var{file}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file}. @var{file} must contain
|
||||
Scheme code that evaluates to a list of channel objects.
|
||||
@xref{Channels} for more information.
|
||||
|
||||
When @var{file-or-uri} is a URL, channels are transparently downloaded.
|
||||
In the example below, we pull from the latest revision of Guix that was
|
||||
successfully evaluated:
|
||||
|
||||
@example
|
||||
guix time-machine \
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master \
|
||||
-- describe
|
||||
@end example
|
||||
|
||||
@cindex SWHID, for channel files
|
||||
Note that downloading a channel file potentially harms reproducibility:
|
||||
the file might vanish or be modified on the server behind your back.
|
||||
From a reproducibility viewpoint the safe approach is to keep channel
|
||||
files under version control, or to refer to them by their
|
||||
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
|
||||
uniquely and unambiguously identifies contents. Here is an example:
|
||||
|
||||
@example
|
||||
guix time-machine \
|
||||
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \
|
||||
-- @dots{}
|
||||
@end example
|
||||
|
||||
This command downloads the data designated by the identifier from
|
||||
@uref{https://archive.softwareheritage.org, the Software Heritage
|
||||
archive}; it is fully reproducible because the data it refers to is
|
||||
immutable.
|
||||
|
||||
@xref{Invoking guix pull}, for more information, and @pxref{Invoking
|
||||
guix hash}, for info on how to compute the SWHID of a file.
|
||||
|
||||
@item --allow-untrusted-channels[=yes|no]
|
||||
Whether to allow pulls from untrusted channels.
|
||||
|
||||
@quotation Warning
|
||||
Allowing untrusted channels can effectively lead to arbitrary code
|
||||
execution on your system.
|
||||
@end quotation
|
||||
|
||||
@xref{trusted-channels, @command{guix pull} documentation}, for more
|
||||
info.
|
||||
|
||||
@item --unsafe-channel-evaluation
|
||||
Allow arbitrary code execution from channels files.
|
||||
|
||||
@quotation Warning
|
||||
When using @code{--unsafe-channel-evaluation}, channel files can
|
||||
@emph{run arbitrary code on your machine}. Only use
|
||||
@code{--unsafe-channel-evaluation} when you fully understand the code of
|
||||
the channel files you use!
|
||||
|
||||
@xref{unsafe-channel-evaluation, @option{--unsafe-channel-evaluation} in
|
||||
@command{guix pull}}, for background information.
|
||||
@end quotation
|
||||
|
||||
@item --no-channel-files
|
||||
@itemx -q
|
||||
Inhibit loading of the user and system channel files,
|
||||
@@ -5899,7 +5751,6 @@ pull} uses the latest commit with available substitutes for the package
|
||||
definitions: this is done by querying the continuous integration
|
||||
server at @url{https://ci.guix.gnu.org}.
|
||||
|
||||
@findex channel-with-substitutes-available
|
||||
@lisp
|
||||
(use-modules (guix ci))
|
||||
|
||||
@@ -5914,21 +5765,6 @@ substitutes. It only ensures that @command{guix pull} will not try to
|
||||
compile package definitions. This is particularly useful when using
|
||||
machines with limited resources.
|
||||
|
||||
@quotation Warning
|
||||
Use of this functionality in your channel file requires it to be
|
||||
evaluated in ``unsafe'' mode, with the
|
||||
@option{--unsafe-channel-evaluation} option.
|
||||
@xref{unsafe-channel-evaluation, the @command{guix pull} documentation},
|
||||
for more info.
|
||||
|
||||
However, a similar result can be achieved by running, say:
|
||||
|
||||
@example
|
||||
guix pull \
|
||||
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
|
||||
@end example
|
||||
@end quotation
|
||||
|
||||
@node Creating a Channel
|
||||
@section Creating a Channel
|
||||
|
||||
@@ -6754,21 +6590,6 @@ directory within the container. If this is undesirable,
|
||||
be automatically shared and will change to the user's home directory
|
||||
within the container instead. See also @option{--user}.
|
||||
|
||||
@item --cwd=@var{directory}
|
||||
For containers, change to @var{directory} inside the container instead
|
||||
of the default location. The default location is the current working
|
||||
directory when @option{--no-cwd} is not used, or the user's home
|
||||
directory when @option{--no-cwd} is used. When @var{directory} is a
|
||||
relative file name, it is interpreted relative to the current working
|
||||
directory on the host. Note that @option{--cwd} does not automatically
|
||||
share @var{directory}---you must ensure it is accessible via the default
|
||||
current directory sharing or explicit @option{--share}/@option{--expose}
|
||||
options. For example:
|
||||
|
||||
@example
|
||||
guix shell --container --cwd=/tmp --share=/tmp coreutils
|
||||
@end example
|
||||
|
||||
@item --writable-root
|
||||
When using @option{--container}, this option makes the root file system
|
||||
writable (it is read-only by default).
|
||||
@@ -7270,17 +7091,6 @@ directory within the container. If this is undesirable,
|
||||
be automatically shared and will change to the user's home directory
|
||||
within the container instead. See also @option{--user}.
|
||||
|
||||
@item --cwd=@var{directory}
|
||||
For containers, change to @var{directory} inside the container instead
|
||||
of the default location. The default location is the current working
|
||||
directory when @option{--no-cwd} is not used, or the user's home
|
||||
directory when @option{--no-cwd} is used. When @var{directory} is a
|
||||
relative file name, it is interpreted relative to the current working
|
||||
directory on the host. Note that @option{--cwd} does not automatically
|
||||
share @var{directory}---you must ensure it is accessible via the default
|
||||
current directory sharing or explicit @option{--share}/@option{--expose}
|
||||
options.
|
||||
|
||||
@item --expose=@var{source}[=@var{target}]
|
||||
@itemx --share=@var{source}[=@var{target}]
|
||||
For containers, @option{--expose} (resp. @option{--share}) exposes the
|
||||
@@ -9033,12 +8843,12 @@ dependencies than the original package. For example, the default
|
||||
optional dependency, you can define a variant that removes that
|
||||
dependency like so:
|
||||
|
||||
@findex package/inherit
|
||||
@lisp
|
||||
(use-modules (gnu packages gdb)) ;for 'gdb'
|
||||
|
||||
(define gdb-sans-guile
|
||||
(package/inherit gdb
|
||||
(package
|
||||
(inherit gdb)
|
||||
(inputs (modify-inputs inputs
|
||||
(delete "guile")))))
|
||||
@end lisp
|
||||
@@ -9046,23 +8856,6 @@ dependency like so:
|
||||
In the body of the @code{inputs} field above, @code{inputs} is bound to
|
||||
the inherited value. Thus, the @code{modify-inputs} form above removes
|
||||
the @code{"guile"} package from the @code{inputs} field of @code{gdb}.
|
||||
|
||||
@quotation Note
|
||||
The example above uses @code{(package/inherit gdb @dots{})} instead of
|
||||
the usual @code{(package (inherit gdb) @dots{})}. While the latter
|
||||
would work, @code{package/inherit} does extra work: if @code{gdb} has a
|
||||
@code{replacement} field (@pxref{Security Updates}),
|
||||
@code{package/inherit} propagates the @code{inputs} changes of this
|
||||
variant to the replacement.
|
||||
|
||||
In other words, @code{package/inherit} ensures the variant gets a
|
||||
consistent @code{replacement} when the original package has one. Thus,
|
||||
one should generally use @code{package/inherit} when creating a variant
|
||||
for the same version, but not when targeting a different version, as in
|
||||
the @code{hello} example we saw earlier, where the replacement may be
|
||||
incorrect.
|
||||
@end quotation
|
||||
|
||||
The @code{modify-inputs} macro is a helper that can prove useful anytime
|
||||
you want to remove, add, or replace package inputs.
|
||||
|
||||
@@ -14838,32 +14631,8 @@ guix hash @var{option} @var{file} ...
|
||||
@end example
|
||||
|
||||
When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the
|
||||
hash of data read from standard input.
|
||||
|
||||
Here are a few examples:
|
||||
|
||||
@table @asis
|
||||
@item SHA256 of a file for use in an @code{origin} record:
|
||||
@example
|
||||
guix hash example.tar.gz
|
||||
@end example
|
||||
|
||||
@item SHA256 of directory @var{checkout} for use in an @code{origin} record:
|
||||
@example
|
||||
guix hash -rx @var{checkout}
|
||||
@end example
|
||||
|
||||
@item SHA1 hash of @var{file} like the @code{sha1sum} command:
|
||||
@example
|
||||
guix hash -H sha1 -f hex @var{file}
|
||||
@end example
|
||||
|
||||
@cindex SWHID, computing
|
||||
@item SHA1 hash of @var{file} for a @code{swh:1:cnt} @uref{https://swhid.org, SWHID}:
|
||||
guix hash -S git -H sha1 -f hex @var{file}
|
||||
@end table
|
||||
|
||||
@command{guix hash} has the following options:
|
||||
hash of data read from standard input. @command{guix hash} has the
|
||||
following options:
|
||||
|
||||
@table @code
|
||||
|
||||
@@ -15071,7 +14840,7 @@ provided through NuGet's v3 API at @code{api.nuget.org} and includes
|
||||
most relevant information, including package dependencies.
|
||||
There are some caveats, however. The metadata does not always include
|
||||
repository information, in which case the importer attempts to extract
|
||||
it from the symbol package (@file{.snupkg}) if available.
|
||||
it from the symbol package (@file{.snupkg}) if available.
|
||||
Additionally, dependencies are grouped by target framework in NuGet,
|
||||
but the importer flattens all dependency groups into a single list.
|
||||
|
||||
@@ -15765,7 +15534,7 @@ gnu/packages/qt.scm:452:13: qtbase would be upgraded from 5.15.8 to 5.15.10
|
||||
@end example
|
||||
|
||||
@cindex partial version specification, guix refresh
|
||||
A per-package equivalent to @option{--target-version} is made available by
|
||||
A per-package equivalent to --target-version is made available by
|
||||
prefixing the version specification with the @samp{~} (tilde) character.
|
||||
For example:
|
||||
|
||||
@@ -16170,10 +15939,51 @@ Use @var{host} as the OpenPGP key server when importing a public key.
|
||||
@cindex format conventions
|
||||
The @command{guix style} command helps users and packagers alike style
|
||||
their package definitions and configuration files according to the
|
||||
latest fashionable trends, or patch them with specific rewrites. It can
|
||||
either reformat whole files, with the @option{--whole-file} option, or
|
||||
apply specific @dfn{styling rules} to individual package definitions.
|
||||
The command provides multiple styling rules, explained below.
|
||||
latest fashionable trends. It can either reformat whole files, with the
|
||||
@option{--whole-file} option, or apply specific @dfn{styling rules} to
|
||||
individual package definitions. The command currently provides the
|
||||
following styling rules:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
formatting package definitions according to the project's conventions
|
||||
(@pxref{Formatting Code});
|
||||
|
||||
@item
|
||||
rewriting package inputs to the ``new style'', as explained below.
|
||||
@end itemize
|
||||
|
||||
The way package inputs are written is going through a transition
|
||||
(@pxref{package Reference}, for more on package inputs). Until version
|
||||
1.3.0, package inputs were written using the ``old style'', where each
|
||||
input was given an explicit label, most of the time the package name:
|
||||
|
||||
@lisp
|
||||
(package
|
||||
;; @dots{}
|
||||
;; The "old style" (deprecated).
|
||||
(inputs `(("libunistring" ,libunistring)
|
||||
("libffi" ,libffi))))
|
||||
@end lisp
|
||||
|
||||
Today, the old style is deprecated and the preferred style looks like
|
||||
this:
|
||||
|
||||
@lisp
|
||||
(package
|
||||
;; @dots{}
|
||||
;; The "new style".
|
||||
(inputs (list libunistring libffi)))
|
||||
@end lisp
|
||||
|
||||
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
|
||||
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
|
||||
Package Variants}, for more info on @code{modify-inputs}).
|
||||
|
||||
In the vast majority of cases, this is a purely mechanical change on the
|
||||
surface syntax that does not even incur a package rebuild. Running
|
||||
@command{guix style -S inputs} can do that for you, whether you're working on
|
||||
packages in Guix proper or in an external channel.
|
||||
|
||||
The general syntax is:
|
||||
|
||||
@@ -16236,45 +16046,14 @@ definition of the Coreutils package like so:
|
||||
@end example
|
||||
|
||||
@item inputs
|
||||
Rewrite package inputs to the ``new style''. This is how you would
|
||||
rewrite inputs of package @code{whatnot} in your own channel:
|
||||
Rewrite package inputs to the ``new style'', as described above. This
|
||||
is how you would rewrite inputs of package @code{whatnot} in your own
|
||||
channel:
|
||||
|
||||
@example
|
||||
guix style -L ~/my/channel -S inputs whatnot
|
||||
@end example
|
||||
|
||||
The way package inputs are written is going through a transition
|
||||
(@pxref{package Reference}, for more on package inputs). Until version
|
||||
1.3.0, package inputs were written using the ``old style'', where each
|
||||
input was given an explicit label, most of the time the package name:
|
||||
|
||||
@lisp
|
||||
(package
|
||||
;; @dots{}
|
||||
;; The "old style" (deprecated).
|
||||
(inputs `(("libunistring" ,libunistring)
|
||||
("libffi" ,libffi))))
|
||||
@end lisp
|
||||
|
||||
Today, the old style is deprecated and the preferred style looks like
|
||||
this:
|
||||
|
||||
@lisp
|
||||
(package
|
||||
;; @dots{}
|
||||
;; The "new style".
|
||||
(inputs (list libunistring libffi)))
|
||||
@end lisp
|
||||
|
||||
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
|
||||
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
|
||||
Package Variants}, for more info on @code{modify-inputs}).
|
||||
|
||||
In the vast majority of cases, this is a purely mechanical change on the
|
||||
surface syntax that does not even incur a package rebuild. Running
|
||||
@command{guix style -S inputs} can do that for you, whether you're working on
|
||||
packages in Guix proper or in an external channel.
|
||||
|
||||
Rewriting is done in a conservative way: preserving comments and bailing
|
||||
out if it cannot make sense of the code that appears in an inputs field.
|
||||
The @option{--input-simplification} option described below provides
|
||||
@@ -16313,33 +16092,10 @@ 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
|
||||
with a version string, possibly prefixed by ``v'', change the
|
||||
with @code{version} or @code{(string-append ``v'' version)}, change the
|
||||
package origin to the @code{git-fetch} method
|
||||
(@pxref{origin Reference}). Consider this example:
|
||||
|
||||
@@ -16368,16 +16124,14 @@ its @code{source} field like to:
|
||||
(inherit guile-json-3)
|
||||
(name "guile-json")
|
||||
(version "4.7.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/aconchillo/guile-json")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0akhm8xjv8fl55fyq0w6c9c6hi5j7mifjx01w07np7qg1cjl9f06"))))))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url
|
||||
"https://github.com/aconchillo/guile-json")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32
|
||||
"0akhm8xjv8fl55fyq0w6c9c6hi5j7mifjx01w07np7qg1cjl9f06"))))))
|
||||
@end lisp
|
||||
|
||||
@end table
|
||||
@@ -19442,7 +19196,7 @@ Partitioning}, for an example.
|
||||
|
||||
When using GRUB as the bootloader, the LUKS password is only requested
|
||||
once: GRUB passes the master key to the initial RAM disk automatically.
|
||||
@xref{grub-luks-root-device-key, Automatic LUKS Master Key Passing}, for
|
||||
@xref{Bootloader Configuration, Automatic LUKS Master Key Passing}, for
|
||||
details.
|
||||
|
||||
@end defvar
|
||||
@@ -20905,9 +20659,6 @@ The syslog configuration file to use.
|
||||
@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more
|
||||
information on the configuration file syntax.
|
||||
|
||||
@item @code{pid-file} (default: @code{"/var/run/syslog.pid"})
|
||||
The pid file for @command{syslogd}.
|
||||
|
||||
@item @code{extra-options} (default: @code{'()})
|
||||
List of extra command-line options for @command{syslog}.
|
||||
|
||||
@@ -27497,28 +27248,6 @@ Package object for GVfs.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvar kmonad-service-type
|
||||
This is the type of the service that runs
|
||||
@uref{https://github.com/kmonad/kmonad, KMonad}. Its value is a
|
||||
@code{kmonad-configuration} object. This service allows spawning
|
||||
@command{kmonad} configurations to manage keyboards.
|
||||
|
||||
@deftp {Data Type} kmonad-configuration
|
||||
Configuration record for the KMonad service.
|
||||
|
||||
@table @asis
|
||||
@item @code{kmonad} (default: @code{kmonad})
|
||||
The KMonad package to use.
|
||||
|
||||
@item @code{keymaps}
|
||||
A list of files with KMonad configurations. One shepherd service will be
|
||||
created to control each configuration. Each configuration should target
|
||||
a distinct input device as KMonad operates on a per-input basis.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
@end defvar
|
||||
|
||||
@defvar colord-service-type
|
||||
This is the type of the service that runs @command{colord}, a system
|
||||
service with a D-Bus
|
||||
@@ -45480,12 +45209,6 @@ Extra command line options for @code{guix-data-service}.
|
||||
@item @code{extra-process-jobs-options} (default: @var{'()})
|
||||
Extra command line options for @code{guix-data-service-process-jobs}.
|
||||
|
||||
@item @code{extra-environment-variables} (default: @var{'()})
|
||||
Extra environment variables for @code{guix-data-service}.
|
||||
|
||||
@item @code{extra-process-jobs-environment-variables} (default: @var{'()})
|
||||
Extra environment variables for @code{guix-data-service-process-jobs}.
|
||||
|
||||
@item @code{git-repositories} (default: @var{#f})
|
||||
List of git-repository information to insert into the database.
|
||||
|
||||
@@ -46415,26 +46138,6 @@ up not being used much for the reasons described there.
|
||||
@end deftp
|
||||
@end defvar
|
||||
|
||||
@cindex fwupd
|
||||
@cindex firmware update
|
||||
@subsubheading fwupd Service
|
||||
|
||||
@defvar fwupd-service-type
|
||||
This service allows users of supported hardware to update their firmware. The
|
||||
service's value is a @code{fwupd-configuration} record.
|
||||
|
||||
@deftp {Data Type} fwupd-configuration
|
||||
This is the data type representing the configuration for the fwupd
|
||||
service.
|
||||
|
||||
@table @asis
|
||||
@item @code{fwupd} (default @code{fwupd})
|
||||
The fwupd package that will be installed in the system profile.
|
||||
@end table
|
||||
|
||||
@end deftp
|
||||
@end defvar
|
||||
|
||||
@node Hurd Services
|
||||
@subsection Hurd Services
|
||||
|
||||
@@ -49215,28 +48918,8 @@ This option in enabled by default. In some cases involving the
|
||||
in RAM, it can be handy to disable the option by setting it to
|
||||
@code{#f}.
|
||||
|
||||
@item @code{extra-initrd} (default: @code{#f})
|
||||
File name of an additional initrd to load during the boot. It may or
|
||||
may not point to a file in the store, but the main use case is for
|
||||
out-of-store files containing secrets.
|
||||
@subsubheading Automatic LUKS Master Key Passing
|
||||
|
||||
For any use case not involving secrets, you should use regular initrd
|
||||
(@pxref{operating-system Reference, @code{initrd}}) instead.
|
||||
|
||||
Be careful when using this option, since pointing to a file that is not
|
||||
readable by the grub while booting will cause the boot to fail and
|
||||
require a manual edit of the initrd line in the grub menu.
|
||||
|
||||
Currently only supported by GRUB.
|
||||
@end table
|
||||
|
||||
@end deftp
|
||||
|
||||
@anchor{grub-luks-root-device-key}
|
||||
@unnumberedsubsec Automatic LUKS Master Key Passing
|
||||
|
||||
@cindex LUKS, root file system encryption
|
||||
@cindex passphrase, for LUKS-encrypted root
|
||||
When booting from a LUKS-encrypted device using GRUB, the password is
|
||||
normally requested twice: once by GRUB to access @file{/boot}, and a
|
||||
second time by the initial RAM disk to mount the root file system.
|
||||
@@ -49277,7 +48960,22 @@ No configuration is required: GRUB's @code{procfs} and @code{luks}
|
||||
modules are loaded automatically when encrypted devices are declared
|
||||
via @code{luks-device-mapping} (@pxref{Mapped Devices}).
|
||||
|
||||
@unnumberedsubsec Additional Boot Entries
|
||||
@item @code{extra-initrd} (default: @code{#f})
|
||||
File name of an additional initrd to load during the boot. It may or
|
||||
may not point to a file in the store, but the main use case is for
|
||||
out-of-store files containing secrets.
|
||||
|
||||
For any use case not involving secrets, you should use regular initrd
|
||||
(@pxref{operating-system Reference, @code{initrd}}) instead.
|
||||
|
||||
Be careful when using this option, since pointing to a file that is not
|
||||
readable by the grub while booting will cause the boot to fail and
|
||||
require a manual edit of the initrd line in the grub menu.
|
||||
|
||||
Currently only supported by GRUB.
|
||||
@end table
|
||||
|
||||
@end deftp
|
||||
|
||||
@cindex dual boot
|
||||
@cindex boot menu
|
||||
@@ -49406,13 +49104,9 @@ example of chainloading a different GNU/Linux system.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@unnumberedsubsec Themes
|
||||
|
||||
@cindex HDPI
|
||||
@cindex HiDPI
|
||||
@cindex resolution
|
||||
@cindex themes, for GRUB
|
||||
@cindex bootloader themes
|
||||
@c FIXME: Write documentation once it's stable.
|
||||
For now only GRUB has theme support. GRUB themes are created using
|
||||
the @code{grub-theme} form, which is not fully documented yet.
|
||||
@@ -49432,8 +49126,8 @@ Return the default GRUB theme used by the operating system if no
|
||||
@code{theme} field is specified in @code{bootloader-configuration}
|
||||
record.
|
||||
|
||||
It comes with a fancy background image displaying the Guix
|
||||
logo.
|
||||
It comes with a fancy background image displaying the GNU and Guix
|
||||
logos.
|
||||
@end deffn
|
||||
|
||||
For example, to override the default resolution, you may use something
|
||||
@@ -49807,7 +49501,7 @@ how to generate an image that uses the @code{grub-efi-bootloader}
|
||||
bootloader and boot it with QEMU:
|
||||
|
||||
@example
|
||||
image=$(guix system image --image-type=qcow2-gpt \
|
||||
image=$(guix system image --image-type=qcow2 \
|
||||
gnu/system/examples/lightweight-desktop.tmpl)
|
||||
cp $image /tmp/my-image.qcow2
|
||||
chmod +w /tmp/my-image.qcow2
|
||||
@@ -51493,7 +51187,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
|
||||
@@ -52428,13 +52122,12 @@ services)}.
|
||||
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
|
||||
* Desktop: Desktop Home Services. Services for graphical environments.
|
||||
* Guix: Guix Home Services. Services for Guix.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Backup: Backup Home Services. Services for backing up User's files.
|
||||
* Fonts: Fonts Home Services. Services for managing User's fonts.
|
||||
* Sound: Sound Home Services. Dealing with audio.
|
||||
* Mail: Mail Home Services. Services for managing mail.
|
||||
* Messaging: Messaging Home Services. Services for managing messaging.
|
||||
* Media: Media Home Services. Services for managing media.
|
||||
* mpv Media Player::
|
||||
* Niri: Niri window manager. Setting up the Niri.
|
||||
* Sway: Sway window manager. Setting up the Sway configuration.
|
||||
* Networking: Networking Home Services. Networking services.
|
||||
|
||||
+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),$(srcdir)/%D%/$(2).$(lang).texi)
|
||||
lang_to_texinfo = $(foreach lang,$(1),%D%/$(2).$(lang).texi)
|
||||
|
||||
# Automake does not understand GNU Make non-standard extensions,
|
||||
# unfortunately, so we cannot use the above patsubst-based function here.
|
||||
@@ -104,7 +104,7 @@ MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
|
||||
# reference is not translated, which means it references a section that does not
|
||||
# exist.
|
||||
define xref_command
|
||||
$(top_builddir)/pre-inst-env $(GUILE) --no-auto-compile \
|
||||
$(top_srcdir)/pre-inst-env $(GUILE) --no-auto-compile \
|
||||
"$(top_srcdir)/build-aux/convert-xref.scm" \
|
||||
$@.tmp $<
|
||||
endef
|
||||
@@ -116,21 +116,21 @@ dummy_pot = $(shell mktemp --suffix=.pot)
|
||||
$(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go
|
||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||
--variable localized="$@.tmp" \
|
||||
--variable master="$(srcdir)/%D%/guix.texi" \
|
||||
--variable master="%D%/guix.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
$(srcdir)/po/doc/po4a.cfg
|
||||
po/doc/po4a.cfg
|
||||
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||
-mv "$@.tmp" "$@"
|
||||
|
||||
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
|
||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||
--variable localized="$@.tmp" \
|
||||
--variable master="$(srcdir)/%D%/guix-cookbook.texi" \
|
||||
--variable po="$<" \
|
||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||
--variable localized="$@.tmp" \
|
||||
--variable master="%D%/guix-cookbook.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
$(srcdir)/po/doc/po4a.cfg
|
||||
po/doc/po4a.cfg
|
||||
-sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
|
||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||
-mv "$@.tmp" "$@"
|
||||
@@ -138,10 +138,10 @@ $(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
|
||||
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go
|
||||
-$(AM_V_PO4A)$(PO4A) --no-update \
|
||||
--variable localized="$@.tmp" \
|
||||
--variable master="$(srcdir)/%D%/contributing.texi" \
|
||||
--variable master="%D%/contributing.texi" \
|
||||
--variable po="$<" \
|
||||
--variable pot=$(dummy_pot) \
|
||||
$(srcdir)/po/doc/po4a.cfg
|
||||
po/doc/po4a.cfg
|
||||
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
|
||||
-mv "$@.tmp" "$@"
|
||||
|
||||
|
||||
+398
-2088
File diff suppressed because it is too large
Load Diff
+2
-22
@@ -16,7 +16,6 @@ exec $pre_inst_env_maybe guix repl -- "$0" "$@"
|
||||
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2025-2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2025 jgart <jgart@dismail.de>
|
||||
;;; Copyright © 2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -691,7 +690,6 @@ ecosystem."
|
||||
(team 'embedded
|
||||
#:name "Embedded"
|
||||
#:scope (list "gnu/packages/bootloaders.scm"
|
||||
"gnu/packages/coreboot.scm"
|
||||
"gnu/packages/firmware.scm")))
|
||||
|
||||
(define-team games
|
||||
@@ -828,7 +826,6 @@ and the maven-build-system."
|
||||
(make-regexp* "^gnu/packages/java(-.+|)\\.scm$")
|
||||
;; Match maven.scm and maven-*.scm
|
||||
(make-regexp* "^gnu/packages/maven(-.+|)\\.scm$")
|
||||
"gnu/packages/netbeans.scm"
|
||||
"guix/build/ant-build-system.scm"
|
||||
"guix/build/clojure-build-system.scm"
|
||||
"guix/build/clojure-utils.scm"
|
||||
@@ -845,8 +842,7 @@ and the maven-build-system."
|
||||
#:name "JavaScript team"
|
||||
#:description
|
||||
"JavaScript/Node.js packages, the node build system."
|
||||
#:scope (list "gnu/packages/javascript.scm"
|
||||
"gnu/packages/node-xyz.scm"
|
||||
#:scope (list "gnu/packages/node-xyz.scm"
|
||||
"gnu/packages/node.scm"
|
||||
"guix/build-system/node.scm"
|
||||
"guix/build/node-build-system.scm"
|
||||
@@ -947,7 +943,6 @@ importer, and the ocaml-build-system."
|
||||
#:scope
|
||||
(list "gnu/packages/ocaml.scm"
|
||||
"gnu/packages/coq.scm"
|
||||
"gnu/packages/rocq.scm"
|
||||
"guix/build/ocaml-build-system.scm"
|
||||
"guix/build/dune-build-system.scm"
|
||||
"guix/build-system/ocaml.scm"
|
||||
@@ -1251,11 +1246,6 @@ the \"texlive\" importer."
|
||||
"jonsger")
|
||||
mozilla)
|
||||
|
||||
(define-member (person "Denis Carikli"
|
||||
"GNUtoo@cyberdimension.org"
|
||||
"GNUtoo")
|
||||
embedded)
|
||||
|
||||
(define-member (person "Ludovic Courtès"
|
||||
"ludo@gnu.org"
|
||||
"civodul")
|
||||
@@ -1639,7 +1629,7 @@ the \"texlive\" importer."
|
||||
(define-member (person "Thanos Apollo"
|
||||
"public@thanosapollo.org"
|
||||
"thanosapollo")
|
||||
vcs emacs)
|
||||
vcs)
|
||||
|
||||
(define-member (person "Ashish SHUKLA"
|
||||
"ashish.is@lostca.se"
|
||||
@@ -1661,16 +1651,6 @@ the \"texlive\" importer."
|
||||
"tok")
|
||||
electronics)
|
||||
|
||||
(define-member (person "gemmaro"
|
||||
"gemmaro.dev@gmail.com"
|
||||
"gemmaro")
|
||||
ruby)
|
||||
|
||||
(define-member (person "bdunahu"
|
||||
"bdunahu@operationnull.com"
|
||||
"bdunahu")
|
||||
games)
|
||||
|
||||
|
||||
(define (find-team name)
|
||||
(or (hash-ref %teams (string->symbol name))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env -S gawk -f
|
||||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2025, 2026 Efraim Flashner <efraim@flashner.co.il>
|
||||
# Copyright © 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@@ -21,22 +21,20 @@
|
||||
# ./etc/teams/rust/audit-rust-crates ./path/to/file.scm
|
||||
# Prints the output of cargo-audit to the shell.
|
||||
|
||||
# Make sure we have cargo-audit in our PATH
|
||||
BEGIN {
|
||||
"which cargo-audit" | getline cargoAudit
|
||||
close("which cargo-audit")
|
||||
cargoAudit = cargoAudit " audit --file -"
|
||||
|
||||
if (system("which cargo-audit 1> /dev/null"))
|
||||
exit 1;
|
||||
# Parse a record at a time.
|
||||
RS = "\n\n"
|
||||
cargoAudit = "cargo-audit audit --file -"
|
||||
}
|
||||
|
||||
# Check the crate-source origin-only inputs, like in rust-crates.scm
|
||||
# Check the crate-source origin-only inputs
|
||||
/crate-source/ {
|
||||
for(i=3; i <= NF-2; i++) {
|
||||
if($i == "(crate-source") {
|
||||
crateName = $(i+1)
|
||||
crateVersion = $(i+2)
|
||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
||||
cargoLock = cargoLock "[[package]]\nname = " $(i+1) "\nversion = " $(i+2) "\n"
|
||||
next
|
||||
}
|
||||
}
|
||||
@@ -46,64 +44,27 @@ BEGIN {
|
||||
/crate-uri/ {
|
||||
for(i=3; i <= NF; i++) {
|
||||
if($i == "(version")
|
||||
crateVersion = $(i+1)
|
||||
crateVersion = $(i+1)
|
||||
if($i == "(crate-uri")
|
||||
crateName = $(i+1)
|
||||
crateName = $(i+1)
|
||||
}
|
||||
gsub(/)/, "", crateVersion)
|
||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
||||
next
|
||||
}
|
||||
|
||||
# Parse the crates created from packages using 'cargo package'
|
||||
/package:rust/ {
|
||||
pkg = $2
|
||||
split(pkg, name_version, "-")
|
||||
crateVersion = name_version[length(name_version)]
|
||||
crateName = substr(pkg, 6, (length(pkg) - length(crateVersion) - 6))
|
||||
split(crateVersion, versionDots, ".")
|
||||
if(crateVersion && (crateVersion != "(git-version") && (length(versionDots) == 3) && crateName) {
|
||||
cargoLock = cargoLock "[[package]]\nname = \"" crateName "\"\nversion = \"" crateVersion "\"\n"
|
||||
} else {
|
||||
untested++
|
||||
#print("Unable to test " $0)
|
||||
}
|
||||
next
|
||||
}
|
||||
# The xxxx-cargo-input variables have a set style
|
||||
# TODO: Replace the last dash between the name and the version with a space!
|
||||
# This doesn't take into account swapping between "-" and "_" so we skip it.
|
||||
#( $2 ~ /-cargo-inputs/ ) {
|
||||
# sub(/-cargo-inputs/, "", $2)
|
||||
# gsub(/)/, "", $0)
|
||||
# gsub(/rust-/, "", $0)
|
||||
# #gensub(/([[:alpha:]])-([[:digit:]]+)/, "\\1 \\2", "g", $i)
|
||||
# print "[[package]]\nname = \"" $2 "\"\nversion = \"1.0.0\"\ndependencies = ["
|
||||
# for (i = 4; i <= NF; i++) {
|
||||
# print "\"" $i "\","
|
||||
# }
|
||||
# print "]"
|
||||
#}
|
||||
|
||||
# We make an attempt to create the crate name from the package name otherwise
|
||||
/git-reference/ {
|
||||
for(i=3; i <= NF; i++) {
|
||||
if($i == "(version")
|
||||
crateVersion = $(i+1)
|
||||
if($i == "(name")
|
||||
crateName = $(i+1)
|
||||
if($i == "(git-file-name") {
|
||||
crateName = $(i+1)
|
||||
crateVersion = $(i+2)
|
||||
}
|
||||
}
|
||||
gsub(/)/, "", crateVersion)
|
||||
gsub(/)/, "", crateName)
|
||||
sub(/rust-/, "", crateName)
|
||||
# The crate version MUST be major.minor.patch
|
||||
split(crateVersion, versionParts, ".")
|
||||
if(crateVersion && (crateVersion != "(git-version") && (length(versionParts) == 3) && crateName) {
|
||||
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
|
||||
} else {
|
||||
untested++
|
||||
#print("Unable to test " $0)
|
||||
}
|
||||
next
|
||||
}
|
||||
|
||||
# Note those which we were unable to parse
|
||||
/define rust/ {
|
||||
if($3 == "#f)")
|
||||
next
|
||||
print("Unable to parse " $0)
|
||||
}
|
||||
|
||||
{ untested++ }
|
||||
|
||||
END { print("Number of crates untested: " untested); print cargoLock | cargoAudit }
|
||||
END { print cargoLock | cargoAudit }
|
||||
|
||||
@@ -446,11 +446,9 @@ when booting a root file system on a Btrfs subvolume."
|
||||
(modules (menu-entry-multiboot-modules entry)))
|
||||
#~(format port "
|
||||
menuentry ~s {
|
||||
~a
|
||||
multiboot ~a root=~a~a~a
|
||||
}~%"
|
||||
#$label
|
||||
#$(grub-root-search device kernel)
|
||||
#$kernel
|
||||
#$(device-name->hurd-device-name device-name #:disk disk)
|
||||
(string-join (list #$@arguments) " " 'prefix)
|
||||
|
||||
@@ -1226,12 +1226,10 @@ file name or an nfs-root containing ':/')."
|
||||
|
||||
(match spec
|
||||
((? string?)
|
||||
(if (string-match "^/dev/[a-zA-Z0-9]+$" spec)
|
||||
(if (string-prefix? "/dev/" spec)
|
||||
;; Nothing to do, but wait until SPEC shows up.
|
||||
(resolve device-exists? spec identity)
|
||||
;; Do not resolve NFS / CIFS / tmpfs devices
|
||||
;; or bcachefs multi-device specifications.
|
||||
spec))
|
||||
spec)) ; do not resolve NFS / CIFS / tmpfs devices
|
||||
((? file-system-label?)
|
||||
;; Resolve the label.
|
||||
(resolve find-partition-by-label
|
||||
|
||||
@@ -445,14 +445,10 @@ load path must be adjusted as needed."
|
||||
;; Behave like an init process: create a sub-process that calls
|
||||
;; THUNK, and wait for child processes. Furthermore, forward
|
||||
;; RELAYED-SIGNALS to the child process.
|
||||
;; We presently use `safe-clone` here due to a bug in the interaction
|
||||
;; between Guix and `primitive-fork` in Guile 3.0.11:
|
||||
;; https://codeberg.org/guix/guix/issues/7690#issuecomment-12744123
|
||||
(safe-clone
|
||||
SIGCHLD
|
||||
(lambda ()
|
||||
(match (primitive-fork)
|
||||
(0
|
||||
(call-with-clean-exit thunk))
|
||||
(lambda (pid)
|
||||
(pid
|
||||
(install-signal-handlers pid)
|
||||
(let loop ()
|
||||
(match (wait-child-process)
|
||||
|
||||
+19
-42
@@ -57,7 +57,7 @@
|
||||
# Copyright © 2022 ( <paren@disroot.org>
|
||||
# Copyright © 2022, 2026 jgart <jgart@dismail.de>
|
||||
# Copyright © 2022-2023, 2025-2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
# Copyright © 2023-2026 Zheng Junjie <z572@z572.online>
|
||||
# Copyright © 2023-2025 Zheng Junjie <z572@z572.online>
|
||||
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
|
||||
# Copyright © 2023 Andy Tai <atai@atai.org>
|
||||
# Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
|
||||
@@ -502,7 +502,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/myrddin.scm \
|
||||
%D%/packages/ncdu.scm \
|
||||
%D%/packages/ncurses.scm \
|
||||
%D%/packages/netbeans.scm \
|
||||
%D%/packages/netpbm.scm \
|
||||
%D%/packages/nettle.scm \
|
||||
%D%/packages/networking.scm \
|
||||
@@ -611,7 +610,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/rocm-apps.scm \
|
||||
%D%/packages/rocm-libs.scm \
|
||||
%D%/packages/rocm-tools.scm \
|
||||
%D%/packages/rocq.scm \
|
||||
%D%/packages/rpc.scm \
|
||||
%D%/packages/rpm.scm \
|
||||
%D%/packages/rrdtool.scm \
|
||||
@@ -756,7 +754,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/services/docker.scm \
|
||||
%D%/services/authentication.scm \
|
||||
%D%/services/file-sharing.scm \
|
||||
%D%/services/firmware.scm \
|
||||
%D%/services/games.scm \
|
||||
%D%/services/ganeti.scm \
|
||||
%D%/services/getmail.scm \
|
||||
@@ -1095,7 +1092,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
|
||||
%D%/packages/patches/chez-irregex-import-cond-expand.patch \
|
||||
%D%/packages/patches/chez-scheme-bin-sh.patch \
|
||||
%D%/packages/patches/cianna-remove-error-for-missing-cuda.patch \
|
||||
%D%/packages/patches/circos-remove-findbin.patch \
|
||||
%D%/packages/patches/cdparanoia-fpic.patch \
|
||||
%D%/packages/patches/cdrkit-libre-cross-compile.patch \
|
||||
@@ -1134,10 +1130,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/clucene-gcc-14.patch \
|
||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/codex-acp-0.11.1-disable-code-mode.patch \
|
||||
%D%/packages/patches/codex-acp-0.11.1-remove-patch-sections.patch \
|
||||
%D%/packages/patches/codex-acp-0.9.2-remove-patch-sections.patch \
|
||||
%D%/packages/patches/codex-acp-0.9.2-replace-result-flatten.patch \
|
||||
%D%/packages/patches/codex-0.98.0-remove-patch-sections.patch \
|
||||
%D%/packages/patches/rust-codex-0.117.0-remove-patch-sections.patch \
|
||||
%D%/packages/patches/cogl-fix-double-free.patch \
|
||||
%D%/packages/patches/collada-dom-boost.patch \
|
||||
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
||||
@@ -1169,6 +1164,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
|
||||
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
|
||||
%D%/packages/patches/ctranslate2-local-build.patch \
|
||||
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
|
||||
%D%/packages/patches/cube-nocheck.patch \
|
||||
%D%/packages/patches/cups-relax-root-ownership-check.patch \
|
||||
%D%/packages/patches/cura-engine-gcc-14.patch \
|
||||
@@ -1179,6 +1175,7 @@ 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/cvs-CVE-2017-12836.patch \
|
||||
%D%/packages/patches/cyrus-sasl-fix-time-h.patch \
|
||||
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
|
||||
@@ -1241,7 +1238,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
|
||||
%D%/packages/patches/elm-offline-package-registry.patch \
|
||||
%D%/packages/patches/elm-reactor-static-files.patch \
|
||||
%D%/packages/patches/emacs-agent-shell-fix-tests.patch \
|
||||
%D%/packages/patches/emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch \
|
||||
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
|
||||
%D%/packages/patches/emacs-disable-jit-compilation.patch \
|
||||
%D%/packages/patches/emacs-doc-toc-shell-commands.patch \
|
||||
@@ -1364,8 +1361,16 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
|
||||
%D%/packages/patches/ganeti-haskell-pythondir.patch \
|
||||
%D%/packages/patches/ganeti-lens-compat.patch \
|
||||
%D%/packages/patches/ganeti-openssh-test-fix.patch \
|
||||
%D%/packages/patches/ganeti-pyyaml-compat.patch \
|
||||
%D%/packages/patches/ganeti-procps-compat.patch \
|
||||
%D%/packages/patches/ganeti-reorder-arbitrary-definitions.patch \
|
||||
%D%/packages/patches/ganeti-relax-dependencies.patch \
|
||||
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
|
||||
%D%/packages/patches/ganeti-shepherd-support.patch \
|
||||
%D%/packages/patches/ganeti-sphinx-import.patch \
|
||||
%D%/packages/patches/ganeti-template-haskell-2.17.patch \
|
||||
%D%/packages/patches/ganeti-template-haskell-2.18.patch \
|
||||
%D%/packages/patches/gawk-shell.patch \
|
||||
%D%/packages/patches/gcc-arm-bug-71399.patch \
|
||||
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
|
||||
@@ -1461,6 +1466,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||
%D%/packages/patches/gimp-fix-metadata-editor.patch \
|
||||
%D%/packages/patches/gimp-fix-tiff-load.patch \
|
||||
%D%/packages/patches/git-clar-path-max.patch \
|
||||
%D%/packages/patches/git-filter-repo-generate-doc.patch \
|
||||
%D%/packages/patches/gklib-suitesparse.patch \
|
||||
%D%/packages/patches/glib-appinfo-watch.patch \
|
||||
@@ -1505,7 +1511,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
|
||||
%D%/packages/patches/glibc-supported-locales.patch \
|
||||
%D%/packages/patches/glibc-versioned-locpath.patch \
|
||||
%D%/packages/patches/glycin-sandbox-Adapt-bwrap-invocation.patch \
|
||||
%D%/packages/patches/gmime-disable-tests.patch \
|
||||
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
|
||||
%D%/packages/patches/gmp-faulty-test.patch \
|
||||
@@ -1611,6 +1616,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/hurd-refcounts-assert.patch \
|
||||
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
|
||||
%D%/packages/patches/hurd-startup.patch \
|
||||
%D%/packages/patches/hwloc-1-test-btrfs.patch \
|
||||
%D%/packages/patches/hwloc-add-with-opencl.patch \
|
||||
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
|
||||
%D%/packages/patches/i7z-gcc-10.patch \
|
||||
@@ -1646,7 +1652,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
||||
%D%/packages/patches/ilmbase-fix-tests.patch \
|
||||
%D%/packages/patches/inetutils-drop-test.patch \
|
||||
%D%/packages/patches/inferno-fix-crash.patch \
|
||||
%D%/packages/patches/iniparser-remove-fetchcontent-usage.patch \
|
||||
%D%/packages/patches/inkscape-libxml2.patch \
|
||||
@@ -1658,7 +1663,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
|
||||
%D%/packages/patches/ispell-for-linphone-cmake.patch \
|
||||
%D%/packages/patches/jami-avutil-link.patch \
|
||||
%D%/packages/patches/jami-libjami-cmake.patch \
|
||||
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
|
||||
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
|
||||
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
|
||||
@@ -1670,7 +1674,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/java-commons-collections-fix-java8.patch \
|
||||
%D%/packages/patches/java-guava-remove-annotation-deps.patch \
|
||||
%D%/packages/patches/java-jeromq-fix-tests.patch \
|
||||
%D%/packages/patches/java-jtidy-remove-xerces-dependency.patch \
|
||||
%D%/packages/patches/java-openjfx-build-jdk_version.patch \
|
||||
%D%/packages/patches/java-powermock-fix-java-files.patch \
|
||||
%D%/packages/patches/java-simple-xml-fix-tests.patch \
|
||||
@@ -1679,8 +1682,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
|
||||
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
|
||||
%D%/packages/patches/jbr-17-xcursor-no-dynamic.patch \
|
||||
%D%/packages/patches/jbr-25-wayland-drag-icon.patch \
|
||||
%D%/packages/patches/jbr-25-wayland-intra-jvm-dnd.patch \
|
||||
%D%/packages/patches/jdk-currency-time-bomb.patch \
|
||||
%D%/packages/patches/jdk-currency-time-bomb2.patch \
|
||||
%D%/packages/patches/jfsutils-add-sysmacros.patch \
|
||||
@@ -1697,6 +1698,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/libcss-check-format.patch \
|
||||
%D%/packages/patches/libeb-gcc-14.patch \
|
||||
%D%/packages/patches/libextractor-tidy-support.patch \
|
||||
%D%/packages/patches/libfossil-skip-amalgamation.patch \
|
||||
%D%/packages/patches/libftdi-fix-paths-when-FTDIPP-set.patch \
|
||||
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.1.1.patch \
|
||||
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.3.0.patch \
|
||||
@@ -1972,12 +1974,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/netcdf-date-time.patch \
|
||||
%D%/packages/patches/netdde-build-fix.patch \
|
||||
%D%/packages/patches/netdde-csum.patch \
|
||||
%D%/packages/patches/java-apache-xml-commons-resolver-1.2-netbeans.patch \
|
||||
%D%/packages/patches/java-simplevalidation-1.14.1.patch \
|
||||
%D%/packages/patches/netbeans-25-nativeexecution-paths.patch \
|
||||
%D%/packages/patches/netbeans-25-terminal-no-login-shell.patch \
|
||||
%D%/packages/patches/netbeans-25-source-only-build.patch \
|
||||
%D%/packages/patches/netbeans-25-wayland-font-rendering.patch \
|
||||
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
|
||||
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
|
||||
%D%/packages/patches/netsurf-message-timestamp.patch \
|
||||
@@ -2007,7 +2003,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/nvi-assume-preserve-path.patch \
|
||||
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
|
||||
%D%/packages/patches/nvi-db4.patch \
|
||||
%D%/packages/patches/obs-advanced-masks-nlohmann-json.patch \
|
||||
%D%/packages/patches/obs-modules-location.patch \
|
||||
%D%/packages/patches/ocaml-ctypes-test-oo.patch \
|
||||
%D%/packages/patches/ocaml-multiple-definitions.patch \
|
||||
@@ -2073,7 +2068,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/open-zwave-hidapi.patch \
|
||||
%D%/packages/patches/opusfile-CVE-2022-47021.patch \
|
||||
%D%/packages/patches/orbit2-fix-array-allocation-32bit.patch \
|
||||
%D%/packages/patches/orca-fix-gst-init-check-call.patch \
|
||||
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
|
||||
%D%/packages/patches/ots-no-include-missing-file.patch \
|
||||
%D%/packages/patches/owncloud-disable-updatecheck.patch \
|
||||
@@ -2176,8 +2170,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/perl-www-curl-remove-symbol.patch \
|
||||
%D%/packages/patches/perl-xml-libxml-fix-function-prototypes.patch \
|
||||
%D%/packages/patches/phoronix-test-suite-fsdg.patch \
|
||||
%D%/packages/patches/php-01-fix-expired-certificate.patch \
|
||||
%D%/packages/patches/php-02-fix-sni-tests.patch \
|
||||
%D%/packages/patches/picprog-non-intel-support.patch \
|
||||
%D%/packages/patches/pidgin-add-search-path.patch \
|
||||
%D%/packages/patches/pinball-system-ltdl.patch \
|
||||
@@ -2281,6 +2273,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
|
||||
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||
%D%/packages/patches/quagga-reproducible-build.patch \
|
||||
%D%/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch \
|
||||
%D%/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch \
|
||||
%D%/packages/patches/quilt-grep-compat.patch \
|
||||
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
|
||||
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
|
||||
@@ -2354,16 +2348,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/renpy-fix-integer-slots.patch \
|
||||
%D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \
|
||||
%D%/packages/patches/rdkit-unbundle-external-dependencies.patch \
|
||||
%D%/packages/patches/r-biostrings-r4.6.0-compat.patch \
|
||||
%D%/packages/patches/r-h5mread-0001-h5mread-1.3.2-Get-rid-of-non-API-calls-to-R.patch \
|
||||
%D%/packages/patches/r-httpuv-1.6.6-unvendor-libuv.patch \
|
||||
%D%/packages/patches/r-mscoreutils-0001-fix-non-API-call-to-R-SETLENGTH-by-using-lengthgets.patch \
|
||||
%D%/packages/patches/r-rsamtools-r-4.6.0-compat.patch \
|
||||
%D%/packages/patches/r-snpstats-0001-fixed-non-API-except-for-IS_S4_OBJECT.patch \
|
||||
%D%/packages/patches/r-snpstats-0002-fixed-IS_S4_OBJECT.patch \
|
||||
%D%/packages/patches/r-sapa-lapack.patch \
|
||||
%D%/packages/patches/r-shortread-0001-ShortRead-1.69.3-Get-rid-of-non-API-calls-to-R.patch \
|
||||
%D%/packages/patches/r-sparsearray-r-4.6.0-compat.patch \
|
||||
%D%/packages/patches/ripperx-missing-file.patch \
|
||||
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
|
||||
%D%/packages/patches/rtosc-0.3.1-fix-invalid-comparison-operator.patch \
|
||||
@@ -2408,14 +2394,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
|
||||
%D%/packages/patches/rust-codex-0.98.0-test-timeout.patch \
|
||||
%D%/packages/patches/rust-codex-0.98.0-windows-sandbox-protocol-version.patch \
|
||||
%D%/packages/patches/rust-codex-0.117.0-core-remove-self-dep.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-core-remove-self-dep.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-connectors-cache-test-race.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-remove-libwebrtc.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-test-timeout.patch \
|
||||
%D%/packages/patches/rust-codex-0.124.0-code-mode-stub-toolname.patch \
|
||||
%D%/packages/patches/rust-codex-0.124.0-remove-patch-sections.patch \
|
||||
%D%/packages/patches/rust-librocksdb-sys-unbundled-sources.patch \
|
||||
%D%/packages/patches/rust-ring-0.17-ring-core.patch \
|
||||
%D%/packages/patches/rw-igraph-0.10.patch \
|
||||
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
|
||||
@@ -2614,7 +2592,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
|
||||
%D%/packages/patches/webrtc-audio-processing-byte-order-pointer-size.patch \
|
||||
%D%/packages/patches/webrtc-audio-processing-x86-no-sse.patch \
|
||||
%D%/packages/patches/websocketpp-boost-compat.patch \
|
||||
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
|
||||
%D%/packages/patches/wmctrl-64-fix.patch \
|
||||
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
|
||||
|
||||
@@ -202,7 +202,7 @@ Have you run 'guix archive --generate-key'?")
|
||||
(build-locally? hetzner-configuration-build-locally? ; boolean
|
||||
(default #t))
|
||||
(delete? hetzner-configuration-delete? ; boolean
|
||||
(default #t))
|
||||
(default #f))
|
||||
(labels hetzner-configuration-labels ; list of strings
|
||||
(default '()))
|
||||
(location hetzner-configuration-location ; #f | string
|
||||
@@ -395,7 +395,9 @@ Available locations:~%~%~a~%~%For more details, see: ~a")
|
||||
(type ,root-fs-type))
|
||||
%base-file-systems))))
|
||||
(services
|
||||
(cons* (service dhcpcd-service-type)
|
||||
;; guix 1.4.0 does not have dhcpcd-service-type,
|
||||
;; so we use dhcp-client-service-type here.
|
||||
(cons* (service dhcp-client-service-type)
|
||||
(service openssh-service-type
|
||||
(openssh-configuration
|
||||
(openssh openssh-sans-x)
|
||||
@@ -585,9 +587,9 @@ chmod 600 /mnt/root/.ssh/authorized_keys
|
||||
|
||||
# Small instance don't have much disk space. Bind mount the store of the
|
||||
# rescue system to the tmp directory of the new Guix system.
|
||||
mkdir -p /mnt/tmp/gnu
|
||||
mkdir -p /gnu
|
||||
mount --bind /mnt/tmp/gnu /gnu
|
||||
mkdir -p /mnt/tmp/gnu/store
|
||||
mkdir -p /gnu/store
|
||||
mount --bind /mnt/tmp/gnu/store /gnu/store
|
||||
|
||||
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
|
||||
chmod +x /tmp/guix-install.sh
|
||||
|
||||
@@ -185,7 +185,7 @@ terminals.")
|
||||
(native-inputs
|
||||
(append
|
||||
(list clisp
|
||||
python-cython-0 ;; See https://bugzilla.redhat.com/show_bug.cgi?id=2231865
|
||||
python-cython
|
||||
doxygen
|
||||
gettext-minimal)
|
||||
;; icedtea doesn't build reliably on all architectures.
|
||||
|
||||
+53
-92
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012-2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012-2025 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
||||
;;; Copyright © 2014, 2015, 2016, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015-2018, 2020-2023 Eric Bavier <bavier@posteo.net>
|
||||
@@ -1158,7 +1158,7 @@ on memory usage on GNU/Linux systems.")
|
||||
(define-public htop
|
||||
(package
|
||||
(name "htop")
|
||||
(version "3.5.1")
|
||||
(version "3.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1166,7 +1166,7 @@ on memory usage on GNU/Linux systems.")
|
||||
(url "https://github.com/htop-dev/htop")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "187gyj081n6qsidll5wdri3jkr4m2i4m461z3xv03y342f5yj3lv"))
|
||||
(base32 "058y4a4mvx9m179dyr4wi8mlm6i4ybywshadaj4cvfn9fv0r0nkx"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -1309,8 +1309,7 @@ re-executing them as necessary.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))
|
||||
(patches (search-patches "inetutils-drop-test.patch"))))
|
||||
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1972,7 +1971,7 @@ maintenance releases.")
|
||||
(define-public dhcpcd
|
||||
(package
|
||||
(name "dhcpcd")
|
||||
(version "10.3.2")
|
||||
(version "10.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1981,7 +1980,7 @@ maintenance releases.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1z5rpi0n2vwhkh3c4d0dxwp38fl18br58jpy7kzh97gzg3gpk5dl"))))
|
||||
(base32 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
|
||||
(inputs (list bash-minimal coreutils-minimal eudev sed))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -3442,7 +3441,7 @@ modules and plugins that extend Ansible.")
|
||||
(list ansible
|
||||
bash-minimal
|
||||
encfs
|
||||
fuse
|
||||
fuse-2
|
||||
util-linux ;; for umount
|
||||
findutils
|
||||
git
|
||||
@@ -3751,68 +3750,59 @@ summarizes network bandwidth by process and remote host.")
|
||||
(define-public munge
|
||||
(package
|
||||
(name "munge")
|
||||
(version "0.5.18")
|
||||
(version "0.5.14")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dun/munge")
|
||||
(commit (string-append "munge-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/dun/munge/releases/"
|
||||
"download/munge-" version "/munge-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1b7gm680dlvmgvj9vxy7n0cqmnv1rl9n4563vasxdxx54f78j30s"))
|
||||
"0h06sghb4rqvv1ywyd6mzsmbcgh712v6ygrff0gzm440y4ca41k6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Don't insist on write access to /var.
|
||||
#~(substitute* "src/etc/Makefile.am"
|
||||
(("\\$\\(MKDIR_P\\) .*(local|run)statedir.*" all)
|
||||
(string-append ": " all))))))
|
||||
'(begin
|
||||
;; Don't insist on write access to /var.
|
||||
(substitute* "src/etc/Makefile.in"
|
||||
(("\\$\\(INSTALL\\)(.*)localstatedir" _ middle)
|
||||
(string-append "-$(INSTALL)" middle "localstatedir"))
|
||||
(("\\$\\(MKDIR_P\\) .*(local|run)statedir.*")
|
||||
""))
|
||||
#t))))
|
||||
(inputs
|
||||
(list openssl libgcrypt))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
libtool
|
||||
procps)) ;for tests
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "--localstatedir=/var"
|
||||
"--disable-static"
|
||||
#$@(if (%current-target-system)
|
||||
;; Assume yes on pipes when cross compiling.
|
||||
`("ac_cv_file__dev_spx=yes"
|
||||
"x_ac_cv_check_fifo_recvfd=yes")
|
||||
'())
|
||||
|
||||
;; The '.pc' file is not installed when omitting this flag.
|
||||
(string-append "--with-pkgconfigdir="
|
||||
#$output "/lib/pkgconfig"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'pre-bootstrap
|
||||
(lambda _
|
||||
(for-each patch-shebang (find-files "build-aux"))))
|
||||
(add-after 'unpack 'skip-failing-tests
|
||||
(lambda _
|
||||
;; Pass '--force' to 'munged'; without it, it fails with "Socket
|
||||
;; is inaccessible" due to the build directory not being
|
||||
;; world-readable.
|
||||
(substitute* "tests/sharness.d/03-munged.sh"
|
||||
(("--group-update-time=-1" all)
|
||||
(string-append all " --force")))
|
||||
|
||||
;; The tests below invoke 'sudo' or have special expectations
|
||||
;; about network interfaces.
|
||||
(for-each (lambda (test)
|
||||
(substitute* "tests/Makefile.am"
|
||||
(((string-append test "\\.t "))
|
||||
"")))
|
||||
(list "0100-munged-lock"
|
||||
"0101-munged-security-socket"
|
||||
"0102-munged-security-keyfile"
|
||||
"0103-munged-security-logfile"
|
||||
"0110-munged-origin-addr")))))))
|
||||
`(#:configure-flags
|
||||
(list "--localstatedir=/var"
|
||||
(string-append "--with-pkgconfigdir="
|
||||
(assoc-ref %outputs "out") "/lib/pkgconfig")
|
||||
(string-append "--with-libgcrypt-prefix="
|
||||
(assoc-ref %build-inputs "libgcrypt"))
|
||||
,@(if (%current-target-system)
|
||||
;; Assume yes on pipes when cross compiling.
|
||||
`("ac_cv_file__dev_spx=yes"
|
||||
"x_ac_cv_check_fifo_recvfd=yes")
|
||||
'()))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; XXX Many test series fail. Some might be fixable, others do no-no
|
||||
;; things like invoking ‘sudo’.
|
||||
(add-after 'unpack 'skip-failing-tests
|
||||
(lambda _
|
||||
(for-each (lambda (test)
|
||||
(substitute* "t/Makefile.in"
|
||||
(((string-append test "\\.t ")) "")))
|
||||
(list "0100-munged-lock"
|
||||
"0010-basic"
|
||||
"0011-munged-cmdline"
|
||||
"0012-munge-cmdline"
|
||||
"0013-unmunge-cmdline"
|
||||
"0101-munged-security-socket"
|
||||
"0102-munged-security-keyfile"
|
||||
"0103-munged-security-logfile"
|
||||
"0110-munged-origin-addr"))
|
||||
#t)))))
|
||||
(home-page "https://dun.github.io/munge/")
|
||||
(synopsis "Cluster computing authentication service")
|
||||
(description
|
||||
@@ -7052,7 +7042,7 @@ network, which causes enabled computers to power on.")
|
||||
(define-public witr
|
||||
(package
|
||||
(name "witr")
|
||||
(version "0.3.1")
|
||||
(version "0.1.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -7061,7 +7051,7 @@ network, which causes enabled computers to power on.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03v9n4mdvqm0knqjl4s64321i5clqpmlrlkkdb87glzb9p28sg00"))))
|
||||
(base32 "18xx01lxd5j019gy9jmpms3awv4snlr028w01bfkyfid6hlwxbq2"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -7179,35 +7169,6 @@ stored in an SQL database.")
|
||||
(connects via USB OTG).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public yoctofetch
|
||||
(package
|
||||
(name "yoctofetch")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/Phosphenius/yoctofetch.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0smkaydv74p2231gafibvqbwsy469w56hya8gz8wq0gw7m2l7zh3"))))
|
||||
; Support for other platforms not available per upstream:
|
||||
; https://codeberg.org/Phosphenius/yoctofetch#supported-platforms
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux"))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ; No tests available.
|
||||
(home-page "https://codeberg.org/Phosphenius/yoctofetch")
|
||||
(synopsis "Fast and low footprint system fetch tool for the Linux UAPI")
|
||||
(description
|
||||
"This package provides a system fetch tool, similar to
|
||||
@command{neofetch}, @command{fastfetch}, etc. It is lightweight and
|
||||
has a focus on performance. It can be used as a greeter by starting
|
||||
it from @file{~/.bashrc} for example.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public zzz
|
||||
(package
|
||||
(name "zzz")
|
||||
|
||||
@@ -458,7 +458,7 @@ precision.")
|
||||
(inputs
|
||||
;; TODO: Unbundle "libmicropython.a".
|
||||
(list ao
|
||||
fltk
|
||||
fltk-1.3
|
||||
glpk
|
||||
gmp
|
||||
gsl
|
||||
|
||||
@@ -238,12 +238,12 @@ contains the graphical user interface for synfig.")
|
||||
(when tests?
|
||||
(invoke "./tests")))))))
|
||||
(native-inputs
|
||||
(cons* gettext-minimal
|
||||
`(,glib "bin")
|
||||
perl
|
||||
pkg-config
|
||||
python-wrapper
|
||||
(maybe-nasm)))
|
||||
(list gettext-minimal
|
||||
`(,glib "bin")
|
||||
nasm
|
||||
perl
|
||||
pkg-config
|
||||
python-wrapper))
|
||||
(inputs
|
||||
(list cairo
|
||||
curl
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016, 2020, 2021, 2025, 2026 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2020, 2021, 2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
|
||||
;;; Copyright © 2019, 2022, 2024 Andy Tai <atai@atai.org>
|
||||
@@ -43,7 +43,6 @@
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages autotools)
|
||||
@@ -249,16 +248,6 @@ complex. It supports all currently known x86 architectural extensions, and
|
||||
has strong support for macros.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define* (maybe-nasm #:optional
|
||||
(system (or (%current-target-system)
|
||||
(%current-system))))
|
||||
;; For some packages nasm is only needed when compiling to/for x86/x86_64.
|
||||
(if (target-x86? system)
|
||||
(list nasm)
|
||||
'()))
|
||||
|
||||
(export maybe-nasm)
|
||||
|
||||
(define-public yasm
|
||||
(package
|
||||
(name "yasm")
|
||||
|
||||
+305
-1048
File diff suppressed because it is too large
Load Diff
+39
-151
@@ -51,7 +51,7 @@
|
||||
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
|
||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||
;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
|
||||
;;; Copyright © 2025, 2026 Junker <dk@junkeria.club>
|
||||
;;; Copyright © 2025 Junker <dk@junkeria.club>
|
||||
;;; Copyright © 2025 Sughosha <sughosha@disroot.org>
|
||||
;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
|
||||
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
|
||||
@@ -127,7 +127,6 @@
|
||||
#:use-module (gnu packages linphone)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages logging)
|
||||
#:use-module (gnu packages machine-learning)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages maths)
|
||||
@@ -195,45 +194,6 @@
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public adplug
|
||||
(package
|
||||
(name "adplug")
|
||||
(version "2.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/adplug/adplug")
|
||||
(commit (string-append "adplug-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0l31ya42g3q7ry2m0y5djgjb9ax8ciy8jn86252vdjkjswwqgscd"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON")
|
||||
#:modules
|
||||
'((guix build cmake-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-26)) ;for cute
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-headers
|
||||
(lambda _
|
||||
(for-each (cute install-file <>
|
||||
(string-append #$output "/include/adplug"))
|
||||
(find-files "../source/src" "\\.h$")))))))
|
||||
(propagated-inputs
|
||||
(list libbinio))
|
||||
(home-page "https://adplug.github.io/")
|
||||
(synopsis "AdLib sound player library")
|
||||
(description
|
||||
"AdPlug is a hardware independent AdLib sound player library, mainly
|
||||
written in C++. AdPlug plays sound data, originally created for the AdLib
|
||||
(OPL2/3) audio board, on top of an OPL2/3 emulator or by using the real
|
||||
hardware. No OPL2/3 chips are required for playback.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public opensles
|
||||
(package
|
||||
(name "opensles")
|
||||
@@ -436,6 +396,7 @@ displays a histogram of the roundtrip time jitter.")
|
||||
"webrtc-audio-processing-x86-no-sse.patch"))))))
|
||||
#~%standard-phases)))
|
||||
(native-inputs (list pkg-config))
|
||||
(propagated-inputs (list abseil-cpp))
|
||||
(inputs (list abseil-cpp))
|
||||
(synopsis "WebRTC's Audio Processing Library")
|
||||
(description "WebRTC-Audio-Processing library based on Google's
|
||||
@@ -586,15 +547,17 @@ synth (like DX7) or FM chip.")
|
||||
(define-public libgme
|
||||
(package
|
||||
(name "libgme")
|
||||
(version "0.6.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/mpyne/game-music-emu/"
|
||||
"downloads/game-music-emu-" version
|
||||
".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07857vdkak306d9s5g6fhmjyxk7vijzjhkmqb15s7ihfxx9lx8xb"))))
|
||||
(version "0.6.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/libgme/game-music-emu")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "093pz3avnj6a230bqbwwzqlzcjxnxidfxipnn7zirwp3h396szff"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ;no check target
|
||||
@@ -603,7 +566,7 @@ synth (like DX7) or FM chip.")
|
||||
;; header file names in libgme.so, meaning that libgme retains a
|
||||
;; reference to GCC. Disable UBSAN to avoid that.
|
||||
#:configure-flags '("-DENABLE_UBSAN=OFF")))
|
||||
(home-page "https://bitbucket.org/mpyne/game-music-emu")
|
||||
(home-page "https://github.com/libgme/game-music-emu/wiki")
|
||||
(synopsis "Video game music file playback library")
|
||||
(description
|
||||
"Game-music-emu is a collection of video game music file emulators that
|
||||
@@ -1250,7 +1213,7 @@ PulseAudio clients, featuring:
|
||||
(define-public ardour
|
||||
(package
|
||||
(name "ardour")
|
||||
(version "9.2")
|
||||
(version "9.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1267,7 +1230,7 @@ PulseAudio clients, featuring:
|
||||
namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }")))))
|
||||
(sha256
|
||||
(base32
|
||||
"14s6cq3x7l7b682ah9k8cdr6plfirlgm882dc2nm51lxwl91zcfd"))
|
||||
"00bramm8dq0ihr376n7l9rg0mjzxmzw6lxvsbsdlrdsimfwsy16p"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
@@ -4505,33 +4468,6 @@ This includes device enumeration and initialization, file loading, and
|
||||
streaming.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public wp-notifyd
|
||||
(package
|
||||
(name "wp-notifyd")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/LDAP/wp-notifyd")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1nkndz0li15maf0dc9x631p0dr8085wzz5358552wljv7chywrza"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;there are no tests
|
||||
(inputs (list libnotify
|
||||
wireplumber-minimal
|
||||
pipewire
|
||||
spdlog))
|
||||
(native-inputs (list pkg-config))
|
||||
(home-page "https://github.com/LDAP/wp-notifyd")
|
||||
(synopsis "Notification daemon for Wireplumber")
|
||||
(description "@command{wp-notifyd} is a lightweight notification daemon for
|
||||
@dfn{WirePlumber} (the session and policy manager for PipeWire).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public pa-notify
|
||||
(package
|
||||
(name "pa-notify")
|
||||
@@ -4936,42 +4872,6 @@ using Guix System.")
|
||||
;; GNU Library (not Lesser) General Public License.
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public hiir
|
||||
(let ((commit "4a9a1e67fa6f8ce7688e1c0c8a2b017cecd206a3")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "hiir")
|
||||
(version (git-version "0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/LostRobotMusic/hiir")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wzlg0di768mzcik6fij4pd6dnpmbw8q236h478c057d10qfp44g"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-plan
|
||||
#~`(("." "/include/hiir"))))
|
||||
(home-page "https://github.com/LostRobotMusic/hiir")
|
||||
(synopsis "Header-only version of Laurent de Soras's HIIR 1.40 library")
|
||||
(description
|
||||
"This package provides a header-only version of the
|
||||
@uref{http://ldesoras.free.fr/prod.html#src_hiir, HIIR library by Laurent De
|
||||
Soras}, updated to version 1.40. HIIR is a C++ library for changing the
|
||||
sampling rate of a signal by a factor two, in both directions (upsampling and
|
||||
downsampling), obtaining two signals with a π/2 phase difference (Hilbert
|
||||
transform). It is made of a two-path polyphase IIR filter, implemented with
|
||||
FPU, 3DNow!, SSE, SSE2, AVX, AVX-512 and NEON instruction sets.
|
||||
|
||||
This package contains the same as the original library, except with the
|
||||
contents of one source file moved into a header file (and set as inline) to
|
||||
make the library header-only, and with the test folder removed.")
|
||||
(license license:wtfpl2))))
|
||||
|
||||
(define-public redumper
|
||||
(package
|
||||
(name "redumper")
|
||||
@@ -6632,23 +6532,22 @@ on the ALSA software PCM plugin.")
|
||||
(define-public snd
|
||||
(package
|
||||
(name "snd")
|
||||
(version "26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ccrma.stanford.edu/software/snd/snd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1d573mjlrn9rhl9g0a3d1rkar34q60ln8mwlbibfalpn8lsz59a0"))))
|
||||
(version "25.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
|
||||
"snd-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fgxqk0byxdj6059mb9d5qic2dqjabz49j0szsrn2y3c9nz6iyq4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests.
|
||||
#:out-of-source? #f ; Required by 'install-doc'.
|
||||
#:tests? #f ; no tests
|
||||
#:out-of-source? #f ; for the 'install-doc' phase
|
||||
#:configure-flags
|
||||
#~(let
|
||||
((docdir (string-append #$output "/share/doc/snd-" #$version)))
|
||||
#~(let ((docdir (string-append #$output "/share/doc/"
|
||||
#$name "-" #$version)))
|
||||
(list "--with-alsa"
|
||||
"--with-jack"
|
||||
"--with-gmp"
|
||||
@@ -6656,20 +6555,18 @@ on the ALSA software PCM plugin.")
|
||||
(string-append "--with-doc-dir=" docdir)))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-s7-h
|
||||
(add-after 'install 'install-s7
|
||||
(lambda _
|
||||
(install-file "s7.h" (string-append #$output
|
||||
"/include"))))
|
||||
(install-file "s7.h" (string-append #$output "/include"))))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda _
|
||||
(let
|
||||
((docdir (string-append #$output "/share/doc/snd-"
|
||||
#$version)))
|
||||
(let ((doc (string-append #$output "/share/doc/"
|
||||
#$name "-" #$version)))
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(install-file f docdir))
|
||||
(install-file f doc))
|
||||
(find-files "." "\\.html$"))
|
||||
(copy-recursively "pix" (string-append docdir "/pix"))))))))
|
||||
(copy-recursively "pix" (string-append doc "/pix"))))))))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
@@ -6688,16 +6585,13 @@ on the ALSA software PCM plugin.")
|
||||
timidity++
|
||||
vorbis-tools
|
||||
wavpack))
|
||||
(home-page "https://ccrma.stanford.edu/software/snd/snd/snd.html")
|
||||
(synopsis "Sound editor")
|
||||
(home-page "https://ccrma.stanford.edu/software/snd/")
|
||||
(description
|
||||
"Snd is a sound editor modelled loosely after Emacs. It can be
|
||||
customized and extended using either the s7 Scheme implementation (included in
|
||||
the Snd sources), Ruby, or Forth.")
|
||||
(license
|
||||
;; INFO: pkgsrc classifies this as `esdl-license', a license not included
|
||||
;; in OSI or FSF lists, despite being similar to ISC.
|
||||
(license:non-copyleft "file://COPYING"))))
|
||||
(license (license:non-copyleft "file://COPYING"))))
|
||||
|
||||
(define-public libspecbleach
|
||||
(package
|
||||
@@ -7368,7 +7262,6 @@ as is the case with audio plugins.")
|
||||
(find-files "bin")))))))))
|
||||
(inputs
|
||||
(list alsa-lib
|
||||
bash-minimal
|
||||
ffmpeg
|
||||
fluidsynth
|
||||
file
|
||||
@@ -7426,8 +7319,8 @@ default and preferred audio driver but also supports native drivers like ALSA.")
|
||||
|
||||
;;; This package variant tracks the latest in-development 2.6 release.
|
||||
(define-public carla-2.6
|
||||
(let ((commit "294a80145e39c0755ab9073d90fd8b9524fbfc84")
|
||||
(revision "1"))
|
||||
(let ((commit "aa400535b31c67f4b6c1b28e6e20e4d4f82111a3")
|
||||
(revision "0"))
|
||||
(package
|
||||
(inherit carla)
|
||||
(name "carla")
|
||||
@@ -7441,12 +7334,7 @@ default and preferred audio driver but also supports native drivers like ALSA.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "053yfwf9l9vqvq95c354by6nm8ym0wgkv3fr1434x5w9n1344z0z"))))
|
||||
(inputs
|
||||
(modify-inputs (package-inputs carla)
|
||||
(replace "python-pyqt" python-pyqt-6)
|
||||
(replace "qtbase" qtbase)
|
||||
(replace "qtwayland" qtwayland))))))
|
||||
(base32 "0cnj2sgr60f5h6wdfmihc214wf3n74686sipl3iyzmylqrcyhbjn")))))))
|
||||
|
||||
;; This source is a fork of vst3sdk with the documentation and VSTGUI
|
||||
;; submodules removed and a dummy `meson.build` file that just lists all
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
;; -*- 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=m
|
||||
# CONFIG_SCSI_VIRTIO is not set
|
||||
# CONFIG_SCSI_DH is not set
|
||||
# end of SCSI device support
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -14,7 +14,6 @@
|
||||
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
|
||||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
|
||||
;;; Copyright © 2023 Advanced Micro Devices, Inc.
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -42,7 +41,6 @@
|
||||
#:use-module (guix amd-gpu)
|
||||
#:use-module (guix search-paths)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system qt)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system pyproject)
|
||||
@@ -732,7 +730,7 @@ and options. With careful benchmarking, different hardware can be compared.")
|
||||
(define-public kdiskmark
|
||||
(package
|
||||
(name "kdiskmark")
|
||||
(version "3.2.0")
|
||||
(version "3.1.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -741,13 +739,14 @@ and options. With careful benchmarking, different hardware can be compared.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"161yyy4fcy5bnzhbcd7p90nlcslcsfp7n3m3bz9bygch7bdjw46g"))))
|
||||
(build-system qt-build-system)
|
||||
"1x8vd6swmf0i7f6m6wl2154n6plx8jkmcqfq6zxbdy255f1da74c"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:qtbase qtbase
|
||||
#:configure-flags
|
||||
#~(list (string-append "-DPOLKITQT-1_INSTALL_DIR=" #$output))
|
||||
;; Drop runtime dependency on KDE's KFAuth.
|
||||
#~(list "-DPERFORM_PAGECACHE_CLEARING_USING_KF5AUTH=no"
|
||||
(string-append "-DPOLKITQT-1_INSTALL_DIR=" #$output))
|
||||
#:tests? #f ;no test suite
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
@@ -760,10 +759,10 @@ and options. With careful benchmarking, different hardware can be compared.")
|
||||
(lambda _
|
||||
(rmdir "src/singleapplication")
|
||||
(symlink #$(package-source
|
||||
(this-package-input "single-application"))
|
||||
(this-package-input "single-application-qt5"))
|
||||
"src/singleapplication"))))))
|
||||
(native-inputs (list extra-cmake-modules qttools))
|
||||
(inputs (list fio polkit-qt6 single-application qtwayland))
|
||||
(native-inputs (list extra-cmake-modules qttools-5))
|
||||
(inputs (list fio polkit-qt qtbase-5 single-application-qt5))
|
||||
(home-page "https://github.com/JonMagon/KDiskMark")
|
||||
(synopsis "Simple disk benchmark tool")
|
||||
(description "KDiskMark is an HDD and SSD benchmark tool. KDiskMark
|
||||
|
||||
+593
-483
File diff suppressed because it is too large
Load Diff
+111
-10
@@ -913,7 +913,7 @@ suite native in R.")
|
||||
(define-public r-bpcells
|
||||
(package
|
||||
(name "r-bpcells")
|
||||
(version "0.3.1")
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -922,7 +922,7 @@ suite native in R.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0yqgcajq83g25mznwcngaw7pi6vcqxqdnynpgb95yci57k3wrp6j"))
|
||||
(base32 "12h1di45fg06nhsliii7v0h1z567pkpis1xm4ar1qr8ns1n8iljw"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(delete-file-recursively "r/src/vendor/highway"))))
|
||||
@@ -931,15 +931,13 @@ suite native in R.")
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
`(modify-phases %standard-phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _ (chdir "r")))
|
||||
,@(if (target-x86-32?)
|
||||
'((add-after 'chdir 'require-sse2
|
||||
;; This avoids falling back to the scalar backend in
|
||||
;; highway, which fails to build.
|
||||
(lambda _ (setenv "CFLAGS" "-msse2"))))
|
||||
'()))))
|
||||
(lambda _
|
||||
(substitute* "r/configure"
|
||||
(("tools/hwy-test.cpp" m)
|
||||
(string-append m " $HWY_LIBS $HWY_CFLAGS")))
|
||||
(chdir "r"))))))
|
||||
(propagated-inputs
|
||||
(list r-dplyr
|
||||
r-ggplot2
|
||||
@@ -7651,6 +7649,78 @@ reads at a typical sensitivity of 90-99% relative to BLAST depending on the
|
||||
data and settings.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public discrover
|
||||
(package
|
||||
(name "discrover")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/maaskola/discrover")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"173fwi2vb6a5kp406hm3jj6j7v4whww796f2qcygp4rpvamh307y"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; there are no tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'set-force-source-date
|
||||
;; for reproducible dates, texlive needs this to respect
|
||||
;; SOURCE_DATE_EPOCH
|
||||
(lambda _
|
||||
(setenv "FORCE_SOURCE_DATE" "1")))
|
||||
(add-before 'build 'use-writable-texmfvar
|
||||
;; Use writable TEXMFVAR to generate fonts.
|
||||
(lambda _
|
||||
(setenv "TEXMFVAR" "/tmp")))
|
||||
(add-after 'unpack 'fix-latex-errors
|
||||
(lambda _
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(substitute* "doc/references.bib"
|
||||
(("\\{S\\}illanp[^,]+,")
|
||||
"{S}illanp{\\\"a}{\\\"a},")))
|
||||
;; XXX: I just can't get pdflatex to not complain about these
|
||||
;; characters. They end up in the manual via the generated
|
||||
;; discrover-cli-help.txt.
|
||||
(substitute* "src/hmm/cli.cpp"
|
||||
(("µ") "mu")
|
||||
(("η") "eta")
|
||||
(("≤") "<="))
|
||||
;; This seems to be a syntax error.
|
||||
(substitute* "doc/discrover-manual.tex"
|
||||
(("theverbbox\\[t\\]") "theverbbox"))))
|
||||
(add-after 'unpack 'add-missing-includes
|
||||
(lambda _
|
||||
(substitute* "src/executioninformation.hpp"
|
||||
(("#define EXECUTIONINFORMATION_HPP" line)
|
||||
(string-append line "\n#include <random>")))
|
||||
(substitute* "src/plasma/fasta.hpp"
|
||||
(("#define FASTA_HPP" line)
|
||||
(string-append line "\n#include <random>"))))))))
|
||||
(inputs
|
||||
(list boost cairo rmath-standalone))
|
||||
(native-inputs
|
||||
(list (texlive-local-tree
|
||||
(list texlive-doi
|
||||
texlive-etoolbox
|
||||
texlive-examplep
|
||||
texlive-forloop
|
||||
texlive-listofitems
|
||||
texlive-natbib
|
||||
texlive-pgf ;tikz
|
||||
texlive-readarray
|
||||
texlive-verbatimbox))
|
||||
imagemagick))
|
||||
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
|
||||
(synopsis "Discover discriminative nucleotide sequence motifs")
|
||||
(description "Discrover is a motif discovery method to find binding sites
|
||||
of nucleic acid binding proteins.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public eddylab-squid
|
||||
(package
|
||||
(name "eddylab-squid")
|
||||
@@ -22279,6 +22349,37 @@ combinatorial configurations.\", G. Ehrlich - Journal of the ACM (JACM),
|
||||
1973. (Algorithm 7.)")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public fsom
|
||||
(let ((commit "a6ef318fbd347c53189384aef7f670c0e6ce89a3"))
|
||||
(package
|
||||
(name "fsom")
|
||||
(version (git-version "0.0.0" "1" commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ekg/fsom/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0gw1lpvr812pywg9y546x0h1hhj261xwls41r6kqhddjlrcjc0pi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; There are no tests to run.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure) ; There is no configure phase.
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
|
||||
(install-file "fsom" bin)))))))
|
||||
(native-inputs
|
||||
(list gcc-6))
|
||||
(home-page "https://github.com/ekg/fsom")
|
||||
(synopsis "Manage SOM (Self-Organizing Maps) neural networks")
|
||||
(description "A tiny C library for managing SOM (Self-Organizing Maps)
|
||||
neural networks.")
|
||||
(license license:gpl3))))
|
||||
|
||||
(define-public fastahack
|
||||
(package
|
||||
(name "fastahack")
|
||||
|
||||
@@ -328,15 +328,15 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
|
||||
(define noscript
|
||||
(package
|
||||
(name "noscript")
|
||||
(version "13.6.18.1984")
|
||||
(version "13.2.2")
|
||||
(source (origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append
|
||||
"https://archive.torproject.org/tor-package-archive/torbrowser/noscript/noscript-"
|
||||
version ".xpi"))
|
||||
"https://noscript.net/download/releases/noscript-" version
|
||||
".xpi"))
|
||||
(sha256
|
||||
(base32
|
||||
"0assv8v89hhg302q81vvv7ln3q8k9m6rzjkbprv2j05ghb23kkvm"))))
|
||||
"0w2w0a76dk01bkh83mqwgs9ky02rjqk15z5sxg4a6mw0hpr81bpm"))))
|
||||
(build-system copy-build-system)
|
||||
(properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}")))
|
||||
(arguments
|
||||
|
||||
@@ -275,14 +275,14 @@ generate such a compilation database.")
|
||||
(define-public bmake
|
||||
(package
|
||||
(name "bmake")
|
||||
(version "20260406")
|
||||
(version "20260313")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "09nzd9v12n2pwxmf67056kzjnvxcpk5q2x1fs5qkrsk1ssh5yvpd"))
|
||||
(base32 "0xgryknmv625idw37rq89mpl5rymwdb15j5w8zxwy1gf8b6z7j3n"))
|
||||
(patches (search-patches "bmake-run-check-separately.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
@@ -1452,36 +1452,3 @@ It is an alternative to e.g. @command{make(1)} and @command{redo(1)}. Features:
|
||||
@end itemize
|
||||
")
|
||||
(license license:wtfpl2)))
|
||||
|
||||
(define-public xmake
|
||||
(package
|
||||
(name "xmake")
|
||||
(version "3.0.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xmake-io/xmake.git")
|
||||
(commit (string-append "v" version))
|
||||
;; Requires some dependencies from "xmake-core-*" repos
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1pdjz52w9lzfbcpx9wmzy0bsjg7i19xz43f63czk7jz9v0xba6gi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; No check rule in make
|
||||
;; TODO: find how to run Lua tests in "test" directory
|
||||
#:tests? #f))
|
||||
(home-page "https://xmake.io/")
|
||||
(synopsis "Cross-platform build utility based on Lua")
|
||||
(description "@command{xmake} is a cross-platform build utility based on Lua.
|
||||
Features:
|
||||
@itemize
|
||||
@item Built-in caching and parallel compilation,
|
||||
@item Concise Lua syntax,
|
||||
@item Custom rules, plugins and modules,
|
||||
@item Support for C++20 modules and compile_commands.json,
|
||||
@item Support for languages outside C/C++ (e.g. Go, Rust, Zig).
|
||||
@end itemize")
|
||||
(license license:asl2.0)))
|
||||
|
||||
+22
-46
@@ -23,7 +23,7 @@
|
||||
;;; Copyright © 2023, 2024 David Elsing <david.elsing@posteo.net>
|
||||
;;; Copyright @ 2022, Kitzman <kitzman@disroot.org>
|
||||
;;; Copyright @ 2025 Dariqq <dariqq@posteo.net>
|
||||
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;;
|
||||
@@ -81,7 +81,6 @@
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages xml))
|
||||
@@ -1328,6 +1327,25 @@ for the @acronym{AWS,Amazon Web Services} SDK.")
|
||||
(home-page "https://github.com/awslabs/aws-c-sdkutils")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public pcl
|
||||
(package
|
||||
(name "pcl")
|
||||
(version "1.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.xmailserver.org/pcl-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06ly65rq4iyj2p4704i215c8y4rgspwl8sxfaifmf4ahfr30bcz7"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://www.xmailserver.org/libpcl.html")
|
||||
(synopsis "Portable Coroutine Library")
|
||||
(description "The @acronym{PCL, Portable Coroutine Library} implements the
|
||||
low level functionality for coroutines.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public aws-c-http
|
||||
(package
|
||||
(name "aws-c-http")
|
||||
@@ -1501,48 +1519,6 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
|
||||
(home-page "https://microsoft.github.io/mimalloc/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public mps
|
||||
(package
|
||||
(name "mps")
|
||||
(version "1.118.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Ravenbrook/mps")
|
||||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "078iv3fsz0dnfwb7g63apkvcksczbqfxrxm73k80jwnwca6pgafy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-cflags
|
||||
;; The recursive make call in the test suite doesn't pass CFLAGS
|
||||
;; down properly so we need to do it ourselves
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("CFLAGS=\"(.*)\"" _ flags)
|
||||
(string-append "CFLAGS=\"" flags " $(CFLAGS)\""))))))
|
||||
#:parallel-build? #f ;Parallel build fails
|
||||
#:test-target "test"
|
||||
#:make-flags
|
||||
#~(list "CFLAGS=-Wno-error=dangling-pointer -Wno-maybe-uninitialized"
|
||||
;; These flags are needed for the recursive make calls in testing
|
||||
(string-append "CC=" #$(cc-for-target)) "-j" "1")))
|
||||
(inputs (list sqlite))
|
||||
(home-page "http://www.ravenbrook.com/project/mps")
|
||||
(synopsis "Memory pool system")
|
||||
(description
|
||||
"This package provides a cross-platform memory management system. It
|
||||
permits the flexible combination of memory management techniques, supporting
|
||||
manual and automatic memory management, in-line allocation, finalization,
|
||||
weakness, and multiple concurrent co-operating incremental generational
|
||||
garbage collections. It also includes a library of memory pool classes
|
||||
implementing specialized memory management policies.")
|
||||
(license license:bsd-2)))
|
||||
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
|
||||
(define-public orangeduck-mpc
|
||||
;; The last release lacks an 'install' target.
|
||||
@@ -1786,7 +1762,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
||||
(define-public simdutf
|
||||
(package
|
||||
(name "simdutf")
|
||||
(version "9.0.0")
|
||||
(version "7.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1795,7 +1771,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0f5ccvqj7pfa69m9y1kxp2v1lybx6x8i9pykdqfkr7dydqbhrhx6"))))
|
||||
(base32 "0kw4j4qqcfjaii667xa745pklj50m70nqq8cj5agj714acczbk7y"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
|
||||
(synopsis "SIMD Unicode validation and transcoding")
|
||||
|
||||
+22
-10
@@ -337,7 +337,7 @@ reconstruction capability.")
|
||||
(define-public cdrdao
|
||||
(package
|
||||
(name "cdrdao")
|
||||
(version "1.2.6")
|
||||
(version "1.2.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -347,18 +347,30 @@ reconstruction capability.")
|
||||
(string-append "rel_" (string-replace-substring version "." "_")))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0hb8dfb88zk01yk5nfl8m5hsg4x2scb2899pxb717zywznr8jijw"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(base32 "1hh1lm4wr1vhsq2brczn94h88h3bppvjidj9cfqkl20jhaj38968"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list
|
||||
;; Use the native SCSI interface.
|
||||
"--without-scglib")))
|
||||
'(#:configure-flags
|
||||
(list
|
||||
;; GCDMaster depends on obsolete libgnomeuimm, see
|
||||
;; <https://github.com/cdrdao/cdrdao/issues/3>.
|
||||
"--without-gcdmaster"
|
||||
;; Use the native SCSI interface.
|
||||
"--without-scglib")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'fix-configure.ac
|
||||
(lambda _
|
||||
;; Remove references to missing macros.
|
||||
(substitute* "configure.ac"
|
||||
(("^AM_GCONF_SOURCE_2.*") "")
|
||||
;; This was introduced in autoconf-2.70, but is described
|
||||
;; as usually not needed in the autoconf documentation.
|
||||
(("^AC_CHECK_INCLUDES_DEFAULT") "")))))))
|
||||
(native-inputs
|
||||
(list autoconf-2.72 automake `(,glib "bin") pkg-config))
|
||||
(list autoconf automake pkg-config))
|
||||
(inputs
|
||||
(list ao gtkmm-3 lame libmad libsigc++-2 libvorbis))
|
||||
(list ao lame libmad libvorbis))
|
||||
(home-page "https://cdrdao.sourceforge.net")
|
||||
(synopsis "Read and write CDs in disk-at-once mode")
|
||||
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
|
||||
|
||||
+25
-1
@@ -3131,7 +3131,7 @@ time by mocking the datetime module.")
|
||||
(define-public python-flaky
|
||||
(package
|
||||
(name "python-flaky")
|
||||
(version "3.8.1") ; On bump, remove some skipped tests in python-cherrypy.
|
||||
(version "3.8.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "flaky" version))
|
||||
@@ -3719,6 +3719,30 @@ system. The code under test requires no modification to work with pyfakefs.")
|
||||
directories and files.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-tornado5
|
||||
(package
|
||||
(name "python-pytest-tornado5")
|
||||
(version "2.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest-tornado5" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
;; Tests require pytest < 6
|
||||
(list #:tests? #f))
|
||||
(propagated-inputs (list python-pytest python-tornado))
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(home-page "https://github.com/vidartf/pytest-tornado")
|
||||
(synopsis
|
||||
"Fixtures and markers to simplify testing of Tornado applications")
|
||||
(description
|
||||
"This package provides a @code{py.test} plugin supplying fixtures and
|
||||
markers to simplify testing of asynchronous tornado applications.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public guile-proba
|
||||
(package
|
||||
(name "guile-proba")
|
||||
|
||||
@@ -580,7 +580,7 @@ stored with user-specified precision.")
|
||||
python-sphinx))
|
||||
(inputs
|
||||
(list fftwf
|
||||
`(,hwloc "lib")
|
||||
`(,hwloc-2 "lib")
|
||||
libtirpc
|
||||
lmfit
|
||||
muparser
|
||||
|
||||
+22
-23
@@ -79,9 +79,12 @@
|
||||
'("base/third_party/cityhash" ;Expat
|
||||
"base/third_party/double_conversion" ;BSD-3
|
||||
"base/third_party/icu" ;Unicode, X11-style
|
||||
"base/third_party/nspr" ;MPL-2.0
|
||||
"base/third_party/superfasthash" ;BSD-3
|
||||
"base/third_party/symbolize" ;BSD-3
|
||||
"base/third_party/xdg_user_dirs" ;Expat
|
||||
"buildtools/third_party/libc++" ;BSD
|
||||
"buildtools/third_party/libc++abi" ;BSD
|
||||
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
|
||||
"net/third_party/quiche" ;BSD-3
|
||||
"net/third_party/uri_template" ;ASL2.0
|
||||
@@ -219,6 +222,7 @@
|
||||
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
|
||||
"third_party/libaom/source/libaom/third_party/vector" ;Expat
|
||||
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
|
||||
"third_party/libc++" ;Expat
|
||||
"third_party/libdrm" ; Expat
|
||||
"third_party/libgav1" ;ASL2.0
|
||||
"third_party/libjingle_xmpp" ;BSD-3
|
||||
@@ -244,6 +248,8 @@
|
||||
"third_party/libzip" ;BSD-3
|
||||
"third_party/lit" ;BSD-3
|
||||
"third_party/lit/v3_0" ;BSD-3
|
||||
"third_party/llvm-libc" ;ASL2.0
|
||||
"third_party/llvm-libc/src/shared" ;ASL2.0
|
||||
"third_party/lottie" ;Expat
|
||||
"third_party/lss" ;BSD-3
|
||||
"third_party/lzma_sdk" ;public domain
|
||||
@@ -394,7 +400,7 @@
|
||||
;; run the Blink performance tests, just remove everything to save ~70MiB.
|
||||
'("third_party/blink/perf_tests"))
|
||||
|
||||
(define %chromium-version "147.0.7727.137")
|
||||
(define %chromium-version "147.0.7727.55")
|
||||
(define %ungoogled-revision (string-append %chromium-version "-1"))
|
||||
(define %debian-revision (string-append "debian/" %ungoogled-revision))
|
||||
|
||||
@@ -406,7 +412,7 @@
|
||||
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
|
||||
(sha256
|
||||
(base32
|
||||
"1ha84j3zckdv2l8dpicqhmr6a8mq3bqwalw0bmgamvlmns9i7nrj"))))
|
||||
"0l6v4wf16067igawjlh90f3d287mkw0cq4j5lvrxxy17y1skynzc"))))
|
||||
|
||||
(define %debian-origin
|
||||
(origin
|
||||
@@ -419,7 +425,7 @@
|
||||
((_ version) version))))
|
||||
(sha256
|
||||
(base32
|
||||
"04lqbclkvn9nsksgjpjilh78a8y17mwwq4pmhr6h8gvpp2y3bhhc"))))
|
||||
"0gqarll08i7rcs1amapciv263xvzglc8p44ikavq3xd12yyvcd98"))))
|
||||
|
||||
(define (origin-file origin file)
|
||||
(computed-file
|
||||
@@ -564,7 +570,7 @@
|
||||
%chromium-version "-lite.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1m22whg5n9lw9gqhalm95jwfm45lqp4a7cs3mn3f4n8w0rvr0r5j"))
|
||||
"1salvlw5sykx3zmsbp7cgmf7y8yy6jlgb4b4zswzsbjrprk4jnap"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet (force ungoogled-chromium-snippet))))
|
||||
(build-system gnu-build-system)
|
||||
@@ -590,7 +596,6 @@
|
||||
"use_custom_libcxx=false" ; support for this is deprecated and to be removed.
|
||||
"optimize_webui=false"
|
||||
"webnn_use_tflite=false"
|
||||
"build_tflite_with_xnnpack=false"
|
||||
"safe_browsing_use_unrar=false"
|
||||
"chrome_pgo_phase=0"
|
||||
"use_sysroot=false"
|
||||
@@ -683,7 +688,7 @@
|
||||
"use_gnome_keyring=false" ;deprecated by libsecret
|
||||
"use_pulseaudio=true"
|
||||
"link_pulseaudio=true"
|
||||
"icu_use_data_file=true"
|
||||
"icu_use_data_file=false"
|
||||
|
||||
;; VA-API acceleration is currently only supported on x86_64-linux.
|
||||
#$@(if (string-prefix? "x86_64" (or (%current-target-system)
|
||||
@@ -691,13 +696,6 @@
|
||||
'("use_vaapi=true")
|
||||
'())
|
||||
|
||||
#$@(if (string-prefix? "aarch64" (or (%current-target-system)
|
||||
(%current-system)))
|
||||
'("use_v4l2_codec=true"
|
||||
"use_vaapi=false"
|
||||
"use_av1_hw_decoder=true")
|
||||
'())
|
||||
|
||||
;; Do not artificially restrict formats supported by system ffmpeg.
|
||||
"proprietary_codecs=true"
|
||||
"ffmpeg_branding=\"Chrome\""
|
||||
@@ -771,7 +769,12 @@
|
||||
(string-append libclang "clang_base_path"))
|
||||
(("(_rustfmt_path = \")\\$\\{rust_bindgen_root\\}" _ rustfmt)
|
||||
(string-append rustfmt "${rust_sysroot_absolute}"))))))
|
||||
(add-after 'patch-stuff 'add-absolute-references
|
||||
(add-after 'patch-stuff 'include-pthreadpool
|
||||
;; FIXME: Somehow the build system cannot locate this header.
|
||||
(lambda _
|
||||
(copy-file "third_party/pthreadpool/src/include/pthreadpool.h"
|
||||
"pthreadpool.h")))
|
||||
(add-after 'include-pthreadpool 'add-absolute-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((cups-config (search-input-file inputs "/bin/cups-config"))
|
||||
(libnssckbi.so (search-input-file inputs
|
||||
@@ -889,15 +892,13 @@
|
||||
"resources.pak"
|
||||
"v8_context_snapshot.bin"
|
||||
"chrome_crashpad_handler"
|
||||
"icudtl.dat"
|
||||
|
||||
;; Swiftshader ICD.
|
||||
"libvk_swiftshader.so"
|
||||
"vk_swiftshader_icd.json"
|
||||
|
||||
;; Chromium ships its own libGL and
|
||||
;; vulkan implementation called ANGLE.
|
||||
"libvulkan.so.1"
|
||||
;; Chromium ships its own libGL
|
||||
;; implementation called ANGLE.
|
||||
"libEGL.so" "libGLESv2.so"))
|
||||
(locales (string-append lib "/locales"))
|
||||
(resources (string-append lib "/resources"))
|
||||
@@ -913,11 +914,9 @@
|
||||
|
||||
(substitute* '("chrome/app/resources/manpage.1.in"
|
||||
"chrome/installer/linux/common/desktop.template")
|
||||
(("@@MENUNAME") "Chromium")
|
||||
(("@@PACKAGE") "chromium")
|
||||
(("/usr/bin/@@usr_bin_symlink_name") exe)
|
||||
(("@@uri_scheme") "x-scheme-handler/chromium;")
|
||||
(("@@extra_desktop_entries") ""))
|
||||
(("@@MENUNAME@@") "Chromium")
|
||||
(("@@PACKAGE@@") "chromium")
|
||||
(("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
|
||||
|
||||
(mkdir-p man)
|
||||
(copy-file "chrome/app/resources/manpage.1.in"
|
||||
|
||||
+128
-633
@@ -18,10 +18,10 @@
|
||||
|
||||
;;; This module is separate from (gnu packages rust-apps) to avoid a
|
||||
;;; circular module dependency: (gnu packages rust-sources), which
|
||||
;;; defines rust-codex-0.124.0, transitively loads (gnu packages
|
||||
;;; defines rust-codex-0.98.0, transitively loads (gnu packages
|
||||
;;; rust-apps) through its #:use-module chain. If the codex package
|
||||
;;; lived in rust-apps.scm, loading rust-sources would trigger loading
|
||||
;;; rust-apps before rust-codex-0.124.0 is defined, causing an unbound
|
||||
;;; rust-apps before rust-codex-0.98.0 is defined, causing an unbound
|
||||
;;; variable error.
|
||||
|
||||
(define-module (gnu packages codex)
|
||||
@@ -36,46 +36,33 @@
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages libunwind)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages lsof)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages rust-sources)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages textutils)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages virtualization))
|
||||
#:use-module (gnu packages version-control))
|
||||
|
||||
(define-public codex
|
||||
(package
|
||||
(name "codex")
|
||||
(version (package-version rust-codex-0.124.0))
|
||||
(version (package-version rust-codex-0.98.0))
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source rust-codex-0.124.0))
|
||||
(inherit (package-source rust-codex-0.98.0))
|
||||
(patches (search-patches
|
||||
"codex-acp-0.11.1-disable-code-mode.patch"
|
||||
"rust-codex-0.124.0-code-mode-stub-toolname.patch"
|
||||
"rust-codex-0.124.0-remove-patch-sections.patch"
|
||||
"rust-codex-0.120.0-remove-libwebrtc.patch"
|
||||
"codex-0.98.0-remove-patch-sections.patch"
|
||||
"rust-codex-0.98.0-test-shebangs.patch"
|
||||
"rust-codex-0.120.0-test-timeout.patch"))))
|
||||
"rust-codex-0.98.0-test-timeout.patch"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
;; exec-server is library-only in 0.124 (no [[bin]] in
|
||||
;; exec-server/Cargo.toml); cargo install --path exec-server fails
|
||||
;; with "no packages found with binaries or examples". Drop it
|
||||
;; from the install paths -- the library is consumed via the
|
||||
;; workspace by other binaries here, not installed standalone.
|
||||
#:cargo-install-paths '(list "cli" "exec"
|
||||
"linux-sandbox" "mcp-server"
|
||||
#:cargo-install-paths '(list "cli" "exec" "exec-server"
|
||||
"linux-sandbox" "mcp-server" "network-proxy"
|
||||
"app-server" "tui")
|
||||
;; schema_fixtures_match_generated (upstream fixture is stale:
|
||||
;; FileChange::Update in codex-protocol gained old_content,
|
||||
@@ -84,55 +71,72 @@
|
||||
#:cargo-test-flags '(list "--workspace"
|
||||
"--exclude" "codex-app-server-protocol"
|
||||
"--"
|
||||
;;; BEGIN Landlock returns NotEnforced
|
||||
;;; in the build container; the sandbox
|
||||
;;; binary panics instead of cleanly
|
||||
;;; denying filesystem access.
|
||||
;; Sandbox denial and escalation tests.
|
||||
;; These tests exercise sandbox denial and
|
||||
;; escalation, which requires Landlock to
|
||||
;; cleanly deny filesystem access. Inside the
|
||||
;; build container Landlock returns NotEnforced
|
||||
;; and the sandbox binary panics instead.
|
||||
;; Disabling Landlock would not help either,
|
||||
;; since these tests need a working sandbox to
|
||||
;; have anything to deny and escalate.
|
||||
"--skip" "sandbox_denied_shell_returns_original_output"
|
||||
;; Sandbox denial and escalation tests.
|
||||
"--skip" "shell_escalated_permissions_rejected_then_ok"
|
||||
;; Sandbox denial and escalation tests.
|
||||
"--skip" "unified_exec_runs_under_sandbox"
|
||||
;; codex-exec: spawn_command_under_linux_sandbox
|
||||
;; panics with LandlockRestrict (exit 101).
|
||||
;; These tests (in codex-exec) directly call
|
||||
;; spawn_command_under_linux_sandbox to verify
|
||||
;; that python and bash work correctly inside
|
||||
;; the Landlock sandbox. The sandbox binary
|
||||
;; (codex-exec) panics with LandlockRestrict
|
||||
;; (exit code 101) before the inner command
|
||||
;; even starts.
|
||||
"--skip" "python_getpwuid_works_under_sandbox"
|
||||
;; Same as above.
|
||||
"--skip" "python_multiprocessing_lock_works_under_sandbox"
|
||||
;; Same as above.
|
||||
"--skip" "sandbox_distinguishes_command_and_policy_cwds"
|
||||
;; linux-sandbox: process_exec_tool_call
|
||||
;; invokes Landlock; same panic.
|
||||
;; These linux-sandbox tests directly invoke
|
||||
;; the Landlock sandbox via
|
||||
;; process_exec_tool_call; same root cause.
|
||||
"--skip" "test_writable_root"
|
||||
;; Same as above.
|
||||
"--skip" "test_timeout"
|
||||
;; Same as above.
|
||||
"--skip" "test_root_read"
|
||||
;; Same as above.
|
||||
"--skip" "test_dev_null_write"
|
||||
;; Same as above.
|
||||
"--skip" "test_no_new_privs_is_enabled"
|
||||
;; One scenario runs through Landlock
|
||||
;; which panics; cargo --skip cannot
|
||||
;; target individual scenarios.
|
||||
;; This test iterates many approval scenarios;
|
||||
;; one of them
|
||||
;; (danger_full_access_on_request_allows_network)
|
||||
;; runs a command through the Landlock sandbox
|
||||
;; binary, which panics with LandlockRestrict
|
||||
;; inside the build container. Cargo --skip
|
||||
;; cannot target individual scenarios, so we
|
||||
;; skip the entire matrix.
|
||||
"--skip" "approval_matrix_covers_all_modes"
|
||||
;; Landlock panic triggers escalation-retry
|
||||
;; which interferes with the approval cache.
|
||||
;; This test verifies session-level patch
|
||||
;; approval caching: approve once, skip
|
||||
;; future prompts for the same file. When
|
||||
;; Landlock is unavailable (as in the Guix
|
||||
;; build container) the sandbox binary panics,
|
||||
;; triggering the escalation-retry path, which
|
||||
;; interferes with the approval cache and
|
||||
;; causes a spurious re-prompt on the second
|
||||
;; patch.
|
||||
"--skip" "approving_apply_patch_for_session_skips_future_prompts_for_same_file"
|
||||
;; These tests expect to interrupt a
|
||||
;; long-running 'sleep 60' and receive
|
||||
;; TurnAborted. What happens:
|
||||
;; TurnAborted. Default test config is
|
||||
;; OnRequest + ReadOnly. What happens:
|
||||
;;
|
||||
;; 1. ReadOnly wraps the command with
|
||||
;; codex-linux-sandbox (Landlock-based).
|
||||
;; 2. Landlock is unavailable, so the
|
||||
;; sandbox binary exits instantly.
|
||||
;; 2. Landlock is unavailable in the Guix
|
||||
;; build container, so the sandbox
|
||||
;; binary exits instantly (~1 ms).
|
||||
;; 3. Orchestrator gets SandboxErr::Denied.
|
||||
;; wants_no_sandbox_approval(OnRequest)
|
||||
;; returns false, so no escalation --
|
||||
;; denial returned directly.
|
||||
;; returns false (sandboxing.rs:222),
|
||||
;; so no escalation -- denial returned
|
||||
;; directly.
|
||||
;; 4. ToolEmitter::finish sends the error
|
||||
;; to the mock model.
|
||||
;; to the mock model as
|
||||
;; function_call_output.
|
||||
;; 5. Second mock SSE response fires,
|
||||
;; turn finishes with TurnComplete.
|
||||
;; 6. Op::Interrupt arrives 100 ms later,
|
||||
@@ -146,370 +150,74 @@
|
||||
;; has only one mock response (so the turn
|
||||
;; cannot complete first).
|
||||
"--skip" "interrupt_persists_turn_aborted_marker_in_next_request"
|
||||
;; Same causal chain as above.
|
||||
"--skip" "interrupt_tool_records_history_entries"
|
||||
;; WorkspaceWrite sandbox policy wraps
|
||||
;; commands with codex-linux-sandbox;
|
||||
;; Landlock panics, command never runs,
|
||||
;; exit_code is None instead of Some(0).
|
||||
"--skip" "request_permissions_grants_apply_to_later_exec_command_calls"
|
||||
;; Same root cause.
|
||||
"--skip" "request_permissions_grants_apply_to_later_shell_command_calls"
|
||||
;; Same root cause.
|
||||
"--skip" "partial_request_permissions_grants_do_not_preapprove_new_permissions"
|
||||
;;; END Landlock
|
||||
;;; BEGIN mcp_process.rs initialize
|
||||
;;; assertion expects "version":"0.0.0"
|
||||
;;; but the server returns "0.120.0".
|
||||
;; Upstream bug: test hardcodes "0.0.0" in the
|
||||
;; expected user-agent string but the workspace
|
||||
;; version is "0.98.0".
|
||||
"--skip" "get_user_agent_returns_current_codex_user_agent"
|
||||
;; Same upstream bug: mcp-server tests
|
||||
;; check the initialize response which
|
||||
;; includes "version": "0.0.0" but the
|
||||
;; server returns "0.98.0".
|
||||
"--skip" "test_codex_tool_passes_base_instructions"
|
||||
"--skip" "test_shell_command_approval_triggers_elicitation"
|
||||
"--skip" "test_patch_approval_triggers_elicitation"
|
||||
;;; END version mismatch
|
||||
;;; BEGIN Test isolation bug:
|
||||
;;; unique_temp_dir() in
|
||||
;;; state/src/runtime.rs names dirs
|
||||
;;; using nanosecond timestamps, so
|
||||
;;; parallel tests can collide. The
|
||||
;;; SQLite migration runs CREATE TABLE
|
||||
;;; threads (without IF NOT EXISTS),
|
||||
;;; so the second init panics with
|
||||
;;; "table threads already exists".
|
||||
;; These codex-exec-server tests need
|
||||
;; "dotslash", a Meta tool that lazily
|
||||
;; downloads pre-built binaries from a
|
||||
;; JSON manifest. The test helper
|
||||
;; create_transport runs
|
||||
;; `dotslash -- fetch <path>` to obtain a
|
||||
;; custom bash binary described in
|
||||
;; exec-server/tests/suite/bash.
|
||||
;; dotslash is not available in the build
|
||||
;; container.
|
||||
"--skip" "list_tools"
|
||||
"--skip" "accept_elicitation_for_prompt_rule"
|
||||
;;; Test isolation bug: each test in
|
||||
;;; state/src/runtime.rs calls
|
||||
;;; unique_temp_dir() to get its own
|
||||
;;; temporary directory (and thus its
|
||||
;;; own SQLite database). That function
|
||||
;;; names directories using the current
|
||||
;;; nanosecond timestamp, so when tests
|
||||
;;; run in parallel several can receive
|
||||
;;; the same name and open the same
|
||||
;;; database. The initial SQLite
|
||||
;;; migration runs CREATE TABLE threads
|
||||
;;; (without IF NOT EXISTS), so any init
|
||||
;;; after the first panics with "table
|
||||
;;; threads already exists". Any of
|
||||
;;; these tests
|
||||
;;; can be the victim.
|
||||
"--skip" "init_removes_legacy_state_db_files"
|
||||
"--skip" "upsert_and_get_thread_memory"
|
||||
"--skip" "get_last_n_thread_memories_for_cwd_matches_exactly"
|
||||
"--skip" "upsert_thread_memory_errors_for_unknown_thread"
|
||||
"--skip" "get_last_n_thread_memories_for_cwd_zero_returns_empty"
|
||||
"--skip" "get_last_n_thread_memories_for_cwd_does_not_prefix_match"
|
||||
"--skip" "deleting_thread_cascades_thread_memory"
|
||||
;;; END SQLite test isolation
|
||||
;; The test spawns 'sh' after
|
||||
;; env_clear() with an empty env map;
|
||||
;; glibc execvp uses confstr(_CS_PATH)
|
||||
;; ("/bin:/usr/bin") when PATH is
|
||||
;; unset, but /bin/sh does not exist
|
||||
;; in the build container.
|
||||
"--skip" "cancellation_expiration_keeps_process_alive_until_terminated"
|
||||
;; Proxy baseline_policy returns 403
|
||||
;; "not_allowed_local" for example.com;
|
||||
;; test expects 200.
|
||||
"--skip" "managed_network_proxy_decider_survives_full_access_start"
|
||||
;;; BEGIN bash_snapshot_script() uses
|
||||
;;; "compgen -e" to list exports but
|
||||
;;; bash-minimal lacks programmable
|
||||
;;; completion; export section is empty.
|
||||
;; stdout.contains("VALID_NAME") fails.
|
||||
"--skip" "bash_snapshot_filters_invalid_exports"
|
||||
;; stdout.contains("MULTILINE_CERT") fails.
|
||||
"--skip" "bash_snapshot_preserves_multiline_exports"
|
||||
;; snapshot.contains("PATH") fails.
|
||||
"--skip" "linux_bash_snapshot_includes_sections"
|
||||
;;; END compgen
|
||||
;; substitute* patches PAGER to store
|
||||
;; path of cat; test expects bare "cat".
|
||||
"--skip" "unified_exec_env_injects_defaults"
|
||||
;;; BEGIN V8 disabled (codex-code-mode
|
||||
;;; default-features = false).
|
||||
"--skip" "suite::code_mode::"
|
||||
"--skip" "suite::js_repl::"
|
||||
"--skip" "suite::view_image::js_repl_"
|
||||
;;; END V8 disabled
|
||||
;;; BEGIN same compgen root cause:
|
||||
;;; assert_posix_snapshot_sections
|
||||
;;; asserts snapshot.contains("PATH").
|
||||
"--skip" "linux_shell_command_uses_shell_snapshot"
|
||||
"--skip" "linux_unified_exec_uses_shell_snapshot"
|
||||
"--skip" "shell_command_snapshot_still_intercepts_apply_patch"
|
||||
;;; END compgen / shell snapshot
|
||||
;;; BEGIN These sandbox tests set
|
||||
;;; exclude_slash_tmp: true which makes
|
||||
;;; bwrap exclude /tmp from its mount
|
||||
;;; namespace. Since Guix builds under
|
||||
;;; /tmp, the codex-linux-sandbox binary
|
||||
;;; becomes invisible to bwrap even though
|
||||
;;; the test adds the helper dir as a
|
||||
;;; filesystem carve-out -- the parent /tmp
|
||||
;;; bind-mount is absent so the carve-out
|
||||
;;; has nothing to carve out of.
|
||||
"--skip" "sandbox_reenables_writable_subpaths_under_unreadable_parents"
|
||||
"--skip" "managed_proxy_mode_routes_through_bridge_and_blocks_direct_egress"
|
||||
;;; END exclude_slash_tmp
|
||||
;; Expects 3 TerminalInteraction events
|
||||
;; across timed poll windows; under CPU
|
||||
;; contention events merge into 2.
|
||||
"--skip" "unified_exec_terminal_interaction_captures_delayed_output"
|
||||
;;; BEGIN assert_parallel_duration
|
||||
;;; requires < 1600 ms for parallel ops.
|
||||
;; Two 300 ms test_sync_tool calls.
|
||||
"--skip" "read_file_tools_run_in_parallel"
|
||||
;; Two "sleep 0.25" shell commands.
|
||||
"--skip" "shell_tools_run_in_parallel"
|
||||
;; One test_sync_tool + one shell sleep.
|
||||
"--skip" "mixed_parallel_tools_run_in_parallel"
|
||||
;;; END assert_parallel_duration
|
||||
;; Asserts elapsed >= 4500 ms and
|
||||
;; < 5800 ms for a 5 s timeout; under
|
||||
;; contention elapsed drifts past 5800.
|
||||
"--skip" "remote_models_request_times_out_after_5s"
|
||||
;; Queued inter-agent mail must be
|
||||
;; injected between the reasoning/
|
||||
;; commentary item and the gate release;
|
||||
;; under contention the gate fires before
|
||||
;; the mail is processed, so the snapshot
|
||||
;; shows the stale function_call instead
|
||||
;; of the expected mail message.
|
||||
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_commentary_message_item"
|
||||
;; Same root cause: snapshot mismatch at
|
||||
;; pending_input.rs assert_two_responses_
|
||||
;; input_snapshot; expects mail at position
|
||||
;; 04 but gets function_call/shell instead.
|
||||
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_reasoning_item"
|
||||
;;; BEGIN DNS for hostnames like
|
||||
;;; example.com fails in the build
|
||||
;;; sandbox. host_resolves_to_non_
|
||||
;;; public_ip() in runtime.rs treats
|
||||
;;; failed DNS as non-public and
|
||||
;;; returns NotAllowedLocal, so tests
|
||||
;;; expecting Allowed or Decider get
|
||||
;;; Deny/BaselinePolicy instead.
|
||||
"--skip" "host_blocked_requires_allowlist_match"
|
||||
"--skip" "add_allowed_domain_removes_matching_deny_entry"
|
||||
"--skip" "host_blocked_subdomain_wildcards_exclude_apex"
|
||||
"--skip" "host_blocked_global_wildcard_allowlist_allows_public_hosts_except_denylist"
|
||||
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_ask"
|
||||
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_allow_override"
|
||||
"--skip" "http_connect_accept_blocks_in_limited_mode"
|
||||
"--skip" "http_connect_accept_allows_allowlisted_host_in_full_mode"
|
||||
"--skip" "mitm_policy_blocks_disallowed_method_and_records_telemetry"
|
||||
;;; END DNS failure / NotAllowedLocal
|
||||
;;; BEGIN Flaky: wiremock mock expects
|
||||
;;; 1 POST to /codex/safety/arc but
|
||||
;;; receives 0. Passes in some builds,
|
||||
;;; fails in others with identical code
|
||||
;;; and env. The identical custom_
|
||||
;;; variant always passes; only the
|
||||
;;; CODEX_APPS_MCP_SERVER_NAME variant
|
||||
;;; flakes, suggesting a timing race
|
||||
;;; in the async POST under contention.
|
||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
|
||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
|
||||
;;; END ARC monitor flake
|
||||
;;; BEGIN nss-certs sets SSL_CERT_FILE
|
||||
;;; which makes build_reqwest_client load
|
||||
;;; 171 CA certs via add_root_certificate.
|
||||
;;; This changes the reqwest TLS backend
|
||||
;;; configuration; the ARC safety POST to
|
||||
;;; the localhost mock server never arrives
|
||||
;;; (wiremock expects 1 request, gets 0).
|
||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
|
||||
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
|
||||
;;; END nss-certs / ARC monitor
|
||||
;; Upstream bug: JsonRpcConnection has
|
||||
;; no websocket keepalive or read timeout.
|
||||
;; When the exec-server is killed, the
|
||||
;; client's reader task blocks on
|
||||
;; websocket_reader.next() forever because
|
||||
;; TCP doesn't detect the dead peer without
|
||||
;; a write or keepalive probe. Previously
|
||||
;; masked because empty env made "sleep 10"
|
||||
;; fail instantly; with PATH the process
|
||||
;; lives long enough to hit the deadlock.
|
||||
"--skip" "remote_exec_process_reports_transport_disconnect"
|
||||
;; 500 ms timeout on MCP list response
|
||||
;; (mcp_server_status.rs timeout at
|
||||
;; Duration::from_millis(500)). With
|
||||
;; nss-certs TLS now works, so the
|
||||
;; startup plugin sync HTTP requests
|
||||
;; (chatgpt.com, api.github.com) wait
|
||||
;; for TCP timeout instead of failing
|
||||
;; instantly at TLS, eating the budget.
|
||||
"--skip" "mcp_server_status_list_tools_and_auth_only_skips_slow_inventory_calls"
|
||||
;;; BEGIN Stack overflow in 'current_thread'
|
||||
;;; tokio runtime. The sibling tests in
|
||||
;;; tracing_tests.rs use the local helper
|
||||
;;; run_current_thread_test_with_stack
|
||||
;;; (4 MiB) but this one uses bare
|
||||
;;; #[tokio::test] on the 2 MiB default
|
||||
;;; test-thread stack, and TurnStart's
|
||||
;;; future graph exceeds it. With
|
||||
;;; RUST_MIN_STACK raised the overflow is
|
||||
;;; gone but the test then deterministically
|
||||
;;; times out waiting for a span tagged
|
||||
;;; codex.op = "user_input" on the remote
|
||||
;;; trace that upstream never emits on that
|
||||
;;; trace in our environment.
|
||||
"--skip" "turn_start_jsonrpc_span_parents_core_turn_spans"
|
||||
;;; END tracing test stack/timeout
|
||||
;;; BEGIN The upstream loader resolves the
|
||||
;;; MCP OAuth credentials store mode by
|
||||
;;; calling
|
||||
;;; resolve_mcp_oauth_credentials_store_mode
|
||||
;;; with env!("CARGO_PKG_VERSION") -- which
|
||||
;;; in the released 0.124.0 tarball is
|
||||
;;; "0.124.0". These fixture tests
|
||||
;;; construct the expected Config by
|
||||
;;; passing the LOCAL_DEV_BUILD_VERSION
|
||||
;;; constant ("0.0.0") to the same
|
||||
;;; resolver, and the resolver only returns
|
||||
;;; File for "0.0.0" -- Auto otherwise.
|
||||
;;; Upstream CI builds from a checkout
|
||||
;;; still carrying version = "0.0.0" so the
|
||||
;;; tests pass there; they cannot pass
|
||||
;;; against a released tag.
|
||||
"--skip" "test_precedence_fixture_with_gpt3_profile"
|
||||
"--skip" "test_precedence_fixture_with_gpt5_profile"
|
||||
"--skip" "test_precedence_fixture_with_o3_profile"
|
||||
"--skip" "test_precedence_fixture_with_zdr_profile"
|
||||
;;; END LOCAL_DEV_BUILD_VERSION fixture mismatch
|
||||
;;; BEGIN Verifies that Codex's user-shell
|
||||
;;; spawn produces a child where
|
||||
;;; CODEX_SANDBOX_NETWORK_DISABLED is unset
|
||||
;;; (asserts stdout == "not-set"). We
|
||||
;;; deliberately set that env var at the
|
||||
;;; check phase to trigger upstream's
|
||||
;;; skip_if_no_network! guards; the var then
|
||||
;;; leaks into the spawned shell and the
|
||||
;;; assertion fails. The guix skip is a
|
||||
;;; direct cost of the network-gate fix --
|
||||
;;; trading one broken test for two that
|
||||
;;; now skip cleanly.
|
||||
"--skip" "user_shell_command_does_not_set_network_sandbox_env_var"
|
||||
;;; END CODEX_SANDBOX_NETWORK_DISABLED leak
|
||||
;;; BEGIN The exec-server/tests/file_system
|
||||
;;; integration tests invoke the real
|
||||
;;; system bwrap, which tries to execvp the
|
||||
;;; test binary at the cargo target path
|
||||
;;; under the build dir. Same root cause
|
||||
;;; as the existing
|
||||
;;; sandbox_reenables_writable_subpaths_under_unreadable_parents
|
||||
;;; skip: guix builds live under /tmp but
|
||||
;;; bwrap's mount namespace excludes /tmp,
|
||||
;;; making the binary invisible inside the
|
||||
;;; namespace.
|
||||
"--skip" "file_system_copy_preserves_symlink_source"
|
||||
"--skip" "file_system_copy_rejects_symlink_escape_destination"
|
||||
"--skip" "file_system_copy_rejects_symlink_escape_source"
|
||||
"--skip" "file_system_create_directory_rejects_symlink_escape"
|
||||
"--skip" "file_system_read_directory_rejects_symlink_escape"
|
||||
"--skip" "file_system_remove_rejects_symlink_escape"
|
||||
"--skip" "file_system_remove_removes_symlink_not_target"
|
||||
"--skip" "file_system_sandboxed_read_allows_readable_root"
|
||||
"--skip" "file_system_sandboxed_read_rejects_symlink_escape"
|
||||
"--skip" "file_system_sandboxed_read_rejects_symlink_parent_dotdot_escape"
|
||||
"--skip" "file_system_sandboxed_write_allows_additional_write_root"
|
||||
"--skip" "file_system_sandboxed_write_rejects_symlink_escape"
|
||||
"--skip" "file_system_sandboxed_write_rejects_unwritable_path"
|
||||
;;; END bwrap-cant-see-/tmp file_system tests
|
||||
;;; BEGIN Landlock is unavailable on Guix,
|
||||
;;; so the sandbox cannot deny network
|
||||
;;; syscalls. These tests expect
|
||||
;;; SandboxErr::Denied for the nc, ping,
|
||||
;;; ssh, getent, and dev_tcp_redirection
|
||||
;;; commands but those commands instead
|
||||
;;; block on connect() until the test's 2s
|
||||
;;; timeout fires (Timeout, exit 124).
|
||||
;;; Same root cause as the Landlock skips
|
||||
;;; at the top of this list; new test names
|
||||
;;; in 0.124.
|
||||
"--skip" "sandbox_blocks_nc"
|
||||
"--skip" "sandbox_blocks_ping"
|
||||
"--skip" "sandbox_blocks_dev_tcp_redirection"
|
||||
"--skip" "sandbox_blocks_getent"
|
||||
"--skip" "sandbox_blocks_ssh"
|
||||
;;; END Landlock network block
|
||||
;;; BEGIN Requires github.com network access.
|
||||
;;; With no "extraKnownMarketplaces" entry
|
||||
;;; in settings.json,
|
||||
;;; collect_marketplace_import_sources
|
||||
;;; inserts a fallback entry for the
|
||||
;;; "claude-plugins-official" marketplace
|
||||
;;; pointing at the github shorthand
|
||||
;;; "anthropics/claude-plugins-official".
|
||||
;;; add_marketplace -> parse_marketplace_source
|
||||
;;; expands that to a github.com/.git URL
|
||||
;;; and clone_git_source runs 'git clone'.
|
||||
;;; The Guix build sandbox has no network,
|
||||
;;; so the clone fails and the marketplace
|
||||
;;; lands in failed_marketplaces. No mock
|
||||
;;; cloner is injected via
|
||||
;;; ExternalAgentConfigService::new_for_test,
|
||||
;;; so there is no in-tree way to satisfy
|
||||
;;; the test offline.
|
||||
"--skip" "import_plugins_infers_claude_official_marketplace_when_missing_from_settings"
|
||||
;;; END github.com network access
|
||||
;;; BEGIN Async race between the rollout
|
||||
;;; writer task and a direct SQLite read.
|
||||
;;; The test calls
|
||||
;;; update_memory_settings_with_app_server,
|
||||
;;; which routes through the in-memory
|
||||
;;; thread path on the app-server's
|
||||
;;; ThreadMemoryModeSet handler ->
|
||||
;;; Session::set_thread_memory_mode ->
|
||||
;;; persist_thread_memory_mode_update,
|
||||
;;; which writes a RolloutItem::SessionMeta
|
||||
;;; with the new mode to the rollout file
|
||||
;;; via recorder.record_items + flush. The
|
||||
;;; rollout writer task then asynchronously
|
||||
;;; calls sync_thread_state_after_write,
|
||||
;;; which calls state_db::apply_rollout_items
|
||||
;;; to mirror the SessionMeta into SQLite.
|
||||
;;; flush() only awaits the rollout-file
|
||||
;;; write, not the subsequent SQLite sync.
|
||||
;;; The test opens a fresh StateRuntime and
|
||||
;;; reads get_thread_memory_mode
|
||||
;;; immediately, so it observes the creation
|
||||
;;; default of "enabled" written by
|
||||
;;; upsert_thread_with_creation_memory_mode
|
||||
;;; instead of the new "disabled". Upstream
|
||||
;;; CI wins this race; we lose.
|
||||
"--skip" "update_memory_settings_updates_current_thread_memory_mode"
|
||||
;;; END memory-mode rollout/sqlite race
|
||||
;;; BEGIN The Stopwatch::new constructor in
|
||||
;;; codex_shell_escalation anchors
|
||||
;;; T0 = Instant::now() at construction;
|
||||
;;; the spawned cancellation task fires at
|
||||
;;; T0 + limit. The test captures
|
||||
;;; start = Instant::now() at T1 > T0 (after
|
||||
;;; cancellation_token() returns) and
|
||||
;;; asserts start.elapsed() >= limit,
|
||||
;;; i.e. (T0 + limit) - T1 >= limit, which
|
||||
;;; is always false by the offset T1 - T0.
|
||||
;;; The test only passes when scheduler
|
||||
;;; jitter on the sleep wakeup happens to
|
||||
;;; exceed that offset. Upstream wins the
|
||||
;;; race; we don't always.
|
||||
"--skip" "cancellation_receiver_fires_after_limit"
|
||||
;;; END Stopwatch construction/start offset race
|
||||
)
|
||||
"--skip" "deleting_thread_cascades_thread_memory")
|
||||
#:cargo-package-crates
|
||||
''(;;; Tier 0: No internal deps.
|
||||
"codex-ansi-escape"
|
||||
"codex-async-utils"
|
||||
"codex-backend-openapi-models"
|
||||
"codex-client"
|
||||
"codex-execpolicy"
|
||||
"codex-file-search"
|
||||
"codex-git-utils"
|
||||
"codex-git"
|
||||
"codex-keyring-store"
|
||||
"codex-process-hardening"
|
||||
"codex-utils-absolute-path"
|
||||
"codex-utils-cache"
|
||||
"codex-utils-cargo-bin"
|
||||
"codex-utils-elapsed"
|
||||
"codex-utils-fuzzy-match"
|
||||
"codex-utils-home-dir"
|
||||
"codex-utils-json-to-toml"
|
||||
"codex-utils-path"
|
||||
"codex-utils-plugins"
|
||||
"codex-utils-pty"
|
||||
"codex-utils-readiness"
|
||||
"codex-utils-rustls-provider"
|
||||
"codex-utils-sleep-inhibitor"
|
||||
"codex-utils-stream-parser"
|
||||
"codex-utils-string"
|
||||
"codex-utils-template"
|
||||
;;; Tier 1.
|
||||
"codex-backend-openapi-models"
|
||||
"codex-process-hardening"
|
||||
"codex-ansi-escape"
|
||||
;;; Tier 1: Depends on tier 0.
|
||||
"codex-utils-image"
|
||||
"codex-utils-output-truncation"
|
||||
"codex-apply-patch"
|
||||
"codex-protocol"
|
||||
"codex-windows-sandbox"
|
||||
@@ -518,69 +226,35 @@
|
||||
"codex-secrets"
|
||||
"codex-execpolicy-legacy"
|
||||
"codex-debug-client"
|
||||
"codex-analytics"
|
||||
"codex-rollout"
|
||||
"codex-rollout-trace"
|
||||
"codex-terminal-detection"
|
||||
"codex-utils-approval-presets"
|
||||
"codex-utils-cli"
|
||||
"codex-uds"
|
||||
"codex-install-context"
|
||||
"codex-device-key"
|
||||
;;; Tier 2.
|
||||
"codex-app-server-protocol"
|
||||
"codex-rmcp-client"
|
||||
"codex-otel"
|
||||
"codex-thread-store"
|
||||
"codex-state"
|
||||
"codex-features"
|
||||
"codex-model-provider"
|
||||
"codex-config"
|
||||
"codex-agent-identity"
|
||||
"codex-aws-auth"
|
||||
"codex-hooks"
|
||||
"codex-code-mode"
|
||||
"codex-feedback"
|
||||
"codex-skills"
|
||||
"codex-test-binary-support"
|
||||
"codex-core"
|
||||
"codex-core-plugins"
|
||||
"codex-utils-sandbox-summary"
|
||||
"codex-linux-sandbox"
|
||||
"codex-sandboxing"
|
||||
"codex-connectors"
|
||||
"codex-core-skills"
|
||||
"codex-feedback"
|
||||
;;; Tier 3.
|
||||
"codex-arg0"
|
||||
"codex-lmstudio"
|
||||
"codex-login"
|
||||
"codex-ollama"
|
||||
"codex-utils-oss"
|
||||
"codex-common"
|
||||
"codex-mcp-server"
|
||||
"codex-backend-client"
|
||||
"codex-responses-api-proxy"
|
||||
"codex-shell-command"
|
||||
"codex-shell-escalation"
|
||||
"codex-plugin"
|
||||
"codex-model-provider-info"
|
||||
"codex-models-manager"
|
||||
;;; Tier 4.
|
||||
"codex-cloud-requirements"
|
||||
"codex-exec"
|
||||
"codex-exec-server"
|
||||
"codex-network-proxy"
|
||||
"codex-stdio-to-uds"
|
||||
"codex-network-proxy"
|
||||
"codex-chatgpt"
|
||||
"codex-cloud-tasks-client"
|
||||
"codex-cloud-tasks-mock-client"
|
||||
"codex-tools"
|
||||
"codex-mcp"
|
||||
"codex-collaboration-mode-templates"
|
||||
;;; Tier 5.
|
||||
"codex-app-server"
|
||||
"codex-app-server-test-client"
|
||||
"codex-tui"
|
||||
"codex-response-debug-context"
|
||||
;;; Tier 6.
|
||||
"codex-cloud-tasks"
|
||||
;; The main executable.
|
||||
@@ -596,7 +270,7 @@
|
||||
;; Update them to match the actual package version.
|
||||
(let ((snap-files (find-files "." "\\.snap$")))
|
||||
(substitute* snap-files
|
||||
(("\\(v0\\.0\\.0\\) ") "(v0.124.0) ")))))
|
||||
(("\\(v0\\.0\\.0\\) ") "(v0.98.0)")))))
|
||||
(add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
|
||||
(lambda _
|
||||
;; Replace git dependencies with version references so cargo
|
||||
@@ -605,57 +279,23 @@
|
||||
(("nucleo = \\{ git = [^}]+\\}")
|
||||
"nucleo = \"0.5.0\"")
|
||||
(("runfiles = \\{ git = [^}]+\\}")
|
||||
"runfiles = \"0.1.0\""))
|
||||
;; Remove workspace members that have unbuildable deps
|
||||
;; (v8-poc requires V8). code-mode stays a workspace member
|
||||
;; so its codex-protocol resolves to the same local copy as
|
||||
;; the rest of the build; disabling its default features
|
||||
;; (below) avoids pulling in V8.
|
||||
(substitute* "Cargo.toml"
|
||||
(("\"v8-poc\",") ""))
|
||||
;; Disable V8 runtime in codex-code-mode by turning off
|
||||
;; default features. Keep path= so code-mode is resolved
|
||||
;; from the local source tree and shares codex-protocol
|
||||
;; (and other workspace crates) with the rest of the build;
|
||||
;; resolving it from the vendor instead introduces a
|
||||
;; duplicate codex-protocol and causes E0308 type
|
||||
;; mismatches in codex-tools.
|
||||
(substitute* "Cargo.toml"
|
||||
(("codex-code-mode = \\{ path = \"code-mode\" \\}")
|
||||
"codex-code-mode = { path = \"code-mode\", default-features = false }"))
|
||||
;; cargo build at workspace root ignores per-dep
|
||||
;; default-features=false and builds code-mode with its
|
||||
;; own default features, which include v8-runtime and
|
||||
;; would pull in V8. Make the default feature empty.
|
||||
(substitute* "code-mode/Cargo.toml"
|
||||
(("^default = \\[\"v8-runtime\"\\]") "default = []"))))
|
||||
(add-after 'patch-git-deps-to-vendor 'add-version-to-workspace-deps
|
||||
"runfiles = \"0.1.0\""))))
|
||||
(add-after 'chdir-to-workspace 'add-version-to-workspace-deps
|
||||
(lambda _
|
||||
;; cargo package requires all dependencies to have versions.
|
||||
;; Add version = "0.124.0" to internal path dependencies.
|
||||
;; cargo package requires all dependencies to have versions.
|
||||
;; Add version = "0.98.0" to internal path dependencies.
|
||||
(let ((cargo-files (find-files "." "^Cargo\\.toml$")))
|
||||
(substitute* cargo-files
|
||||
;; Handle inline deps: name = { path = "..." }
|
||||
(("(codex-[a-z0-9-]+) = \\{ path = " all name)
|
||||
(string-append name " = { version = \"0.124.0\", path = "))
|
||||
(string-append name " = { version = \"0.98.0\", path = "))
|
||||
;; Handle inline deps with package: name = { package = "...", path = "..." }
|
||||
(("(codex-[a-z0-9-]+) = \\{ package = " all name)
|
||||
(string-append name " = { version = \"0.124.0\", package = "))
|
||||
(string-append name " = { version = \"0.98.0\", package = "))
|
||||
;; Handle section deps: [dependencies.X] with path = "..."
|
||||
(("^(path = \"\\.\\./[^\"]*\")" all path-line)
|
||||
(string-append path-line "\nversion = \"0.124.0\""))))))
|
||||
(add-after 'chdir-to-workspace 'use-gnu-store-in-sandbox
|
||||
(lambda _
|
||||
;; LINUX_PLATFORM_DEFAULT_READ_ROOTS in linux-sandbox/src/
|
||||
;; bwrap.rs is the read-only baseline that codex's bwrap
|
||||
;; sandbox bind-mounts so commands can read /usr/bin/ls,
|
||||
;; libc, etc. Upstream lists "/nix/store" for NixOS;
|
||||
;; Guix's equivalent is "/gnu/store". Without this swap,
|
||||
;; the codex sandbox cannot locate any binaries on a Guix
|
||||
;; system because every "system" path resolves into
|
||||
;; /gnu/store/<hash>-pkg/bin/...
|
||||
(substitute* "linux-sandbox/src/bwrap.rs"
|
||||
(("\"/nix/store\"") "\"/gnu/store\""))))
|
||||
(string-append path-line "\nversion = \"0.98.0\""))))))
|
||||
(add-after 'chdir-to-workspace 'patch-hardcoded-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((bash-bin (string-append
|
||||
@@ -685,14 +325,6 @@
|
||||
(string-append "\"" bash-bin "/bash "))
|
||||
(("\"/bin/sh ")
|
||||
(string-append "\"" bash-bin "/sh "))
|
||||
;; Single-quoted paths in test assertion strings,
|
||||
;; e.g. "exec '/bin/bash' -c ...". Must match the
|
||||
;; double-quoted substitutions above so both sides
|
||||
;; of assert_eq!/contains use the store path.
|
||||
(("'/bin/bash'")
|
||||
(string-append "'" bash-bin "/bash'"))
|
||||
(("'/bin/sh'")
|
||||
(string-append "'" bash-bin "/sh'"))
|
||||
;; coreutils.
|
||||
(("\"/bin/(cat|cp|date|echo|head|ls|rm|sleep|true|touch)\"" all cmd)
|
||||
(string-append "\"" coreutils-bin "/" cmd "\""))
|
||||
@@ -707,150 +339,42 @@
|
||||
(string-append "\"" git-bin "/git\""))
|
||||
(("\"/usr/bin/sed\"")
|
||||
(string-append "\"" sed-bin "/sed\"")))
|
||||
;; Bare Command::new("git") and Command::new("ls")
|
||||
;; in codex source files that exec internally.
|
||||
(substitute* (find-files "git-utils" "\\.rs$")
|
||||
(("Command::new\\(\"git\"\\)")
|
||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
||||
(substitute* "tui/src/get_git_diff.rs"
|
||||
(("Command::new\\(\"git\"\\)")
|
||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
||||
(substitute* "core/src/turn_diff_tracker.rs"
|
||||
(("Command::new\\(\"git\"\\)")
|
||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
||||
(substitute* "cloud-tasks/src/env_detect.rs"
|
||||
(("Command::new\\(\"git\"\\)")
|
||||
(string-append "Command::new(\"" git-bin "/git\")")))
|
||||
(substitute* "core/src/plugins/startup_sync.rs"
|
||||
(("\"git\",")
|
||||
(string-append "\"" git-bin "/git\",")))
|
||||
(substitute* "file-search/src/lib.rs"
|
||||
(("Command::new\\(\"ls\"\\)")
|
||||
(string-append "Command::new(\"" coreutils-bin "/ls\")")))
|
||||
;; Neutralize pager with absolute path to cat.
|
||||
(substitute* "core/src/unified_exec/process_manager.rs"
|
||||
(("\"PAGER\", \"cat\"")
|
||||
(string-append "\"PAGER\", \"" coreutils-bin "/cat\""))
|
||||
(("\"GIT_PAGER\", \"cat\"")
|
||||
(string-append "\"GIT_PAGER\", \"" coreutils-bin "/cat\""))
|
||||
(("\"GH_PAGER\", \"cat\"")
|
||||
(string-append "\"GH_PAGER\", \"" coreutils-bin "/cat\"")))
|
||||
;; Bare /bin/sleep inside a format! string
|
||||
;; (no surrounding double quotes, so the main
|
||||
;; pattern does not match).
|
||||
(substitute*
|
||||
"shell-escalation/src/unix/escalate_server.rs"
|
||||
(("/bin/sleep")
|
||||
(string-append coreutils-bin "/sleep")))
|
||||
;; @SHELL@ placeholder from test-shebangs patch
|
||||
(substitute*
|
||||
(list "rmcp-client/src/program_resolver.rs"
|
||||
"tui/src/external_editor.rs")
|
||||
(("@SHELL@")
|
||||
(string-append bash-bin "/sh")))
|
||||
;; Shebangs inside raw string literals (r#"..."#)
|
||||
;; that are written to scripts at runtime. The
|
||||
;; main "/bin/sh" patterns only match double-quoted
|
||||
;; occurrences; these shebangs have no surrounding
|
||||
;; double quotes.
|
||||
;; shebang in test-only file
|
||||
(substitute*
|
||||
(list "core/src/plugins/startup_sync_tests.rs"
|
||||
"core/src/tools/runtimes/shell/unix_escalation_tests.rs"
|
||||
"core/tests/suite/client.rs"
|
||||
"core/tests/suite/js_repl.rs"
|
||||
"core/tests/suite/skill_approval.rs"
|
||||
"core/tests/suite/user_notification.rs"
|
||||
"exec-server/tests/file_system.rs"
|
||||
"login/src/auth/auth_tests.rs"
|
||||
"models-manager/src/manager_tests.rs"
|
||||
"sandboxing/src/bwrap_tests.rs")
|
||||
"core/tests/suite/user_notification.rs"
|
||||
(("#!/bin/bash")
|
||||
(string-append "#!" bash-bin "/bash"))
|
||||
(("#!/bin/sh")
|
||||
(string-append "#!" bash-bin "/sh")))
|
||||
;; Test helpers pass env: Default::default() to the
|
||||
;; spawn code which calls env_clear(), leaving
|
||||
;; processes with no PATH. Inject the build-time
|
||||
;; PATH so tests find coreutils, bash, etc.
|
||||
(substitute* (find-files "." "\\.rs$")
|
||||
(("env: Default::default\\(\\)")
|
||||
(string-append
|
||||
"env: std::env::var(\"PATH\")"
|
||||
".into_iter()"
|
||||
".map(|p| (\"PATH\".to_string(), p))"
|
||||
".collect()")))
|
||||
;; Test-only absolute path; bare name works via PATH.
|
||||
(substitute* "exec-server/tests/exec_process.rs"
|
||||
(("\"/usr/bin/python3\"")
|
||||
"\"python3\""))
|
||||
;; Same empty-env issue but in JSON literals
|
||||
;; (serde_json::json! macro).
|
||||
(substitute* "exec-server/tests/process.rs"
|
||||
(("\"env\": \\{\\}")
|
||||
(string-append
|
||||
"\"env\": {\"PATH\": \""
|
||||
(getenv "PATH")
|
||||
"\"}"))))))
|
||||
(add-before 'build 'set-bubblewrap-source
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "CODEX_BWRAP_SOURCE_DIR"
|
||||
(string-append
|
||||
(assoc-ref inputs "bubblewrap-source")
|
||||
"/"))))
|
||||
(add-before 'build 'create-node-version-file
|
||||
(lambda _
|
||||
(call-with-output-file "guix-vendor/node-version.txt"
|
||||
(lambda (port)
|
||||
(display "22.22.0" port)))))
|
||||
(string-append "#!" bash-bin "/bash"))))))
|
||||
(add-before 'check 'set-home
|
||||
(lambda _
|
||||
;; HOME must not be a prefix of /tmp, otherwise
|
||||
;; the TUI's path shortener replaces /tmp/... with
|
||||
;; ~/... and 30 snapshot tests fail.
|
||||
(setenv "HOME" "/tmp/guix-home")
|
||||
(mkdir-p "/tmp/guix-home")
|
||||
(setenv "USER" "nixbld")
|
||||
;; Default libtest thread stack is 2 MiB, which is not
|
||||
;; enough for tokio current_thread tests that drive
|
||||
;; codex-core's full turn pipeline. Upstream gates such
|
||||
;; tests through run_current_thread_test_with_stack (4 MiB)
|
||||
;; in app-server/src/message_processor/tracing_tests.rs;
|
||||
;; raise the global default so future additions that
|
||||
;; forget the wrapper still pass.
|
||||
(setenv "RUST_MIN_STACK" "8388608")
|
||||
;; Disable network access.
|
||||
(setenv "CODEX_SANDBOX_NETWORK_DISABLED" "1"))))))
|
||||
(native-inputs `(("bubblewrap" ,bubblewrap) ;tests need bwrap on PATH
|
||||
("clang" ,clang)
|
||||
("cmake-minimal" ,cmake-minimal)
|
||||
("libunwind" ,libunwind)
|
||||
("lsof" ,lsof) ;app-server tests
|
||||
("nss-certs-for-test" ,nss-certs-for-test) ;OTLP gRPC TLS
|
||||
("perl" ,perl)
|
||||
("procps" ,procps) ;tests use ps
|
||||
("python-minimal" ,python-minimal)
|
||||
("pkg-config" ,pkg-config)
|
||||
("bubblewrap-source" ,(package-source bubblewrap))))
|
||||
(setenv "HOME" "/tmp")
|
||||
(setenv "USER" "nixbld"))))))
|
||||
(native-inputs (list clang ;bindgen uses libclang to parse BoringSSL's C headers
|
||||
cmake-minimal ;BoringSSL is compiled from C source
|
||||
libunwind ;BoringSSL tests verify stack unwinding in assembly
|
||||
perl python-minimal ;for tests
|
||||
pkg-config))
|
||||
(inputs (cons* bash-minimal coreutils git-minimal sed
|
||||
libcap oniguruma openssl sqlite zlib `(,zstd "lib")
|
||||
openssl sqlite `(,zstd "lib")
|
||||
(cargo-inputs 'codex)))
|
||||
(properties '((timeout . 108000) ; 30 hours
|
||||
(max-silent-time . 54000))) ; 15 hours
|
||||
(home-page "https://github.com/openai/codex")
|
||||
(synopsis "AI-assisted coding CLI and TUI")
|
||||
(description
|
||||
"Codex is an AI-powered coding assistant that runs in the terminal.
|
||||
It provides an interactive TUI for conversations with AI models, with
|
||||
support for shell command execution, file editing, and code generation.
|
||||
Configure providers via @file{~/.codex/config.toml}.
|
||||
|
||||
codex-code-mode's V8 Javascript executor is disabled.")
|
||||
Configure providers via @file{~/.codex/config.toml}.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public codex-acp
|
||||
(package
|
||||
(name "codex-acp")
|
||||
(version "0.11.1")
|
||||
(version "0.9.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -859,8 +383,9 @@ codex-code-mode's V8 Javascript executor is disabled.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rlgkbvrbdl5jhf49sjn2mifn2rq6z0vwf0gard23y1bz6sr3wmr"))
|
||||
(patches (search-patches "codex-acp-0.11.1-remove-patch-sections.patch"))))
|
||||
(base32 "190sq6s6jfz8dkj1y8305r7x6ln86qqr2j1bnfjci7f1x2wyzmsj"))
|
||||
(patches (search-patches "codex-acp-0.9.2-remove-patch-sections.patch"
|
||||
"codex-acp-0.9.2-replace-result-flatten.patch"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -868,43 +393,13 @@ codex-code-mode's V8 Javascript executor is disabled.")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-codex-deps
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(lambda _
|
||||
;; Rewrite git dependencies to use vendored sources from rust-codex
|
||||
(substitute* "Cargo.toml"
|
||||
(("git = \"https://github.com/openai/codex\", tag = \"rust-v0.117.0\"")
|
||||
"version = \"0.117.0\""))
|
||||
;; Disable V8 runtime in codex-code-mode (transitive dep).
|
||||
(let ((port (open-file "Cargo.toml" "a")))
|
||||
(display "
|
||||
[dependencies.codex-code-mode]
|
||||
version = \"0.117.0\"
|
||||
default-features = false
|
||||
" port)
|
||||
(close-port port))
|
||||
;; Point codex-linux-sandbox at system bubblewrap source.
|
||||
(setenv "CODEX_BWRAP_SOURCE_DIR"
|
||||
(string-append
|
||||
(assoc-ref inputs "bubblewrap-source")
|
||||
"/"))))
|
||||
(add-before 'check 'set-home
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")
|
||||
(setenv "USER" "nixbld")))
|
||||
(add-before 'build 'create-node-version-file
|
||||
(lambda _
|
||||
;; codex-core's js_repl uses include_str! to read
|
||||
;; node-version.txt four directories up from its source;
|
||||
;; create it where the vendored crate expects it.
|
||||
(call-with-output-file "guix-vendor/node-version.txt"
|
||||
(lambda (port)
|
||||
(display "22.22.0" port))))))))
|
||||
(native-inputs
|
||||
`(("cmake-minimal" ,cmake-minimal)
|
||||
("clang" ,clang)
|
||||
("pkg-config" ,pkg-config)
|
||||
("bubblewrap-source" ,(package-source bubblewrap))))
|
||||
(inputs (cons* libcap openssl sqlite zlib `(,zstd "lib")
|
||||
(cargo-inputs 'codex-acp)))
|
||||
(("git = \"https://github.com/zed-industries/codex\", branch = \"acp\"")
|
||||
"version = \"0.0.0\"")))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (cons* openssl sqlite `(,zstd "lib") (cargo-inputs 'codex-acp)))
|
||||
(home-page "https://github.com/zed-industries/codex-acp")
|
||||
(synopsis "ACP-compatible agent bridging Zed Codex with ACP clients")
|
||||
(description
|
||||
|
||||
@@ -2375,9 +2375,7 @@ non-Windows systems without running the actual installer using wine.")
|
||||
(sha256
|
||||
(base32 "17k679glx05v23n8kxbg9vmbf89i2252g5xj6w3dkz19asmh1zd6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(cons* autoconf automake libtool
|
||||
(maybe-nasm)))
|
||||
(native-inputs (list autoconf automake libtool nasm))
|
||||
(home-page "https://github.com/intel/isa-l")
|
||||
(synopsis "Intelligent storage acceleration library")
|
||||
(description "ISA-L is a collection of optimized low-level functions
|
||||
|
||||
@@ -150,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
|
||||
(define-public crun
|
||||
(package
|
||||
(name "crun")
|
||||
(version "1.27.1")
|
||||
(version "1.25.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -160,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
|
||||
"/crun-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1w782s95f3xvw3fb66l2ciqkqsg4bk7n9ph31jmvn669ap272ymy"))))
|
||||
"02kksvnja234k8mpq5j7yms8npbpvh8iz3k03h21lwcqzqsb88rx"))))
|
||||
(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.1")
|
||||
(version "1.9.0")
|
||||
(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 "12z6w2jk6xgfiwdxys7skpkxldz1cgaa7scgfcr90lsghay59s6w"))
|
||||
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
|
||||
(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.1")
|
||||
(version "1.43.0")
|
||||
(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 "00x4ja5n49jmkmiv54mmkihks9pnjnna7s7py57in6pc9g85xj2y"))
|
||||
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
+11
-116
@@ -44,7 +44,7 @@
|
||||
;;; Copyright © 2024 Jakob Kirsch <jakob.kirsch@web.de>
|
||||
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
|
||||
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Romain Garbage <romain.garbage@inria.fr>
|
||||
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
@@ -52,7 +52,6 @@
|
||||
;;; Copyright © 2025 Philippe Swartvagher <phil.swart@gmx.fr>
|
||||
;;; Copyright © 2025 Murilo <murilo@disroot.org>
|
||||
;;; Copyright © 2026 Justin Veilleux <terramorpha@cock.li>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -134,7 +133,6 @@
|
||||
#:use-module (gnu packages sdl)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages webkit)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
@@ -1673,38 +1671,6 @@ maintained anymore.")
|
||||
concurrent queue for C++11.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public ringbuffer
|
||||
(package
|
||||
(name "ringbuffer")
|
||||
(version "0.9.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/JohannesLorenz/ringbuffer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1c57hj6zyvcjpcbwrq8c1hj5brk1bnh69ayd88ny1p0gx031sjpk"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-DCMAKE_CXX_FLAGS=-Wno-error=array-bounds"
|
||||
(string-append "-DINSTALL_LIB_DIR=" #$output "/lib"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-export-header
|
||||
(lambda _
|
||||
(install-file "src/lib/ringbuffer_export.h"
|
||||
(string-append #$output
|
||||
"/include/ringbuffer")))))))
|
||||
(home-page "https://github.com/JohannesLorenz/ringbuffer")
|
||||
(synopsis "Lock-free multi-reader ringbuffer")
|
||||
(description
|
||||
"@code{ringbuffer} is a library containing a ringbuffer. It is lock-free
|
||||
(using atomics only), and allows multiple readers, but only one writer.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public spscqueue
|
||||
(package
|
||||
(name "spscqueue")
|
||||
@@ -3226,7 +3192,8 @@ pointers, containers, compiler building blocks, etc.")
|
||||
(native-inputs
|
||||
(list build))
|
||||
(inputs
|
||||
(list libcutl xerces-c))
|
||||
`(("libcutl" ,libcutl)
|
||||
("libxerces-c" ,xerces-c)))
|
||||
(synopsis "XSD Front-end")
|
||||
(description "@code{libxsd-frontend} is a compiler frontend for the W3C
|
||||
XML Schema definition language. It includes a parser, semantic graph types
|
||||
@@ -3393,7 +3360,7 @@ which can evaluate Jsonnet files and expressions.")))
|
||||
(define-public simdjson
|
||||
(package
|
||||
(name "simdjson")
|
||||
(version "4.6.3")
|
||||
(version "3.13.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -3402,7 +3369,7 @@ which can evaluate Jsonnet files and expressions.")))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0729mxnc2wjb94gr4znwlzfmgw5w2v9kd8glvn3vnjhkdnd87zry"))))
|
||||
"005yli56nrkvlyx9g9cq8dczk42r9a18l162i2s5k81lj3y7mcrp"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; tests require downloading dependencies
|
||||
@@ -3641,7 +3608,7 @@ std::wstring, etc).")
|
||||
(define-public fast-float
|
||||
(package
|
||||
(name "fast-float")
|
||||
(version "8.2.5")
|
||||
(version "8.0.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -3650,7 +3617,7 @@ std::wstring, etc).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l13nsl4sgq71m7aifrmmmfyl14vp48vqdh7pb50hxqq6f8bq2b5"))))
|
||||
"19x1yklf641yrpad6lk4cq3jmird10d5ig8hicm3p9lxh92k78cl"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3661,10 +3628,12 @@ std::wstring, etc).")
|
||||
(add-after 'unpack 'patch-cmake-tests
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
(substitute* "tests/CMakeLists.txt"
|
||||
(("FetchContent_MakeAvailable\\(supplemental_test_files.*")
|
||||
(("FetchContent_GetProperties\\(supplemental_test_files.*")
|
||||
"")
|
||||
(("if\\(NOT supplemental_test_files_POPULATED.*")
|
||||
(string-append
|
||||
"set(supplemental_test_files_BINARY_DIR "
|
||||
#$fast-float-test-files ")\n"))))))))
|
||||
#$fast-float-test-files ")\nif(0)\n"))))))))
|
||||
(native-inputs (list doctest fast-float-test-files))
|
||||
(home-page "https://github.com/fastfloat/fast_float")
|
||||
(synopsis "Floating point number parser for C++")
|
||||
@@ -3701,39 +3670,6 @@ computing Fast Fourier transformations. It supports multidimensional arrays,
|
||||
different floating point sizes and complex transformations.")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public libbinio
|
||||
;; The latest tagged version does not support CMake build. This commit has
|
||||
;; builds with CMake and has updated CMake version support.
|
||||
(let ((commit "e88dad086265e179ab6aef7f479e19f3917c7a98")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "libbinio")
|
||||
(version (git-version "1.5" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/adplug/libbinio")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rb33jl6gpxb88zymzl996m43b7r6wyw4lq0ib3626kna3baqnha"))))
|
||||
(native-inputs
|
||||
(list autoconf automake libtool texinfo))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no tests
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON")))
|
||||
(home-page "http://adplug.github.io/libbinio/")
|
||||
(synopsis "Binary I/O stream class library")
|
||||
(description
|
||||
"This binary I/O stream class library presents a platform-independent
|
||||
way to access binary data streams in C++. The library is hardware independent
|
||||
in the form that it transparently converts between the different forms of
|
||||
machine-internal binary data representation.")
|
||||
(license license:lgpl2.1+))))
|
||||
|
||||
(define-public priocpp
|
||||
;; Latest release is from 2022-08-14.
|
||||
(let ((commit "ea15402adcd0d9191dc29ca6f7e4dd0bff67b9b5")
|
||||
@@ -4560,47 +4496,6 @@ meta data function.")
|
||||
;; or the CECILL-C license:
|
||||
(license (list license:lgpl3 license:cecill-c))))
|
||||
|
||||
(define-public tcbrindle-span
|
||||
(let ((commit "836dc6a0efd9849cb194e88e4aa2387436bb079b")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "tcbrindle-span")
|
||||
(version (git-version "0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tcbrindle/span")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1v3x1mj4if8jrr7cmrcbhv8n8ygla0liqb0dic6g6ji7px2pr6jf"))
|
||||
(modules '((guix build utils)))
|
||||
;; Unbundle catch.
|
||||
(snippet
|
||||
'(with-directory-excursion "test"
|
||||
(delete-file "catch.hpp")
|
||||
(substitute* (find-files "." "\\.cpp$")
|
||||
(("\"catch\\.hpp\"") "<catch.hpp>"))))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list catch-framework))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(mkdir-p (string-append #$output))
|
||||
(copy-recursively "../source/include"
|
||||
(string-append #$output "/include")))))))
|
||||
(home-page "https://github.com/tcbrindle/span")
|
||||
(synopsis "Implementation of C++20's @code{std::span} for older compilers")
|
||||
(description
|
||||
"This package provides a single-header implementation of C++20's
|
||||
@code{std::span}, conforming to the C++20 committee draft. It is compatible
|
||||
with C++11, but will use newer language features if they are available.")
|
||||
(license license:boost1.0))))
|
||||
|
||||
(define-public tsl-hopscotch-map
|
||||
(package
|
||||
(name "tsl-hopscotch-map")
|
||||
|
||||
+341
-1173
File diff suppressed because it is too large
Load Diff
+12
-11
@@ -276,17 +276,18 @@ Ed448-Goldilocks and Curve448, using the Decaf encoding.")
|
||||
(define-public libsodium
|
||||
(package
|
||||
(name "libsodium")
|
||||
(version "1.0.22")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jedisct1/libsodium")
|
||||
(commit (string-append version "-RELEASE"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"05lqdn6nzldsia5mv5a9xfvc5k0kybh9snwv7qsb135gva4bpjwk"))))
|
||||
(version "1.0.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append
|
||||
"https://download.libsodium.org/libsodium/"
|
||||
"releases/libsodium-" version ".tar.gz")
|
||||
(string-append
|
||||
"https://download.libsodium.org/libsodium/"
|
||||
"releases/old/libsodium-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1h9ncvj23qbbni958knzsli8dvybcswcjbx0qjjgi922nf848l3g"))))
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "Portable NaCl-based crypto library")
|
||||
(description
|
||||
|
||||
@@ -70,8 +70,6 @@
|
||||
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
|
||||
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
|
||||
;;; Copyright © 2026 Peter Polidoro <peter@polidoro.io>
|
||||
;;; Copyright © 2026 Josep Bigorra <jjbigorra@gmail.com>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -128,7 +126,6 @@
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages language)
|
||||
@@ -201,7 +198,6 @@
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (guix build-system guile)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix build-system pyproject)
|
||||
@@ -4160,8 +4156,8 @@ programmatically or as a standalone CLI application.")
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list openssl
|
||||
tcl)) ;for tests
|
||||
`(("libcrypto" ,openssl)
|
||||
("libtcl8.6" ,tcl))) ; required for running the tests
|
||||
(native-inputs
|
||||
(list tcl))
|
||||
(arguments
|
||||
@@ -5050,54 +5046,6 @@ postgresql = postgresql://nixbld@/yoyo_test~%")))
|
||||
files or Python scripts that define a list of migration steps.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public mutastructura
|
||||
(package
|
||||
(name "mutastructura")
|
||||
(version "0.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/jjba23/mutastructura")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08vzlc5imavqf3bdzgbh70c7z44xjhf05gr7i2g5ksl49lv39gzh"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:source-directory "src"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'install-program-files
|
||||
(lambda _
|
||||
(let* ((bin (string-append #$output "/bin"))
|
||||
(share (string-append #$output "/share")))
|
||||
(copy-recursively "resources"
|
||||
(string-append share "/resources"))
|
||||
(install-file "scripts/mutastructura" bin)
|
||||
(install-file "scripts/log.bash"
|
||||
(string-append share "/scripts/"))
|
||||
(chmod (string-append bin "/mutastructura") #o755)))))))
|
||||
(native-inputs (list guile-3.0))
|
||||
(propagated-inputs (list guile-dbi
|
||||
guile-dbd-mysql
|
||||
guile-dbd-sqlite3
|
||||
guile-dbd-postgresql
|
||||
guile-gcrypt))
|
||||
(inputs (list guile-3.0 bash-minimal))
|
||||
(home-page "https://codeberg.org/jjba23/mutastructura")
|
||||
(synopsis "Relational database schema migrations powered by Guile Scheme")
|
||||
(description
|
||||
"Mutastructura provides a familiar, declarative and transactional
|
||||
approach to managing database states. It exposes a user-friendly
|
||||
@acronym{CLI, command-line interface} and has support for PostgreSQL, MySQL, and SQLite.
|
||||
It also exposes library functions and can be imported and used directly from other Guile code.
|
||||
|
||||
Features include executing migrations transactionally and computing SHA256
|
||||
checksums to track schema evolution in a @code{migrations_history} table.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public python-mysqlclient
|
||||
(package
|
||||
(name "python-mysqlclient")
|
||||
|
||||
+17
-18
@@ -978,27 +978,26 @@ engineering.")
|
||||
(define-public seer-gdb
|
||||
(package
|
||||
(name "seer-gdb")
|
||||
(version "2.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/epasveer/seer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1szfqybqr5z982vian4f0hpsagiqapzys3axwibyjyg5whjswva1"))))
|
||||
(version "1.16")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/epasveer/seer.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jdvyg2jab1pvf36pvkyrfsg2wyy8zp1qx0v2ksclgrnr1hja6k6"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;tests are strangely manual
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "src"))))))
|
||||
`(#:tests? #f ; Those are strangely manual
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "src"))))))
|
||||
(inputs
|
||||
(list gdb qtbase qtcharts qtsvg qtwayland))
|
||||
(list qtbase-5 qtcharts-5 qtwayland-5))
|
||||
(synopsis "GUI frontend for GDB")
|
||||
(description "This package provides a frontend to GDB, the GNU debugger.")
|
||||
(home-page "https://github.com/epasveer/seer")
|
||||
|
||||
+3
-49
@@ -31,7 +31,7 @@
|
||||
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025, 2026 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Grigory Shepelev <shegeley@gmail.com>
|
||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||
|
||||
@@ -94,8 +94,6 @@
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages golang-build)
|
||||
#:use-module (gnu packages golang-check)
|
||||
#:use-module (gnu packages golang-compression)
|
||||
#:use-module (gnu packages golang-xyz)
|
||||
#:use-module (gnu packages graphics)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -266,14 +264,14 @@ tmpfs/ramfs filesystems.")
|
||||
(define-public parted
|
||||
(package
|
||||
(name "parted")
|
||||
(version "3.7")
|
||||
(version "3.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/parted/parted-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yzga4cjq3yplqs47dl9714vwc3v3v8nxrj80rdc5wx4c5syb380"))))
|
||||
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -296,7 +294,6 @@ tmpfs/ramfs filesystems.")
|
||||
(,util-linux "lib")))
|
||||
(native-inputs
|
||||
(list gettext-minimal
|
||||
pkg-config
|
||||
|
||||
;; For the tests.
|
||||
e2fsprogs
|
||||
@@ -423,49 +420,6 @@ tables, and it understands a variety of different formats.")
|
||||
similarity.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gdu
|
||||
(package
|
||||
(name "gdu")
|
||||
(version "5.35.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dundee/gdu")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "051xf3wncdiavjwyl9djmni5vd2dqjgn6drkw2nm21c9l0rjfv6d"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:install-source? #f
|
||||
#:import-path "github.com/dundee/gdu/v5/cmd/gdu"
|
||||
#:unpack-path "github.com/dundee/gdu/v5"))
|
||||
(native-inputs
|
||||
(list go-github-com-dgraph-io-badger-v4
|
||||
go-github-com-fatih-color
|
||||
go-github-com-gdamore-tcell-v2
|
||||
go-github-com-h2non-filetype
|
||||
go-github-com-maruel-natural
|
||||
go-github-com-mattn-go-isatty
|
||||
go-github-com-pkg-errors
|
||||
go-github-com-rivo-tview
|
||||
go-github-com-sirupsen-logrus
|
||||
go-github-com-spf13-cobra
|
||||
go-github-com-stretchr-testify
|
||||
go-github-com-ulikunitz-xz
|
||||
go-golang-org-x-sys
|
||||
go-golang-org-x-text
|
||||
go-gopkg-in-yaml-v3
|
||||
go-modernc-org-sqlite))
|
||||
(home-page "https://github.com/dundee/gdu")
|
||||
(synopsis "Disk usage analyzer")
|
||||
(description "Gdu is a disk usage analyzer written in Go. It is intended
|
||||
primarily for SSD disks where it can fully utilize parallel processing, but it
|
||||
also works on HDDs.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public gpart
|
||||
;; The latest (0.3) release is from 2015 and is missing a crash fix.
|
||||
(let ((commit "ec03350a01ad69708b5a3e2d47b8e002b0eba6c9")
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
(define-public boinc-client
|
||||
(package
|
||||
(name "boinc-client")
|
||||
(version "8.2.12")
|
||||
(version "8.2.9")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -62,7 +62,7 @@
|
||||
(file-name (git-file-name "boinc" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0531n0yij1gh06xy6plwivbpmhqfq15jizg3rdgri40nz41rzbgr"))))
|
||||
"0ik9423ii6kal29jdn907pxy8w86zpi8n158qx1gcsh8lsaif1v5"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+18
-2
@@ -201,13 +201,13 @@ your project into different processes.")
|
||||
(define-public python-django
|
||||
(package
|
||||
(name "python-django")
|
||||
(version "5.2.13")
|
||||
(version "5.2.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django" version))
|
||||
(sha256
|
||||
(base32 "1i1vlffzhwbzp6r6y8ycvwklc45diy4c6i897z379l48a7dqj5d3"))))
|
||||
(base32 "1lq2dynfw6jmvzrzgfrlij2qnxcksaxgnrfr0pj3bvmrv0m2jbbz"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
'(#:test-flags
|
||||
@@ -298,6 +298,22 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
|
||||
;; This CVE is fixed in 4.1.9.
|
||||
"CVE-2023-31047"))))))
|
||||
|
||||
(define-public python-django-4
|
||||
(package
|
||||
(inherit python-django)
|
||||
(name "python-django-4")
|
||||
(version "4.2.28")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django" version))
|
||||
(sha256
|
||||
(base32 "1znc2q1m9p2kxz1rkfkh2hg2sx6i3aqv72zsraad7bci364cvfd4"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases (delete 'delete-sitecustomize)))))))
|
||||
|
||||
(define-public python-django-cache-url
|
||||
(package
|
||||
(name "python-django-cache-url")
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
;;; Copyright © 2022 ( <paren@disroot.org>
|
||||
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
|
||||
;;; Copyright © 2025-2026 Jonas Meeuws <jonas.meeuws@gmail.com>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -321,11 +320,11 @@ integration tests...\n")
|
||||
"|core.thread.osthread-debug-shared")))
|
||||
(#t `("")))))))))))))
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(delete "llvm")
|
||||
(replace "ldc" ldc-bootstrap)
|
||||
(append clang-17 ;propagates llvm and clang-runtime
|
||||
python-lit)))
|
||||
(append (delete "llvm"
|
||||
(alist-replace "ldc" (list ldc-bootstrap)
|
||||
(package-native-inputs ldc-bootstrap)))
|
||||
`(("clang" ,clang-17) ;propagates llvm and clang-runtime
|
||||
("python-lit" ,python-lit))))
|
||||
(properties
|
||||
(alist-delete 'hidden? (package-properties ldc-bootstrap)))))
|
||||
|
||||
|
||||
@@ -115,7 +115,6 @@
|
||||
(uri (git-reference
|
||||
(url "git://git.chiark.greenend.org.uk/~ianmdlvl/adns.git")
|
||||
(commit (string-append "adns-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ln3l5j7wb1xazrzl76p9xar52p6l2k1cwy7jazxw1acl71k9h5n"))))
|
||||
@@ -841,14 +840,14 @@ to result in system-wide compromise.")
|
||||
(define-public unbound
|
||||
(package
|
||||
(name "unbound")
|
||||
(version "1.25.0")
|
||||
(version "1.24.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1iyyplggqhh2h1sbssq65v8z2s8mk1v9n1z4pr0z1qizfbd6wah6"))))
|
||||
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "python"))
|
||||
(native-inputs
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2018, 2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
||||
@@ -192,20 +192,21 @@ markup) can be customized and extended by the user.")
|
||||
|
||||
(define-deprecated asciidoc-py3 asciidoc)
|
||||
|
||||
(define-public doxygen-1.16
|
||||
(define-public doxygen
|
||||
(package
|
||||
(name "doxygen")
|
||||
(version "1.16.1")
|
||||
(version "1.14.0")
|
||||
(home-page "https://www.doxygen.nl/")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append home-page "files/doxygen-" version
|
||||
".src.tar.gz")
|
||||
(string-append "mirror://sourceforge/doxygen/rel-" version
|
||||
"/doxygen-" version ".src.tar.gz")))
|
||||
(sha256
|
||||
(base32 "1a33w82ln692qsf3ls0j31f6khljjs1cy3bwd70pra2fa4xy6710"))))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append home-page "files/doxygen-"
|
||||
version ".src.tar.gz")
|
||||
(string-append "mirror://sourceforge/doxygen/rel-"
|
||||
version "/doxygen-" version
|
||||
".src.tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list bison
|
||||
@@ -249,25 +250,6 @@ IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
|
||||
and to some extent D.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public doxygen-1.14
|
||||
(package
|
||||
(inherit doxygen-1.16)
|
||||
(name "doxygen")
|
||||
(version "1.14.0")
|
||||
(home-page "https://www.doxygen.nl/")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append home-page "files/doxygen-"
|
||||
version ".src.tar.gz")
|
||||
(string-append "mirror://sourceforge/doxygen/rel-"
|
||||
version "/doxygen-" version
|
||||
".src.tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))))
|
||||
|
||||
(define-public doxygen doxygen-1.14)
|
||||
|
||||
(define-public halibut
|
||||
(package
|
||||
(name "halibut")
|
||||
|
||||
@@ -148,13 +148,13 @@ system.")
|
||||
(define-public r-duckdb
|
||||
(package
|
||||
(name "r-duckdb")
|
||||
(version "1.5.2")
|
||||
(version "1.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "duckdb" version))
|
||||
(sha256
|
||||
(base32 "1dldlfwvc33czvlxfmwaj4p9y6sjjj5iqy98yda47a8kclrqmyam"))
|
||||
(base32 "177621m08whqqk4yhj3zrr08l3d9hhlqh3gm9jzhi5cplg47cksq"))
|
||||
;; This package bundles the duckdb sources and builds a custom variant
|
||||
;; of duckdb. I'd be happy to link it with our duckdb library instead,
|
||||
;; but it does not seem possible to do that.
|
||||
|
||||
@@ -204,3 +204,48 @@ and EFI variable management.")
|
||||
;; Library routines (in lib/) are under LGPL 2.1.
|
||||
;; Compiling/linking/using OpenSSL is permitted.
|
||||
(license (list license:gpl2 license:lgpl2.1))))
|
||||
|
||||
(define-public efilinux
|
||||
(package
|
||||
(name "efilinux")
|
||||
(version "1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mfleming/efilinux")
|
||||
(commit (string-append "efilinux-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0b4nxzr3wl5v4b52r79iw1arfgasz26xb38r2blw9v2qz2s1q9w2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "CC=gcc"
|
||||
,@(match (%current-system)
|
||||
("aarch64-linux"
|
||||
'("ARCH=aarch64"))
|
||||
("armhf-linux"
|
||||
'("ARCH=arm"))
|
||||
(_ '()))
|
||||
(string-append "INCDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||
"/include")
|
||||
(string-append "LIBDIR=" (assoc-ref %build-inputs "gnu-efi")
|
||||
"/lib"))
|
||||
#:tests? #f ; No tests exist.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "efilinux.efi"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/libexec"))
|
||||
#t)))))
|
||||
(inputs
|
||||
(list gnu-efi))
|
||||
(synopsis "Minimal Linux loader for UEFI")
|
||||
(description "This package provides a minimal Linux loader as an UEFI
|
||||
program.")
|
||||
(home-page "https://github.com/mfleming/efilinux")
|
||||
(license license:bsd-2)))
|
||||
|
||||
@@ -2331,7 +2331,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
|
||||
(define-public nvc
|
||||
(package
|
||||
(name "nvc")
|
||||
(version "1.20.1")
|
||||
(version "1.19.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -2340,7 +2340,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1b38x2ch468s4p6mrq6c8s0d95vb84p6w4v8in79l4w7sfy8jnr0"))))
|
||||
"1zizz2dafm53lzpjayy6vig5pz5ri9cszdivg0jzzh8s3ggkpy1i"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:out-of-source? #t
|
||||
@@ -3461,7 +3461,7 @@ form of AXI, AXI lite, and AXI stream modules.")
|
||||
(define-public python-edalize
|
||||
(package
|
||||
(name "python-edalize")
|
||||
(version "0.6.8")
|
||||
(version "0.6.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3470,7 +3470,7 @@ form of AXI, AXI lite, and AXI stream modules.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04m2lhkclw9fj92k43c06j003qnq9i1yhy2131fvcnkkr0d9438m"))))
|
||||
(base32 "115nc15n2cx4x9irjim07zkg0287418djqd6ja7rm8jrnyldvln9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -4516,7 +4516,7 @@ unique design feature of Trilinos is its focus on packages.")
|
||||
(define-public verilator
|
||||
(package
|
||||
(name "verilator")
|
||||
(version "5.048")
|
||||
(version "5.046")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4525,7 +4525,7 @@ unique design feature of Trilinos is its focus on packages.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "16c1x66kqmc5ldqjij81kypj471fibfihcqn6kz4wbxvnn0smyn6"))))
|
||||
(base32 "1gr1qhxvl4856hnmnx46dqd2qp0jhdh959zm2qfmxzzh19np7xkm"))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
|
||||
@@ -290,7 +290,7 @@ based upon the Common Locale Data Repository (CLDR).")
|
||||
(package
|
||||
(inherit elixir-ex-cldr-minimal)
|
||||
(name "elixir-ex-cldr")
|
||||
(version "2.47.2")
|
||||
(version "2.43.2")
|
||||
(source
|
||||
(origin
|
||||
;; The hex.pm package ships only the en locale.
|
||||
@@ -300,7 +300,7 @@ based upon the Common Locale Data Repository (CLDR).")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rivy61aq0c9zfklm4bpvvkj7lzjgy316rwxl8qz92xqp6xa292y"))))
|
||||
(base32 "1wgwp74ya0gkvd5pk4qv9s38p85r5yw370y4wv7jywy3hrbrj9f5"))))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
|
||||
@@ -303,17 +303,7 @@ purposes. Its goal is to be as close as possible to
|
||||
(list
|
||||
#:test-flags
|
||||
;; These tests require network access to badssl.com.
|
||||
#~(list "--exclude" "network")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'make-reproducible
|
||||
(lambda _
|
||||
;; Buffer size has been increased in OTP 28+. For more info see:
|
||||
;; https://github.com/erlang/otp/issues/9722#issuecomment-2808683303
|
||||
(substitute* "test/httpoison_test.exs"
|
||||
(("stream/20") "stream/100")
|
||||
(("<= expected_length") "<= expected_length * 1.1")
|
||||
((">= max_length") ">= max_length * 0.9")))))))
|
||||
#~(list "--exclude" "network")))
|
||||
(native-inputs
|
||||
(list erlang-cowboy
|
||||
elixir-earmark
|
||||
|
||||
@@ -62,7 +62,7 @@ as bold, underscore or italic.")
|
||||
(define-public emacs-buttercup
|
||||
(package
|
||||
(name "emacs-buttercup")
|
||||
(version "1.40")
|
||||
(version "1.38")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -72,7 +72,9 @@ as bold, underscore or italic.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1b55cfh4wr40max2c42crvaa6wid7a83g28yximsin98i32q5f5r"))))
|
||||
"09n8skr5wi8bs7x81d5bi6z89dd8s1zi9a5f4r2qadaz69slncxq"))
|
||||
(patches
|
||||
(search-patches "emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+497
-1085
File diff suppressed because it is too large
Load Diff
@@ -28,7 +28,6 @@
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Jake Forster <jakecameron.forster@gmail.com>
|
||||
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -387,7 +386,6 @@
|
||||
(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
|
||||
@@ -414,7 +412,6 @@
|
||||
(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"
|
||||
@@ -632,8 +629,6 @@ editor (console only)")
|
||||
libx11
|
||||
libxft
|
||||
libxpm
|
||||
libxrender
|
||||
libxt
|
||||
libwebp
|
||||
pango
|
||||
poppler)))))
|
||||
@@ -706,8 +701,8 @@ editor (with wide ints)" )
|
||||
#~(cons "--with-wide-int" #$flags))))))
|
||||
|
||||
(define-public emacs-next-minimal
|
||||
(let ((commit "d969185878bf50faedbafbd609c361875b891b53")
|
||||
(revision "3"))
|
||||
(let ((commit "509228fc6c026921c67459f21164e0325efc583b")
|
||||
(revision "2"))
|
||||
(package
|
||||
(inherit emacs-minimal)
|
||||
(name "emacs-next-minimal")
|
||||
@@ -721,7 +716,7 @@ editor (with wide ints)" )
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1pmx71b6pazjpyfs1d2ngby1idsviwbap3xbr5b7dgf0rngim32s"))
|
||||
(base32 "04aalyrx5jysk5fhlka98fhfx23sy99zp8j16i0ils20sflyig6n"))
|
||||
(patches
|
||||
(search-patches "emacs-next-disable-jit-compilation.patch"
|
||||
"emacs-next-exec-path.patch"
|
||||
@@ -874,7 +869,7 @@ Started in 2014 as a GSOC project, Guile-Emacs was resurrected in 2024.")
|
||||
"0vfw7z9i2s9np6nmx1d4dlsywm044rkaqarn7akffmb6bf1j6zv5"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list gettext-minimal))
|
||||
`(("gettext" ,gettext-minimal)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-charmaps="
|
||||
|
||||
+10
-13
@@ -1264,8 +1264,7 @@ Enjoy all of your favorite Atari 2600 games on your PC thanks to Stella!")
|
||||
(base32 "1xf15b6c3i0vv92b420a92pfvfaxhji56ivin8pn5r7fajkqyfb7"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(cons* pkg-config which
|
||||
(maybe-nasm)))
|
||||
(list pkg-config nasm which))
|
||||
(inputs
|
||||
(list freetype
|
||||
glu
|
||||
@@ -1290,6 +1289,8 @@ Enjoy all of your favorite Atari 2600 games on your PC thanks to Stella!")
|
||||
(list "all" (string-append "PREFIX=" out)))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
;; As per the Makefile (in projects/unix/Makefile):
|
||||
(supported-systems '("i686-linux" "x86_64-linux"))
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Nintendo 64 emulator core library")
|
||||
(description
|
||||
@@ -2163,9 +2164,7 @@ as RetroArch.")
|
||||
(lambda _
|
||||
(install-file "mupen64plus_next_libretro.so"
|
||||
(string-append #$output "/lib/libretro/")))))))
|
||||
(native-inputs
|
||||
(cons* pkg-config
|
||||
(maybe-nasm)))
|
||||
(native-inputs (list nasm pkg-config))
|
||||
(inputs (list mesa libpng minizip unzip xxhash zlib))
|
||||
(home-page "https://github.com/libretro/mupen64plus-libretro-nx")
|
||||
(synopsis "Improved Mupen64Plus libretro core")
|
||||
@@ -3453,7 +3452,7 @@ This is a part of the TiLP project.")
|
||||
(define-public mame
|
||||
(package
|
||||
(name "mame")
|
||||
(version "0.287")
|
||||
(version "0.252")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3462,16 +3461,16 @@ This is a part of the TiLP project.")
|
||||
(commit (apply string-append "mame" (string-split version #\.)))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1p9v71gvaqiyj6sa1b0wkdksa9wnr6yr2a43ckycljjfas5s36kq"))
|
||||
(base32 "07qhcm1v47sy2wj30nx3cbhvcbgki0cl83gabr0miiw60fhgyn6j"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove bundled libraries.
|
||||
'(begin
|
||||
(with-directory-excursion "3rdparty"
|
||||
(for-each delete-file-recursively
|
||||
'("asio" "expat" "glm" "flac" "libjpeg" "lua"
|
||||
"portaudio" "portmidi" "pugixml" "rapidjson"
|
||||
"sqlite3" "utf8proc" "zlib")))))))
|
||||
'("asio" "expat" "glm" "libflac" "libjpeg" "lua"
|
||||
"portaudio" "portmidi" "pugixml" "rapidjson" "SDL2"
|
||||
"SDL2-override" "sqlite3" "utf8proc" "zlib")))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3605,9 +3604,7 @@ This is a part of the TiLP project.")
|
||||
libjpeg-turbo
|
||||
libxi
|
||||
libxinerama
|
||||
;; MAME requires Lua compiled as C++ to work correctly.
|
||||
;; See https://www.mamedev.org/?p=523
|
||||
lua-5.4-for-c++
|
||||
lua
|
||||
portaudio
|
||||
portmidi
|
||||
pugixml
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
(define-public erlang
|
||||
(package
|
||||
(name "erlang")
|
||||
(version "28.4.3")
|
||||
(version "27.3.4.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
;; The tarball from http://erlang.org/download contains many
|
||||
@@ -62,7 +62,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dsdmp2rccc0rhzy2w8r4amxmc6nr9hbi053j2s0bg9db30b48rc"))
|
||||
"0dhz2c7w28ss0ypj7jh88pfs3kc8hbwiiq91in1j2miy5sn4cp3x"))
|
||||
(patches (search-patches "erlang-man-path.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
@@ -75,7 +75,7 @@
|
||||
"/OTP-" version "/otp_doc_man_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g17wzv8j12g9272yvv55nj4wqs09hxkv3i0vnp7d6gcs24bmphi"))))))
|
||||
"1j1fcli7ma9vi4qyv67lq7yiznhpnfvcmh57bn8qxvha6ky2pngm"))))))
|
||||
(inputs
|
||||
(list ncurses openssl wxwidgets))
|
||||
(propagated-inputs
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2017 Dave Love <fx@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019, 2023, 2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019, 2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -220,25 +220,20 @@ testing InfiniBand networks.")
|
||||
"--disable-assertions"
|
||||
"--disable-params-check"
|
||||
|
||||
"--enable-mt"
|
||||
(string-append "--with-verbs="
|
||||
#$(this-package-input "rdma-core"))
|
||||
|
||||
(string-append "--with-rdmacm="
|
||||
#$(this-package-input "rdma-core"))
|
||||
|
||||
#$@(if (this-package-input "rocr-runtime")
|
||||
#~((string-append "--with-rocm="
|
||||
#$(this-package-input
|
||||
"rocr-runtime")))
|
||||
#~()))
|
||||
(string-append "--with-rocm="
|
||||
#$(this-package-input "rocr-runtime")))
|
||||
|
||||
;; Be verbose so that compiler flags are displayed.
|
||||
#:make-flags #~'("V=1")))
|
||||
(native-inputs
|
||||
(list autoconf automake libtool pkg-config))
|
||||
(inputs
|
||||
(list numactl rdma-core))
|
||||
(list numactl rdma-core rocr-runtime))
|
||||
(synopsis "Optimized communication layer for message passing in HPC")
|
||||
(description
|
||||
"Unified Communication X (UCX) provides an optimized communication layer
|
||||
@@ -254,13 +249,3 @@ memory mechanisms for efficient intra-node communication.")
|
||||
;; and x86_64 as supported.
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux" "powerpc64le-linux"
|
||||
"riscv64-linux"))))
|
||||
|
||||
;; Note: ROCm support is kept separate to avoid a significant increase in
|
||||
;; closure size: <https://codeberg.org/guix/guix/issues/7225>.
|
||||
(define-public ucx-rocm
|
||||
(package/inherit ucx
|
||||
(name "ucx-rocm")
|
||||
(inputs (modify-inputs inputs
|
||||
(append rocr-runtime)))
|
||||
(synopsis "Optimized communication layer for message passing in HPC (with
|
||||
ROCm support)")))
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
;;; Copyright © 2025 45mg <45mg.writes@gmail.com>
|
||||
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1129,8 +1128,8 @@ transaction log.
|
||||
(inherit jfsutils)
|
||||
(name "jfsutils-static")
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(prepend (list util-linux "static")))))))
|
||||
`(("util-linux:static" ,util-linux "static")
|
||||
,@(package-inputs jfsutils))))))
|
||||
|
||||
(define-public jfs_fsck/static
|
||||
(package
|
||||
@@ -1139,23 +1138,28 @@ transaction log.
|
||||
(source #f)
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:modules '((guix build utils))
|
||||
#:builder
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(let* ((sbin (string-append #$output "/sbin"))
|
||||
(fsck (string-append sbin "/jfs_fsck")))
|
||||
(install-file (search-input-file %build-inputs "sbin/jfs_fsck")
|
||||
sbin)
|
||||
(remove-store-references fsck)
|
||||
(chmod fsck #o555)))))
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-26))
|
||||
(let* ((jfsutils (assoc-ref %build-inputs "jfsutils"))
|
||||
(fsck "jfs_fsck")
|
||||
(out (assoc-ref %outputs "out"))
|
||||
(sbin (string-append out "/sbin")))
|
||||
(mkdir-p sbin)
|
||||
(with-directory-excursion sbin
|
||||
(install-file (string-append jfsutils "/sbin/" fsck)
|
||||
".")
|
||||
(remove-store-references fsck)
|
||||
(chmod fsck #o555))
|
||||
#t))))
|
||||
(inputs
|
||||
(list jfsutils/static))
|
||||
`(("jfsutils" ,jfsutils/static)))
|
||||
(home-page (package-home-page jfsutils))
|
||||
(synopsis "Statically-linked jfs_fsck command from jfsutils")
|
||||
(description
|
||||
"This package provides statically-linked jfs_fsck command taken
|
||||
(description "This package provides statically-linked jfs_fsck command taken
|
||||
from the jfsutils package. It is meant to be used in initrds.")
|
||||
(license (package-license jfsutils))))
|
||||
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
;; <https://bitcoincore.org/en/lifecycle/#schedule>.
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "31.0")
|
||||
(version "30.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -173,7 +173,7 @@
|
||||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qxkcyq8nwq6sw4qi660z8n8356mqdsf4jvpq5ndkvrsx9gfz80b"))))
|
||||
"1jw4djh22v0nih0n7irdbknfbqavlc4l3b8176b5qgc88a60pl3g"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:qtbase qtbase
|
||||
@@ -197,7 +197,9 @@
|
||||
"python3" "./test/functional/test_runner.py" "--timeout-factor=2"
|
||||
(string-append "--jobs=" (number->string (parallel-job-count)))))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
(list bash ; provides the sh command for system_tests
|
||||
coreutils ; provides the cat, echo and false commands for system_tests
|
||||
pkg-config
|
||||
python ; for the tests
|
||||
python-pyzmq ; for the tests
|
||||
qttools))
|
||||
@@ -2601,7 +2603,7 @@ mining.")
|
||||
(define-public p2pool
|
||||
(package
|
||||
(name "p2pool")
|
||||
(version "4.15")
|
||||
(version "4.14")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2610,7 +2612,7 @@ mining.")
|
||||
(commit (string-append "v" version))
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256 (base32 "1jfrq3dnkkvrk9zsn3viix5dcjwk0nmp15y1m1vj5py89hm57rxq"))
|
||||
(sha256 (base32 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(for-each delete-file-recursively
|
||||
|
||||
@@ -1159,10 +1159,10 @@ Executables included are:
|
||||
(native-inputs
|
||||
(append
|
||||
(list acpica
|
||||
nasm
|
||||
perl
|
||||
python-3
|
||||
(list util-linux "lib"))
|
||||
(maybe-nasm (string-append arch "-" arch))
|
||||
(if (not (string-prefix? arch (%current-system)))
|
||||
(if (string=? arch "armhf")
|
||||
(list (cross-gcc "arm-linux-gnueabihf")
|
||||
|
||||
+42
-2
@@ -3873,7 +3873,7 @@ typographical palette.")
|
||||
(define-public font-mona-sans
|
||||
(package
|
||||
(name "font-mona-sans")
|
||||
(version "2.0.23")
|
||||
(version "2.0.8")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3883,7 +3883,7 @@ typographical palette.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pa6bghch1y0drxmz627055fwgsbdyp9vsj0f3va64pmvgkyf5jl"))))
|
||||
"1gdblparf0v5mdbp891wnsc5x4dxr433fg0dmz0mhzrdw9vaalig"))))
|
||||
(build-system font-build-system)
|
||||
(outputs '("out" "ttf" "woff"))
|
||||
(home-page "https://github.com/mona-sans")
|
||||
@@ -4658,6 +4658,46 @@ is a stylish type with a polished yet relaxed feel. Its versatility makes it
|
||||
suitable for a wide range of uses.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-cozette
|
||||
(package
|
||||
(name "font-cozette")
|
||||
(version "1.13.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/slavfox/Cozette")
|
||||
(commit (string-append "v." version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"178i812n4sfsvid7jhnm683jlxqmrv4ck6qbb4nwyllhwg3gyq60"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'dont-depend-on-git
|
||||
(lambda _
|
||||
(substitute* "build.py"
|
||||
;; Merely importing this module requires a git repository.
|
||||
;; We don't use get_changelog, so just disable the import.
|
||||
(("from cozette_builder\\.changeloggen import get_changelog")
|
||||
""))))
|
||||
(add-before 'install 'build
|
||||
(lambda _
|
||||
(invoke "python3" "build.py" "fonts"))))))
|
||||
(native-inputs
|
||||
(list fontforge
|
||||
python
|
||||
python-crayons
|
||||
python-fonttools
|
||||
python-numpy
|
||||
python-pillow))
|
||||
(home-page "https://github.com/slavfox/Cozette")
|
||||
(synopsis "Bitmap programming font")
|
||||
(description "Cozette is a 6x13px (bounding box) bitmap font based on Dina
|
||||
and heavily inspired by Creep.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public font-montserrat
|
||||
(package
|
||||
(name "font-montserrat")
|
||||
|
||||
@@ -43,8 +43,6 @@
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; 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.
|
||||
;;;
|
||||
@@ -3055,10 +3053,10 @@ useful with system integration.")
|
||||
"0zs4z7l9b57jldwz0ban77f3c2zq43ambd0dssf5qg9i216f9lmj"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list dbus-test-runner
|
||||
(list glib "bin")
|
||||
pkg-config
|
||||
xorg-server-for-tests))
|
||||
`(("dbus-test-runner" ,dbus-test-runner)
|
||||
("glib:bin" ,glib "bin")
|
||||
("pkg-config" ,pkg-config)
|
||||
("xvfb" ,xorg-server-for-tests)))
|
||||
(inputs
|
||||
(list gtk+ glib))
|
||||
(arguments
|
||||
@@ -3419,50 +3417,50 @@ interfaces.")
|
||||
(define-public xdg-desktop-portal-wlr
|
||||
(package
|
||||
(name "xdg-desktop-portal-wlr")
|
||||
(version "0.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/emersion/xdg-desktop-portal-wlr")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1jj0a9s3h3i04qsxkhcpxjzbb17hs9ngdy7wkypja09233zdz10w"))
|
||||
(patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch"))))
|
||||
(version "0.7.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/emersion/xdg-desktop-portal-wlr")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mbq3czka9swwmfaasnaj89y2m254p3qa522ayclh688jdwh70hq"))
|
||||
(patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-Dsystemd=disabled"
|
||||
"-Dsd-bus-provider=libelogind")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'hardcode-binaries
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((sh (search-input-file inputs "/bin/sh"))
|
||||
(grim (search-input-file inputs "/bin/grim"))
|
||||
(slurp (search-input-file inputs "/bin/slurp")))
|
||||
(substitute* '("src/screencast/chooser.c"
|
||||
"src/screenshot/screenshot.c")
|
||||
(("grim") grim)
|
||||
(("slurp") slurp)
|
||||
(("/bin/sh") sh))
|
||||
(substitute* "src/screencast/screencast.c"
|
||||
(("execvp\\(\"sh")
|
||||
(format #f "execvp(\"~a" sh))))))
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda _
|
||||
(install-file "../source/README.md"
|
||||
(string-append #$output "/share/doc/"
|
||||
#$name)))))))
|
||||
(native-inputs (list cmake-minimal pkg-config scdoc))
|
||||
(inputs (list bash-minimal
|
||||
elogind
|
||||
`(#:configure-flags
|
||||
'("-Dsystemd=disabled"
|
||||
"-Dsd-bus-provider=libelogind")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'hardcode-binaries
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((sh (search-input-file inputs "/bin/sh"))
|
||||
(grim (search-input-file inputs "/bin/grim"))
|
||||
(slurp (search-input-file inputs "/bin/slurp")))
|
||||
(substitute* "src/screenshot/screenshot.c"
|
||||
(("grim") grim)
|
||||
(("slurp") slurp)
|
||||
(("execl\\(\"/bin/sh\", \"/bin/sh\"")
|
||||
(string-append "execl(\"" sh "\", \"" sh "\"")))
|
||||
(substitute* "src/screencast/screencast.c"
|
||||
(("execvp\\(\"sh")
|
||||
(string-append "execvp(\"" sh))))))
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "../source/README.md"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/doc/" ,name)))))))
|
||||
(native-inputs
|
||||
(list cmake-minimal pkg-config))
|
||||
(inputs (list elogind
|
||||
bash-minimal
|
||||
grim
|
||||
iniparser
|
||||
libinih
|
||||
mesa
|
||||
libinih
|
||||
pipewire
|
||||
slurp
|
||||
wayland
|
||||
@@ -3476,45 +3474,6 @@ remote-desktop @code{xdg-desktop-portal} interfaces for wlroots based
|
||||
compositors.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public xdg-desktop-portal-termfilechooser
|
||||
(package
|
||||
(name "xdg-desktop-portal-termfilechooser")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wvmwl678fr5pxz7x248pm5v4jd3bycz8nqa2q87akys5b9d1xpd"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'fix-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((sed (search-input-file inputs "/bin/sed")))
|
||||
(substitute* (find-files #$output "-wrapper\\.sh")
|
||||
((" sed") (string-append " " sed)))))))))
|
||||
(native-inputs
|
||||
(list cmake-minimal
|
||||
pkg-config
|
||||
scdoc))
|
||||
(inputs
|
||||
(list basu
|
||||
libinih
|
||||
sed))
|
||||
(home-page "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
|
||||
(synopsis "@code{xdg-desktop-portal} backend for choosing files with your
|
||||
favorite terminal file chooser")
|
||||
(description
|
||||
"This package provides a backend implementation for xdg-desktop-portal that
|
||||
allows using your preferred terminal file manager as file chooser in other
|
||||
applications.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public poweralertd
|
||||
(package
|
||||
(name "poweralertd")
|
||||
|
||||
@@ -2391,47 +2391,6 @@ games.")
|
||||
(home-page "https://openmw.org")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public jolt-physics
|
||||
(package
|
||||
(name "jolt-physics")
|
||||
(version "5.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jrouwe/JoltPhysics")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dzqi4mxrzg5cyf5k8rdlb078939ib849n7gs6014d3ljymf839r"))
|
||||
(modules '((guix build utils)))
|
||||
;; Unbundle Roboto font.
|
||||
(snippet
|
||||
'(begin
|
||||
(delete-file-recursively "Assets/Fonts")
|
||||
(substitute* "TestFramework/TestFramework.cmake"
|
||||
((".*Roboto-Regular\\.ttf.*") ""))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'change-directory
|
||||
(lambda _
|
||||
(chdir "Build")))
|
||||
(add-after 'install 'change-directory
|
||||
(lambda _
|
||||
(chdir ".."))))))
|
||||
(home-page "https://github.com/jrouwe/JoltPhysics")
|
||||
(synopsis "Rigid body physics and collision detection library")
|
||||
(description
|
||||
"Jolt Physics is a multi core friendly rigid body physics and collision
|
||||
detection library, written in C++. It is suitable for games and VR
|
||||
applications.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public godot-lts
|
||||
(package
|
||||
(name "godot")
|
||||
|
||||
+61
-135
@@ -227,7 +227,6 @@
|
||||
#:use-module (gnu packages shells)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages squirrel)
|
||||
#:use-module (gnu packages stb)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages terminals)
|
||||
@@ -553,14 +552,14 @@ use with @code{udev-service-type}.")
|
||||
(define-public armagetronad
|
||||
(package
|
||||
(name "armagetronad")
|
||||
(version "0.2.9.3.0")
|
||||
(version "0.2.9.2.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/armagetronad/stable/"
|
||||
version "/armagetronad-" version ".tbz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1q1zlbhbcimr6bw0ms1pr8hz4q850ivi3hvxn3467jfgiq22f3cy"))))
|
||||
"0a6rlp2lj5bp7pg1yf8brjyb3mw7nqp3amj19wvz3xni21bbc31k"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
@@ -577,7 +576,6 @@ use with @code{udev-service-type}.")
|
||||
(("^install_link .*BINDIR.*") "")))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list libxml2
|
||||
curl
|
||||
(sdl-union (list sdl sdl-image sdl-mixer))
|
||||
freeglut
|
||||
libpng
|
||||
@@ -1235,11 +1233,11 @@ original rogue game found on 4.2BSD.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public sgt-puzzles
|
||||
(let ((commit "06e37f1e334d85c7c779f79ef9e484ff2f708269")
|
||||
(let ((commit "28032bd5a0d3dc409eb225b8bdb23fd0b18a28d7")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "sgt-puzzles")
|
||||
(version (git-version "20260308" revision commit))
|
||||
(version (git-version "20251120" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1248,7 +1246,7 @@ original rogue game found on 4.2BSD.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "141d57s1va2ng7nxjzdgmsqh5mdb0mpy3yiqaj4rplya8xlhm34h"))))
|
||||
(base32 "0533fzzagmi7g7sw1fdgpzy6gjpif77gxf3avz1qnjsma5gq7f2l"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3409,8 +3407,7 @@ and defeat them with your bubbles!")
|
||||
"SamTSE/Sources/Engine/Engine.cpp")
|
||||
(("@OUTPUT_DIR@") #$output)))))))
|
||||
(inputs (list sdl2 libvorbis))
|
||||
(native-inputs (cons* flex bison imagemagick
|
||||
(maybe-nasm)))
|
||||
(native-inputs (list flex bison nasm imagemagick))
|
||||
(home-page "https://github.com/tx00100xt/SeriousSamClassic")
|
||||
(synopsis "SeriousSam engine and Serious Sam: TFE and TSE")
|
||||
(description
|
||||
@@ -4131,7 +4128,7 @@ a C library, so they can easily be integrated into other programs.")
|
||||
(define-public taisei
|
||||
(package
|
||||
(name "taisei")
|
||||
(version "1.4.4")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -4139,7 +4136,7 @@ a C library, so they can easily be integrated into other programs.")
|
||||
"taisei/releases/download/v" version
|
||||
"/taisei-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "13b2ha8nsdzbydirvc7hw1q46jzhn6cx9b9spgk777swjlgx2vph"))))
|
||||
(base32 "19sgm175clkvpcv0b9p4jkjpfxqw0kyl2i5p8w63kwzqcjp9m1jx"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -4148,8 +4145,7 @@ a C library, so they can easily be integrated into other programs.")
|
||||
"-Dr_gles30=enabled"
|
||||
"-Dshader_transpiler=enabled")))
|
||||
(native-inputs
|
||||
(list cmake-minimal
|
||||
pkg-config
|
||||
(list pkg-config
|
||||
python
|
||||
python-docutils
|
||||
python-pygments
|
||||
@@ -4157,29 +4153,24 @@ a C library, so they can easily be integrated into other programs.")
|
||||
(inputs
|
||||
(list cglm
|
||||
freetype
|
||||
glslang
|
||||
libdecor ; XXX: for sdl3
|
||||
libpng
|
||||
libwebp
|
||||
libzip
|
||||
mesa
|
||||
openssl
|
||||
opusfile
|
||||
sdl3
|
||||
sdl2
|
||||
sdl2-mixer
|
||||
shaderc
|
||||
spirv-cross
|
||||
spirv-tools ; for glslang
|
||||
vulkan-loader ; XXX: for sdl3?
|
||||
zlib
|
||||
(list zstd "lib")))
|
||||
(home-page "https://taisei-project.org/")
|
||||
(synopsis "Shoot'em up fangame and libre clone of Touhou Project")
|
||||
(description
|
||||
"Taisei is a vertical shoot'em up game, in which the player controls
|
||||
one of three characters. While moving through stages, a large number of
|
||||
enemies and even larger amounts of bullets appear that require careful
|
||||
maneuvers to dodge. By shooting the enemies, players receive powerups
|
||||
for their characters, allowing them to shoot even more.")
|
||||
"The player controls a character (one of three: Good, Bad, and Dead),
|
||||
dodges the missiles (lots of it cover the screen, but the character's hitbox
|
||||
is very small), and shoot at the adversaries that keep appear on the screen.")
|
||||
(license (list
|
||||
;; game
|
||||
license:expat
|
||||
@@ -4732,10 +4723,6 @@ for common mesh file formats, and collision detection.")
|
||||
(url "https://github.com/thelaui/M.A.R.S.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(delete-file-recursively "ext_libs_for_windows")))
|
||||
(sha256
|
||||
(base32
|
||||
"0bdi4ja39rark742qvqixm8khai5k8qd84z5kzim9jcjdvvwyqj9"))))
|
||||
@@ -4762,8 +4749,7 @@ for common mesh file formats, and collision detection.")
|
||||
attractive physics. Players can battle each other or computer controlled
|
||||
enemies in different game modes such as space ball, death match, team death
|
||||
match, cannon keep, and grave-itation pit.")
|
||||
(license (list license:gpl3+
|
||||
license:cc-by-sa3.0))))) ;/data/audio/music
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public alienblaster
|
||||
(package
|
||||
@@ -5349,124 +5335,54 @@ also available.")
|
||||
(sha256
|
||||
(base32 "05aj09rm50xb6910zx6imarj8k728x9bpvpa7ydwgb4sj1nypil8"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(with-directory-excursion "thirdparty"
|
||||
;; Delete third party ibraries, except these libraries:
|
||||
;; glad: header file is not available in the system glad package.
|
||||
;; imgui: configured with "srb2_imconfig.h".
|
||||
;; libwebm: Not available in Guix.
|
||||
;; renamenoise: Not available in Guix.
|
||||
;; tracy: header files are not available in the system tracy
|
||||
;; package.
|
||||
(for-each delete-file-recursively
|
||||
'("discord-rpc"
|
||||
"glm"
|
||||
"nlohmann-json"
|
||||
"overlay-ports/libyuv"
|
||||
"tcbrindle_span"
|
||||
"vma"
|
||||
"volk"
|
||||
"vulkan-headers"
|
||||
"xmp-lite"))
|
||||
;; Unbundle stb.
|
||||
(with-directory-excursion "stb"
|
||||
(for-each delete-file
|
||||
'("include/stb_rect_pack.h"
|
||||
"stb_vorbis.c"))
|
||||
(substitute* "stb_rect_pack.c"
|
||||
(("\"include\\/stb_rect_pack\\.h\"") "<stb_rect_pack.h>"))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("include\\/stb_rect_pack\\.h ") "")))
|
||||
;; Find third party libraries from the system and do not add the
|
||||
;; deleted directories.
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\((glm|discord-rpc|xmp-lite|fmt|volk)\\)"
|
||||
_ keep)
|
||||
(string-append "find_package(" keep " REQUIRED)"))
|
||||
(("xmp-lite") "libxmp")
|
||||
((".*nlohmann-json.*") "")
|
||||
((".*tcbrindle_span.*") "")
|
||||
((".*vulkan-headers.*") "")
|
||||
((".*vma.*") "")))
|
||||
(with-directory-excursion "src"
|
||||
;; Link the system libraries instead of the unbundled ones.
|
||||
(substitute* "CMakeLists.txt"
|
||||
((".*tcbrindle::span.*") "")
|
||||
(("glm::glm") "glm")
|
||||
(("xmp-lite::xmp-lite") "xmp")
|
||||
(("fmt::fmt-header-only") "fmt")
|
||||
((".*nlohmann_json::nlohmann_json.*") "")))
|
||||
;; Rename the icon to match with the executable file.
|
||||
(rename-file "srb2.png" "ringracers.png")))))
|
||||
(snippet '(begin
|
||||
(with-directory-excursion "thirdparty"
|
||||
(delete-file-recursively "glm")
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\(glm\\)")
|
||||
"find_package(glm REQUIRED)")))
|
||||
(with-directory-excursion "src"
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("glm::glm")
|
||||
"glm")))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;There are no tests.
|
||||
#:configure-flags
|
||||
#~(list "-DSRB2_CONFIG_ENABLE_DISCORDRPC=OFF"
|
||||
"-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
|
||||
#~(list "-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
|
||||
"-DCMAKE_CXX_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'copy-stb_vorbis.c
|
||||
(add-after 'install 'move-and-wrap-binary
|
||||
;; Install executable to $out/bin.
|
||||
(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
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(wrap-program (string-append #$output "/bin/ringracers")
|
||||
`("RINGRACERSWADDIR" =
|
||||
(,(assoc-ref inputs "ring-racers-data"))))))
|
||||
(add-after 'wrap-program 'create-desktop-entry
|
||||
(lambda _
|
||||
(let* ((datadir (string-append #$output "/share"))
|
||||
(appdir (string-append datadir "/applications")))
|
||||
(mkdir-p appdir)
|
||||
(make-desktop-entry-file (string-append appdir
|
||||
"/ringracers.desktop")
|
||||
#:name "Dr. Robotnik's Ring Racers"
|
||||
#:comment "Technical kart racing game"
|
||||
#:icon "ringracers"
|
||||
#:exec (string-append #$output "/bin/ringracers")
|
||||
#:startup-notify #f
|
||||
#:categories '("Application" "Game"))))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
(package-source stb)))
|
||||
(inputs (list bash-minimal
|
||||
curl
|
||||
fmt
|
||||
glm
|
||||
(with-directory-excursion #$output
|
||||
(mkdir "bin")
|
||||
(rename-file "ringracers" "bin/ringracers")
|
||||
(wrap-program "bin/ringracers"
|
||||
`("RINGRACERSWADDIR" =
|
||||
(,(assoc-ref inputs "ring-racers-data"))))))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list glm
|
||||
libogg
|
||||
libpng
|
||||
libvorbis
|
||||
libvpx
|
||||
libxmp
|
||||
libyuv
|
||||
nlohmann-json
|
||||
opus
|
||||
ring-racers-data
|
||||
sdl2
|
||||
stb-rect-pack
|
||||
tcbrindle-span
|
||||
vulkan-headers
|
||||
vulkan-memory-allocator
|
||||
vulkan-volk
|
||||
zlib))
|
||||
(home-page "https://www.kartkrew.org/")
|
||||
zlib
|
||||
curl))
|
||||
(home-page "https://kartkrew.org")
|
||||
(synopsis "Technical kart racing game")
|
||||
(description
|
||||
"Dr.@: Robotnik's Ring Racers is a kart racing game drawing inspiration
|
||||
from \"anti-gravity\" racers, fighting games, and traditional-style kart
|
||||
racing. Ring Racers is designed with an emphasis on player agency in the face
|
||||
of highly technical game-play challenges in both single-player and online
|
||||
multiplayer modes.")
|
||||
"Dr. Robotnik's Ring Racers is a kart racing game drawing inspiration from
|
||||
``anti-gravity'' racers, fighting games, and traditional-style kart racing.
|
||||
Ring Racers is designed with an emphasis on player agency in the face of highly
|
||||
technical game-play challenges in both single-player and online multiplayer
|
||||
modes.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public unknown-horizons
|
||||
@@ -5618,13 +5534,23 @@ falling, themeable graphics and sounds, and replays.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no test target
|
||||
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")))
|
||||
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; XXX: Our Lua doesn't have a C++ library, force C linkage.
|
||||
(substitute* '("src/lua/wrapper_lua.h"
|
||||
"src/lua/wrapper_lualib.h"
|
||||
"src/lua/wrapper_lauxlib.h")
|
||||
(("#include \"(lua|lualib|lauxlib)\\.h\"")
|
||||
"#include \"lua.hpp\"")))))))
|
||||
(inputs
|
||||
(list boost-1.83
|
||||
curl
|
||||
dbus
|
||||
libvorbis
|
||||
lua-5.4-for-c++
|
||||
lua-5.4
|
||||
openssl
|
||||
pango
|
||||
sdl2
|
||||
@@ -5797,14 +5723,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
|
||||
(define-public openttd-engine
|
||||
(package
|
||||
(name "openttd-engine")
|
||||
(version "15.3")
|
||||
(version "15.2")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "https://cdn.openttd.org/openttd-releases/"
|
||||
version "/openttd-" version "-source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rrvjxsr2dp9zr6b35ifiw41c0dwqqcaq90r0x18misrgpm1x8jy"))))
|
||||
"0xpzschcf562giqh3p8jj9gbi8chqrikdwgqqipabyn0nwbvd6nj"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list allegro
|
||||
@@ -6011,7 +5937,7 @@ Transport Tycoon Deluxe.")
|
||||
(add-after 'unpack 'patch-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/music/fluidsynth.cpp"
|
||||
(("_default_soundfonts\\[\\] = \\{" all)
|
||||
(("default_sf\\[\\] = \\{" all)
|
||||
(string-append all "
|
||||
\t/* Guix hardcoded :P */
|
||||
\t\"" (search-input-file inputs "/share/soundfonts/FreePatsGM.sf2") "\",
|
||||
@@ -6038,7 +5964,7 @@ Transport Tycoon Deluxe.")
|
||||
(package
|
||||
(inherit openttd)
|
||||
(name "openttd-jgrpp")
|
||||
(version "0.72.0")
|
||||
(version "0.70.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -6047,7 +5973,7 @@ Transport Tycoon Deluxe.")
|
||||
(commit (string-append "jgrpp-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0xbnnx03y8vhbgi6s7hsxhiqhsy6rhj7fypq6dfqh0z74m5bldkf"))))
|
||||
(base32 "1jzzvribf2cqvjl9cympyx9qpplljvmhqrrlw7aq4ckzl92d87z3"))))
|
||||
(inputs (modify-inputs inputs
|
||||
(append zstd harfbuzz)))
|
||||
(arguments
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
(define-public gramps
|
||||
(package
|
||||
(name "gramps")
|
||||
(version "6.0.8")
|
||||
(version "5.2.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -53,7 +53,7 @@
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "06kdcf6h9rqdcsx097a3n2z4q8yvln20ja7ajwrna1i133591bra"))))
|
||||
(base32 "1gzhi5hxpgc6pxs40xsxf67hndjifnfhm89s3ly68c70x83qmwhd"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -68,11 +68,6 @@
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-gexiv2-dependency
|
||||
(lambda _
|
||||
;; Use our own version
|
||||
(substitute* (find-files "." ".*\\.py$")
|
||||
(("\"GExiv2\", \"0.10\"") "\"GExiv2\", \"0.16\""))))
|
||||
(add-before 'check 'prepare-tests
|
||||
(lambda _
|
||||
(setenv "HOME" (getenv "TMPDIR"))
|
||||
@@ -118,7 +113,6 @@
|
||||
python-bsddb3
|
||||
python-jsonschema
|
||||
python-lxml
|
||||
python-orjson
|
||||
python-pillow
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
|
||||
+14
-82
@@ -425,29 +425,14 @@ hierarchical hexagonal geospatial indexing system")
|
||||
(base32
|
||||
"00qdk9a4048pzfj2rhzkfw3lvm642znf6kr4x29i3d94494pxsnn"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
,@(if (or (target-x86-32?) (target-arm32?))
|
||||
'((add-after 'unpack 'disable-broken-tests
|
||||
(lambda _
|
||||
;; This test fails due to limited accuracy.
|
||||
(delete-file "tests/xmltester/tests/general/TestCentroid.xml")
|
||||
(with-directory-excursion "tests/unit"
|
||||
;; These also fail due to limited accuracy.
|
||||
(delete-file "algorithm/MinimumAreaRectangleTest.cpp")
|
||||
(delete-file "capi/GEOSMinimumRotatedRectangleTest.cpp")
|
||||
;; It is unclear why these fail, but I'm guessing:
|
||||
;; limited accuracy.
|
||||
(delete-file "linearref/LengthIndexedLineTest.cpp")
|
||||
(delete-file "math/DDTest.cpp")))))
|
||||
'())
|
||||
(add-after
|
||||
'unpack 'patch-test-shebangs
|
||||
(lambda _
|
||||
(substitute* '("tests/xmltester/testrunner.sh"
|
||||
"tests/xmltester/safe_to_xml.sh")
|
||||
(("/bin/sh") (which "sh"))))))))
|
||||
(arguments `(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after
|
||||
'unpack 'patch-test-shebangs
|
||||
(lambda _
|
||||
(substitute* '("tests/xmltester/testrunner.sh"
|
||||
"tests/xmltester/safe_to_xml.sh")
|
||||
(("/bin/sh") (which "sh"))))))))
|
||||
(inputs
|
||||
(list glib))
|
||||
(home-page "https://libgeos.org/")
|
||||
@@ -970,29 +955,6 @@ hydrology and waste deposition.")
|
||||
(base32
|
||||
"03r6mspfv22fs4x4jcgv25v9gsj5k6zy8incvyf94qf50g47s2bc"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(if (target-32bit?)
|
||||
(list
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-tests
|
||||
(lambda _
|
||||
;; These regression tests fail due to accuracy problems.
|
||||
(substitute* "test/unit/test_factory.cpp"
|
||||
(("^TEST\\(factory, AuthorityFactory_createUnitOfMeasure_linear_us_survey_foot\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
(substitute* "test/unit/test_grids.cpp"
|
||||
(("^TEST_F\\(GridTest, VerticalShiftGridSet_gtx\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
(substitute* "test/unit/test_defmodel.cpp"
|
||||
(("^TEST\\(defmodel, evaluator_horizontal_unit_metre\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
;; These regression tests fail due to accuracy problems.
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
(("proj_add_gie_test\\(\"4D-API-cs2cs-style\".+") "")
|
||||
(("proj_add_gie_test\\(\"Builtins\".+") "")
|
||||
(("proj_add_gie_test\\(\"peirce_q\".+") ""))))))
|
||||
'()))
|
||||
(native-inputs (list googletest pkg-config))
|
||||
(propagated-inputs (list curl libtiff sqlite)) ;required by proj.pc
|
||||
(home-page "https://proj.org/")
|
||||
@@ -1022,34 +984,7 @@ lets developers use the functionality of Proj in their own software.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g0hkpiablvhsmw0kn5frwgdir3q7avc45p6lc1zhhhzkv5ikydh"))))
|
||||
(arguments
|
||||
(if (target-32bit?)
|
||||
(list
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-tests
|
||||
(lambda _
|
||||
;; These regression tests fail due to accuracy problems.
|
||||
(substitute* "test/unit/test_factory.cpp"
|
||||
(("^TEST\\(factory, AuthorityFactory_createUnitOfMeasure_linear_us_survey_foot\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
(substitute* "test/unit/test_grids.cpp"
|
||||
(("^TEST_F\\(GridTest, VerticalShiftGridSet_gtx\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
(substitute* "test/unit/test_defmodel.cpp"
|
||||
(("^TEST\\(defmodel, evaluator_horizontal_unit_metre\\) \\{" m)
|
||||
(string-append m "\nGTEST_SKIP();\n")))
|
||||
;; These regression tests fail due to accuracy problems.
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
(("proj_add_gie_test\\(\"4D-API-cs2cs-style\".+") "")
|
||||
(("proj_add_gie_test\\(\"Builtins\".+") "")
|
||||
(("proj_add_gie_test\\(\"peirce_q\".+") "")
|
||||
(("proj_add_gie_test\\(\"adams_ws2\".+") ""))
|
||||
(substitute* "test/cli/CMakeLists.txt"
|
||||
(("proj_add_test_script_sh\\(\"testvarious\" CS2CS_BIN\\)") ""))))))
|
||||
'()))))
|
||||
|
||||
"1g0hkpiablvhsmw0kn5frwgdir3q7avc45p6lc1zhhhzkv5ikydh"))))))
|
||||
|
||||
(define-public python-obspy
|
||||
(package
|
||||
@@ -1284,23 +1219,20 @@ readily with other Python GIS packages such as pyproj, Rtree, and Shapely.")
|
||||
(define-public python-geopack
|
||||
(package
|
||||
(name "python-geopack")
|
||||
(version "1.0.12")
|
||||
(version "1.0.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tsssss/geopack")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "geopack" version))
|
||||
(sha256
|
||||
(base32 "0ap5j4359xxjkbz06y097yq5d37sxcwlnlsfwrv6dvza7ydmgcgg"))))
|
||||
(base32 "0mryjp7m4h99qlpvnn40s81sygr73qcv8rkmjp9pcli1gz829kjf"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX Reported upstream <https://github.com/tsssss/geopack/issues/21>.
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(list python-pytest python-setuptools python-wheel))
|
||||
(propagated-inputs
|
||||
(list python-numpy python-scipy))
|
||||
(home-page "https://github.com/tsssss/geopack")
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -16,8 +19,44 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages gkrellm)
|
||||
#:use-module (gnu packages monitoring)
|
||||
#:use-module (guix deprecation))
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
(define-deprecated/public-alias gkrellm
|
||||
(@ (guix packages monitoring) gkrellm))
|
||||
(define-public gkrellm
|
||||
(package
|
||||
(name "gkrellm")
|
||||
(version "2.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gkrellm.srcbox.net/releases/gkrellm-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0qvy2xmwmfy5f0g09yn9lr262shnx82ba04r5il2wj4qscg3r7h8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list gtk+-2 libsm))
|
||||
(native-inputs (list gettext-minimal pkg-config))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;there is no check target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)) ;no configure script
|
||||
#:make-flags
|
||||
#~(list (string-append "INSTALLROOT=" #$output)
|
||||
(string-append "CC=" #$(cc-for-target)))))
|
||||
(home-page "https://gkrellm.srcbox.net/")
|
||||
(synopsis "System monitors")
|
||||
(description
|
||||
"GKrellM is a single process stack of system monitors which supports
|
||||
applying themes to match its appearance to your window manager, Gtk, or any
|
||||
other theme.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
@@ -682,7 +682,7 @@ and a high score table.")
|
||||
(define-public komikku
|
||||
(package
|
||||
(name "komikku")
|
||||
(version "50.3.0")
|
||||
(version "50.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -692,7 +692,7 @@ and a high score table.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
|
||||
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -780,7 +780,7 @@ developed with the aim of being used with the Librem 5 phone.")
|
||||
(define-public komikku-servers
|
||||
(package
|
||||
(name "komikku-servers")
|
||||
(version "50.3.0")
|
||||
(version "50.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -790,7 +790,7 @@ developed with the aim of being used with the Librem 5 phone.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
|
||||
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+5
-70
@@ -10674,7 +10674,6 @@ playing media, scanning, and much more.")
|
||||
system-config-printer
|
||||
xdg-desktop-portal
|
||||
xdg-user-dirs
|
||||
xdg-user-dirs-gtk
|
||||
yelp
|
||||
zenity))
|
||||
(description "This package provides a list of packages required for
|
||||
@@ -11564,71 +11563,6 @@ accessibility infrastructure.")
|
||||
(license license:lgpl2.0)
|
||||
(properties '((upstream-name . "pyatspi")))))
|
||||
|
||||
(define-public accerciser
|
||||
(package
|
||||
(name "accerciser")
|
||||
(version "3.48.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/accerciser.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ddh466im0hxqx0ncxglrif72jfwcdl1ayarw874mp1464wkbc4m"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:glib-or-gtk? #t
|
||||
#:imported-modules (append %meson-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
#:modules
|
||||
`((guix build meson-build-system)
|
||||
((guix build pyproject-build-system) #:prefix py:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gnome-post-install
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false")
|
||||
(("update_desktop_database: true")
|
||||
"update_desktop_database: false"))))
|
||||
(add-after 'install 'wrap-python
|
||||
(assoc-ref py:%standard-phases 'wrap))
|
||||
(add-after 'wrap-python 'wrap-program
|
||||
(lambda _
|
||||
(let ((typelib-path (getenv "GI_TYPELIB_PATH")))
|
||||
(wrap-program (string-append #$output "/bin/accerciser")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,typelib-path)))))))))
|
||||
(native-inputs
|
||||
(list (list glib "bin")
|
||||
gettext-minimal
|
||||
gobject-introspection
|
||||
pkg-config
|
||||
yelp-tools))
|
||||
(inputs
|
||||
(list appstream
|
||||
appstream-glib
|
||||
at-spi2-core
|
||||
bash-minimal
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk+
|
||||
python
|
||||
python-dbus
|
||||
python-pyatspi
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
python-pyxdg))
|
||||
(synopsis "Accessibility explorer")
|
||||
(description "This package provides an interactive accessibility explorer
|
||||
for the GNOME desktop.")
|
||||
(home-page "https://gitlab.gnome.org/GNOME/accerciser")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public orca
|
||||
(package
|
||||
(name "orca")
|
||||
@@ -11641,8 +11575,7 @@ for the GNOME desktop.")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sfs06f66dsibvnp87jshhs7n3f8shkn9x7j3ygpk8409za2n2xy"))
|
||||
(patches (search-patches "orca-fix-gst-init-check-call.patch"))))
|
||||
"0sfs06f66dsibvnp87jshhs7n3f8shkn9x7j3ygpk8409za2n2xy"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:glib-or-gtk? #t
|
||||
@@ -11660,7 +11593,10 @@ for the GNOME desktop.")
|
||||
(pgrep (string-append
|
||||
(assoc-ref inputs "procps") "/bin/pgrep")))
|
||||
(substitute* "src/orca/orca_modifier_manager.py"
|
||||
(("\"xkbcomp\"") (format #f "'~a'" xkbcomp)))
|
||||
(("'xkbcomp'") (format #f "'~a'" xkbcomp)))
|
||||
(substitute* "src/orca/debug.py"
|
||||
(("'pgrep %s'")
|
||||
(format #f "'~a %s'" pgrep)))
|
||||
(substitute* "src/orca/orca_bin.py.in"
|
||||
(("'pgrep -u %s -x orca'")
|
||||
(format #f "'~a -u %s -x orca'" pgrep))))))
|
||||
@@ -11691,7 +11627,6 @@ for the GNOME desktop.")
|
||||
`(,liblouis "python")
|
||||
procps ; for pgrep
|
||||
python
|
||||
python-dbus
|
||||
python-pygobject-3.50
|
||||
python-pyatspi
|
||||
speech-dispatcher
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
|
||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -972,8 +971,10 @@ passphrase when @code{gpg} is run and needs it.")))
|
||||
(lambda _
|
||||
(invoke "sh" "autogen.sh"))))))
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(prepend autoconf automake gettext-minimal)))
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("gettext" ,gettext-minimal)
|
||||
,@(package-native-inputs pinentry-tty)))
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(prepend efl)))
|
||||
|
||||
+6
-166
@@ -605,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"zh-TW"))
|
||||
|
||||
;;; Please keep these versions in sync with icedove.
|
||||
(define %icecat-base-version "140.10.2")
|
||||
(define %icecat-base-version "140.9.1")
|
||||
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
|
||||
(define %icecat-build-id "20260509000000") ;must be of the form YYYYMMDDhhmmss
|
||||
(define %icecat-build-id "20260414000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
@@ -627,9 +627,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xsfy8b80mh6kb13928ym3pdrnfyfs98xwz6fwrc20p7f99zcsvr"))))
|
||||
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
|
||||
|
||||
(gnuzilla-commit "f04b721394b9d1103e92dbe989060f96756fe54c")
|
||||
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -640,7 +640,7 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"05d3793565pxz1h3wmwxk8j4cfqci4c0jic4q4ys8rbnfz98cj6z"))))
|
||||
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
@@ -1249,166 +1249,6 @@ testing.")
|
||||
(cpe-name . "firefox_esr")
|
||||
(cpe-version . ,(first (string-split version #\-)))))))
|
||||
|
||||
;;; TEMPORARY old version of icecat-source for use by icedove until it is updated.
|
||||
(define %icecat-140.9.1-base-version "140.9.1")
|
||||
(define %icecat-140.9.1-version (string-append %icecat-140.9.1-base-version "-gnu1"))
|
||||
(define icecat-140.9.1-source
|
||||
(let* ((major-version (first (string-split %icecat-140.9.1-base-version #\.)))
|
||||
(minor-version (second (string-split %icecat-140.9.1-base-version #\.)))
|
||||
(sub-version (third (string-split %icecat-140.9.1-base-version #\.)))
|
||||
|
||||
(upstream-firefox-version (string-append %icecat-140.9.1-base-version "esr"))
|
||||
(upstream-firefox-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://ftp.mozilla.org/pub/firefox/releases/"
|
||||
upstream-firefox-version "/source/"
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
|
||||
|
||||
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "git://git.savannah.gnu.org/gnuzilla.git")
|
||||
(commit gnuzilla-commit)))
|
||||
(file-name (git-file-name "gnuzilla"
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
(makeicecat-patch
|
||||
(local-file (assume-valid-file-name
|
||||
(search-patch "icecat-makeicecat.patch")))))
|
||||
|
||||
(origin
|
||||
(method computed-origin-method)
|
||||
(file-name (string-append "icecat-" %icecat-140.9.1-version ".tar.zst"))
|
||||
(sha256 #f)
|
||||
(uri
|
||||
(delay
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((firefox-dir
|
||||
(string-append "firefox-" #$%icecat-140.9.1-base-version))
|
||||
(icecat-dir
|
||||
(string-append "icecat-" #$%icecat-140.9.1-version)))
|
||||
|
||||
(set-path-environment-variable
|
||||
"PATH" '("bin")
|
||||
(list #+python
|
||||
#+(canonical-package bash)
|
||||
#+(canonical-package coreutils)
|
||||
#+(canonical-package findutils)
|
||||
#+(canonical-package patch)
|
||||
#+(canonical-package xz)
|
||||
#+(canonical-package zstd)
|
||||
#+(canonical-package sed)
|
||||
#+(canonical-package grep)
|
||||
#+(canonical-package bzip2)
|
||||
#+(canonical-package gzip)
|
||||
#+(canonical-package tar)))
|
||||
|
||||
(set-path-environment-variable
|
||||
"PYTHONPATH"
|
||||
(list #+(format #f "lib/python~a/site-packages"
|
||||
(version-major+minor
|
||||
(package-version python))))
|
||||
'#+(cons python-jsonschema
|
||||
(map second
|
||||
(package-transitive-propagated-inputs
|
||||
python-jsonschema))))
|
||||
|
||||
;; We copy the gnuzilla source directory because it is
|
||||
;; read-only in 'gnuzilla-source', and the makeicecat script
|
||||
;; uses "cp -a" to copy parts of it and assumes that the
|
||||
;; copies will be writable.
|
||||
(copy-recursively #+gnuzilla-source "/tmp/gnuzilla"
|
||||
#:log (%make-void-port "w"))
|
||||
|
||||
(with-directory-excursion "/tmp/gnuzilla"
|
||||
(make-file-writable "makeicecat")
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+makeicecat-patch)
|
||||
(patch-shebang "makeicecat")
|
||||
(substitute* "makeicecat"
|
||||
(("^readonly FFMAJOR=(.*)" all ffmajor)
|
||||
(unless (string=? #$major-version
|
||||
(string-trim-both ffmajor))
|
||||
;; The makeicecat script cannot be expected to work
|
||||
;; properly on a different version of Firefox, even if
|
||||
;; no errors occur during execution.
|
||||
(error "makeicecat major version mismatch"))
|
||||
(string-append "readonly FFMAJOR=" #$major-version "\n"))
|
||||
(("^readonly FFMINOR=.*")
|
||||
(string-append "readonly FFMINOR=" #$minor-version "\n"))
|
||||
(("^readonly FFSUB=.*")
|
||||
(string-append "readonly FFSUB=" #$sub-version "\n"))
|
||||
(("^readonly DATADIR=.*")
|
||||
"readonly DATADIR=/tmp/gnuzilla/data\n")
|
||||
(("^readonly SOURCEDIR=.*")
|
||||
(string-append "readonly SOURCEDIR=" icecat-dir "\n"))
|
||||
(("/bin/sed")
|
||||
#+(file-append (canonical-package sed) "/bin/sed"))))
|
||||
|
||||
(format #t "Unpacking upstream firefox tarball...~%")
|
||||
(force-output)
|
||||
(invoke "tar" "xf" #+upstream-firefox-source)
|
||||
(rename-file firefox-dir icecat-dir)
|
||||
|
||||
(with-directory-excursion icecat-dir
|
||||
(format #t "Populating l10n directory...~%")
|
||||
(force-output)
|
||||
(mkdir "l10n")
|
||||
(with-directory-excursion "l10n"
|
||||
(for-each
|
||||
(lambda (locale)
|
||||
(let ((locale-dir (string-append #+mozilla-l10n "/"
|
||||
locale)))
|
||||
(format #t " ~a~%" locale)
|
||||
(force-output)
|
||||
(copy-recursively locale-dir locale
|
||||
#:log (%make-void-port "w"))
|
||||
(for-each make-file-writable (find-files locale))
|
||||
(with-directory-excursion locale
|
||||
(mkdir-p "browser/chrome/browser/preferences")
|
||||
(call-with-output-file "browser/chrome/browser/\
|
||||
preferences/advanced-scripts.dtd"
|
||||
(lambda (port) #f)))))
|
||||
'#+%icecat-locales)
|
||||
(copy-recursively #+mozilla-compare-locales
|
||||
"compare-locales"
|
||||
#:log (%make-void-port "w"))
|
||||
(delete-file "compare-locales/.gitignore")))
|
||||
|
||||
(format #t "Running makeicecat script...~%")
|
||||
(force-output)
|
||||
(invoke "bash" "/tmp/gnuzilla/makeicecat")
|
||||
|
||||
(format #t "Packing IceCat source tarball...~%")
|
||||
(force-output)
|
||||
(setenv "ZSTD_NBTHREADS" (number->string (parallel-job-count)))
|
||||
(invoke "tar" "cfa" #$output
|
||||
;; Avoid non-determinism in the archive. We set the
|
||||
;; mtime of files in the archive to early 1980 because
|
||||
;; the build process fails if the mtime of source
|
||||
;; files is pre-1980, due to the creation of zip
|
||||
;; archives.
|
||||
"--mtime=@315619200" ; 1980-01-02 UTC
|
||||
"--owner=root:0"
|
||||
"--group=root:0"
|
||||
"--sort=name"
|
||||
icecat-dir)))))))))
|
||||
|
||||
|
||||
(define %icedove-build-id "20260403000000") ;must be of the form YYYYMMDDhhmmss
|
||||
;;; See <https://product-details.mozilla.org/1.0/thunderbird_versions.json>
|
||||
;;; for the source of truth regarding Thunderbird releases.
|
||||
@@ -1543,7 +1383,7 @@ preferences/advanced-scripts.dtd"
|
||||
;; Extract the base Icecat tarball, renaming its top-level
|
||||
;; directory.
|
||||
(invoke "tar" "--transform" (string-append "s,[^/]*," #$name ",")
|
||||
"-xf" #$icecat-140.9.1-source)
|
||||
"-xf" #$icecat-source)
|
||||
(chdir #$name)
|
||||
|
||||
;; Merge the Thunderdbird localization data.
|
||||
|
||||
@@ -245,55 +245,6 @@ go-fuzz-headers.")
|
||||
@end itemize")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-alexkohler-prealloc
|
||||
(package
|
||||
(name "go-github-com-alexkohler-prealloc")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alexkohler/prealloc")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "011i8yqzyjgwj17k44xvvg4bxfv8z20s0416r2d3yf4s3wqqygpq"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/alexkohler/prealloc"))
|
||||
(home-page "https://github.com/alexkohler/prealloc")
|
||||
(synopsis "Find slice declarations that could be preallocated")
|
||||
(description
|
||||
"This package is a Go static analysis tool to find slice declarations
|
||||
that could potentially be preallocated.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-alingse-asasalint
|
||||
(package
|
||||
(name "go-github-com-alingse-asasalint")
|
||||
(version "0.0.11")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alingse/asasalint")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1avz33cx3gcpps26rxijv7ic0njfmsdkbcp2mqg5yxhdcpq57s0q"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/alingse/asasalint"))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-tools))
|
||||
(home-page "https://github.com/alingse/asasalint")
|
||||
(synopsis "Lint pass any slice as any in variadic function")
|
||||
(description
|
||||
"Golang linter, lint that pass any slice as any in variadic function.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-andreyvit-diff
|
||||
(package
|
||||
(name "go-github-com-andreyvit-diff")
|
||||
@@ -652,42 +603,6 @@ time functions.")
|
||||
strings which may be used in mock tests.")
|
||||
(license license:unlicense)))
|
||||
|
||||
(define-public go-github-com-daixiang0-gci
|
||||
(package
|
||||
(name "go-github-com-daixiang0-gci")
|
||||
(version "0.13.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/daixiang0/gci")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vhnqisf6d706qvswccb0d7bkbl53lyi84f5sl3zyaf6yk8ml9dx"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:skip-build? #t
|
||||
#:import-path "github.com/daixiang0/gci"))
|
||||
(native-inputs
|
||||
(list go-github-com-stretchr-testify
|
||||
go-github-com-spf13-cobra))
|
||||
(propagated-inputs
|
||||
(list go-gopkg-in-yaml-v3
|
||||
go-golang-org-x-tools
|
||||
go-golang-org-x-sync
|
||||
go-golang-org-x-mod
|
||||
go-go-uber-org-zap
|
||||
go-github-com-pmezard-go-difflib
|
||||
go-github-com-hexops-gotextdiff))
|
||||
(home-page "https://github.com/daixiang0/gci")
|
||||
(synopsis "Tool to make Go import order deterministic")
|
||||
(description
|
||||
"This package provides a tool that controls Go package import order and
|
||||
makes it always deterministic.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-data-dog-go-sqlmock
|
||||
(package
|
||||
(name "go-github-com-data-dog-go-sqlmock")
|
||||
@@ -761,34 +676,6 @@ style).
|
||||
@end itemize")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public go-github-com-denis-tingaikin-go-header
|
||||
(package
|
||||
(name "go-github-com-denis-tingaikin-go-header")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/denis-tingaikin/go-header")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0qzy2ps59dzsdn4ny8x48k9d1kscpddjilkxra1w16npsvix6mcm"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/denis-tingaikin/go-header"))
|
||||
(native-inputs
|
||||
(list go-github-com-stretchr-testify))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-tools
|
||||
go-gopkg-in-yaml-v3))
|
||||
(home-page "https://github.com/denis-tingaikin/go-header")
|
||||
(synopsis "Go linter for copyright headers")
|
||||
(description
|
||||
"Simple Go source code linter providing checks for copyright headers.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public go-github-com-dgryski-go-ddmin
|
||||
(package
|
||||
(name "go-github-com-dgryski-go-ddmin")
|
||||
@@ -998,31 +885,6 @@ can use the mock clock. This is a maintained fork of benbjohnson's
|
||||
@url{https://github.com/benbjohnson/clock, clock} package.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-firefart-nonamedreturns
|
||||
(package
|
||||
(name "go-github-com-firefart-nonamedreturns")
|
||||
(version "1.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/firefart/nonamedreturns")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1y9dz8rkd55p1rkib4y3b0czs44c2bb1pmlr4k53ms1k8d9bjgwk"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/firefart/nonamedreturns"))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-tools))
|
||||
(home-page "https://github.com/firefart/nonamedreturns")
|
||||
(synopsis "Go linter to catch named returns")
|
||||
(description
|
||||
"This package provides a linter to find named returns in Go code.")
|
||||
(license license:gpl3)))
|
||||
|
||||
;; XXX: The project looks like abandoned, see
|
||||
;; <https://github.com/frankban/quicktest/issues/172>, remove when nothing
|
||||
;; depends on it.
|
||||
@@ -1061,30 +923,6 @@ can use the mock clock. This is a maintained fork of benbjohnson's
|
||||
tests.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-fzipp-gocyclo
|
||||
(package
|
||||
(name "go-github-com-fzipp-gocyclo")
|
||||
(version "0.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fzipp/gocyclo")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1w2h8qlifrskn8g8zcwb6banr9si0vck9y8irg1r51mc98cjv36l"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/fzipp/gocyclo"))
|
||||
(home-page "https://github.com/fzipp/gocyclo")
|
||||
(synopsis "Calculate cyclomatic complexity in Go")
|
||||
(description
|
||||
"This package calculates the cyclomatic complexities of functions and
|
||||
methods in Go source code.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gdey-tbltest
|
||||
(package
|
||||
(name "go-github-com-gdey-tbltest")
|
||||
@@ -1109,45 +947,6 @@ methods in Go source code.")
|
||||
tests.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-ghostiam-protogetter
|
||||
(package
|
||||
(name "go-github-com-ghostiam-protogetter")
|
||||
(version "0.3.20")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ghostiam/protogetter")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hap2ykmlnan5vz8sczdpiv93iidbgl13mlcdx468nhfprg2hbbm"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;"module lookup disabled by GOPROXY=off"
|
||||
#:import-path "github.com/ghostiam/protogetter"))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-tools
|
||||
go-github-com-gobwas-glob))
|
||||
(home-page "https://github.com/ghostiam/protogetter")
|
||||
(synopsis "Protobuf Golang linter")
|
||||
(description
|
||||
"This package is a linter developed specifically for Go programmers
|
||||
working with nested @code{protobuf} types. It's designed to aid developers in
|
||||
preventing invalid memory address or nil pointer dereference errors arising
|
||||
from direct access of nested protobuf fields.
|
||||
|
||||
When working with protobuf, it's quite common to have complex structures where
|
||||
a message field is contained within another message, which itself can be part
|
||||
of another message, and so on. If these fields are accessed directly and some
|
||||
field in the call chain will not be initialized, it can result in application
|
||||
panic.
|
||||
|
||||
Protogetter addresses this issue by suggesting use of getter methods for field
|
||||
access.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-gkampitakis-ciinfo
|
||||
(package
|
||||
(name "go-github-com-gkampitakis-ciinfo")
|
||||
@@ -1403,29 +1202,6 @@ kept in fixtures files. Before the execution of every test, the test database
|
||||
is cleaned and the fixture data is loaded into the database.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public go-github-com-go-xmlfmt-xmlfmt
|
||||
(package
|
||||
(name "go-github-com-go-xmlfmt-xmlfmt")
|
||||
(version "1.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/go-xmlfmt/xmlfmt")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1cglrwmpg0lb7cnyvdz8js52h07rcvka7y9abksk9p5ajxj5rp1s"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/go-xmlfmt/xmlfmt"))
|
||||
(home-page "https://github.com/go-xmlfmt/xmlfmt")
|
||||
(synopsis "Go XML Formatter")
|
||||
(description
|
||||
"The Go XML Formatter, xmlfmt, will format the XML string in a readable way.")
|
||||
(license license:expat)))
|
||||
|
||||
;; XXX: This repository has been archived by the owner
|
||||
;; on May 9, 2021. It is now read-only. It's only used
|
||||
;; by go-github-com-golang-gddo. Consider to remove when nothing
|
||||
@@ -4191,20 +3967,6 @@ thoroughly
|
||||
" This package provides an command line interface (CLI)
|
||||
tool."))))
|
||||
|
||||
(define-public go-gci
|
||||
(package/inherit go-github-com-daixiang0-gci
|
||||
(name "go-gci")
|
||||
(arguments
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:tests? _ #t) #f)
|
||||
((#:install-source? _ #t) #f)
|
||||
((#:skip-build? _ #t) #f)))
|
||||
(native-inputs
|
||||
(append (package-native-inputs go-github-com-daixiang0-gci)
|
||||
(package-propagated-inputs go-github-com-daixiang0-gci)))
|
||||
(propagated-inputs '())
|
||||
(inputs '())))
|
||||
|
||||
(define-public go-pgmockproxy
|
||||
(package/inherit go-github-com-jackc-pgmock
|
||||
(name "go-pgmockproxy")
|
||||
@@ -4328,21 +4090,6 @@ prints an ASCII fraphic representing the memory layout.")))
|
||||
" This package provides an command line interface (CLI)
|
||||
tool."))))
|
||||
|
||||
(define-public protogetter
|
||||
(package/inherit go-github-com-ghostiam-protogetter
|
||||
(name "protogetter")
|
||||
(arguments
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:tests? _ #f) #f)
|
||||
((#:skip-build? _ #t) #f)
|
||||
((#:install-source? _ #t) #f)
|
||||
((#:import-path _) "github.com/ghostiam/protogetter/cmd/protogetter")
|
||||
((#:unpack-path _ "") "github.com/ghostiam/protogetter")))
|
||||
(native-inputs
|
||||
(package-propagated-inputs go-github-com-ghostiam-protogetter))
|
||||
(propagated-inputs '())
|
||||
(inputs '())))
|
||||
|
||||
(define-public unparam
|
||||
(package
|
||||
(inherit go-mvdan-cc-unparam)
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
;;; Copyright © 2025 Arthur Rodrigues <arthurhdrodrigues@proton.me>
|
||||
;;; Copyright © 2025 Patrick Norton <patrick.147.norton@gmail.com>
|
||||
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1600,7 +1599,7 @@ RSA, RSA-PSS, and ECDSA, though hooks are present for adding your own.")
|
||||
(define-public go-github-com-google-go-tpm
|
||||
(package
|
||||
(name "go-github-com-google-go-tpm")
|
||||
(version "0.9.4")
|
||||
(version "0.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1609,7 +1608,7 @@ RSA, RSA-PSS, and ECDSA, though hooks are present for adding your own.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1sp1mbr6vz36zy9w36iksirbsj5p2jslsl8zs1cdj8s4ig4lkd9d"))))
|
||||
(base32 "1c5j5cvwl45ka93nknmv454ivd7kp9n8yql19gr6z01z0s1ph7sg"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2073,7 +2072,7 @@ the Go standard library's TLS 1.3 implementation.")
|
||||
(define-public go-github-com-melbahja-goph
|
||||
(package
|
||||
(name "go-github-com-melbahja-goph")
|
||||
(version "1.5.0")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2082,7 +2081,7 @@ the Go standard library's TLS 1.3 implementation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ncvs9pbjg7m8yp3h8wbhxvzvks1g06a5qcjrkw2k515m2yqhg8k"))))
|
||||
(base32 "1w6sn6m3bsh60flp0fdbv70c2d1ky12mpj09100qf64w0v1d32k0"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -2874,7 +2873,7 @@ package.")
|
||||
(define-public go-github-com-refraction-networking-utls
|
||||
(package
|
||||
(name "go-github-com-refraction-networking-utls")
|
||||
(version "1.8.2")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2883,7 +2882,7 @@ package.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03kgwxdm2lg28fn2w5q7ql2szsiwj2xjdf477h1g3a4a9y9j6zk0"))))
|
||||
(base32 "1iywar5vqsml4b177k2nkcxmjm8mw92g3p112yjsrpmikiwpwpyw"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/refraction-networking/utls"
|
||||
@@ -3286,37 +3285,6 @@ to support the streaming mode required by Go's standard Hash interface.")
|
||||
@url{https://www.rfc-editor.org/errata/rfc7512, errata} specifications.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-github-com-tailscale-golang-x-crypto
|
||||
(package
|
||||
(name "go-github-com-tailscale-golang-x-crypto")
|
||||
(version "0.91.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tailscale/golang-x-crypto")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m9qkk48mihrkmfh1fzfhc39l8957qkpfx8qbw4xdjws7dy4vzbz"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:skip-build? #t
|
||||
#:tests? #f ;Tests have broken package imports (expected as per readme)
|
||||
#:import-path "github.com/tailscale/golang-x-crypto"))
|
||||
(propagated-inputs
|
||||
(list go-golang-org-x-crypto
|
||||
go-golang-org-x-term
|
||||
go-golang-org-x-sys
|
||||
go-golang-org-x-net))
|
||||
(home-page "https://github.com/tailscale/golang-x-crypto")
|
||||
(synopsis "Supplementary Go crypto libraries")
|
||||
(description
|
||||
"This package holds supplementary Go cryptography libraries, it's a fork
|
||||
of @code{golang.org/x/crypto} maintained by Tailscale.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-tink-crypto-tink-go-v2
|
||||
(package
|
||||
(name "go-github-com-tink-crypto-tink-go-v2")
|
||||
@@ -3672,39 +3640,6 @@ algorithm described in @url{https://rfc-editor.org/rfc/rfc2898.html,RFC 2898}
|
||||
and @url{https://rfc-editor.org/rfc/rfc8018.html,RFC 8018}.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-github-com-xtls-reality
|
||||
(package
|
||||
(name "go-github-com-xtls-reality")
|
||||
(version "0.0.0-20260322125925-9234c772ba8f")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xtls/reality")
|
||||
(commit (go-version->git-ref version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wncy5aph6nmq4814xjhj6b5p1wm2fyrqn83dw0xlyxvq2z6iqfs"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/xtls/reality"))
|
||||
(propagated-inputs
|
||||
(list go-github-com-cloudflare-circl
|
||||
go-github-com-juju-ratelimit
|
||||
go-github-com-pires-go-proxyproto
|
||||
go-github-com-refraction-networking-utls
|
||||
go-golang-org-x-crypto
|
||||
go-golang-org-x-sys))
|
||||
(home-page "https://github.com/xtls/reality")
|
||||
(synopsis "Implementation of REALITY protocol")
|
||||
(description
|
||||
"This package provides an implementation of REALITY protocol, which is
|
||||
intented to eliminate the detectable TLS fingerprint on the server side, while
|
||||
still maintain the secrecy. It achieves full real TLS that is
|
||||
undistingwishable with the specified SNI to the middleman.")
|
||||
(license (list license:bsd-3 license:mpl2.0))))
|
||||
|
||||
(define-public go-github-com-youmark-pkcs8
|
||||
(package
|
||||
(name "go-github-com-youmark-pkcs8")
|
||||
@@ -3900,7 +3835,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
|
||||
|
||||
@@ -456,29 +456,6 @@ penalization.")
|
||||
FFT (Schonhage-Strassen method for multiplying integers).")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-robinus2-golang-moving-average
|
||||
(package
|
||||
(name "go-github-com-robinus2-golang-moving-average")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/RobinUS2/golang-moving-average")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "02z3ad29653fz7whxkjjpq820ig9j8m68xj4kay14jyazkr5in1f"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/RobinUS2/golang-moving-average"))
|
||||
(home-page "https://github.com/RobinUS2/golang-moving-average")
|
||||
(synopsis "Moving average implementation for Go")
|
||||
(description
|
||||
"This package provides a moving average implementation for Go.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-github-com-shopspring-decimal
|
||||
(package
|
||||
(name "go-github-com-shopspring-decimal")
|
||||
|
||||
+52
-1101
File diff suppressed because it is too large
Load Diff
+146
-705
File diff suppressed because it is too large
Load Diff
@@ -628,17 +628,9 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
|
||||
#:configure-flags
|
||||
(list
|
||||
"-DEMBREE_ISPC_SUPPORT=OFF"
|
||||
,@(cond
|
||||
((target-x86-64?)
|
||||
;; They SAY that that's the default--but it isn't
|
||||
;; (that would be AVX512--and that segfaults GCC (!)).
|
||||
`("-DEMBREE_MAX_ISA=AVX2"))
|
||||
((target-aarch64?)
|
||||
`("-DEMBREE_ARM=ON"
|
||||
"-DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF"
|
||||
"-DCMAKE_CXX_FLAGS=-flax-vector-conversions"))
|
||||
(else
|
||||
'())))))
|
||||
;; They SAY that that's the default--but it isn't
|
||||
;; (that would be AVX512--and that segfaults GCC (!)).
|
||||
"-DEMBREE_MAX_ISA=AVX2")))
|
||||
(inputs
|
||||
(list glfw onetbb))
|
||||
(home-page "https://www.embree.org/")
|
||||
@@ -647,16 +639,13 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
|
||||
"Embree is a collection of high-performance ray tracing kernels.
|
||||
Embree is meant to increase performance of photo-realistic rendering
|
||||
applications.")
|
||||
;; From the README: Embree requires at least an x86 CPU with support for
|
||||
;; SSE2 or an Apple M1 CPU.
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux"))
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public embree-3
|
||||
(package
|
||||
(inherit embree)
|
||||
(name "embree")
|
||||
(version "3.13.5")
|
||||
(version "3.3.15")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
||||
@@ -2763,43 +2763,6 @@ entire output. It supports all Layer Shell features including popups and
|
||||
popovers.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public xdg-user-dirs-gtk
|
||||
(package
|
||||
(name "xdg-user-dirs-gtk")
|
||||
(version "0.16")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/xdg-user-dirs-gtk.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"11h1164mkajpfrp6mkky2gvx3xd7dw0c9f2785jf4lys4jmmj4c3"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-exec-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "update.c"
|
||||
(("xdg-user-dirs-update")
|
||||
(search-input-file inputs "/bin/xdg-user-dirs-update"))))))))
|
||||
(native-inputs
|
||||
(list gettext-minimal
|
||||
pkg-config))
|
||||
(inputs
|
||||
(list gtk+
|
||||
xdg-user-dirs))
|
||||
(home-page "https://gitlab.gnome.org/GNOME/xdg-user-dirs-gtk")
|
||||
(synopsis "Integration of xdg-user-dirs with GTK")
|
||||
(description "This package is a companion to @code{xdg-user-dirs} to
|
||||
integrate it with the GNOME desktop and GTK applications. It gets run during
|
||||
login to create default GTK bookmarks files containing the user directories, and
|
||||
to rename these directories if the locale changes.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public goocanvas
|
||||
(package
|
||||
(name "goocanvas")
|
||||
|
||||
+77
-193
@@ -60,7 +60,6 @@
|
||||
;;; Copyright © 2025 Andy Tai <atai@atai.org>
|
||||
;;; Copyright © 2025 Ekaitz Zarraga <ekaitz@elenq.tech>
|
||||
;;; Copyright © 2026 Matt Wette <matt.wette@gmail.com>
|
||||
;;; Copyright © 2026 Dzianis Jackievič <mail@miesta.by>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -340,49 +339,6 @@ more.")
|
||||
currently does not do much, but it might in the future.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public guile-arguments
|
||||
(package
|
||||
(name "guile-arguments")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/fishinthecalculator/arguments")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1r71l6099afk017a3ck5mpp2xhb3bm45s6nga24lhby52rxbkayl"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'generate-api-reference
|
||||
(lambda _
|
||||
(invoke "scripts/generate_api_reference.sh")))
|
||||
(add-after 'build 'build-html-manual
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke `("make" "html" ,@make-flags))))
|
||||
(add-after 'install 'install-html-manual
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke `("make" "install-html" ,@make-flags)))))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
guile-documenta
|
||||
pkg-config
|
||||
texinfo))
|
||||
(inputs (list guile-3.0))
|
||||
(synopsis "Parse command line arguments into structured objects")
|
||||
(description "This package provides a Guile library to parse command line
|
||||
arguments into structured objects. It allows declaring arguments through a
|
||||
small @acronym{DSL, Domain Specific Language}, then call a procedure to parse the
|
||||
command line into a structured object.")
|
||||
(home-page "https://codeberg.org/fishinthecalculator/arguments")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public guile-oauth
|
||||
(package
|
||||
(name "guile-oauth")
|
||||
@@ -1211,7 +1167,7 @@ is not available for Guile 2.0.")
|
||||
(package
|
||||
(inherit guile-fibers-1.3)
|
||||
(name "guile-fibers")
|
||||
(version "1.4.3")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin (inherit (package-source guile-fibers-1.3))
|
||||
(file-name (git-file-name name version))
|
||||
@@ -1220,7 +1176,7 @@ is not available for Guile 2.0.")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"1q0a9y0cc8rld1z7mcj61fkldhd0kn9n4yq25izxslbgg4g5h9j6"))
|
||||
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))
|
||||
(patches '())))
|
||||
(arguments
|
||||
(if (target-aarch64?)
|
||||
@@ -1300,8 +1256,30 @@ is not available for Guile 2.0.")
|
||||
(modify-inputs native-inputs
|
||||
(replace "guile" guile-2.2)))))
|
||||
|
||||
;; Deprecated on 2026-04-23
|
||||
(define-deprecated-package guile-fibers-next guile-fibers)
|
||||
(define-public guile-fibers-next
|
||||
(let ((commit "297359f0ad655378bcc3ff0d4e96101965ef39b4")
|
||||
(revision "0"))
|
||||
(package
|
||||
(inherit guile-fibers)
|
||||
(name "guile-fibers-next")
|
||||
(version (git-version "1.4.2"
|
||||
revision
|
||||
commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/guile/fibers.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))))
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(replace "guile" guile-next)))
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(replace "guile" guile-next))))))
|
||||
|
||||
(define-public guile-kracht
|
||||
(package
|
||||
@@ -1559,7 +1537,7 @@ order to provide IDE functionality for Guile Scheme.")
|
||||
(define-public guile-ares-rs
|
||||
(package
|
||||
(name "guile-ares-rs")
|
||||
(version "0.9.7")
|
||||
(version "0.9.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1569,42 +1547,35 @@ order to provide IDE functionality for Guile Scheme.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xbznh5zjswfydgqg53g50ya7zm0hidin74g2glk849l9j45szw3"))))
|
||||
"1vkww3vc0lsh5f8yh6fnh402rx3rsm0ss69rdkmplhzp4c7c4z1d"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:source-directory "src/guile"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'build 'install-scripts
|
||||
(add-after 'build 'install-script
|
||||
(lambda _
|
||||
(define bin (string-append #$output "/bin"))
|
||||
(define site (string-append #$output "/share/guile/site/3.0"))
|
||||
(define ccache
|
||||
(string-append #$output "/lib/guile/3.0/site-ccache"))
|
||||
|
||||
(define (install-script name)
|
||||
(let ((oldpath
|
||||
(string-append site "/ares/scripts/" name ".scm"))
|
||||
(newpath
|
||||
(string-append bin "/" name)))
|
||||
(symlink oldpath newpath)
|
||||
(wrap-program newpath
|
||||
`("GUILE_LOAD_PATH" ":" =
|
||||
,(list "$GUILE_LOAD_PATH"
|
||||
site
|
||||
(getenv "GUILE_LOAD_PATH")))
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" =
|
||||
,(list "$GUILE_LOAD_COMPILED_PATH"
|
||||
ccache
|
||||
(getenv "GUILE_LOAD_COMPILED_PATH"))))
|
||||
;; Not needed since the wrapper followed the symlink.
|
||||
(delete-file (string-append bin "/." name "-real"))))
|
||||
|
||||
(mkdir bin)
|
||||
(for-each install-script '("ares-nrepl" "ares-suitbl")))))))
|
||||
(inputs (list bash-minimal guile-3.0-latest))
|
||||
(propagated-inputs (list guile-fibers))
|
||||
(let* ((bin (string-append #$output "/bin"))
|
||||
(oldpath (string-append
|
||||
#$output
|
||||
;; This file will be named ares-nrepl.scm for
|
||||
;; the next version.
|
||||
"/share/guile/site/3.0/ares/scripts/ares.scm"))
|
||||
(newpath (string-append bin "/ares-nrepl")))
|
||||
(mkdir bin)
|
||||
(symlink oldpath newpath)
|
||||
(wrap-program newpath
|
||||
`("GUILE_LOAD_PATH" ":" =
|
||||
,(list (string-append #$output "/share/guile/site/3.0")
|
||||
(getenv "GUILE_LOAD_PATH")))
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" =
|
||||
,(list (string-append #$output "/lib/guile/3.0/site-ccache")
|
||||
(getenv "GUILE_LOAD_COMPILED_PATH"))))
|
||||
;; Not needed since the wrapper followed the symlink.
|
||||
(delete-file (string-append bin "/.ares-nrepl-real"))))))))
|
||||
(inputs (list bash-minimal guile-3.0))
|
||||
(propagated-inputs (list guile-fibers guile-custom-ports))
|
||||
(home-page "https://git.sr.ht/~abcdw/guile-ares-rs")
|
||||
(synopsis "Asynchronous Reliable Extensible Sleek RPC Server for Guile")
|
||||
(description "Asynchronous Reliable Extensible Sleek RPC Server for
|
||||
@@ -5736,32 +5707,27 @@ perform geometrical transforms on JPEG images.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public guile-jtd
|
||||
;; There are a few unreleased commits that include niceties such as warning
|
||||
;; that the debug VM must be used; use the latest commit until the next
|
||||
;; release comes.
|
||||
(let ((commit "425f86ae954d6445aaedacfd4ecd50aa0022e59d")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "guile-jtd")
|
||||
(version (git-version "220323a" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mwette/guile-jtd")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
|
||||
(build-system guile-build-system)
|
||||
(native-inputs (list guile-3.0))
|
||||
(home-page "https://github.com/mwette/guile-jtd")
|
||||
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
|
||||
(description
|
||||
"The @code{(jtd)} module for Guile provides a procedure
|
||||
(package
|
||||
(name "guile-jtd")
|
||||
(version "220323a")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mwette/guile-jtd")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
|
||||
(build-system guile-build-system)
|
||||
(native-inputs (list guile-3.0))
|
||||
(home-page "https://github.com/mwette/guile-jtd")
|
||||
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
|
||||
(description
|
||||
"The @code{(jtd)} module for Guile provides a procedure
|
||||
@code{jump-to-debugger} for escaping to the Guile REPL for the purpose of
|
||||
debugging code.")
|
||||
(license license:lgpl2.1+))))
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public guile-png
|
||||
(package
|
||||
@@ -6433,88 +6399,6 @@ as signed sessions, multipart message support, etc.")
|
||||
(propagated-inputs
|
||||
(list guile2.2-irregex guile2.2-gcrypt))))
|
||||
|
||||
(define-public guile-compose
|
||||
(package
|
||||
(name "guile-compose")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/jadzi/guile-compose.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1g68gczs96nrb0vf1hv4n07zsp2516gpiwq1wwlhcq4rzynhf12h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags
|
||||
#~'("GUILE_AUTO_COMPILE=0")))
|
||||
(inputs (list guile-3.0))
|
||||
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
|
||||
(synopsis "Procedure composition utilities for Guile Scheme")
|
||||
(description
|
||||
"This tiny package provides some procedures and macros to extend
|
||||
Guile Scheme procedure composition facilities. For example, there is
|
||||
a @code{compose-top}, a reverse-order analog to native @code{compose}
|
||||
procedure. The @code{compose-cont} is a macro, utilizing some power of
|
||||
continuations to build really flexible flows.
|
||||
|
||||
This library is intended to stay basic and small, so it has no any
|
||||
external dependencies and can be a good base for other packages, like e.g.
|
||||
@code{guile-web-middleware}.")
|
||||
(license (list license:lgpl3+))
|
||||
(home-page "https://jadzi.codeberg.page/guile-compose")))
|
||||
|
||||
(define-public guile-web-middleware
|
||||
(package
|
||||
(name "guile-web-middleware")
|
||||
(version "0.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/jadzi/guile-web-middleware.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01wb8v0lszphdv08ly4aqv59qm5h8yw2fgm025vkn61djspsq4j9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags
|
||||
#~'("GUILE_AUTO_COMPILE=0")))
|
||||
(inputs (list guile-3.0))
|
||||
(propagated-inputs (list guile-compose))
|
||||
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
|
||||
(synopsis "Web application middleware composition for Guile Scheme")
|
||||
(description
|
||||
"This package provides means to compose a web application by
|
||||
chaining procedures, a.k.a. middlewares. By those means, composed
|
||||
procedures form a standard request handler for any Guile's web server
|
||||
implementation.
|
||||
|
||||
Each middleware has its own limited responsibility in request
|
||||
processing. Also, middlewares are simple Scheme procedures, so they
|
||||
can be easily tested and shared among web applications.
|
||||
|
||||
Out of the box, this package provides several procedures for commonly
|
||||
required tasks. Among them:
|
||||
|
||||
@itemize
|
||||
@item Error handling with customizable page contents.
|
||||
@item Request filtering.
|
||||
@item Request logging.
|
||||
@item Serving static files, file URL generation.
|
||||
@item Request routing, handling parameters, route URL generation.
|
||||
@item Middleware nesting, composing whole apps.
|
||||
@end itemize
|
||||
|
||||
This package relies on @code{guile-compose} package as its only dependency.")
|
||||
(license (list license:lgpl3+))
|
||||
(home-page "https://jadzi.codeberg.page/guile-web-middleware")))
|
||||
|
||||
(define-public guile-web-driver-ng
|
||||
(package
|
||||
(name "guile-web-driver-ng")
|
||||
@@ -7807,8 +7691,8 @@ is an attempt to combine both into something useful.")
|
||||
(license license:asl2.0))))
|
||||
|
||||
(define-public guile-knots
|
||||
(let ((commit "49996c432a4616e03ecaf01cb42afc5fd78eafd5")
|
||||
(revision "35"))
|
||||
(let ((commit "f767eca066495e6582e89ba1b91907c0c5657878")
|
||||
(revision "34"))
|
||||
(package
|
||||
(name "guile-knots")
|
||||
(version (git-version "0.1" revision commit))
|
||||
@@ -7819,7 +7703,7 @@ is an attempt to combine both into something useful.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"0i6vk432shy7qmsq1hli71a9kmgf8yy9hx3bck0r9qzsldv1m3m9"))
|
||||
"18fqmpyrrxy8phxxm5b7d1qhhvc3rsrs243xiinkj2hn2ca1cqi8"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -7832,13 +7716,13 @@ is an attempt to combine both into something useful.")
|
||||
(list pkg-config
|
||||
autoconf
|
||||
automake
|
||||
guile-3.0-latest
|
||||
guile-next
|
||||
guile-lib
|
||||
guile-fibers))
|
||||
guile-fibers-next))
|
||||
(inputs
|
||||
(list guile-3.0-latest))
|
||||
(list guile-next))
|
||||
(propagated-inputs
|
||||
(list guile-fibers))
|
||||
(list guile-fibers-next))
|
||||
(home-page "https://cbaines.codeberg.page/guile-knots/")
|
||||
(synopsis "Patterns and functionality to use with Guile Fibers")
|
||||
(description
|
||||
@@ -8134,14 +8018,14 @@ application to open a given file or URL based on given configurations.")
|
||||
(define-public guile-goblins
|
||||
(package
|
||||
(name "guile-goblins")
|
||||
(version "0.18.0")
|
||||
(version "0.17.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.spritely.institute/releases"
|
||||
"/guile-goblins/guile-goblins-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0gj5018wmq97ln1z7x03a13z3p35xc8762id9bl9fgkxwm01df1a"))))
|
||||
(base32 "16jkmfspsnza2fdk5jr05a5pfh7x856gpg031i21s1yvy43l8mi0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+27
-17
@@ -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
|
||||
@@ -653,10 +653,7 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
|
||||
(define (guile-variant-package-name prefix)
|
||||
(lambda (name)
|
||||
"Return NAME with PREFIX instead of \"guile-\", when applicable."
|
||||
(if (and (string-prefix? "guile-" name)
|
||||
|
||||
;; Don't rename guile-bootstrap@2.0.
|
||||
(not (string=? "guile-bootstrap" name)))
|
||||
(if (string-prefix? "guile-" name)
|
||||
(string-append prefix "-"
|
||||
(string-drop name
|
||||
(string-length "guile-")))
|
||||
@@ -903,8 +900,8 @@ type system, elevating types to first-class status.")
|
||||
(define-public guile-git
|
||||
(package
|
||||
(name "guile-git")
|
||||
(version "0.11.1")
|
||||
(home-page "https://codeberg.org/guile-git/guile-git.git")
|
||||
(version "0.11.0")
|
||||
(home-page "https://gitlab.com/guile-git/guile-git.git")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -913,11 +910,11 @@ type system, elevating types to first-class status.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xpzchnglddphi3chv53xqaz2x6rpq3l4s023w7r4mmndb6lgz0b"))))
|
||||
"1yjyil6z4k80pjdps8v6h6lxikwxmjxvrslf2jrmq2rrfnajschz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ; to prevent guild warnings
|
||||
;; https://codeberg.org/guile-git/guile-git/issues/20
|
||||
;; https://gitlab.com/guile-git/guile-git/-/issues/20
|
||||
,@(if (target-ppc32?)
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
@@ -925,7 +922,20 @@ type system, elevating types to first-class status.")
|
||||
(lambda _
|
||||
(substitute* "Makefile.am"
|
||||
((".*tests/blob\\.scm.*") ""))))))
|
||||
'())))
|
||||
'())
|
||||
,@(if (system-hurd?)
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-tests/hurd
|
||||
(lambda _
|
||||
(substitute* "tests/proxy.scm"
|
||||
(("\\(test-begin.*" all)
|
||||
(string-append
|
||||
all
|
||||
"(when (string-ci= \"GNU\" (vector-ref (uname) 0))\n"
|
||||
" (test-skip 1))\n")))))))
|
||||
'())))
|
||||
(native-inputs
|
||||
(list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures))
|
||||
(inputs
|
||||
@@ -994,7 +1004,7 @@ Guile's foreign function interface.")
|
||||
(file-name (string-append "guile-lzlib-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1v1pfqp6hwl0rivs7swhqnfgznxlfnws9ldmn6avnhd10filfa3a"))
|
||||
"1whgmwkr1v8m63p4aaqn8blwl9vcrswwhbfv4bm0aghl5a6rryd7"))
|
||||
(patches (search-patches "guile-lzlib-gcc-14.patch"
|
||||
"guile-lzlib-hurd64.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
+11
-11
@@ -23,7 +23,6 @@
|
||||
;;; Copyright © 2025 Eric Bavier <bavier@posteo.net>
|
||||
;;; Copyright © 2025 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2025 James Smith <jsubuntuxp@disroot.org>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1001,21 +1000,22 @@ information can be viewed in real time and/or logged to a file.")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dell/libsmbios")
|
||||
(commit (string-append "v" version))))
|
||||
(uri
|
||||
(git-reference
|
||||
(url (string-append "https://github.com/dell/" name))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0krwwydyvb9224r884y1mlmzyxhlfrcqw73vi1j8787rl0gl5a2i"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
gettext-minimal
|
||||
libtool
|
||||
pkg-config
|
||||
perl
|
||||
python))
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("gettext" ,gettext-minimal)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("perl" ,perl)
|
||||
("python" ,python)))
|
||||
(inputs
|
||||
(list libxml2))
|
||||
(arguments
|
||||
|
||||
@@ -914,7 +914,7 @@ regular) Diffie Hellman key exchanges, and many extensions.")
|
||||
(list #:extra-directories (list "openssl")
|
||||
#:configure-flags
|
||||
#~(list "--ghc-options=-optc=-Wno-incompatible-pointer-types")))
|
||||
(inputs (list ghc-network openssl-3.0))
|
||||
(inputs (list ghc-network openssl))
|
||||
(home-page "https://github.com/haskell-cryptography/HsOpenSSL")
|
||||
(synopsis "Partial OpenSSL binding for Haskell")
|
||||
(description
|
||||
|
||||
@@ -49,6 +49,123 @@
|
||||
#:use-module ((guix build utils) #:select (alist-replace))
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public musl-cross
|
||||
(let ((revision "3")
|
||||
(commit "a8a66490dae7f23a2cf5e256f3a596d1ccfe1a03"))
|
||||
(package
|
||||
(name "musl-cross")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/GregorR/musl-cross")
|
||||
(commit commit)))
|
||||
(file-name "musl-cross-checkout")
|
||||
(sha256
|
||||
(base32
|
||||
"1xvl9y017wb2qaphy9zqh3vrhm8hklr8acvzzcjc35d1jjhyl58y"))
|
||||
(patches (search-patches "musl-cross-locale.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; No tests in main project.
|
||||
#:modules
|
||||
((guix build utils)
|
||||
(guix build gnu-build-system)
|
||||
(srfi srfi-1)) ; drop
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
(setenv "SHELL" "bash")
|
||||
(setenv "CONFIG_SHELL" "bash")
|
||||
#t))
|
||||
(add-after 'unpack 'unpack-dependencies
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(define (install-file* source-key destination-directory
|
||||
destination-suffix)
|
||||
(let* ((source-file (assoc-ref inputs source-key))
|
||||
(source-basename (basename source-file))
|
||||
(source-parts (string-split source-basename #\-))
|
||||
(destination-file
|
||||
(string-join (drop source-parts 1) "-")))
|
||||
(copy-file source-file
|
||||
(string-append destination-directory "/"
|
||||
destination-file destination-suffix))))
|
||||
(for-each (lambda (name)
|
||||
(install-file* name "tarballs" ""))
|
||||
'("binutils" "target-gcc-5" "linux-headers" "musl"))
|
||||
(copy-file (string-append (assoc-ref inputs "config.sub")
|
||||
"/share/automake-1.16/config.sub")
|
||||
"tarballs/config.sub;hb=3d5db9ebe860")
|
||||
(copy-file (string-append (assoc-ref inputs "config.sub")
|
||||
"/share/automake-1.16/config.guess")
|
||||
"tarballs/config.guess;hb=3d5db9ebe860")
|
||||
(substitute* "config.sh"
|
||||
(("^CC_BASE_PREFIX=.*")
|
||||
(string-append "CC_BASE_PREFIX=" (assoc-ref outputs "out")
|
||||
"/crossgcc\n")))
|
||||
;; Note: Important: source/gcc-5.3.0/gcc/exec-tool.in
|
||||
;; Note: Important: source/kernel-headers-3.12.6-5/tools/install.sh
|
||||
;; Note: Important: move-if-change (twice)
|
||||
;; Make sure that shebangs are patched after new extractions.
|
||||
(substitute* "defs.sh"
|
||||
(("touch \"[$]2/extracted\"")
|
||||
(string-append "touch \"$2/extracted\"
|
||||
for s in mkinstalldirs move-if-change compile depcomp callprocs configure \\
|
||||
mkdep compile libtool-ldflags config.guess install-sh missing config.sub \\
|
||||
config.rpath progtest.m4 lib-ld.m4 acx.m4 gen-fixed.sh mkheader.sh ylwrap \\
|
||||
merge.sh godeps.sh lock-and-run.sh print-sysroot-suffix.sh mkconfig.sh \\
|
||||
genmultilib exec-tool.in install.sh
|
||||
do
|
||||
find . -name $s -exec sed -i -e 's;!/bin/sh;!" (assoc-ref inputs "bash")
|
||||
"/bin/sh;' '{}' ';'
|
||||
find . -name $s -exec sed -i -e 's; /bin/sh; " (assoc-ref inputs "bash")
|
||||
"/bin/sh;' '{}' ';'
|
||||
done
|
||||
" )))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "./build.sh")))
|
||||
(delete 'install))))
|
||||
(native-inputs
|
||||
`(("config.sub" ,automake)
|
||||
("bash" ,bash)
|
||||
("flex" ,flex)
|
||||
("gmp" ,gmp)
|
||||
("mpfr" ,mpfr)
|
||||
("mpc" ,mpc)
|
||||
("binutils"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.27.tar.bz2")
|
||||
(sha256
|
||||
(base32 "125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn"))))
|
||||
("target-gcc-5"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "https://ftpmirror.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.bz2")
|
||||
(sha256
|
||||
(base32 "1ny4smkp5bzs3cp8ss7pl6lk8yss0d9m4av1mvdp72r1x695akxq"))))
|
||||
("linux-headers"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "http://ftp.barfooze.de/pub/sabotage/tarballs/linux-headers-4.19.88.tar.xz")
|
||||
(sha256
|
||||
(base32 "1srgi2nqw892jb6yd4kzacf2xzwfvzhsv2957xfh1nvbs7varwyk"))))
|
||||
("musl"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri "http://www.musl-libc.org/releases/musl-1.1.24.tar.gz")
|
||||
(sha256
|
||||
(base32 "18r2a00k82hz0mqdvgm7crzc7305l36109c0j9yjmkxj2alcjw0k"))))))
|
||||
(supported-systems (remove target-hurd? %supported-systems))
|
||||
(home-page "https://github.com/osresearch/heads")
|
||||
(synopsis "Cross gcc 5 toolchain")
|
||||
(description "Musl-cross toolchain: binutils, gcc 5 and musl.")
|
||||
(license license:isc))))
|
||||
|
||||
;; This package provides a "dev.cpio" file usable as a base for booting Heads.
|
||||
(define-public heads-dev-cpio
|
||||
(package
|
||||
|
||||
@@ -414,7 +414,7 @@ much more.")
|
||||
(define-public bvi
|
||||
(package
|
||||
(name "bvi")
|
||||
(version "1.5.0")
|
||||
(version "1.4.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -422,7 +422,7 @@ much more.")
|
||||
"/bvi-" version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jvldfxdpgf044hnhjhxi24a9bkbn8adl22icc8rfarv39m72h35"))))
|
||||
"1wllrvs8r8bdm11sx01095j8cj4drjmw0dlkjfdkm5lnnk11dfjb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:tests? #f)) ; no check target
|
||||
(inputs
|
||||
|
||||
@@ -489,22 +489,11 @@ lost.
|
||||
"0b9d2i22ghyjarwi1c596q5mf7gj1k04k784hnmrd2d4x9hgv9ax"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "--with-corosync"
|
||||
"--disable-static"
|
||||
"--localstatedir=/var"
|
||||
(list #:configure-flags #~(list "--with-corosync" "--disable-static"
|
||||
(string-append "--with-initdir="
|
||||
#$output "/etc/init.d")
|
||||
(string-append "--with-ocfdir="
|
||||
#$output "/lib"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; Do not attempt to install /var.
|
||||
(substitute* '("Makefile.am"
|
||||
"daemons/schedulerd/Makefile.am")
|
||||
(("install-exec-local:")
|
||||
"install-exec-local-disabled:")))))))
|
||||
#$output "/lib"))))
|
||||
(native-inputs (list autoconf
|
||||
automake
|
||||
cmocka
|
||||
|
||||
+5
-61
@@ -334,61 +334,6 @@ Hurd-minimal package which are needed for both glibc and GCC.")
|
||||
(define %add-to-hurd-subdirs
|
||||
(list "libmachdevdde" "libddekit"))
|
||||
|
||||
(define-public libacpica
|
||||
(let ((commit "0c3593e27947ef0734a070143caadaed28438354")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "libacpica")
|
||||
(home-page "https://salsa.debian.org/hurd-team/libacpica")
|
||||
(version (git-version "20220331" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"0hyfg4w2ch6a833kkxjcsddqq2712gqlbvrl6zv5yzvallpfzh7d"))
|
||||
(file-name (git-file-name name version))))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:modules '((srfi srfi-26)
|
||||
(ice-9 rdelim)
|
||||
(guix build utils)
|
||||
(guix build gnu-build-system))
|
||||
#:make-flags #~`(,(string-append "CC=" #$(cc-for-target))
|
||||
,(string-append "PREFIX=" #$output))
|
||||
;; As we are using the Debian package as upstream, we follow their
|
||||
;; build:
|
||||
;; * apply patches in debian/patches taken from the
|
||||
;; debian/patches/series file
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-after 'unpack 'apply-patches
|
||||
(lambda* (#:key target #:allow-other-keys)
|
||||
(let* ((patch-directory "debian/patches/")
|
||||
(series (string-append patch-directory "series"))
|
||||
(text (with-input-from-file series read-string))
|
||||
(lines (string-split (string-trim-right text) #\newline))
|
||||
(patches (filter (negate (cute string-prefix? "#" <>))
|
||||
lines))
|
||||
(patch-files (map
|
||||
(cute string-append patch-directory <>)
|
||||
patches)))
|
||||
(for-each
|
||||
(cute invoke "patch" "--force" "-p1" "-i" <>)
|
||||
patch-files)))))))
|
||||
(inputs (list libirqhelp
|
||||
libpciaccess))
|
||||
(build-system gnu-build-system)
|
||||
(supported-systems %hurd-systems)
|
||||
(synopsis "ACPICA as a library")
|
||||
(description "libacpica provides ACPICA as a library.")
|
||||
(license (list bsd-3
|
||||
gpl2)))))
|
||||
|
||||
(define-public hurd
|
||||
(package
|
||||
(name "hurd")
|
||||
@@ -643,8 +588,7 @@ exec ${system}/rc \"$@\"
|
||||
"CFLAGS=-fcommon")))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("libacpica" ,libacpica) ;for hurd/acpi.static
|
||||
("libgcrypt" ,libgcrypt) ;for /hurd/random
|
||||
`(("libgcrypt" ,libgcrypt) ;for /hurd/random
|
||||
("libdaemon" ,libdaemon) ;for /bin/console --daemonize
|
||||
("libxcrypt" ,libxcrypt) ;for password hashing
|
||||
("unifont" ,unifont)
|
||||
@@ -795,11 +739,11 @@ in userland processes thanks to the DDE layer.")
|
||||
(license gpl2))))
|
||||
|
||||
(define-public rumpkernel
|
||||
(let ((commit "debian/0_20250111-6")
|
||||
(revision "1"))
|
||||
(let ((commit "2aad456903b2dc2232fa18c7f286cea6d77b570f")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "rumpkernel")
|
||||
(version (git-version "0-20250111" revision (substring commit 7)))
|
||||
(version (git-version "0-20250111" revision commit))
|
||||
;; This uses the Debian Salsa rumpkernel package git as upstream as that
|
||||
;; is where development happens. Once things have stabilized, upstream
|
||||
;; may change to the NetBSD git from where Debian takes their snapshots.
|
||||
@@ -810,7 +754,7 @@ in userland processes thanks to the DDE layer.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1pvd54k06rlgvppfbzl1d0qqcjc0kshamw1iw40s3apabh87pw1i"))
|
||||
"14fiv2llvd5s1vi9gigmi1vi0b9yvg2zqyc9xg67ffxl1phv7p8j"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
@@ -38,7 +38,6 @@
|
||||
;;; Copyright © 2025 Zhu Zihao <all_but_last@163.com>
|
||||
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Igorj Gorjaĉev <igor@goryachev.org>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -306,7 +305,7 @@ actions.")
|
||||
(define-public geeqie
|
||||
(package
|
||||
(name "geeqie")
|
||||
(version "2.7")
|
||||
(version "2.6.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -314,12 +313,11 @@ actions.")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"139ffzqqq79d3k5q99r8i1jr9v9vfwv89dkh6vvw1mdnv6b3s9n8"))
|
||||
"08yr8jqli33rn1zvj9mjvinyzjp2myakxgf8wqqq8yidmm0vvn1p"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:glib-or-gtk? #t
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Disable test which requires binaries not present
|
||||
@@ -348,7 +346,6 @@ actions.")
|
||||
libwebp))
|
||||
(native-inputs
|
||||
(list `(,glib "bin") ; glib-gettextize
|
||||
gsettings-desktop-schemas
|
||||
intltool
|
||||
pkg-config
|
||||
python ; for tests
|
||||
@@ -927,15 +924,15 @@ with tiling window managers. Features include:
|
||||
;; That is required for testing.
|
||||
xorg-server-for-tests))
|
||||
(inputs
|
||||
(list imlib2
|
||||
glib
|
||||
gtk+-2
|
||||
lcms
|
||||
libjpeg-turbo
|
||||
libtiff
|
||||
libexif
|
||||
libx11
|
||||
libxext))
|
||||
`(("imlib2" ,imlib2)
|
||||
("glib" ,glib)
|
||||
("gtk+" ,gtk+-2)
|
||||
("lcms" ,lcms)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("libtiff" ,libtiff)
|
||||
("libexif" ,libexif)
|
||||
("libx11" ,libx11)
|
||||
("libxext" ,libxext)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
||||
+27
-73
@@ -71,12 +71,11 @@
|
||||
#:use-module (gnu packages build-tools)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gcc)
|
||||
@@ -97,11 +96,10 @@
|
||||
#:use-module (gnu packages mcrypt)
|
||||
#:use-module (gnu packages mp3)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages ocr)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages photo)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages popt)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-check)
|
||||
@@ -117,6 +115,7 @@
|
||||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix gexp)
|
||||
@@ -184,81 +183,36 @@ convert images in more than 100 different formats.")
|
||||
(define-public gradia
|
||||
(package
|
||||
(name "gradia")
|
||||
(version "1.13.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/AlexanderVanhee/Gradia")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "00s6xj9crj5gkh233q98fmq67f41y877xgrn49cycwb3kybp237n"))))
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/AlexanderVanhee/Gradia")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "07hal4h3kkjf7la02nqmqgw19sa6hkd130bkfmgwjimkv9zi8z2i"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules (append %meson-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
#:modules '((guix build meson-build-system)
|
||||
((guix build pyproject-build-system)
|
||||
#:prefix py:)
|
||||
(guix build utils))
|
||||
#:glib-or-gtk? #t
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false")
|
||||
(("update_desktop_database: true")
|
||||
"update_desktop_database: false"))))
|
||||
(add-after 'unpack 'set-tesseract-and-tessdata-path
|
||||
(lambda _
|
||||
(let* ((tesseract #$(this-package-input "tesseract-ocr"))
|
||||
(tesseract-bin (string-append tesseract "/bin/tesseract"))
|
||||
(tessdata (string-append tesseract "/share/tessdata")))
|
||||
(substitute* "meson.build"
|
||||
(("OCR_TESSERACT_CMD = '/app/bin/tesseract'")
|
||||
(format #f "OCR_TESSERACT_CMD = '~a'" tesseract-bin))
|
||||
(("OCR_ORIGINAL_TESSDATA_DIR = '/app/share/tessdata'")
|
||||
(format #f "OCR_ORIGINAL_TESSDATA_DIR = '~a'" tessdata))))))
|
||||
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(wrap-program (string-append #$output "/bin/gradia")
|
||||
`("GUIX_PYTHONPATH" =
|
||||
(,(getenv "GUIX_PYTHONPATH") ,(py:site-packages inputs
|
||||
outputs)))
|
||||
`("GI_TYPELIB_PATH" =
|
||||
(,(getenv "GI_TYPELIB_PATH")))
|
||||
`("GDK_PIXBUF_MODULE_FILE" =
|
||||
(,(getenv "GDK_PIXBUF_MODULE_FILE")))))))))
|
||||
(inputs (list bash-minimal
|
||||
gtk
|
||||
gtksourceview
|
||||
libadwaita
|
||||
libportal
|
||||
libsoup
|
||||
python
|
||||
python-pillow
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
python-pytesseract
|
||||
tesseract-ocr
|
||||
webp-pixbuf-loader))
|
||||
(native-inputs (list blueprint-compiler
|
||||
desktop-file-utils
|
||||
gettext-minimal
|
||||
`(,glib "bin")
|
||||
gobject-introspection
|
||||
pkg-config))
|
||||
(list #:glib-or-gtk? #t
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
(lambda _
|
||||
(substitute* "meson.build"
|
||||
(("gtk_update_icon_cache: true")
|
||||
"gtk_update_icon_cache: false")
|
||||
(("update_desktop_database: true")
|
||||
"update_desktop_database: false")))))))
|
||||
(inputs (list gtk libadwaita python python-pygobject))
|
||||
(native-inputs
|
||||
(list blueprint-compiler gettext-minimal `(,glib "bin") pkg-config))
|
||||
(home-page "https://github.com/AlexanderVanhee/Gradia")
|
||||
(synopsis "Edit screenshots")
|
||||
(description
|
||||
"Gradia is a GTK 4 application for enhancing and preparing
|
||||
(description "Gradia is a GTK 4 application for enhancing and preparing
|
||||
screenshots for blogs, social media, and documentation. It supports background
|
||||
customization, annotation tools (pen, arrow, text, highlight, stamp), padding,
|
||||
cropping, @acronym{OCR, optical character recognition} and various export formats.")
|
||||
cropping, and various export formats.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public iqa
|
||||
|
||||
@@ -339,6 +339,30 @@ coverage.")
|
||||
;; that list in further version.
|
||||
(supported-systems (list "x86_64-linux"))))
|
||||
|
||||
(define-public lttng-modules
|
||||
(package
|
||||
(name "lttng-modules")
|
||||
(version "2.13.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://lttng.org/files/lttng-modules/"
|
||||
"lttng-modules-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"19jx1yz1hsbr4vwfp2nr6z52a5g50iimaak962k49diay5zryi66"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:make-flags (list "CONFIG_LTTNG=m"
|
||||
"CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m")))
|
||||
(home-page "https://lttng.org/")
|
||||
(synopsis "LTTng kernel modules for the LTTng tracer toolset")
|
||||
(description
|
||||
"LTTng kernel modules are Linux kernel modules which make
|
||||
LTTng kernel tracing possible. They include essential control modules and
|
||||
many probes which instrument numerous interesting parts of Linux.")
|
||||
(license (list license:lgpl2.1 license:gpl2 license:expat))))
|
||||
|
||||
(define-public lttng-ust
|
||||
(package
|
||||
(name "lttng-ust")
|
||||
|
||||
@@ -18,7 +18,6 @@
|
||||
;;; Copyright © 2024 Christian Miller <christian.miller@dadoes.de>
|
||||
;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2025 Zheng Junjie <z572@z572.online>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -422,8 +421,8 @@ using a mouse. It is customizable and extensible with plugins and scripts.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SrainApp/srain")
|
||||
(commit version)))
|
||||
(url "https://github.com/SrainApp/srain")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "105z2kbj9ar6zk6i1qrbysrp9vbz692kbl2dwdxcwly0yh4cbd0p"))))
|
||||
@@ -434,11 +433,11 @@ using a mouse. It is customizable and extensible with plugins and scripts.")
|
||||
#:tests? #f ;there are no tests
|
||||
#:glib-or-gtk? #t))
|
||||
(native-inputs
|
||||
(list gettext-minimal
|
||||
`(,glib "bin")
|
||||
pkg-config
|
||||
python-wrapper
|
||||
python-sphinx))
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("glib:bin" ,glib "bin")
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python-wrapper)
|
||||
("python-sphinx" ,python-sphinx)))
|
||||
(inputs
|
||||
(list glib-networking
|
||||
gsettings-desktop-schemas
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014-2019, 2021, 2026 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2021, 2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2017, 2022 Marius Bakke <marius@gnu.org>
|
||||
@@ -226,18 +226,6 @@ JNI.")
|
||||
(setenv "JAVACMD" (search-input-file inputs "/bin/jamvm"))
|
||||
(setenv "JAVAC" (search-input-file inputs "/bin/jikes"))
|
||||
(setenv "CLASSPATH" (search-input-file inputs "/lib/rt.jar"))))
|
||||
,@(if (target-x86-32?)
|
||||
;; XXX: On i686 isFile() always seems to return true. Patching
|
||||
;; this here is very ugly, but the effects are limited. None
|
||||
;; of these changes remain by the time we've built Icedtea and
|
||||
;; the other JDKs.
|
||||
'((add-after 'unpack 'disable-isFile-checks
|
||||
(lambda _
|
||||
(substitute* "src/main/org/apache/tools/ant/util/ResourceUtils.java"
|
||||
(("destFile = \\(\\(FileProvider\\).*") ""))
|
||||
(substitute* "src/main/org/apache/tools/ant/taskdefs/Mkdir.java"
|
||||
(("dir.isFile\\(\\)") "false")))))
|
||||
'())
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Ant complains if this file doesn't exist.
|
||||
|
||||
@@ -55,12 +55,13 @@
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'make-git-checkout-writable
|
||||
(lambda _
|
||||
(for-each make-file-writable (find-files "."))))
|
||||
(for-each make-file-writable (find-files "."))
|
||||
#t))
|
||||
(add-before 'build 'remove-binaries
|
||||
(lambda _
|
||||
(delete-file "lib/org/xerial/snappy/OSInfo.class")
|
||||
(delete-file-recursively
|
||||
"src/main/resources/org/xerial/snappy/native")))
|
||||
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'build-jni
|
||||
(lambda _
|
||||
;; Rebuild one of the binaries we removed earlier
|
||||
@@ -97,33 +98,36 @@
|
||||
(add-after 'build-jni 'copy-jni
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources/org/xerial/snappy/native"
|
||||
"build/classes/org/xerial/snappy/native")))
|
||||
"build/classes/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'set-test-memory-size
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("<junit printsummary=")
|
||||
"<junit maxmemory=\"2G\" printsummary="))))
|
||||
(("<junit printsummary=") "<junit maxmemory=\"2G\" printsummary="))
|
||||
#t))
|
||||
(add-before 'check 'fix-failing
|
||||
(lambda _
|
||||
(with-directory-excursion "src/test/java/org/xerial/snappy"
|
||||
;; This package assumes maven build, which puts results in
|
||||
;; "target". We put them in "build" instead, so fix that.
|
||||
;; This package assumes maven build, which puts results in "target".
|
||||
;; We put them in "build" instead, so fix that.
|
||||
(substitute* "SnappyLoaderTest.java"
|
||||
(("target/classes") "build/classes"))
|
||||
;; This requires Hadoop, which is not in Guix yet.
|
||||
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java")))))))
|
||||
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java"))
|
||||
#t)))))
|
||||
(inputs
|
||||
(list java-osgi-framework))
|
||||
`(("osgi-framework" ,java-osgi-framework)))
|
||||
(propagated-inputs
|
||||
(list bitshuffle-for-snappy snappy))
|
||||
`(("bitshuffle" ,bitshuffle-for-snappy)
|
||||
("snappy" ,snappy)))
|
||||
(native-inputs
|
||||
(list java-junit
|
||||
java-hamcrest-core
|
||||
java-xerial-core
|
||||
java-plexus-classworlds
|
||||
java-commons-lang
|
||||
java-commons-io
|
||||
perl))
|
||||
`(("junit" ,java-junit)
|
||||
("hamcrest" ,java-hamcrest-core)
|
||||
("xerial-core" ,java-xerial-core)
|
||||
("classworlds" ,java-plexus-classworlds)
|
||||
("commons-lang" ,java-commons-lang)
|
||||
("commons-io" ,java-commons-io)
|
||||
("perl" ,perl)))
|
||||
(home-page "https://github.com/xerial/snappy-java")
|
||||
(synopsis "Compression/decompression algorithm in Java")
|
||||
(description "Snappy-java is a Java port of snappy, a fast C++
|
||||
@@ -152,13 +156,13 @@ compressor/decompressor.")
|
||||
(add-before 'build 'remove-binaries
|
||||
(lambda _
|
||||
(delete-file "lib/org/xerial/snappy/OSInfo.class")
|
||||
(delete-file-recursively
|
||||
"src/main/resources/org/xerial/snappy/native")))
|
||||
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'build-jni
|
||||
(lambda _
|
||||
;; Rebuild one of the binaries we removed earlier
|
||||
(invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
||||
"-d" "lib")
|
||||
"-d" "lib")
|
||||
;; Link to the dynamic snappy, not the static ones
|
||||
(substitute* "Makefile.common"
|
||||
(("-shared") "-shared -lsnappy"))
|
||||
@@ -180,14 +184,16 @@ compressor/decompressor.")
|
||||
(add-after 'build-jni 'copy-jni
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources/org/xerial/snappy/native"
|
||||
"build/classes/org/xerial/snappy/native")))
|
||||
"build/classes/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda _
|
||||
(mkdir-p "src/test/resources/org/xerial/snappy/")
|
||||
(copy-recursively "src/test/java/org/xerial/snappy/testdata"
|
||||
"src/test/resources/org/xerial/snappy/testdata")
|
||||
(install-file "src/test/java/org/xerial/snappy/alice29.txt"
|
||||
"src/test/resources/org/xerial/snappy/"))))))))
|
||||
"src/test/resources/org/xerial/snappy/")
|
||||
#t)))))))
|
||||
|
||||
(define-public java-iq80-snappy
|
||||
(package
|
||||
|
||||
@@ -165,18 +165,17 @@ ascii art drawings that contain characters that resemble lines like @samp{|}
|
||||
"017n1w6hds4wrz597jk7v8r6pz0kz5j9xwd240nq7s8hc58d4c2q"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove pre-built native libraries.
|
||||
'(for-each delete-file
|
||||
(find-files "." "\\.(dll|dylib|so)$")))))
|
||||
'(for-each
|
||||
delete-file
|
||||
(find-files "flatlaf-core/src/main/resources/com/formdev/flatlaf/natives/"
|
||||
".*")))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:jdk openjdk17
|
||||
#:tests? #false ;XXX requires junit5
|
||||
#:modules '((guix build ant-build-system)
|
||||
(guix build java-utils)
|
||||
(guix build utils)
|
||||
(sxml simple))
|
||||
#:jar-name "flatlaf.jar"
|
||||
#:source-dir '(list "flatlaf-core/src/main/java")
|
||||
#:test-dir '(list "flatlaf-core/src/test")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'build-native-code
|
||||
@@ -225,58 +224,8 @@ ascii art drawings that contain characters that resemble lines like @samp{|}
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(copy-recursively "flatlaf-core/src/main/resources"
|
||||
"build/classes")))
|
||||
(add-before 'build 'generate-pom
|
||||
(lambda _
|
||||
(call-with-output-file "pom.xml"
|
||||
(lambda (port)
|
||||
(sxml->xml
|
||||
`(*TOP*
|
||||
(*PI* xml "version=\"1.0\" encoding=\"UTF-8\"")
|
||||
(project
|
||||
(modelVersion "4.0.0")
|
||||
(groupId "com.formdev")
|
||||
(artifactId "flatlaf")
|
||||
(version ,#$version)))
|
||||
port)))))
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let* ((jdk (assoc-ref inputs "jdk"))
|
||||
(src-dir "flatlaf-core/src/main/java")
|
||||
(java9-dir "flatlaf-core/src/main/java9")
|
||||
(classes-dir "build/classes")
|
||||
(classes9-dir "build/classes9")
|
||||
(jar-file
|
||||
(string-append "build/flatlaf-" #$version ".jar")))
|
||||
;; Compile main sources (Java 8 target).
|
||||
(apply invoke "javac"
|
||||
"--release" "8"
|
||||
"-d" classes-dir
|
||||
(find-files src-dir "\\.java$"))
|
||||
;; Compile Java 9 multi-release sources.
|
||||
(mkdir-p classes9-dir)
|
||||
(apply invoke "javac"
|
||||
"--release" "9"
|
||||
"-cp" classes-dir
|
||||
"-d" classes9-dir
|
||||
(find-files java9-dir "\\.java$"))
|
||||
;; Create multi-release JAR.
|
||||
(let ((meta-versions
|
||||
(string-append classes-dir
|
||||
"/META-INF/versions/9")))
|
||||
(mkdir-p meta-versions)
|
||||
(copy-recursively classes9-dir meta-versions))
|
||||
(call-with-output-file "build/manifest.mf"
|
||||
(lambda (port)
|
||||
(display "Multi-Release: true\n" port)))
|
||||
(invoke "jar" "--create"
|
||||
"--file" jar-file
|
||||
"--manifest" "build/manifest.mf"
|
||||
"-C" classes-dir "."))))
|
||||
(replace 'install
|
||||
(install-from-pom "pom.xml")))))
|
||||
(inputs
|
||||
(list libx11 libxt))
|
||||
"build/classes"))))))
|
||||
(inputs (list libx11 libxt))
|
||||
(home-page "https://www.formdev.com/flatlaf/")
|
||||
(synopsis "Flat Look and Feel for Java Swing applications")
|
||||
(description "FlatLaf is a cross-platform Look and Feel for Java Swing
|
||||
|
||||
+8
-1957
File diff suppressed because it is too large
Load Diff
@@ -1088,9 +1088,9 @@ wrappers.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/tc39/test262")
|
||||
(commit "a6f387de323eb9ae56448bdb71c5d315df631ce4")))
|
||||
(commit "a5e69a1534de88d1eb29b76657d84c8541b72df7")))
|
||||
(file-name "test262")
|
||||
(sha256 (base32 "09avg4f75rzbmh3hcybdvjij7hbl2m79x6xp1hgl6h8ihfbn33l0"))
|
||||
(sha256 (base32 "078a7nim0n9x36q7q8yvjwhk4ig29p25b03rr4l7g2b545cky66l"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet #~(begin
|
||||
(for-each delete-file
|
||||
@@ -1100,7 +1100,7 @@ wrappers.")
|
||||
(define-public quickjs-ng
|
||||
(package
|
||||
(name "quickjs-ng")
|
||||
(version "0.14.0")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1109,7 +1109,11 @@ wrappers.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05k8niswh0ly5sx0129jdhiinqs84s86b7sv29ff68v3546dl04i"))))
|
||||
(base32 "0mfk32zvvh6c9a9plp6ad07888g795lhdmal3jyaclyn2k5iig9i"))
|
||||
;; Remove these patches on next release as they will be included.
|
||||
(patches (search-patches
|
||||
"quickjs-ng-64-bits-precision-on-i686.patch"
|
||||
"quickjs-ng-fix-atomics.pause-on-32-bit.patch"))))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
@@ -1142,23 +1146,6 @@ wrappers.")
|
||||
"")
|
||||
(("BUILD_DIR=build")
|
||||
"BUILD_DIR=../build"))))
|
||||
;; XXX: Unknown test failures in quickjs-ng 1.4.0.
|
||||
;; Remove for future versions.
|
||||
(add-before 'configure 'skip-failing-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let* ((test262 (assoc-ref inputs "test262"))
|
||||
(lang-path (in-vicinity test262 "test/language")))
|
||||
(substitute* "test262.conf"
|
||||
(("# list excluded tests and directories here" all)
|
||||
(string-join
|
||||
(cons* all
|
||||
(map (lambda (f)
|
||||
(in-vicinity lang-path f))
|
||||
'(;; export 'foo' in module /gnu/store is ambiguous
|
||||
"module-code/ambiguous-export-bindings/"
|
||||
;; Could not find export 'default'
|
||||
"import/import-attributes/text-self.js")))
|
||||
"\n"))))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user