Compare commits

..

7 Commits

Author SHA1 Message Date
Gabriel Wicki
ea9401bf1e gnu: linux-libre: Extract common kernel modules into variables.
Deduplicate common default modules in an attempt to clean the module up.

* gnu/packages/linux.scm (pinebook-extra-modules,
arm64-generic-extra-modules): New variables.
(linux-libre-arm64-generic, linux-libre-lts-arm64-generic,
linux-libre-arm64-generic-5.10): Use new variables.

Change-Id: Ia48d6942332e71cadd43decb59d633180b0d3264
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-04-11 19:10:28 -07:00
Gabriel Wicki
39240c6a87 gnu: linux-libre: Build wireguard and netfilter modules by default.
* gnu/packages/linux.scm (default-extra-linux-options): Add module options.
(linux-libre-arm64-honeycomb, linux-libre-arm64-mnt-reform-6.19,
linux-libre-arm64-mnt-reform-6.18, linux-libre-arm64-mnt-reform-6.12): Remove
options.

Change-Id: I25655d1c7aa1cd8ccceabbe4d9e0ccc5fa876765
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-04-11 19:10:24 -07:00
Vagrant Cascadian
35f20275c0 gnu: linux-libre 6.1: Update to 6.1.168.
* gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.168.
(linux-libre-6.1-pristine-source): Update hash.

Change-Id: I451c59abf88d7603cc1ef9b33f0452f822b3b1d7
2026-04-11 19:05:24 -07:00
Vagrant Cascadian
3f83561fdf gnu: linux-libre 6.6: Update to 6.6.134.
* gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.134.
(linux-libre-6.6-pristine-source): Update hash.

Change-Id: Ia9c3e1466a37cfdc38816be528c078ab550d52cb
2026-04-11 19:05:21 -07:00
Vagrant Cascadian
c76a119d42 gnu: linux-libre 6.12: Update to 6.12.81.
* gnu/packages/linux.scm (linux-libre-6.12-version): Update to 6.12.81.
(linux-libre-6.12-pristine-source): Update hash.

Change-Id: Ica289eea5726487dbd923c3b8b91f088fca3d93b
2026-04-11 19:05:19 -07:00
Vagrant Cascadian
20e8690310 gnu: linux-libre 6.18: Update to 6.18.22.
* gnu/packages/linux.scm (linux-libre-6.18-version): Update to 6.18.22.
(linux-libre-6.18-pristine-source): Update hash.

Change-Id: I249b4d2b0dcec260a10e7a4a5b1e63ae9869b477
2026-04-11 19:05:15 -07:00
Vagrant Cascadian
9e1e42aa90 gnu: linux-libre 6.19: Update to 6.19.12.
* gnu/packages/linux.scm (linux-libre-6.19-version): Update to 6.19.12.
(linux-libre-6.19-pristine-source): Update hash.

Change-Id: Ibaa1dea8ac75bdc972929dccead39929761eced8
2026-04-11 19:04:50 -07:00
338 changed files with 26087 additions and 54083 deletions

View File

@@ -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"))

View File

@@ -68,7 +68,6 @@ guix/discovery\.scm @guix/core
guix/docker\.scm @guix/core
guix/download\.scm @guix/core
guix/elf\.scm @guix/core
guix/fossil-download\.scm @guix/core
guix/ftp-client\.scm @guix/core
guix/gexp\.scm @guix/core
guix/git-authenticate\.scm @guix/core
@@ -179,7 +178,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
@@ -319,7 +317,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
@@ -336,7 +333,6 @@ guix/build-system/rakudo\.scm @guix/perl
guix/import/cpan\.scm @guix/perl
guix/scripts/import/cpan\.scm @guix/perl
gnu/packages/aux-files/python/.*\.py$ @guix/python
gnu/packages/django\.scm @guix/python
gnu/packages/jupyter\.scm @guix/python
gnu/packages/python(-.+|)\.scm$ @guix/python
@@ -488,7 +484,6 @@ gnu/services/version-control\.scm @guix/vcs
gnu/tests/version-control\.scm @guix/vcs
guix/build/bzr\.scm @guix/vcs
guix/build/cvs\.scm @guix/vcs
guix/build/fossil\.scm @guix/vcs
guix/build/git\.scm @guix/vcs
guix/build/hg\.scm @guix/vcs
guix/build/svn\.scm @guix/vcs

View File

@@ -104,7 +104,6 @@ MODULES = \
guix/discovery.scm \
guix/android-repo-download.scm \
guix/bzr-download.scm \
guix/fossil-download.scm \
guix/git-download.scm \
guix/hg-download.scm \
guix/hash.scm \
@@ -237,7 +236,6 @@ MODULES = \
guix/build/asdf-build-system.scm \
guix/build/bzr.scm \
guix/build/copy-build-system.scm \
guix/build/fossil.scm \
guix/build/git.scm \
guix/build/hg.scm \
guix/build/glib-or-gtk-build-system.scm \
@@ -486,7 +484,6 @@ AUX_FILES = \
gnu/packages/aux-files/linux-libre/5.10-x86_64.conf \
gnu/packages/aux-files/ovmf/51-edk2-ovmf-2m-raw-x64-nosb.json \
gnu/packages/aux-files/pack-audit.c \
gnu/packages/aux-files/python/pytest_guix.py \
gnu/packages/aux-files/python/sanity-check.py \
gnu/packages/aux-files/python/sitecustomize.py \
gnu/packages/aux-files/renpy/renpy.in \

4
NEWS
View File

@@ -18,10 +18,6 @@ Please send Guix bug reports to bug-guix@gnu.org.
** Distribution
*** GNOME updated to version 48
*** New service for Fossil SCM
*** TeX Live updated to 2026.1
** Programming interfaces
*** New (guix fossil-download) module, for fetching Fossil repositories
* Changes in 1.5.0 (since 1.4.0)
** Package management

View File

@@ -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

View File

@@ -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
@@ -1649,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
@@ -1709,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
@@ -2000,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

View File

@@ -2658,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
@@ -8738,52 +8737,6 @@ The example below denotes a version of gnu-standards to fetch:
@end deftp
For Fossil repositories, the module @code{(guix fossil-download)} defines
the @code{fossil-fetch} origin method and @code{fossil-reference} data type
for support of the Fossil @abbr{SCM, software configuration management} system.
@deffn {Procedure} fossil-fetch ref hash-algo hash [name]
Return a fixed-output derivation that fetches @var{ref}, a
@code{<fossil-reference>} object. The output is expected to have recursive
hash @var{hash} of type @var{hash-algo} (a symbol). Use @var{name} as
the file name, or a generic name if @code{#f}.
@end deffn
@deftp {Data Type} fossil-reference
This data type represents a Fossil reference
for @code{fossil-fetch} to retrieve.
@table @asis
@item @code{uri} (type: string)
The URI of a Fossil repository to clone, in one of the following forms,
in which @code{[...]} denotes optional elements:
@table @code
@item http[s]://[userid[:password]@@]host[:port][/path]
A HTTP/HTTPS URL.
@item [file://]path/to/repo.fossil
A file URI, where the path must have an extra leading @code{/}
to use an absolute path (without the URI scheme, the repository
is opened directly without cloning).
@end table
@item @code{check-in} (type: string)
A @url{https://fossil-scm.org/home/doc/trunk/www/checkin_names.wiki,
name of the check-in} to fetch, e.g.@: its canonical hexadecimal identifier,
associated tag and/or timestamp.
@end table
The example below denotes the @code{version-3.51.1} tag
of the SQLite repository:
@lisp
(fossil-reference
(uri "https://sqlite.org/src")
(check-in "version-3.51.1"))
@end lisp
@end deftp
@node Defining Package Variants
@section Defining Package Variants
@@ -8844,12 +8797,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
@@ -8857,23 +8810,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.
@@ -15552,7 +15488,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:
@@ -16113,7 +16049,7 @@ it unchanged.
@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:
@@ -16142,16 +16078,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
@@ -19216,7 +19150,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
@@ -27268,28 +27202,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
@@ -48960,28 +48872,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.
@@ -49022,7 +48914,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
@@ -49151,13 +49058,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.
@@ -49177,7 +49080,7 @@ 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
It comes with a fancy background image displaying the GNU and Guix
logos.
@end deffn
@@ -51760,63 +51663,6 @@ phone-number = 0
is-married = true
@end example
@subsubsection Serializing to environment variables
@cindex environment variables, serialization of configuration records
There are services which expect their configuration as environment variables.
The @code{(gnu services configuration environment-variables)} module provides
facilities to serialize configuration records from
@code{(gnu services configuration)} to list of pairs representing environment
variables.
For example this configuration record:
@lisp
(define-configuration/no-serialization server
(ssh-port
(number 22)
"The public SSH port of the server.")
(fqdn
(maybe-string)
"The fully qualified domain name of the server.")
(active?
(boolean #f)
"Whether or not the server should be activated."))
(define my-server
(server
(ssh-port 20022)
(active? #t)))
@end lisp
with this call:
@lisp
(serialize-environment-variables my-server server-fields
#:true-value "1"
#:false-value "0")
@end lisp
would yield:
@lisp
'(("SSH_PORT" . "20022")
("ACTIVE" . "1"))
@end lisp
@anchor{serialize-environment-variables-procedure}
@deffn {Procedure} serialize-environment-variables @var{config} @var{fields} @
[@var{selection} #f] [@var{negate?} #f] [#:prefix #f] @
[#:true-value "true"] [#:false-value "false"]
Serializes the fields whose name is included in SELECTION from CONFIG, a
configuration from @code{(gnu services configuration)}, and FIELDS, the
list of its field records, to a list of pairs. When NEGATE? is #t all services
not included in SELECTION will be serialized. Each pair represents an
environment variable. The first element of each pair is the variable name, the
second is the value. When PREFIX is a string it is prepended to the variable
name. TRUE-VALUE and FALSE-VALUE will be used as a representation for
respectfully @code{#t} and @code{#f}.
@end deffn
@c *********************************************************************
@cindex troubleshooting, Guix System
@@ -53559,9 +53405,6 @@ Maximum time a cache entry for SSH keys is valid, in seconds.
@item @code{extra-content} (default: @code{""}) (type: raw-configuration-string)
Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}.
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbols)
List of services that should be started before this service.
@end table
@end deftp

View File

@@ -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.
;;;
@@ -566,7 +565,6 @@ challenges"))
"guix/docker.scm"
"guix/download.scm"
"guix/elf.scm"
"guix/fossil-download.scm"
"guix/ftp-client.scm"
"guix/gexp.scm"
"guix/git-authenticate.scm"
@@ -691,7 +689,6 @@ ecosystem."
(team 'embedded
#:name "Embedded"
#:scope (list "gnu/packages/bootloaders.scm"
"gnu/packages/coreboot.scm"
"gnu/packages/firmware.scm")))
(define-team games
@@ -945,7 +942,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"
@@ -975,8 +971,7 @@ perl-build-system as well as the rakudo-build-system."
#:description
"Python, Python packages, the \"pypi\" importer, and the python-build-system."
#:scope
(list (make-regexp* "^gnu/packages/aux-files/python/.*\\.py$")
"gnu/packages/django.scm"
(list "gnu/packages/django.scm"
"gnu/packages/jupyter.scm"
(make-regexp* "^gnu/packages/python(-.+|)\\.scm$")
"gnu/packages/sphinx.scm"
@@ -1219,7 +1214,6 @@ the \"texlive\" importer."
"gnu/tests/version-control.scm"
"guix/build/bzr.scm"
"guix/build/cvs.scm"
"guix/build/fossil.scm"
"guix/build/git.scm"
"guix/build/hg.scm"
"guix/build/svn.scm")))
@@ -1250,11 +1244,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")

View File

@@ -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 }

View File

@@ -26,6 +26,7 @@
(define %sundry-texlive-packages
(list bibtool
dvisvgm
rubber
texmaker
texstudio

View File

@@ -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)

View File

@@ -81,10 +81,7 @@ entry will be expired even if it has been accessed recently.")
"Maximum time a cache entry for SSH keys is valid, in seconds.")
(extra-content
(raw-configuration-string "")
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}.")
(shepherd-requirement
(list-of-symbols '())
"List of services that should be started before this service."))
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}."))
(define (home-gpg-agent-configuration-file config)
"Return the @file{gpg-agent.conf} file for @var{config}."
@@ -107,7 +104,7 @@ entry will be expired even if it has been accessed recently.")
(define (home-gpg-agent-shepherd-services config)
"Return the possibly-empty list of Shepherd services for @var{config}."
(match-record config <home-gpg-agent-configuration>
(gnupg ssh-support? shepherd-requirement)
(gnupg ssh-support?)
;; 'gpg-agent' is started on demand by GnuPG's programs, but it has to be
;; started explicitly when OpenSSH support is enabled (info "(gnupg) Agent
;; Options").
@@ -122,21 +119,15 @@ entry will be expired even if it has been accessed recently.")
#:socket-directory-permissions #o700))))
(list (shepherd-service
(provision '(gpg-agent ssh-agent))
(requirement shepherd-requirement)
(modules '((shepherd support))) ;for '%user-runtime-dir'
(start
#~(lambda args
((make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))
;; Inherit graphical session environment.
#:environment-variables (environ))
args)))
(start #~(make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))))
(stop #~(make-systemd-destructor))
(documentation "Start 'gpg-agent', the GnuPG passphrase
agent, with support for handling OpenSSH material."))))

View File

@@ -56,7 +56,6 @@
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
# 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-2025 Zheng Junjie <z572@z572.online>
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
# Copyright © 2023 Andy Tai <atai@atai.org>
@@ -217,7 +216,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/convmv.scm \
%D%/packages/codex.scm \
%D%/packages/coq.scm \
%D%/packages/coreboot.scm \
%D%/packages/cpio.scm \
%D%/packages/cpp.scm \
%D%/packages/cppi.scm \
@@ -610,7 +608,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 \
@@ -741,8 +738,6 @@ GNU_SYSTEM_MODULES = \
%D%/services/cgit.scm \
%D%/services/ci.scm \
%D%/services/configuration.scm \
%D%/services/configuration/environment-variables.scm \
%D%/services/configuration/utils.scm \
%D%/services/containers.scm \
%D%/services/cuirass.scm \
%D%/services/cups.scm \
@@ -1040,7 +1035,6 @@ dist_patch_DATA = \
%D%/packages/patches/azr3.patch \
%D%/packages/patches/azr3-remove-lash.patch \
%D%/packages/patches/barony-fix-textures.patch \
%D%/packages/patches/bam-python3-compat.patch \
%D%/packages/patches/bash-completion-directories.patch \
%D%/packages/patches/bash-linux-pgrp-pipe.patch \
%D%/packages/patches/basis-universal-unbundle-libs.patch \
@@ -1130,10 +1124,10 @@ dist_patch_DATA = \
%D%/packages/patches/clog-fix-shared-build.patch \
%D%/packages/patches/clucene-gcc-14.patch \
%D%/packages/patches/clucene-pkgconfig.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/coda-use-system-libs.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 \
@@ -1186,7 +1180,6 @@ dist_patch_DATA = \
%D%/packages/patches/date-output-pkg-config-files.patch \
%D%/packages/patches/dbacl-include-locale.h.patch \
%D%/packages/patches/dbacl-icheck-multiple-definitions.patch \
%D%/packages/patches/dblatex-importlib.patch \
%D%/packages/patches/dblatex-inkscape-1.0.patch \
%D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/ddd-build.patch \
@@ -1468,6 +1461,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 \
@@ -1586,9 +1580,7 @@ dist_patch_DATA = \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
%D%/packages/patches/gtk4-demo-reproducible.patch \
%D%/packages/patches/gtk4-needs-udmabuf.patch \
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
@@ -1619,6 +1611,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 \
@@ -1654,7 +1647,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 \
@@ -1715,7 +1707,6 @@ dist_patch_DATA = \
%D%/packages/patches/libretro-dolphin-emu-libusb-assert.patch \
%D%/packages/patches/libretro-dolphin-emu-vulkan-headers.patch \
%D%/packages/patches/libretranslate-use-flasgger.patch \
%D%/packages/patches/librewolf-150.0-encoding_rs-rust-fix.patch \
%D%/packages/patches/librewolf-add-store-to-rdd-allowlist.patch \
%D%/packages/patches/librewolf-compare-paths.patch \
%D%/packages/patches/librewolf-neuter-locale-download.patch \
@@ -1748,7 +1739,7 @@ dist_patch_DATA = \
%D%/packages/patches/kissfft-tflite-micro.patch \
%D%/packages/patches/kitty-fix-wayland-protocols.patch \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kmscon-8-runtime-keymap-switch.patch \
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
%D%/packages/patches/knot-remove-runtime-deps.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
@@ -1987,7 +1978,6 @@ dist_patch_DATA = \
%D%/packages/patches/nheko-0-12-1-fix-rendering-replies.patch \
%D%/packages/patches/nix-dont-build-html-doc.diff \
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
%D%/packages/patches/neovim-tree-sitter-grammar-path.patch \
%D%/packages/patches/network-manager-plugin-ownership.patch \
%D%/packages/patches/network-manager-plugin-path.patch \
%D%/packages/patches/newlib-getentropy.patch \
@@ -2118,12 +2108,10 @@ dist_patch_DATA = \
%D%/packages/patches/python-random2-getrandbits-test.patch \
%D%/packages/patches/python-pillow-use-zlib-1.3.patch \
%D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch \
%D%/packages/patches/python-pynvim-fix-test-command-error.patch \
%D%/packages/patches/python-pypytools-python-3-fixes.patch \
%D%/packages/patches/python-pyreadstat-link-libiconv.patch \
%D%/packages/patches/python-sip-include-dirs.patch \
%D%/packages/patches/python-scikit-build-setuptools-compat.patch \
%D%/packages/patches/python-scikit-image-fix-python-pillow.patch \
%D%/packages/patches/python-sgmllib3k-assertions.patch \
%D%/packages/patches/python-sphobjinv-defer-ssl-import.patch \
%D%/packages/patches/python-sphinx-prompt-docutils-0.19.patch \
@@ -2262,7 +2250,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-werkzeug-tests.patch \
%D%/packages/patches/qdigidoc-bundle-config-files.patch \
%D%/packages/patches/qdigidoc-bundle-tsl-files.patch \
%D%/packages/patches/qdigidoc-fix-icon.patch \
%D%/packages/patches/qemu-build-info-manual.patch \
%D%/packages/patches/qemu-fix-agent-paths.patch \
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
@@ -2393,18 +2380,10 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.70-fix-rustix-build.patch \
%D%/packages/patches/rust-1.78-unwinding-fix.patch \
%D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \
%D%/packages/patches/rust-candle-0.9.1-add-candle-onnx-to-workspace.patch \
%D%/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch \
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
%D%/packages/patches/rust-codex-0.98.0-test-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-ring-0.17-ring-core.patch \
%D%/packages/patches/rw-igraph-0.10.patch \
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
@@ -2510,6 +2489,7 @@ dist_patch_DATA = \
%D%/packages/patches/texmacs-wayland-hidpi.patch \
%D%/packages/patches/tflite-micro_disable_download.patch \
%D%/packages/patches/thefuck-test-environ.patch \
%D%/packages/patches/thefuck-remove-broken-tests.patch \
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
%D%/packages/patches/timewarrior-time-sensitive-tests.patch \
%D%/packages/patches/tinydir-fix-cbehave-test.patch \
@@ -2534,11 +2514,10 @@ dist_patch_DATA = \
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \
%D%/packages/patches/unity-test-set-subdir-correctly.patch \
%D%/packages/patches/unity-test-support-int64.patch \
%D%/packages/patches/ungoogled-chromium-custom-compiler.patch \
%D%/packages/patches/ungoogled-chromium-empty-parsed-rustc-args.patch \
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
%D%/packages/patches/ungoogled-chromium-unbundle-icu-target.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
%D%/packages/patches/unknown-horizons-python-3.9.patch \
%D%/packages/patches/unknown-horizons-python-3.10.patch \
@@ -2639,17 +2618,6 @@ dist_patch_DATA = \
%D%/packages/patches/yggdrasil-extra-config.patch \
%D%/packages/patches/ypsilon-Use-GNU-toolchain-as-default.patch \
%D%/packages/patches/zabbix-agent2-test-timezone-fix.patch \
%D%/packages/patches/zed-0.225.10-add-message-notification-action.patch \
%D%/packages/patches/zed-0.225.10-add-guix-container-support.patch \
%D%/packages/patches/zed-0.225.10-collapse-multiline-git-deps.patch \
%D%/packages/patches/zed-0.225.10-exclude-libwebrtc-from-audio.patch \
%D%/packages/patches/zed-0.225.10-disable-dlopen.patch \
%D%/packages/patches/zed-0.225.10-fix-sqlite-memory-mode.patch \
%D%/packages/patches/zed-0.225.10-fix-test-db-isolation.patch \
%D%/packages/patches/zed-0.225.10-fix-workspace-race.patch \
%D%/packages/patches/zed-0.225.10-keep-regular-file-workspaces.patch \
%D%/packages/patches/zed-0.225.10-remove-patch-crates-io.patch \
%D%/packages/patches/zed-0.225.10-use-mock-livekit-on-linux.patch \
%D%/packages/patches/zig-0.9-build-respect-PKG_CONFIG-env-var.patch \
%D%/packages/patches/zig-0.9-fix-runpath.patch \
%D%/packages/patches/zig-0.9-riscv-support.patch \

View File

@@ -37,6 +37,7 @@
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix utils))
(define-public acl

View File

@@ -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>
@@ -109,6 +109,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system ruby)
@@ -1157,7 +1158,7 @@ on memory usage on GNU/Linux systems.")
(define-public htop
(package
(name "htop")
(version "3.5.0")
(version "3.4.1")
(source
(origin
(method git-fetch)
@@ -1165,7 +1166,7 @@ on memory usage on GNU/Linux systems.")
(url "https://github.com/htop-dev/htop")
(commit version)))
(sha256
(base32 "1r07ri0dl9xz0jn1hc2g8q3l0q4clvnxs05yagpzsz0zigp4flj5"))
(base32 "058y4a4mvx9m179dyr4wi8mlm6i4ybywshadaj4cvfn9fv0r0nkx"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -1308,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
@@ -3441,7 +3441,7 @@ modules and plugins that extend Ansible.")
(list ansible
bash-minimal
encfs
fuse
fuse-2
util-linux ;; for umount
findutils
git
@@ -3750,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
@@ -3926,18 +3917,6 @@ rules is done with the @code{auditctl} utility.")
(wrap-program (string-append ndiff "/bin/ndiff")
`("GUIX_PYTHONPATH" prefix
(,(python-path ndiff)))))))
(add-before 'check 'fix-tests-for-python-3.12
(lambda _
(substitute* "ndiff/ndifftest.py"
(("import imp")
"import importlib.util")
(("ndiff = imp\\.load_source\\(\"ndiff\", \"ndiff\\.py\"\\)")
(string-join
'("spec = \
importlib.util.spec_from_file_location(\"ndiff\", \"ndiff.py\")"
"ndiff = importlib.util.module_from_spec(spec)"
"spec.loader.exec_module(ndiff)")
"\n")))))
;; These are the tests that do not require network access.
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
@@ -4067,59 +4046,51 @@ plug-in architecture to allow monitoring other system metrics.")
(license license:gpl2+)))
(define-public thefuck
;; Latest release, 3.32, is not compatible with Python 3.12.
(let ((revision "0")
(commit "c7e7e1d884d3bb241ea6448f72a989434c2a35ec"))
(package
(name "thefuck")
(version (git-version "3.32" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nvbn/thefuck")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1l3i2cpdf3vznpbzqw7b18l23xikqs7andx6yzqvm5415snaqg06"))
(patches (search-patches "thefuck-test-environ.patch"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list
"--deselect=tests/test_utils.py::TestGetValidHistoryWithoutCurrent"
"--ignore=tests/functional/conftest.py")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; ModuleNotFoundError: No module named 'pytest_docker_pexpect'
(delete-file "tests/functional/conftest.py")
;; Tests look for installed package
;; Some tests need write access to $HOME.
(setenv "HOME" "/tmp")
;; Even with that, this function tries to mkdir /.config.
(substitute* "tests/test_utils.py"
(("settings\\.init\\(\\)") "")))))))
(native-inputs
(list go
python-mock
;; Uses test markers that are incompatible with pytest 9.
python-pytest-8
python-pytest-mock
python-setuptools))
(inputs
(list python-colorama
python-decorator
python-psutil
python-pyte))
(home-page "https://github.com/nvbn/thefuck")
(synopsis "Correct mistyped console command")
(description
"The Fuck tries to match a rule for a previous, mistyped command, creates
(package
(name "thefuck")
(version "3.32")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nvbn/thefuck")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "18ipa1bm6q1n5drbi8i65726hhqhl1g41390lfqrc11hkbvv443d"))
(patches (search-patches "thefuck-test-environ.patch"
"thefuck-remove-broken-tests.patch"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; Tests look for installed package
;; Some tests need write access to $HOME.
(setenv "HOME" "/tmp")
;; Even with that, this function tries to mkdir /.config.
(substitute* "tests/test_utils.py"
(("settings\\.init\\(\\)") "")))))))
(native-inputs
(list go
python-mock
python-pytest-8
python-pytest-mock
python-setuptools
python-wheel))
(inputs
(list python-colorama
python-decorator
python-psutil
python-pyte))
(home-page "https://github.com/nvbn/thefuck")
(synopsis "Correct mistyped console command")
(description
"The Fuck tries to match a rule for a previous, mistyped command, creates
a new command using the matched rule, and runs it.")
(license license:x11))))
(license license:x11)))
(define-public di
(package
@@ -7198,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")

View File

@@ -1,4 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -17,20 +22,163 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages adns)
#:use-module (gnu packages dns)
#:use-module (guix deprecation))
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages m4)
#:use-module (gnu packages pkg-config)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix utils))
(define-deprecated/public-alias adns
(@ (gnu packages dns) adns))
(define-public adns
(package
(name "adns")
(version "1.6.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "git://git.chiark.greenend.org.uk/~ianmdlvl/adns.git")
(commit (string-append "adns-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ln3l5j7wb1xazrzl76p9xar52p6l2k1cwy7jazxw1acl71k9h5n"))))
(build-system gnu-build-system)
(arguments
(list
;; INFO: Tests expect real name resolution to work.
#:tests? #f
#:configure-flags
#~(list
;; Make sure the programs under bin/ find libadns.so.
(string-append "LDFLAGS=-Wl,-rpath -Wl,"
#$output:out
"/lib"))))
(native-inputs
(list m4))
(home-page "https://www.gnu.org/software/adns/")
(synopsis "Asynchronous DNS client library and utilities")
(description
"GNU adns is a C library that provides easy-to-use @acronym{DNS, Domain
Name System} resolution functionality. The library is asynchronous, allowing
several concurrent calls. The package also includes several command-line
utilities for use in scripts.")
(license license:gpl3+)))
(define-deprecated/public-alias c-ares
(@ (gnu packages dns) c-ares))
(define-public c-ares
(package
(name "c-ares")
(version "1.34.4")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/c-ares/c-ares/releases/download/v"
version "/" name "-" version ".tar.gz"))
(sha256
(base32
"0br2msk3bpl5myhjp9vr5j2scpspvbg2fpnz69dcrr4ycpnxnf7s"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'filter-live-tests
(lambda _
;; Filter tests that require internet access.
(setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(substitute* "test/ares-test-main.cc"
(("(^| )main *\\(.*" all)
(string-append all " exit (77);\n")))))
(add-after 'filter-live-tests 'filter-hurd-tests
(lambda _
(setenv "GTEST_FILTER"
(string-append
(getenv "GTEST_FILTER")
":.*Basic/2"
":.*CancelImmediate/2"
":.*CancelImmediateGetHostByAddr/2"
":.*CancelLater/1"
":.*FamilyUnspecified/2"
":.*FamilyV6/2"
":.*GetAddrInfoParallelLookups/1"
":.*GetHostByAddrDestroy/2"
":.*GetHostByNameCNAMENoData/2"
":.*GetHostByNameDestroyAbsolute/2"
":.*GetHostByNameDestroyRelative/2"
":.*GetHostByNameParallelLookups/1"
":.*HostAlias/2"
":.*HostAliasMissing/2"
":.*HostAliasMissingFile/2"
":.*NotImplResponse/2"
":.*RefusedResponse/2"
":.*Resend/1"
":.*RetryWithoutEDNS/2"
":.*SearchDomains/2"
":.*SearchDomainsBare/2"
":.*SearchDomainsServFailOnAAAA/2"
":.*SearchDomainsWithResentReply/1"
":.*SearchHighNdots/2"
":.*SearchNoDataThenFail/2"
":.*SearchNoDataThenNoDataBare/2"
":.*SearchNoDataThenSuccess/2"
":.*ServFailResponse/2"
":.*SimpleQuery/2"
":.*SockCallback/2"
":.*SockConfigureCallback/2"
":.*SortListV4/2"
":.*SortListV6/2"
":.*ThirdServer/2"
":.*TruncationRetry/1"
":.*UnspecifiedFamilyCname6A4/2"
":.*UnspecifiedFamilyV4/2"
":.*UnspecifiedFamilyV6/2")))))
#~()))))
(native-inputs
(list pkg-config))
(home-page "https://c-ares.haxx.se/")
(synopsis "C library for asynchronous DNS requests")
(description
"C-ares is a C library that performs DNS requests and name resolution
asynchronously. It is intended for applications which need to perform DNS
queries without blocking, or need to perform multiple DNS queries in parallel.
The primary examples of such applications are servers which communicate with
multiple clients and programs with graphical user interfaces.")
(license (license:x11-style "https://c-ares.haxx.se/license.html"))))
(define-deprecated/public-alias c-ares-for-node-lts
(@ (gnu packages dns) c-ares-for-node-lts))
(define-public c-ares-for-node-lts
(hidden-package c-ares))
(define-deprecated/public-alias c-ares-for-node-bootstrap
(@ (gnu packages dns) c-ares-for-node-bootstrap))
(define-public c-ares-for-node-bootstrap
(hidden-package
(package
(inherit c-ares)
(version "1.18.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://c-ares.haxx.se/download/c-ares-" version
".tar.gz"))
(sha256
(base32
"1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))))))
(define-deprecated/public-alias c-ares/cmake
(@ (gnu packages dns) c-ares/cmake))
;; gRPC requires a c-ares built with CMake in order to get the .cmake modules.
;; We can not build c-ares itself with CMake because that would introduce a
;; circular dependency through nghttp2.
;; XXX: It would be nice if we could extract the modules somehow and make them
;; work with the "normal" c-ares package instead of building a whole new library.
(define-public c-ares/cmake
(hidden-package
(package
(inherit c-ares)
(build-system cmake-build-system)
(arguments
`(;; XXX: Tests require name resolution (the normal variant runs no tests).
#:tests? #f)))))

View File

@@ -370,7 +370,7 @@ This package includes the following programs:
libjpeg-turbo
perl
python
v4l-utils))
v4l-utils-minimal))
(propagated-inputs
;; These are in 'requires' field of .pc files.
(list glib gtk+))

View File

@@ -88,6 +88,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module ((guix build-system python) #:select (pypi-uri))
#:use-module (guix build-system r)
#:use-module (guix download)
#:use-module (guix gexp)

View File

@@ -41,6 +41,7 @@
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
@@ -764,7 +765,7 @@ file system.")
(sha256
(base32 "0r3xwk8xsfxvmxyw3d57sy2i9by24g0l1jl40735jiac9mypcg7n"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-requests python-argcomplete python-urllib3
(inputs (list python-requests python-argcomplete python-urllib3
python-looseversion gnupg))
(native-inputs (list python-setuptools python-wheel python-requests-cache
python-defusedxml))
@@ -772,7 +773,8 @@ file system.")
(list $SSL_CERT_FILE))
(arguments
(list
#:test-backend #~'unittest
#:test-flags
#~(list "-k" "test_*")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-tests
@@ -791,7 +793,11 @@ file system.")
(lambda _
(substitute* "sdkmanager.py"
(("gpgv")
(string-append #$(this-package-input "gnupg") "/bin/gpgv"))))))))
(string-append #$(this-package-input "gnupg") "/bin/gpgv")))))
(replace 'check
(lambda* (#:key tests? test-flags #:allow-other-keys)
(when tests?
(apply invoke "python" "-m" "unittest" test-flags)))))))
(home-page "https://gitlab.com/fdroid/sdkmanager")
(synopsis "Replacement for Android sdkmanager written in Python")
(description
@@ -1176,16 +1182,14 @@ for communicating with Xiaomi smart appliances over miIO and MIoT protocols.")
(define-public fdroidserver
(package
(name "fdroidserver")
(version "2.4.3")
(version "2.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/fdroid/fdroidserver")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (pypi-uri "fdroidserver" version))
(sha256
(base32 "1745fqxr2qfrls4wr6x9w1262b9pxmw9yvzd9b71ya2qmj74q17n"))))
(base32
"06xybginrwi5c7bw000wz5s5hzi0aqrxskzwh8qc6wv463w2djax"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -1196,17 +1200,22 @@ for communicating with Xiaomi smart appliances over miIO and MIoT protocols.")
(lambda _
(setenv "HOME" "/tmp"))))))
(propagated-inputs
(list python-platformdirs
python-androguard
(list python-androguard
python-apache-libcloud
python-argcomplete
python-asn1crypto
python-clint
python-defusedxml
python-docker
python-gitpython
python-mwclient
python-oscrypto
python-paramiko
python-pillow
python-platformdirs
python-puremagic
python-pyasn1
python-pyasn1-modules
python-pyyaml
python-qrcode
python-requests

View File

@@ -33,8 +33,9 @@
;; The URI does not appear to be easily guessable. For
;; example, you cannot download version "9100g" simply
;; by replacing "9100h" in the URI.
(uri (string-append "https://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
"distfiles/31/anthy-9100h.tar.gz"))
(uri (list (string-append "https://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
"distfiles/31/anthy-9100h.tar.gz")
"https://osdn.dl.osdn.net/anthy/37536/anthy-9100h.tar.gz"))
(sha256
(base32 "0ism4zibcsa5nl77wwi12vdsfjys3waxcphn1p5s7d0qy1sz0mnj"))))
(build-system gnu-build-system)

View File

@@ -180,7 +180,7 @@ supported by Canonical since 2009.")
(list libapparmor))
;; Python module `readline' needed
(native-inputs
(list bison flex gettext-minimal perl python python-setuptools which))
(list bison flex gettext-minimal perl python which))
(license license:gpl2))))
(define-public pam-apparmor

View File

@@ -37,6 +37,7 @@
(define-module (gnu packages astronomy)
#:use-module ((guix licenses) #:prefix license:)
#:use-module ((guix build-system python) #:select (pypi-uri)) ;to be removed soon
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
@@ -3789,6 +3790,10 @@ bad pixel tracking throughout the reduction process.")
#~(list "-m" "not remote_data")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-pytest-config
(lambda _
(substitute* "pyproject.toml"
((" --cov=cdflib --cov-report=xml") ""))))
(add-before 'check 'set-home-env
(lambda _
(setenv "HOME" (getcwd)))))))
@@ -4420,6 +4425,7 @@ Cesium.")
(native-inputs
(list python-pydot
python-pytest
python-pytest-cov
python-pytest-asdf-plugin
python-pytest-doctestplus
python-pytest-filter-subpackage
@@ -4944,6 +4950,7 @@ files.")
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
python-pytest-cov
python-setuptools
python-setuptools-scm
python-wheel))
@@ -5505,6 +5512,7 @@ across many files.")
(list python-mock
python-objgraph
python-pytest
python-pytest-cov
;; python-pytest-faulthandler
python-setuptools
python-wheel
@@ -6318,6 +6326,19 @@ files.")
(string-append
"from astropy.units.core import Unit, UnitBase\n"
"from astropy.units.errors import UnitTypeError\n")))))
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "pyproject.toml"
;; RuntimeError: Unable to detect version control
;; system. Checked: Git. Not installed: Mercurial, Darcs,
;; Subversion, Bazaar, Fossil, Pijul. See
;; <https://github.com/blacklanternsecurity/bbot/issues/1257>.
(("enable = true") "enable = false"))))
(add-before 'build 'set-version
(lambda _
;; TODO: Include in pyproject-build-system.
(setenv "POETRY_DYNAMIC_VERSIONING_BYPASS"
#$(version-major+minor+point version))))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "HOME" "/tmp"))))))
@@ -9902,7 +9923,13 @@ implemented in the @acronym{JWST, James Webb Space Telescope} and
"test_step.py::test_build_config_pipe_kwarg"
"test_step.py::test_build_config_step_config_file"
"test_step.py::test_build_config_step_kwarg"
"test_step.py::test_step_list_args")))))
"test_step.py::test_step_list_args")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION"
#$(version-major+minor+point version)))))))
(native-inputs
(list python-pytest
python-pytest-doctestplus
@@ -10910,6 +10937,7 @@ cosmological simulations.")
(build-system pyproject-build-system)
(propagated-inputs (list python-numpy python-scipy))
(native-inputs (list python-pytest
python-pytest-cov
python-pytest-doctestplus
python-setuptools-scm
python-wheel))

View File

@@ -62,7 +62,6 @@
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
;;; Copyright © 2026 Noé Lopez <noelopez@free.fr>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Daniel Martins <email@danielfm.me>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -179,6 +178,7 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
@@ -3237,27 +3237,30 @@ synchronous execution of all clients, and low latency operation.")
(package
(inherit jack-1)
(name "jack2")
;; 1.9.22 does not compile with Python 3.12, use the latest commit instead.
(properties '((commit . "17959465a722225a36a8b612aed26764036f258e")
(revision . "0")))
(version (git-version "1.9.22"
(assoc-ref properties 'revision)
(assoc-ref properties 'commit)))
(version "1.9.21")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jackaudio/jack2")
(commit (assoc-ref properties 'commit))))
(url "https://github.com/jackaudio/jack2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"18dbjq9y8mcp27j9aaqdlg4976hrisr7b88lk84ck09gmzlwqalp"))))
"0sbrffmdbajvrk7iqvsvrnwnpvmicvbjyq3f52r6ashdsznsz03b"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
#:configure-flags '("--dbus" "--alsa")
#:phases
(modify-phases %standard-phases
;; Python 3.11 has removed the 'U' (universal newline) mode. It has
;; been the default since Python 3.3.
(add-after 'unpack 'python-compatibility
(lambda _
(substitute* '("waflib/Context.py"
"waflib/ConfigSet.py")
(("m='rU'") "m='r'")
(("read\\('rU'") "read('r'"))))
(add-before 'configure 'set-linkflags
(lambda _
;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp
@@ -3283,7 +3286,7 @@ synchronous execution of all clients, and low latency operation.")
expat
libsamplerate
opus
python-dbus
python-dbus-1.2
readline))
(native-inputs
(list pkg-config))
@@ -3435,7 +3438,7 @@ from being able to mix multiple JACK audio streams.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0fvnvr74q5khxlj5sylfnkblydmwgdbvj04mhdqw0zzmfqwignhd"))))
(base32 "08ji4lg24flzi6g3yaavfq8hz3kr98q2ripk5m4qk9z172qxbbc9"))))
(build-system meson-build-system)
(arguments
(list
@@ -3700,44 +3703,6 @@ compensation, (de)interleaving, and byte-swapping
;; original developer.
(license license:expat)))
(define-public rtcqs
(package
(name "rtcqs")
(version "0.6.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/rtcqs/rtcqs")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1kc3niyaq4m8di68832pgfb1b0m54q5gm68dwlzwwilgxi61ifzc"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-gui
(lambda _
(substitute* "pyproject.toml"
(("\"FreeSimpleGUI\",?")
"")
(("rtcqs_gui = \"rtcqs\\.rtcqs_gui:main\"")
""))
(delete-file "src/rtcqs/rtcqs_gui.py")
(delete-file "src/rtcqs/rtcqs_qt_gui.py"))))))
(native-inputs (list python-setuptools))
(home-page "https://codeberg.org/rtcqs/rtcqs")
(synopsis "Linux audio real-time performance analyzer")
(description
"rtcqs analyzes a Linux system to detect possible bottlenecks that could
have a negative impact on real-time audio performance. It checks kernel
configuration, IRQ priorities, CPU governor, swappiness, and other settings
relevant to low-latency audio work.")
(license license:expat)))
(define-public rtosc
(package
(name "rtosc")
@@ -4086,7 +4051,9 @@ one-dimensional sample-rate conversion library.")
(string-append "'" #$(this-package-input "libsndfile")
"/lib/libsndfile"))))))))
(native-inputs
(list python-pytest python-setuptools))
(list python-pytest
python-pytest-cov
python-setuptools))
(inputs
(list libsndfile
portaudio))
@@ -6523,23 +6490,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"
@@ -6547,20 +6513,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
@@ -6579,16 +6543,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
@@ -7821,59 +7782,60 @@ Rate} 3600x2250 bit/s vocoder used in various radio systems.")
(delete-file-recursively "third_party")
(delete-file-recursively "modules")))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DLINK_BUILD_QT_EXAMPLES=ON"
"-DLINK_BUILD_JACK=ON")
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs tests? #:allow-other-keys)
(when tests?
(let* ((python (search-input-file inputs "/bin/python3"))
(run-tests "../source/ci/run-tests.py"))
(invoke python run-tests "--target" "LinkCoreTest")
(invoke python run-tests "--target" "LinkDiscoveryTest")))))
(add-before 'install 'patch-cmake
(lambda* (#:key inputs #:allow-other-keys)
(let* ((source "../source/"))
(substitute* (string-append source
"cmake_include/AsioStandaloneConfig.cmake")
(((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
"modules/asio-standalone/asio/include"))
(dirname (search-input-file inputs "include/asio.hpp"))))
(substitute* (string-append source "AbletonLinkConfig.cmake")
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
"${CMAKE_CURRENT_LIST_DIR}/../../../include")
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
"${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp")))))
(replace 'install
(lambda _
(let* ((out #$output)
(lib-cmake (string-append out "/lib/cmake/ableton-link"))
(source "../source"))
(for-each delete-file
'("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
(copy-recursively "bin" (string-append out "/bin"))
(copy-recursively (string-append source "/include/ableton")
(string-append out "/include/ableton"))
(install-file (string-append source "/AbletonLinkConfig.cmake")
lib-cmake)
(install-file (string-append source
"/cmake_include/AsioStandaloneConfig.cmake")
(string-append lib-cmake "/cmake_include"))))))))
(native-inputs
(list catch-framework
portaudio ;for portaudio examples
python ;for running tests
python-setuptools)) ;for running tests
python ;for running tests
portaudio)) ;for portaudio examples
(inputs
(list jack-1)) ;for JACK examples
(propagated-inputs
;; This is because include/ableton/platforms/asio/AsioWrapper.hpp
;; contains '#include <asio.hpp>'.
(list asio-1.28))
(arguments
`(#:configure-flags
'("-DLINK_BUILD_QT_EXAMPLES=ON"
"-DLINK_BUILD_JACK=ON")
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs tests? #:allow-other-keys)
(when tests?
(let* ((python (search-input-file inputs "/bin/python3"))
(run-tests "../source/ci/run-tests.py"))
(invoke python run-tests "--target" "LinkCoreTest")
(invoke python run-tests "--target" "LinkDiscoveryTest")))))
(add-before 'install 'patch-cmake
(lambda* (#:key inputs #:allow-other-keys)
(let* ((source "../source/"))
(substitute* (string-append source
"cmake_include/AsioStandaloneConfig.cmake")
(((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
"modules/asio-standalone/asio/include"))
(string-append (assoc-ref inputs "asio")
"/include")))
(substitute* (string-append source "AbletonLinkConfig.cmake")
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
"${CMAKE_CURRENT_LIST_DIR}/../../../include")
(("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
"${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp")))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(lib-cmake (string-append out "/lib/cmake/ableton-link"))
(source "../source"))
(for-each (lambda (test-file)
(delete-file test-file))
'("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
(copy-recursively "bin" bin)
(copy-recursively (string-append source "/include/ableton")
(string-append out "/include/ableton"))
(install-file (string-append source "/AbletonLinkConfig.cmake")
lib-cmake)
(install-file (string-append source
"/cmake_include/AsioStandaloneConfig.cmake")
(string-append lib-cmake "/cmake_include"))))))))
(home-page "https://github.com/Ableton/link")
(synopsis "Synchronize musical beat, tempo, and phase across multiple applications")
(description
@@ -8059,7 +8021,7 @@ as sample rate, determining whether an audio file is silent, and much more.")
(propagated-inputs
(list python-numba python-numpy python-scipy python-six))
(native-inputs
(list python-pytest python-setuptools python-wheel))
(list python-pytest python-pytest-cov python-setuptools python-wheel))
(home-page "https://github.com/bmcfee/resampy")
(synopsis "Efficient signal resampling")
(description
@@ -8089,7 +8051,8 @@ Home Page}.")
(list
#:test-flags
;; Ignore --mpl flag.
'(list "-k" (string-append
'(list "-c" "/dev/null"
"-k" (string-append
;; Resampling tests require python-samplerate.
"not resample"
;; These tests use Pooch and download data files.
@@ -8114,6 +8077,7 @@ Home Page}.")
(list python-matplotlib
python-packaging
python-pytest
python-pytest-cov
python-resampy
python-setuptools
python-wheel))

View File

@@ -1,58 +0,0 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
#
# This file is part of GNU Guix.
#
# GNU Guix is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# GNU Guix is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
import importlib.util
import json
def pytest_addoption(parser):
"""Add stub options to be ignored by pytest.
More precisely, inject all options provided in .pytest_guix_options.json,
except options whose plugin is indeed installed.
For example, if the json file records --cov:
if the pytest_cov module is installed, its --cov will be used.
otherwise, --cov is ignored (read by this parser, but nothing is done
with it).
Flags can be given with additional keyword arguments in a json object.
If the json object is not given, fallback to the default
{"action": "append", "nargs": "?"}. In practice, these arguments are only
mandatory for the store_true and store_const actions to avoid eating other
arguments.
This allows to remove development packages, which are not required at build
time while at the same time avoiding the need to adjust test options in
pyproject.toml or other configuration files.
"""
with open(".pytest_guix_options.json", "r") as options_file:
plugin_options = json.load(options_file)
group = parser.getgroup(
"guix", "Options ignored by the Guix pyproject-build-system"
)
# Only add options for plugins that are not present.
for key, options in plugin_options.items():
if importlib.util.find_spec(f"pytest_{key}") is None:
# Plugin not found, add stub options
for option, kwargs in options.items():
if kwargs:
group.addoption(option, **kwargs)
else:
group.addoption(option, action="append", nargs="?")

View File

@@ -50,6 +50,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -106,7 +107,6 @@
#:use-module (gnu packages rsync)
#:use-module (gnu packages ruby-xyz)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
@@ -137,6 +137,7 @@
python-paramiko
python-pexpect
python-pytest
python-pytest-runner
python-setuptools-scm
tzdata-for-tests
python-mock))
@@ -631,26 +632,41 @@ rsnapshot uses hard links to deduplicate identical files.")
(define-public borg
(package
(name "borg")
(version "1.4.4")
(version "1.4.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/borgbackup/borg")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32 "0bk302lbjjz1y8dg78wqqys80bm7mzkj5yf6wgyqdwvbqpsnpim4"))))
(base32 "07s4jqcv03s98hi6lvqpvmnnhl532qnvv11mjy2xc08rbmsgmfvr"))
(snippet
#~(begin
;; Delete files generated by Cython. We used to have a regex that
;; created the list of generated files but Borg has added new
;; non-generated C files that cause the regex to generate the
;; wrong list.
(for-each delete-file
'("src/borg/algorithms/checksums.c"
"src/borg/chunker.c"
"src/borg/compress.c"
"src/borg/crypto/low_level.c"
"src/borg/hashindex.c"
"src/borg/item.c"
"src/borg/platform/darwin.c"
"src/borg/platform/freebsd.c"
"src/borg/platform/linux.c"
"src/borg/platform/posix.c"
"src/borg/platform/syncfilerange.c"
"src/borg/platform/windows.c"))))))
(build-system pyproject-build-system)
(arguments
(list
#:modules '((srfi srfi-26) ; for cut
(guix build utils)
(guix build pyproject-build-system))
;; tests: 1318 passed, 293 skipped
#:test-flags
#~(list "--benchmark-skip"
"--numprocesses" (number->string (min 8 (parallel-job-count)))
"--numprocesses" (number->string (parallel-job-count))
"--pyargs" "borg.testsuite"
"-k" (string-join
;; These tests need to write to '/var'.
@@ -671,15 +687,7 @@ rsnapshot uses hard links to deduplicate identical files.")
"test_mount_hardlinks "
"test_readonly_mount "
"test_fuse_versions_view "
"test_migrate_lock_alive"
;; Test files are not in /gnu/store
"test_convert_all[False]"
"test_convert_all[True]"
"test_convert_segments[False]"
"test_convert_segments[True]"
"test_detect_attic_repo"
"test_key_export_qr"
"test_keys")
"test_migrate_lock_alive")
" and not "))
#:phases
#~(modify-phases %standard-phases
@@ -695,58 +703,46 @@ rsnapshot uses hard links to deduplicate identical files.")
(setenv "BORG_LIBLZ4_PREFIX" lz4)
(setenv "BORG_LIBXXHASH_PREFIX" xxhash)
(setenv "BORG_LIBZSTD_PREFIX" zstd))))
(add-before 'build 'fix-testsuite-setuid-mode
(add-after 'install 'install-doc
(lambda _
(substitute* "src/borg/testsuite/archiver.py"
(("0o4755") "0o0755"))))
(add-after 'install 'build-and-install-docs
(lambda _
(let* ((doc (string-append #$output "/share/doc/borg-" #$version))
(html (string-append doc "/html"))
(txt (string-append doc "/txt"))
(misc (string-append doc "/misc"))
(man (string-append #$output "/share/man/man1")))
(with-directory-excursion "docs"
(invoke "make" "text" "man" "singlehtml"))
(let ((man (string-append #$output "/share/man/man1"))
(misc (string-append #$output "/share/doc/borg-"
#$(package-version this-package))))
(for-each (cut install-file <> misc)
'("docs/misc/create_chunker-params.txt"
"docs/misc/borg-data-flow.png"
"docs/misc/internals-picture.txt"
"docs/misc/prune-example.txt"))
(copy-recursively "docs/_build/man" man)
(copy-recursively "docs/_build/singlehtml" html)
(copy-recursively "docs/_build/text" txt))))
(add-after 'build-and-install-docs 'install-shell-completions
(copy-recursively "docs/man" man))))
(add-after 'install-doc 'install-shell-completions
(lambda _
(let* ((etc (string-append #$output "/etc"))
(share (string-append #$output "/share"))
(bash (string-append etc "/bash_completion.d"))
(zsh (string-append share "/zsh/site-functions"))
(fish (string-append share "/fish/vendor_completions.d")))
(let ((etc (string-append #$output "/etc"))
(share (string-append #$output "/share")))
(with-directory-excursion "scripts/shell_completions"
(install-file "bash/borg" bash)
(install-file "zsh/_borg" zsh)
(install-file "fish/borg.fish" fish))))))))
(install-file "bash/borg"
(string-append etc "/bash_completion.d"))
(install-file "zsh/_borg"
(string-append share "/zsh/site-functions"))
(install-file "fish/borg.fish"
(string-append share "/fish/vendor_completions.d")))))))))
(native-inputs
(list python-cython
python-guzzle-sphinx-theme
python-pkgconfig
python-dateutil
python-pytest
python-pytest-benchmark
python-pytest-xdist
python-setuptools
python-setuptools-scm
python-sphinx
python-sphinxcontrib-jquery))
python-wheel))
(inputs
(list acl
lz4
openssl
python-msgpack
;; This is the latest version of msgpack accepted by 'setup.py'.
python-msgpack-for-borg
;; FUSE 3 isn't working well, so we stick with FUSE 2 for now:
;; <https://issues.guix.gnu.org/53407>
python-llfuse
python-packaging
xxhash
`(,zstd "lib")))
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
@@ -1303,6 +1299,7 @@ compression parameters used by Gzip.")
(native-inputs
(list python-flexmock
python-pytest
python-pytest-cov
python-setuptools
python-wheel))
(inputs
@@ -1366,9 +1363,9 @@ borgmatic is powered by borg.")
(assoc-ref qt:%standard-phases 'qt-wrap)))))
(native-inputs
(list python-platformdirs
python-pytest
python-pytest-mock
python-pytest-qt
python-pytest-runner
python-setuptools
python-setuptools-git))
(inputs

View File

@@ -42,6 +42,7 @@
#:use-module (guix search-paths)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system meson)
#:use-module (gnu packages)
@@ -943,20 +944,7 @@ configurable through a set of options.")
#~(list (string-append
"CC=" #$(this-package-input "openmpi") "/bin/mpicc")
(string-append
"CXX=" #$(this-package-input "openmpi") "/bin/mpicxx"))
#:phases
#~(modify-phases %standard-phases
;; OSU installs its binaries to /libexec. Have a symlink in /bin to
;; improve user experience.
(add-after 'install 'symlink-binaries-in-bin
(lambda _
(mkdir-p (string-append #$output "/bin"))
(for-each (lambda (file)
(symlink file
(string-append #$output "/bin/"
(basename file))))
(find-files (string-append #$output
"/libexec"))))))))
"CXX=" #$(this-package-input "openmpi") "/bin/mpicxx"))))
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
(synopsis "Benchmarking suite from the MVAPICH project")
(description

View File

@@ -65,6 +65,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system r)
#:use-module (guix build-system ruby)
@@ -2287,6 +2288,7 @@ version = ~s
(delete-file-recursively
(string-append #$output "/.pytest_cache")))))))))
(native-inputs (list python-pytest
python-pytest-cov
python-pytest-datadir
python-pytest-doctestplus
python-recommonmark
@@ -3377,36 +3379,35 @@ encountered in PDB files prior to simulation tasks.")
(define-public python-peaks2utr
(package
(name "python-peaks2utr")
(version "1.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/haessar/peaks2utr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1b4qiccp5j394pzqd1d4ss3k90zv3kdr84lykl6p8izn3k85b2bl"))))
(version "1.4.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "peaks2utr" version))
(sha256
(base32
"104il0kk61q07b58g9xrss7xflwlbx4kzsmw9iih99lhfsii0wzg"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; These tests fail because file names are not URLs.
'(list "-k" (string-join
(list "not test_forward_strand_annotations"
"test_matching_chr"
"test_reverse_strand_annotations")
" and not "))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.cfg"
(("==") ">=")
;; See: <https://github.com/haessar/peaks2utr/issues/47>.
(("numpy >= 1.21.4, <= 1.26.4") "numpy >= 1.21.4")))))))
(native-inputs
(list python-pytest
python-setuptools))
'(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.cfg"
(("==") ">=")))))))
(propagated-inputs
(list python-asgiref
python-gffutils
python-importlib-resources
macs-3
python-numpy
macs
python-numpy-1
python-psutil
python-pybedtools
python-pysam
@@ -3414,6 +3415,7 @@ encountered in PDB files prior to simulation tasks.")
python-tqdm
python-typing-extensions
python-zipp))
(native-inputs (list python-setuptools python-wheel))
(home-page "https://github.com/haessar/peaks2utr")
(synopsis "Python CLI for annotating three prime UTR")
(description
@@ -3862,6 +3864,7 @@ raw/ed14e050b2b75e7f4ddb73d512fbe928bbdb2b85")
python-scipy))
(native-inputs
(list python-pytest
python-pytest-cov
python-pytest-datadir
python-pytest-doctestplus
python-setuptools
@@ -4287,6 +4290,7 @@ e.g. microbiome samples, genomes, metagenomes.")
(native-inputs
(list python-cython
python-pytest
python-pytest-cov
python-setuptools
python-wheel))
(propagated-inputs
@@ -6962,6 +6966,7 @@ and v1.1 to v1.2.")
(list python-mypy-extensions
python-pytest
python-pytest-mock
python-pytest-runner
python-setuptools
python-wheel))
(propagated-inputs
@@ -8841,8 +8846,7 @@ high-throughput sequencing (HTS) assays")
;; Needed by tests
(add-after 'unpack 'set-HOME
(lambda _ (setenv "HOME" "/tmp"))))))
(propagated-inputs (list mysql-connector-python
python-appdirs
(propagated-inputs (list python-appdirs
python-biopython
python-click
python-colorama
@@ -8850,6 +8854,7 @@ high-throughput sequencing (HTS) assays")
python-filelock
python-loguru
python-mygene
python-mysql-connector-python
python-norns
python-numpy
python-pandas
@@ -9805,39 +9810,29 @@ sequencing tag position and orientation.")
(define-public macs-3
(package
(name "macs")
(version "3.0.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/macs3-project/MACS")
(commit (string-append "v" version))
(recursive? #true)))
(file-name (git-file-name name version))
(sha256
(base32 "16cv6bvvppi0z69r5l357ai8x4jg61rx8xrvcapk1wz6mh9naf5s"))))
(version "3.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/macs3-project/MACS")
(commit (string-append "v" version))
(recursive? #true)))
(file-name (git-file-name name version))
(sha256
(base32
"08hi0a2a0md9gfg7jc75wxv69rggv2yqfd1hyrg4mi5bhi712m0v"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; AssertionError: np.float32(1.0) != np.float64(-1.0)
;; calculated step by step:
;; 6.559423e-18
;; expected:
;; -2.98155597e-18
#~(list (string-append "--deselect=test/test_SignalProcessing.py::"
"Test_maxima::test_implement_smooth_here"))))
(native-inputs
(list python-cython
python-pytest
python-setuptools
zlib))
(propagated-inputs
(list python-cykhash
python-hmmlearn
python-numpy
python-scikit-learn
python-scipy))
(native-inputs
(list python-cython
python-pytest
python-setuptools
zlib))
(home-page "https://github.com/macs3-project/MACS")
(synopsis "Model based analysis for ChIP-Seq data")
(description
@@ -14310,7 +14305,11 @@ quality control are provided.")
(lambda _
(substitute* "setup.cfg"
(("intervaltree~=3.0.2") "intervaltree")
(("termcolor~=1.1.0") "termcolor")))))))
(("termcolor~=1.1.0") "termcolor"))))
(add-after 'unpack 'fix-pytest-config
(lambda _
(substitute* "pyproject.toml"
((" --cov=gdc_client --cov-report term") "")))))))
(native-inputs
(list python-flask
python-httmock
@@ -18336,6 +18335,44 @@ following the assay and produces a file detailing peaks of significant
enrichment.")
(license license:expat)))
(define-public mantis
;; This is an arbitrary commit as a year has passed since 0.1 was tagged.
(let ((commit "b6979a269172a45201c8366680d8b889f889432b")
(revision "2"))
(package
(name "mantis")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/splatlab/mantis")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dq8a785hnaxx5kq757m5czs8xpcjpcph1inq2nm8h6zfvqyj8xs"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; there are none
#:configure-flags (list "-DNH=ON"))) ; do not use SSE4.2 instructions
(inputs
(list sdsl-lite openssl zlib))
(native-inputs
(list gcc-7))
(home-page "https://github.com/splatlab/mantis")
(synopsis "Large-scale sequence-search index data structure")
(description "Mantis is a space-efficient data structure that can be
used to index thousands of raw-read genomics experiments and facilitate
large-scale sequence searches on those experiments. Mantis uses counting
quotient filters instead of Bloom filters, enabling rapid index builds and
queries, small indexes, and exact results, i.e., no false positives or
negatives. Furthermore, Mantis is also a colored de Bruijn graph
representation, so it supports fast graph traversal and other topological
analyses in addition to large-scale sequence-level searches.")
;; uses __uint128_t and inline assembly
(supported-systems '("x86_64-linux"))
(license license:bsd-3))))
(define-public sjcount
;; There is no tag for version 3.2, nor is there a release archive.
(let ((commit "292d3917cadb3f6834c81e509c30e61cd7ead6e5")
@@ -20231,7 +20268,13 @@ fasta subsequences.")
" and not test_roundtrip"
;; This test depends on ipytree, which contains a lot of
;; minified JavaScript.
" and not test_print_trees"))))
" and not test_print_trees"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-pytest-config
(lambda _
(substitute* "pyproject.toml"
((".*--cov.*") "")))))))
(native-inputs
(list python-hatchling
python-pytest))
@@ -22344,6 +22387,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")

View File

@@ -41,16 +41,32 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages bittorrent)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system glib-or-gtk)
#:use-module ((guix licenses) #:prefix l:)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
#:use-module (gnu packages)
#:use-module (gnu packages adns)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages nss)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages dns)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
@@ -60,9 +76,8 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages libevent)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages nss)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -71,29 +86,15 @@
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages serialization)
#:use-module (gnu packages qt)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
#:use-module (guix utils))
#:use-module (gnu packages xorg))
(define-public transmission
(package
@@ -193,7 +194,7 @@ DHT, µTP, PEX and Magnet Links.")
;; or any future license endorsed by Mnemosyne LLC.
;;
;; A few files files carry an MIT/X11 license header.
(license (list license:gpl2 license:gpl3))))
(license (list l:gpl2 l:gpl3))))
(define-public transmission-remote-gtk
(package
@@ -223,7 +224,7 @@ DHT, µTP, PEX and Magnet Links.")
(description "transmission-remote-gtk is a GTK client for remote management
of the Transmission BitTorrent client, using its HTTP RPC protocol.")
(home-page "https://github.com/transmission-remote-gtk/transmission-remote-gtk")
(license license:gpl2+)))
(license l:gpl2+)))
(define-public stig
(package
@@ -266,7 +267,7 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command
Line Interface} client for the BitTorrent client Transmission.")
(home-page "https://github.com/rndusr/stig")
(license license:gpl3)))
(license l:gpl3)))
(define-public libtorrent
(package
@@ -290,7 +291,7 @@ Line Interface} client for the BitTorrent client Transmission.")
with the BitTorrent client rtorrent. It is written in C++ with emphasis on
speed and efficiency.")
(home-page "https://github.com/rakshasa/libtorrent")
(license license:gpl2+)))
(license l:gpl2+)))
(define-public rtorrent
(package
@@ -319,7 +320,7 @@ speed and efficiency.")
full encryption, DHT, PEX, and Magnet Links. It can also be controlled via
XML-RPC over SCGI.")
(home-page "https://github.com/rakshasa/rtorrent")
(license license:gpl2+)))
(license l:gpl2+)))
(define-public tremc
(let ((commit "d8deaa5ac25bb45a2ca3a930309d6ecc74836a54")
@@ -353,7 +354,7 @@ XML-RPC over SCGI.")
(description "Tremc is a console client, with a curses interface, for the
Transmission BitTorrent daemon.")
(home-page "https://github.com/tremc/tremc")
(license license:gpl3+))))
(license l:gpl3+))))
(define-public aria2
(package
@@ -418,7 +419,7 @@ download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
(properties
'((release-monitoring-url . "https://github.com/aria2/aria2/releases")))
(license license:gpl2+)))
(license l:gpl2+)))
(define-public uget
(package
@@ -452,7 +453,7 @@ Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
"uGet is portable download manager with GTK+ interface supporting
HTTP, HTTPS, BitTorrent and Metalink, supporting multi-connection
downloads, download scheduling, download rate limiting.")
(license license:lgpl2.1+)))
(license l:lgpl2.1+)))
(define-public mktorrent
(package
@@ -487,8 +488,8 @@ files and whole directories. It can add multiple trackers and web seed URLs,
and set the @code{private} flag to disallow advertisement through the
distributed hash table (@dfn{DHT}) and Peer Exchange. Hashing is multi-threaded
and will take advantage of multiple processor cores where possible.")
(license (list license:public-domain ; sha1.*, used to build without OpenSSL
license:gpl2+)))) ; with permission to link with OpenSSL
(license (list l:public-domain ; sha1.*, used to build without OpenSSL
l:gpl2+)))) ; with permission to link with OpenSSL
(define-public libtorrent-rasterbar
(package
@@ -532,16 +533,15 @@ and will take advantage of multiple processor cores where possible.")
(inputs (list boost-1.83 openssl))
(native-inputs
(list libfaketime
pkg-config
python-setuptools
python-wrapper))
python-wrapper
pkg-config))
(home-page "https://www.libtorrent.org/")
(synopsis "Feature-complete BitTorrent implementation")
(description
"libtorrent-rasterbar is a feature-complete C++ BitTorrent implementation
focusing on efficiency and scalability. It runs on embedded devices as well as
desktops.")
(license license:bsd-2)))
(license l:bsd-2)))
(define-public qbittorrent
(package
@@ -585,7 +585,7 @@ libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
It aims to be a good alternative to all other BitTorrent clients out there.
qBittorrent is fast, stable and provides unicode support as well as many
features.")
(license license:gpl2+)))
(license l:gpl2+)))
(define-public qbittorrent-no-x
(let ((base qbittorrent))
@@ -727,4 +727,4 @@ Protocol Encryption, DHT, Local Peer Discovery (LSD), Peer Exchange
speed limits. Deluge heavily utilises the libtorrent library. It is
designed to run as both a normal standalone desktop application and as a
client-server.")
(license license:gpl3+)))
(license l:gpl3+)))

View File

@@ -83,6 +83,9 @@
(build-system gnu-build-system)
(arguments
(list
#:imported-modules %pyproject-build-system-modules
#:modules `(((guix build pyproject-build-system) #:select (python-version))
,@%default-gnu-modules)
#:tests? #f
#:configure-flags
#~(let ((icu (dirname (dirname (search-input-file
@@ -91,26 +94,17 @@
;; Auto-detection looks for ICU only in traditional
;; install locations.
(string-append "--with-icu=" icu)
;; Ditto for Python. The Gexp can't be evaluated if python is not
;; in the inputs (e.g. boost-for-mysql), so delay its evaluation
;; after checking for python, rather than concurrently.
#$@(force
(if (or (%current-target-system)
(not (this-package-input "python-minimal-wrapper")))
(delay
#~())
(delay
#~((let ((python (dirname (dirname (search-input-file
%build-inputs
"bin/python")))))
(string-append "--with-python-root=" python)
(string-append "--with-python=" python
"/bin/python")
(string-append "--with-python-version="
#$(version-major+minor
(package-version
(this-package-input
"python-minimal-wrapper")))))))))
;; Ditto for Python.
#$@(if (%current-target-system)
#~()
#~((let ((python (dirname (dirname (search-input-file
%build-inputs
"bin/python")))))
(string-append "--with-python-root=" python)
(string-append "--with-python=" python
"/bin/python")
(string-append "--with-python-version="
(python-version python)))))
"--with-toolset=gcc"))
#:make-flags
#~(list "threading=multi" "link=shared"
@@ -206,39 +200,29 @@
(replace 'install
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "./b2" "install" make-flags)))
#$@(force ; See above for why the force is necessary.
(if (or (%current-target-system)
(not (this-package-input "python-minimal-wrapper")))
(delay
#~())
(delay
#~((add-after 'install 'provide-libboost_python
(lambda* (#:key make-flags inputs outputs
#:allow-other-keys)
(let* ((static? (member "link=static" make-flags))
(ext (if static? ".a" ".so"))
(python (dirname
(dirname (search-input-file
inputs "bin/python"))))
(python-version
#$(version-major+minor
(package-version
(this-package-input
"python-minimal-wrapper"))))
(NN (string-join (string-split
python-version #\.)
""))
(libboost_pythonNN
(string-append "libboost_python" NN ext))
(major (string-take python-version 1)))
(with-directory-excursion
(string-append #$output "/lib")
(symlink libboost_pythonNN
(string-append "libboost_python" ext))
;; Some packages only look for the major version.
(symlink libboost_pythonNN
(string-append "libboost_python"
major ext)))))))))))))
#$@(if (%current-target-system)
#~()
#~((add-after 'install 'provide-libboost_python
(lambda* (#:key make-flags inputs outputs #:allow-other-keys)
(let* ((static? (member "link=static" make-flags))
(libext (if static? ".a" ".so"))
(python (dirname (dirname (search-input-file
inputs "bin/python"))))
(python-version (python-version python))
(libboost_pythonNN
(string-append "libboost_python"
(string-join (string-split
python-version #\.)
"")
libext)))
(with-directory-excursion (string-append #$output "/lib")
(symlink libboost_pythonNN
(string-append "libboost_python" libext))
;; Some packages only look for the major version.
(symlink libboost_pythonNN
(string-append "libboost_python"
(string-take python-version 1)
libext)))))))))))
(inputs
(append
(list icu4c zlib)

View File

@@ -95,8 +95,8 @@ supported content to the Kodi media center.")
;; Arbitrary commit of branch master,
;; Update when updating uBlockOrigin.
(let* ((name "ublock-main-assets")
(commit "004af606e6a0efc22bc65ab1016b553441cacb71")
(revision "6")
(commit "011eef4a5b36a7ebf4adedc486d96b77cfa25c54")
(revision "5")
(version (git-version "0" revision commit)))
(origin
(method git-fetch)
@@ -105,14 +105,14 @@ supported content to the Kodi media center.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1bfd2d53flrkgvjcr1kj9nbxj4y9a4pcr7m3dycccdhd21x6k0ln")))))
(base32 "0ng8a88zdvrxg30fz83gswjy27b3hfx9q11n2i715id7az7kqf9x")))))
(define ublock-prod-assets
;; Arbitrary commit of branch gh-pages,
;; Update when updating uBlockOrigin.
(let* ((name "ublock-prod-assets")
(commit "6c15e4ef91888c610caf73829dc78ae9549ed24a")
(revision "6")
(commit "6844322800de647da0c4fe06dd6a0b212a3942e4")
(revision "5")
(version (git-version "0" revision commit)))
(origin
(method git-fetch)
@@ -121,12 +121,12 @@ supported content to the Kodi media center.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0n2h6drqh44b1zgl729bfr70n08mkm536a2vqgivw7dm5dmi8zd3")))))
(base32 "13vxq4z1wxivz5xklncxd2sj5aqkyhq919vzbbfp0fgh0imhikib")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.70.0")
(version "1.66.2")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
@@ -136,7 +136,7 @@ supported content to the Kodi media center.")
(file-name (git-file-name name version))
(sha256
(base32
"0j1m80nz86yc69c42hv5di5zza0vkycqmjaydb9jgx0abcvi19x5"))))
"16ph031hb8bf4rxyxvm6jr0bxmy0snza11jfrbjgfb390gax9r63"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(properties '((addon-id . "uBlock0@raymondhill.net")))

View File

@@ -44,17 +44,37 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages build-tools)
#:use-module (ice-9 optargs)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages c)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system guile)
#:use-module (guix build-system hare)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix modules)
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages adns)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages c)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages cppi)
#:use-module (gnu packages dns)
#:use-module (gnu packages elf)
#:use-module (gnu packages gcc)
#:use-module (gnu packages guile)
@@ -85,26 +105,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages unicode)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system guile)
#:use-module (guix build-system hare)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix modules)
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix utils)
#:use-module (ice-9 optargs))
#:use-module (gnu packages xml))
(define-public acr
(package
@@ -195,8 +196,7 @@ according to the system capabilities and the user-selected options.")
(file-name (git-file-name name version))
(sha256
(base32
"13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6"))
(patches (search-patches "bam-python3-compat.patch"))))
"13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags `(,(string-append "CC=" ,(cc-for-target))
@@ -207,7 +207,7 @@ according to the system capabilities and the user-selected options.")
(modify-phases %standard-phases
(delete 'configure))))
(native-inputs
(list python-minimal-wrapper))
`(("python" ,python-2)))
(inputs
(list lua))
(home-page "https://matricks.github.io/bam/")
@@ -274,14 +274,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
@@ -344,8 +344,8 @@ programs and other files depend.")
(license license:bsd-3)))
(define-public gn
(let ((commit "6e8dcdebbadf4f8aa75e6a4b6e0bdf89dce1513a")
(revision "2354")) ;as returned by `git describe`, used below
(let ((commit "ee5b7e32b961a9da1933e9f46a018ba6cac8ef60")
(revision "2277")) ;as returned by `git describe`, used below
(package
(name "gn")
(version (git-version "0.0" revision commit))
@@ -355,7 +355,7 @@ programs and other files depend.")
(uri (git-reference (url home-page) (commit commit)))
(sha256
(base32
"0yz38czmbc72q1hkiv3cwxqh2i8ji2vkkvvk5ws2cjplmn2vj0x9"))
"19kkvwxl66vlzlfppbq03fmi59i5g8a1yc71fsfgwqqmx4wywd6w"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -365,8 +365,7 @@ programs and other files depend.")
(lambda _
(setenv "CC" "gcc")
(setenv "CXX" "g++")
(setenv "CXXFLAGS"
"-g -O2 -Wno-error=redundant-move -Wno-error=comment")
(setenv "CXXFLAGS" "-g -O2 -Wno-error=redundant-move")
(setenv "AR" "ar")))
(replace 'configure
(lambda _
@@ -431,8 +430,9 @@ files and generates build instructions for the Ninja build system.")
(arguments
(list
#:tests? #f ;disabled to avoid extra dependencies
;; Custom build steps to prevent using pyproject-build-system which
;; allows to edit the latter without a C++ world rebuild.
;; Essentially a lighter copy of the former python-build-system.
;; Using it rather than pyproject-build-system allows to edit the latter
;; without a C++ world rebuild.
#:phases
#~(modify-phases %standard-phases
(delete 'bootstrap)

View File

@@ -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>
;;;
@@ -54,6 +54,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix store)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
@@ -1761,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)
@@ -1770,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")

View File

@@ -45,6 +45,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module ((guix build-system python) #:select (pypi-uri))
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)

View File

@@ -595,11 +595,7 @@ capacity is user-selectable.")
version "/DVDStyler-" version ".tar.bz2"))
(sha256
(base32
"0n3mfjsazvlzk9hl23q3iz7bmxjq7b5lx0ab8nbk1jgl763k9cqb"))
(snippet
#~(begin (delete-file "src/dvdvml.c")
(delete-file "src/dvdvmy.c")
(delete-file "src/dvdvmy.h")))))
"0n3mfjsazvlzk9hl23q3iz7bmxjq7b5lx0ab8nbk1jgl763k9cqb"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -629,28 +625,27 @@ capacity is user-selectable.")
#t)))
#:tests? #f)) ; No tests.
(inputs ; TODO package bundled wxvillalib
(list bash-minimal ; for wrap-program
cdrtools
dbus
dvd+rw-tools
dvdauthor
eudev
ffmpeg-4
fontconfig
libexif
libjpeg-turbo
wxsvg
wxwidgets))
`(("wxwidgets" ,wxwidgets)
("wssvg" ,wxsvg)
("bash" ,bash-minimal) ; for wrap-program
("dbus" ,dbus)
("cdrtools" ,cdrtools)
("dvd+rw-tools" ,dvd+rw-tools)
("dvdauthor" ,dvdauthor)
("eudev" ,eudev)
("fontconfig" ,fontconfig)
("libexif" ,libexif)
("libjpeg" ,libjpeg-turbo)
("ffmpeg" ,ffmpeg-4)))
(native-inputs
(list bison
docbook-xml
docbook-xsl
flex
gettext-minimal
pkg-config
python-minimal-wrapper
xmlto
zip))
`(("pkg-config" ,pkg-config)
("flex" ,flex)
("python" ,python-2)
("xmlto" ,xmlto)
("gettext" ,gettext-minimal)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("zip" ,zip)))
(synopsis "DVD authoring application")
(description "DVDStyler is a DVD authoring application which allows users
to burn video files in many formats to DVD discs, complete with individually

View File

@@ -131,6 +131,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -1881,6 +1882,7 @@ http server.")
(arguments (list #:tests? #false)) ;no tests included
(native-inputs
(list python-pytest
python-pytest-cov
python-setuptools
python-wheel
python-xmlschema))
@@ -1913,6 +1915,42 @@ XML output")
decorators from external files.")
(license license:expat)))
(define-public python-pytest-random-order
(package
(name "python-pytest-random-order")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pytest-random-order" version))
(sha256
(base32 "104hww3b86jchk41kjhyycr541pd2dfgqkww6lx5y70z9z9xfwj4"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; AttributeError: module 'py' has no attribute 'code'.
#~(list "-k" (string-append "not test_it_works_with_actual_tests"
" and not test_failed_first"
" and not test_doctests"))))
(native-inputs
(list python-pytest-xdist
python-setuptools
python-py
python-wheel))
(propagated-inputs
(list python-pytest))
(home-page "https://github.com/jbasko/pytest-random-order")
(synopsis "Pytest plugin to randomize the order of tests")
(description "@code{pytest-random-order} is a Pytest plugin that
randomizes the order of tests. This can be useful to detect a test that
passes just because it happens to run after an unrelated test that leaves the
system in a favourable state. The plugin allows user to control the level of
randomness they want to introduce and to disable reordering on subsets of
tests. Tests can be rerun in a specific order by passing a seed value
reported in a previous test run.")
(license license:expat)))
(define-public python-pytest-runner
(package
(name "python-pytest-runner")
@@ -2918,8 +2956,12 @@ mypy plugins.")
"and not upstream_url"))))
(native-inputs
(list python-pytest
python-pytest-black
python-pytest-checkdocs
python-pytest-cov
python-pytest-enabler
python-pytest-flake8
python-pytest-mypy
python-setuptools
python-wheel))
(propagated-inputs
@@ -3044,6 +3086,7 @@ possible to write plugins to add your own checks.")
python-path
python-pyhamcrest
python-pytest
python-pytest-html
python-setuptools))
(propagated-inputs
(list python-colorama
@@ -3088,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))
@@ -3676,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")

View File

@@ -28,6 +28,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -579,7 +580,7 @@ stored with user-specified precision.")
python-sphinx))
(inputs
(list fftwf
`(,hwloc "lib")
`(,hwloc-2 "lib")
libtirpc
lmfit
muparser
@@ -825,7 +826,7 @@ colleagues, or to generate pre-rendered animations.")
(define-public python-pyscf
(package
(name "python-pyscf")
(version "2.12.1")
(version "2.9.0")
(source
(origin
(method git-fetch)
@@ -834,10 +835,14 @@ colleagues, or to generate pre-rendered animations.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00q5c0r5yzp05m65679164s7jzm9678b63msm8g7953vh8v9g25y"))))
(base32 "1lj48c749aqf9zd5xbshjsfr0y972r2nsm8lf3760jbfadg9jdsi"))))
(build-system pyproject-build-system)
(arguments
(list
#:modules
'((guix build pyproject-build-system)
(guix build utils)
(ice-9 textual-ports))
;; Some tests take a very long time and libxc support is not enabled.
#:tests? #f
#:phases
@@ -863,8 +868,16 @@ colleagues, or to generate pre-rendered animations.")
"-DBUILD_XCFUN=OFF"
"-DBUILD_LIBCINT=OFF"))))))))
(native-inputs
(list cmake-minimal
python-setuptools))
(list
cmake-minimal
;; HACK: Add gcc, make tune work.
;; build-system-with-tuning-compiler on guix/transformations.scm
;; want to find compiler on the build-inputs, but gcc is on the
;; python-build-system's host-inputs, so when tune it , will report:
;; "failed to determine which compiler is used"
(canonical-package gcc)
python-setuptools
python-wheel))
(inputs
(list
;; Use qcint when tuning for x86_64.

View File

@@ -79,13 +79,11 @@
'("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/nss" ;MPL-2.0
"net/third_party/quiche" ;BSD-3
"net/third_party/uri_template" ;ASL2.0
"third_party/abseil-cpp" ;ASL2.0
@@ -106,11 +104,8 @@
"third_party/catapult" ;BSD-3
"third_party/catapult/common/py_vulcanize/third_party/rcssmin" ;ASL2.0
"third_party/catapult/common/py_vulcanize/third_party/rjsmin" ;ASL2.0
"third_party/catapult/third_party/beautifulsoup4-4.9.3" ;Expat
"third_party/catapult/third_party/html5lib-1.1" ;Expat
"third_party/catapult/third_party/polymer" ;BSD-3
"third_party/catapult/third_party/six" ;Expat
"third_party/catapult/third_party/typ" ;ASL2.0
;; XXX: This is a minified version of <https://d3js.org/>.
"third_party/catapult/tracing/third_party/d3" ;BSD-3
"third_party/catapult/tracing/third_party/gl-matrix" ;Expat
@@ -125,12 +120,19 @@
"third_party/cld_3" ;ASL2.0
"third_party/closure_compiler" ;ASL2.0
"third_party/compiler-rt" ;ASL2.0
"third_party/compiler-rt/src/lib" ;ASL2.0
"third_party/compiler-rt/src/lib/builtins" ;ASL2.0
"third_party/content_analysis_sdk" ;BSD-3
"third_party/cpuinfo" ;BSD-2
"third_party/crabbyavif" ;ASL2.0
"third_party/crabbyavif/src/sys/dav1d-sys" ;ASL2.0
"third_party/crabbyavif/src/sys/aom-sys" ;ASL2.0
"third_party/crabbyavif/src/sys/libgav1-sys" ;ASL2.0
"third_party/crabbyavif/src/sys/libyuv-sys" ;ASL2.0
"third_party/crabbyavif/src/sys/ndk-sys" ;ASL2.0
"third_party/crashpad" ;ASL2.0
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
"third_party/crashpad/crashpad/third_party/zlib" ;Zlib
"third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h" ;Zlib
"third_party/crc32c" ;BSD-3
"third_party/cros_system_api" ;BSD-3
"third_party/dav1d" ;BSD-2
@@ -138,25 +140,19 @@
;; TODO: can likely be unbundled when Vulkan is updated.
"third_party/dawn/third_party/khronos" ;ASL2.0
"third_party/dawn/third_party/gn/webgpu-cts" ;BSD-3
"third_party/dawn/third_party/renderdoc" ;Expat
"third_party/dawn/third_party/webgpu-headers" ;BSD-3
"third_party/depot_tools" ;BSD-3
"third_party/devscripts" ;GPL2.0
"third_party/devtools-frontend" ;BSD-3
"third_party/devtools-frontend/src/front_end"
"third_party/devtools-frontend/src/front_end/third_party"
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
"third_party/devtools-frontend/src/front_end/third_party\
/additional_readme_paths.json" ;no explicit license; trivial
"third_party/devtools-frontend/src/front_end/third_party/json5" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/csp_evaluator" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/diff" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/i18n" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/intl-messageformat" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/json5" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/legacy-javascript" ;ASL-2.0
"third_party/devtools-frontend/src/front_end/third_party/lighthouse" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/lit" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
@@ -168,12 +164,10 @@
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/parsel" ; Expat
"third_party/devtools-frontend/src/front_end/third_party/puppeteer/third_party/rxjs" ; ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/puppeteer-replay" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/source-map-scopes-codec" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party\
/vscode.web-custom-data" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/third-party-web" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/web-vitals" ;Expat
"third_party/devtools-frontend/src/third_party/i18n" ;ASL2.0
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
@@ -185,7 +179,6 @@
"third_party/farmhash" ;Expat
"third_party/fast_float" ;ASL2.0, Boost1.0, Expat
"third_party/fdlibm" ;non-copyleft
"third_party/federated_compute/chromium/fcp/confidentialcompute" ;ASL2.0
"third_party/federated_compute/src/fcp/base" ;ASL2.0
"third_party/federated_compute/src/fcp/confidentialcompute" ;ASL2.0
"third_party/federated_compute/src/fcp/protos/confidentialcompute" ;ASL2.0
@@ -194,9 +187,7 @@
"third_party/fft2d" ;non-copyleft
"third_party/flatbuffers" ;ASL2.0
"third_party/fp16" ;Expat
"third_party/freetype" ;GPL2.0
"third_party/fusejs" ;ASL2.0
"third_party/fxdiv" ;Expat
"third_party/gemmlowp" ;ASL2.0
"third_party/google_input_tools" ;ASL2.0
"third_party/google_input_tools/third_party/closure_library" ;ASL2.0
@@ -205,9 +196,6 @@
"third_party/harfbuzz-ng" ;Expat
"third_party/highway" ;ASL2.0
"third_party/hunspell" ;MPL1.1/GPL2+/LGPL2.1+
"third_party/hyphenation-patterns" ;Expat
;; FIXME: Our icu does not have some headers such as udatamem.h.
"third_party/icu" ;Unicode3.0
"third_party/ink" ;ASL2.0
"third_party/ink_stroke_modeler" ;ASL2.0
"third_party/inspector_protocol" ;BSD-3
@@ -220,14 +208,12 @@
"third_party/libaddressinput" ;ASL2.0
"third_party/libaom" ;BSD-2 or "Alliance for Open Media Patent License 1.0"
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
"third_party/libaom/source/libaom/third_party/SVT-AV1" ;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
"third_party/libpfm4" ;BSD
"third_party/libpng" ;PNG2.0
"third_party/libphonenumber" ;ASL2.0
"third_party/libsecret" ;LGPL2.1+
"third_party/libsrtp" ;BSD-3
@@ -241,15 +227,11 @@
"third_party/libvpx/source/libvpx/third_party/x86inc" ;Expat
"third_party/libwebm" ;BSD-3
"third_party/libx11" ;BSD
"third_party/libxcb-keysyms" ;BSD
"third_party/libxml/chromium" ;BSD-3
"third_party/libyuv" ;BSD-3
"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
@@ -262,7 +244,6 @@
"third_party/modp_b64" ;BSD-3
"third_party/nasm" ;BSD-2
"third_party/nearby" ;ASL2.0
"third_party/neon_2_sse" ;BSD-2
"third_party/node" ;Expat
"third_party/oak/chromium/proto" ;ASL2.0
"third_party/oak/chromium/proto/attestation" ;ASL2.0
@@ -270,20 +251,14 @@
"third_party/one_euro_filter" ;BSD-3
"third_party/openscreen" ;BSD-3
"third_party/openscreen/src/third_party/tinycbor" ;Expat
"third_party/opus" ;BSD-3
"third_party/ots" ;BSD-3
"third_party/pdfium" ;BSD-3
"third_party/pdfium/third_party/agg23" ;Expat
"third_party/pdfium/third_party/bigint" ;Public domain, BSD-3
"third_party/pdfium/third_party/lcms" ;Expat
"third_party/pdfium/third_party/libopenjpeg" ;BDS-2
"third_party/pdfium/third_party/libtiff" ;non-copyleft
"third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType
"third_party/perfetto" ;ASL2.0
"third_party/perfetto/protos/third_party/chromium" ;BSD-3
"third_party/perfetto/protos/third_party/pprof" ;ASL2.0
"third_party/perfetto/protos/third_party/primes" ;ASL2.0
"third_party/perfetto/protos/third_party/simpleperf" ;ASL2.0
"third_party/pffft" ;the "FFTPACK" license
"third_party/ply" ;BSD-3
"third_party/polymer" ;BSD-3
@@ -293,7 +268,6 @@
"third_party/protobuf/third_party/utf8_range" ; Expat
"third_party/pthreadpool" ;BSD-2
"third_party/puffin" ;Non-copyleft
"third_party/pyyaml" ;Expat
"third_party/pyjson5" ;ASL2.0
"third_party/rapidhash" ;BSD-2
"third_party/readability" ;ASL2.0
@@ -305,14 +279,11 @@
"third_party/search_engines_data" ;BSD-3
"third_party/securemessage" ;ASL2.0
"third_party/selenium-atoms" ;ASL2.0
"third_party/sentencepiece" ;ASL2.0
"third_party/sentencepiece/src/third_party/darts_clone" ;BSD-3
"third_party/shell-encryption" ;ASL2.0
"third_party/simdutf" ;Non-copyleft
"third_party/simplejson" ; Non-copyleft
"third_party/six" ;Expat
"third_party/skia" ;BSD-3
"third_party/skia/include/third_party/vulkan" ;BSD-3
"third_party/skia/third_party/vulkanmemoryallocator" ;BSD-3, Expat
"third_party/smhasher" ;Expat, public domain
;; FIXME: the snappy "replacement" shim (see replace_gn_files.py below) does
@@ -367,6 +338,7 @@
"third_party/webrtc/modules/third_party/fft" ;Non-copyleft
"third_party/webrtc/modules/third_party/g711" ;Public domain
"third_party/webrtc/modules/third_party/g722" ;Public domain
"third_party/webrtc/rtc_base/third_party/sigslot" ;Public domain
"third_party/widevine/cdm/widevine_cdm_common.h" ;BSD-3
"third_party/woff2" ;ASL2.0
"third_party/wuffs" ;ASL2.0
@@ -400,7 +372,7 @@
;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
(define %chromium-version "147.0.7727.55")
(define %chromium-version "141.0.7390.65")
(define %ungoogled-revision (string-append %chromium-version "-1"))
(define %debian-revision (string-append "debian/" %ungoogled-revision))
@@ -412,7 +384,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"0l6v4wf16067igawjlh90f3d287mkw0cq4j5lvrxxy17y1skynzc"))))
"1hk4rww2gccly1qv0xnswd77haj02rlza82403dxdjm8fkdfndy6"))))
(define %debian-origin
(origin
@@ -425,7 +397,7 @@
((_ version) version))))
(sha256
(base32
"0gqarll08i7rcs1amapciv263xvzglc8p44ikavq3xd12yyvcd98"))))
"06s3kvwb3490xb28n6r3q5n1c0ylsvchiw6s4h1rrp8jqzwjbmc6"))))
(define (origin-file origin file)
(computed-file
@@ -438,38 +410,26 @@
(define %debian-patches
(map debian-patch
'("bookworm/foreach.patch"
"debianization/safe-libcxx.patch"
"disable/enterprise-tests.patch"
'("bookworm/clang19.patch"
"bookworm/foreach.patch"
"disable/node-version-ck.patch"
"disable/rustc-allow-features.patch"
"fixes/bytemuck.patch"
"fixes/gentoo-stylesheet.patch"
"fixes/libcpp-headers.patch"
"fixes/libpng-testonly.patch"
"fixes/rust-clanglib.patch"
"llvm-19/clang19.patch"
"llvm-19/clone-traits.patch"
"llvm-19/keyfactory.patch"
"llvm-19/value-or.patch"
"llvm-22/ignore-for-ubsan.patch"
"system/openjpeg.patch"
"trixie/cookie-string-view.patch"
"trixie/nodejs-main.patch")))
;; Remove after rust is past
;; <https://github.com/rust-lang/rust/pull/141061>.
"trixie/rust-no-alloc-shim.patch")))
(define %guix-patches
(list (local-file
(assume-valid-file-name
(search-patch
"ungoogled-chromium-custom-compiler.patch")))
(local-file
(assume-valid-file-name
(search-patch
"ungoogled-chromium-empty-parsed-rustc-args.patch")))
(local-file
(assume-valid-file-name
(search-patch
"ungoogled-chromium-extension-search-path.patch")))
(local-file
(assume-valid-file-name
(search-patch
"ungoogled-chromium-unbundle-icu-target.patch")))
(local-file
(assume-valid-file-name
(search-patch
@@ -540,8 +500,9 @@
"#if 0"))
(invoke "python" "build/linux/unbundle/replace_gn_files.py"
"--system-libraries" "flac" "fontconfig" "freetype"
"harfbuzz-ng" "libjpeg" "libpng" "libwebp" "libxml"
"libxslt" "openh264" "opus" "zlib")))))
"harfbuzz-ng" "icu" "libjpeg"
"libpng" "libwebp" "libxml" "libxslt" "openh264" "opus"
"zlib")))))
(define opus+custom
(package/inherit opus
@@ -570,7 +531,7 @@
%chromium-version "-lite.tar.xz"))
(sha256
(base32
"1salvlw5sykx3zmsbp7cgmf7y8yy6jlgb4b4zswzsbjrprk4jnap"))
"09iwglswnr6d45zz3zsjw7jpm1xlwwkxlz9h5nlhqxyd933a04fq"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@@ -587,7 +548,6 @@
;; directory for an exhaustive list of supported flags.
;; (Note: The 'configure' phase will do that for you.)
#~(list "is_debug=false"
"is_component_build=false"
;; Use the "official" release optimizations, as opposed to
;; a developer build.
"is_official_build=true"
@@ -595,7 +555,6 @@
"use_clang_modules=false"
"use_custom_libcxx=false" ; support for this is deprecated and to be removed.
"optimize_webui=false"
"webnn_use_tflite=false"
"safe_browsing_use_unrar=false"
"chrome_pgo_phase=0"
"use_sysroot=false"
@@ -613,10 +572,12 @@
"enable_service_discovery=false"
"enable_vr=false"
"enable_enterprise_companion=false"
"enable_glic=false"
"enable_iterator_debugging=false"
"enable_hangout_services_extension=false"
"enable_widevine=false"
"fatal_linker_warnings=false"
;; Disable type-checking for the Web UI to avoid a Java dependency.
"enable_js_type_check=false"
;; Disable code using TensorFlow until it has been scrutinized
;; by the ungoogled project.
"build_with_tflite_lib=false"
@@ -628,11 +589,6 @@
"angle_has_histograms=false"
"angle_build_tests=false"
"build_angle_perftests=false"
"enable_perfetto_unittests=false"
"skia_enable_skshapper_tests=false"
"tint_build_unittests=false"
"enable_nocompile_tests=false"
"enable_screen_ai_browsertests=false"
"clang_warning_suppression_file=\"\""
@@ -641,8 +597,6 @@
"is_cfi=false"
"symbol_level=0"
"blink_symbol_level=0"
"v8_symbol_level=0"
"v8_enable_backtrace=false"
;; Define a custom toolchain that simply looks up CC, AR and
@@ -674,10 +628,26 @@
;; invokation and fails if it's just the version number.
" (f6e511eec 2024-10-15) (built from a source tarball)\"")
;; Chromium's build/rust/std/BUILD.gn has a hardcoded
;; list of stdlib rlibs (stdlib_files) that GN uses to
;; declare build outputs. GN requires static output
;; declarations, so the list must exactly match what
;; rlibs exist in the Rust sysroot. Chromium's list
;; includes unicode_width because their bundled
;; toolchain (Rust 1.89) ships it as a dependency of
;; getopts 0.2.23. Our Rust 1.93 has getopts 0.2.24
;; which dropped that dependency, so unicode_width is
;; not in our sysroot. This GN arg removes it from
;; the list. (Chromium's own use of unicode_width via
;; codespan-reporting is a separate vendored copy under
;; third_party/rust/chromium_crates_io/ and is
;; unaffected.)
"removed_rust_stdlib_libs=[\"unicode_width\"]"
;; Prefer system libraries.
"use_system_freetype=true"
"use_system_harfbuzz=true"
"use_system_icu=false"
"use_system_icu=true"
"use_system_lcms2=true"
"use_system_libffi=true"
"use_system_libjpeg=true"
@@ -743,9 +713,9 @@
;; Many files try to include ICU headers from "third_party/icu/...".
;; Remove the "third_party/" prefix to use system headers instead.
;(substitute* (find-files "chrome" "\\.cc$")
; (("third_party/icu/source/(common|i18n)/")
; ""))
(substitute* (find-files "chrome" "\\.cc$")
(("third_party/icu/source/(common|i18n)/")
""))
;; XXX: Should be unnecessary when use_system_lcms2=true.
(substitute* "third_party/pdfium/core/fxcodec/icc/icc_transform.h"
@@ -762,19 +732,16 @@
(("include \"third_party/curl")
"include \"curl"))
;; Our clang libs and rustfmt are not under bindgen root directory.
(substitute* '("build/rust/rust_bindgen_generator.gni"
"build/rust/rust_bindgen.gni")
;; Unknown flags as of clang-19, can be removed when building with
;; newer clang.
(substitute* "build/config/compiler/BUILD.gn"
(("-gsimple-template-names") ""))
;; Clang libs are not under bindgen root directory.
(substitute* "build/rust/rust_bindgen_generator.gni"
(("(_libclang_path = )rust_bindgen_root" _ libclang)
(string-append libclang "clang_base_path"))
(("(_rustfmt_path = \")\\$\\{rust_bindgen_root\\}" _ rustfmt)
(string-append rustfmt "${rust_sysroot_absolute}"))))))
(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
(string-append libclang "clang_base_path"))))))
(add-after 'patch-stuff '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
@@ -796,22 +763,13 @@
(add-after 'add-absolute-references 'adjust-CPLUS_INCLUDE_PATH
;; The libcxx include/c++/v1 directory is not exposed via
;; CPLUS_INCLUDE_PATH by default, causing errors like
;; "fatal error: 'format' file not found". Also clang is
;; unable to find gcc's bits/c++config.h which is machine
;; dependent.
;; "fatal error: 'format' file not found".
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(let* ((libcxx-v1 (search-input-directory inputs
"include/c++/v1"))
(target-system #$(nix-system->gnu-triplet
(or (%current-target-system)
(%current-system))))
(target-include (string-append "include/c++/"
target-system))
(gcc-bits (search-input-directory inputs
target-include)))
(setenv "CPLUS_INCLUDE_PATH"
(string-append libcxx-v1 ":" gcc-bits ":"
(getenv "CPLUS_INCLUDE_PATH"))))))
(setenv "CPLUS_INCLUDE_PATH"
(string-append
(search-input-directory inputs
"/include/c++/v1")
":" (getenv "CPLUS_INCLUDE_PATH")))))
(add-before 'configure 'prepare-build-environment
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(let ((node (search-input-file (or native-inputs inputs)
@@ -997,7 +955,7 @@
glib
gtk+
harfbuzz
icu4c-77
icu4c
lcms
libcxx
libffi

View File

@@ -30,6 +30,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)

View File

@@ -47,6 +47,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system emacs)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
#:use-module (gnu packages)
#:use-module (gnu packages backup)

View File

@@ -49,6 +49,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module ((guix build-system python) #:select (pypi-uri))
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module (guix build-system go)

View File

@@ -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,132 +339,28 @@
(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)))
(home-page "https://github.com/openai/codex")
(synopsis "AI-assisted coding CLI and TUI")
@@ -840,15 +368,13 @@
"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)
@@ -857,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
@@ -866,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

View File

@@ -150,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
(define-public crun
(package
(name "crun")
(version "1.26")
(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
"1hdwk5dpsz9danxiyfli07b7sqid6hr34qmhs5qjl2dcc00is89j"))))
"02kksvnja234k8mpq5j7yms8npbpvh8iz3k03h21lwcqzqsb88rx"))))
(build-system gnu-build-system)
(arguments
(list
@@ -714,7 +714,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
(define-public podman
(package
(name "podman")
(version "5.8.2")
(version "5.8.1")
(outputs '("out" "docker"))
(properties
`((output-synopsis "docker" "docker alias for podman")
@@ -727,7 +727,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
(url "https://github.com/containers/podman")
(commit (string-append "v" version))))
(sha256
(base32 "12bmzbfyjsf0mwnam38cw9ib54wj1znh5b7lxzdyll9cvvkhqisr"))
(base32 "1wdsdc0nj4m1v8mn95dhavi87ad0adqmld70da59gvp2abff5f0f"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View File

@@ -1,226 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages coreboot)
#:use-module (gnu packages bison)
#:use-module (gnu packages compression)
#:use-module (gnu packages flex)
#:use-module (gnu packages pciutils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-26))
(define %coreboot-version "26.03")
(define %coreboot-origin
(origin
(method git-fetch)
(uri (git-reference
(url "https://review.coreboot.org/coreboot")
(commit %coreboot-version)))
(file-name (git-file-name "coreboot" %coreboot-version))
(sha256
(base32
"0436rr0vibh35phvkxrc939njvrmnfq9xw87y1b0nlllglvq07kk"))))
(define-public bincfg
(package
(name "bincfg")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no test suite
#:make-flags
#~(list
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'unpack 'chdir
(lambda _
(chdir "util/bincfg")))
(add-after 'build 'build-binaries
(lambda* (#:key make-flags #:allow-other-keys)
(for-each
(lambda (target result)
(apply invoke "make" (string-append "gen-" target) make-flags)
(rename-file result
(string-append target ".bin")))
(list
;; generate GbE for X200
"gbe-ich9m"
;; generate GbE for X220/x230
"gbe-82579LM"
;; generate IFD for X200
"ifd-x200")
(list
"flashregion_3_gbe.bin"
"flashregion_3_gbe.bin"
"flashregion_0_fd.bin"))))
;; The Makefile has no install target.
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(lib (string-append #$output "/lib/bincfg"))
(data (string-append #$output "/share/bincfg")))
;; Install the program
(install-file "bincfg" bin)
;; And its data
(for-each
(lambda (path)
(install-file path data))
(append (find-files "." ".*\\.set")
(find-files "." ".*\\.spec")))
;; And the files generated with the data
(for-each
(lambda (path)
(install-file path lib))
(find-files "." ".*\\.bin"))))))))
(native-inputs (list bison flex))
(home-page "https://coreboot.org")
(synopsis "Encoder/decoder for binary formats described in text files")
(description "
The bincfg program comes with specifications files for the following binary
formats:
@itemize
@item Various DDR3 and DDR4 SPD
@item Configuration data for the Intel 82579LM Gigabit Ethernet PHY
@item Configuration data for the Intel Gigabit Ethernet controller present in
the Intel ICH9-M chipset.
@item Intel Firmware Descriptor data for the Lenovo ThinkPad X200
@item Configuration data for the ITE IT8718F SuperIO
@end itemize
It also comes with example files generated by bincfg.")
(license license:gpl3+)))
(define-public ifdtool
(package
(name "ifdtool")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/ifdtool")))
(delete 'configure)) ; no configure script
#:tests? #f)) ; no test suite
(home-page "https://doc.coreboot.org/util/ifdtool/")
(synopsis "Intel Firmware Descriptor dumper")
(description "This package provides @command{ifdtool}, a program to
dump Intel Firmware Descriptor data of an image file.")
(license license:gpl2)))
(define-public intelmetool
(package
(name "intelmetool")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/intelmetool")))
(delete 'configure) ;no configure script
(delete 'check))))
(inputs (list pciutils zlib))
(home-page
"https://github.com/coreboot/coreboot/tree/main/util/intelmetool/")
(synopsis "Intel Management Engine tools")
(description "This package provides tools for working with Intel
Management Engine (ME). You need to @code{sudo rmmod mei_me} and
@code{sudo rmmod mei} before using this tool. Also pass
@code{iomem=relaxed} to the Linux kernel command line.")
(license license:gpl2)
;; This is obviously an Intel thing, plus it requires <cpuid.h>.
(supported-systems '("x86_64-linux" "i686-linux"))))
(define-public nvramtool
(package
(name "nvramtool")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no test suite
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/nvramtool")))
(delete 'configure)))) ; no configure script
(home-page "https://coreboot.org")
(synopsis "Command line tool that can edit Coreboot settings")
(description "@command{nvramtool} can see and/or modify Coreboot settings
like the serial port speed, log level, etc. It requires Coreboot to be compiled
with CONFIG_USE_OPTION_TABLE and some options require the iomem=relaxed kernel
command line to work. Features:
@itemize
@item If Coreboot was compiled without CONFIG_STATIC_OPTION_TABLE, it can change
its settings, which are applied after a reboot.
@item It can modify Coreboot images default settings with
@command{nvramtool -C coreboot.rom [...]}.
@item It has various options related to the file format used to store these
settings.
@item It can also read/write the CMOS memory where the Coreboot settings can be
located.
@end itemize")
;; Some files are "GPL-2.0-only or BSD-3-Clause", other are GPL-2.0-only
;; and anyway there is. There is also a license declaration in
;; cli/nvramtool.8 that applies to "This program" which uses the GPLv2.
(license license:gpl2)))

View File

@@ -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>
@@ -78,6 +78,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system scons)
#:use-module (guix modules)
@@ -1903,7 +1904,8 @@ using the string similarity calculations from FuzzyWuzzy.")
(add-after 'unpack 'fix-pytest-config
(lambda _
(substitute* "pyproject.toml"
(("\"pytest-cov\", ") "")))))))
((" \"pytest-cov\", ") "")
((" --cov-fail-under=90 --cov=cpplint") "")))))))
(native-inputs
(list python-pytest
python-pytest-timeout
@@ -3358,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
@@ -3367,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
@@ -3606,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
@@ -3615,7 +3617,7 @@ std::wstring, etc).")
(file-name (git-file-name name version))
(sha256
(base32
"1l13nsl4sgq71m7aifrmmmfyl14vp48vqdh7pb50hxqq6f8bq2b5"))))
"19x1yklf641yrpad6lk4cq3jmird10d5ig8hicm3p9lxh92k78cl"))))
(build-system cmake-build-system)
(arguments
(list
@@ -3626,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++")

View File

@@ -105,6 +105,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
@@ -275,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

View File

@@ -62,6 +62,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix download)
#:use-module (guix git-download)

View File

@@ -31,6 +31,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages databases)
#:use-module (gnu packages check)
#:use-module (gnu packages cpp)

View File

@@ -69,8 +69,6 @@
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
;;; 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>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -127,7 +125,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)
@@ -200,10 +197,10 @@
#: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)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system ruby)
#:use-module (guix build-system cmake)
@@ -1255,98 +1252,6 @@ management system that supports the standardized Structured Query
Language.")
(license license:gpl2)))
(define-public mysql-connector-python
(package
(name "mysql-connector-python")
(version "8.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mysql/mysql-connector-python")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "18jvpnnwmfrn961rvqmsygp7dw3spf3swhxhal4hhj5hqddckj5f"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 1371 passed
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'compatibility
(lambda _
(substitute* "src/mysql_capi.c"
(("res = mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
"res = 0;")
(("mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
"")
(("mysql_options\\(&self->session, MYSQL_OPT_TLS_CIPHERSUITES.*")
"")
;; The C API does not have mysql_bind_param, so we produce an
;; error here.
(("status = mysql_bind_param.*") "status = 1;")
(("#include \"mysql_capi_conversion\\.h\"" all)
(string-append all "\n" "#include <stdbool.h>")))))
(add-after 'unpack 'chdir
(lambda _
(chdir "mysql-connector-python")))
(add-before 'build 'prepare-build
(lambda _
(setenv "MYSQL_CAPI" #$(this-package-input "mysql"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Some of these tests might be failing due to the build
;; container's restrictions, others are due to the version
;; mismatch.
(substitute* "tests/cext/test_cext_api.py"
(("def test_change_user") "def _do_not_test_change_user")
(("def test_get_character_set_info")
"def _do_not_test_get_character_set_info"))
(substitute* "tests/test_bugs.py"
(("def test_change_user") "def _do_not_test_change_user")
(("def test_lost_connection") "def _do_not_test_lost_connection")
(("def test_kill_query") "def _do_not_test_kill_query")
;; These all fail because of expired certificates.
(("def test_cext_verify_server_certificate")
"def _do_not_test_cext_verify_server_certificate")
(("def test_pure_verify_server_certificate")
"def _do_not_test_pure_verify_server_certificate")
(("def test_verify_server_name_cext_cnx")
"def _do_not_test_verify_server_name_cext_cnx")
(("def test_verify_server_name_pure_cnx")
"def _do_not_test_verify_server_name_pure_cnx"))
(substitute* '("tests/test_connection.py"
"tests/test_aio_connection.py")
(("def test_allow_local_infile_in_path")
"def _do_not_test_allow_local_infile_in_path")
;; This fails because of expired certificates.
(("def test_connect_with_unix_socket")
"def _do_not_test_connect_with_unix_socket"))
(substitute* "tests/test_constants.py"
(("def test_deprecated")
"def _do_not_test_deprecated"))
(mkdir-p "/tmp/datadir")
(invoke "python3" "unittests.py"
"--verbosity=3"
(string-append "--with-mysql=" #$(this-package-input "mysql"))
"--keep"
"--mysql-topdir=/tmp/datadir"
"--unix-socket=/tmp/datadir")))))))
(propagated-inputs (list python-protobuf))
(inputs (list mysql protobuf-3.20 openssl-1.1 zlib))
(native-inputs (list python-setuptools))
(home-page "https://dev.mysql.com/doc/connector-python/en/index.html")
(synopsis "MySQL driver written in Python")
(description "MySQL Connector/Python enables Python programs to access
MySQL databases, using an API that is compliant with the Python Database API
Specification v2.0 (PEP 249).")
(license license:gpl2)))
(define-deprecated-package python-mysql-connector-python
mysql-connector-python)
(define-public mariadb
(package
(name "mariadb")
@@ -3191,64 +3096,6 @@ Driver.")
;; COPYING contains copy of lgpl2.1 - but copyright notices just say "LGPL"
(home-page "https://www.unixodbc.org")))
(define-public sqliteodbc
(package
(name "sqliteodbc")
(version "0.99991")
(source (origin
(method url-fetch)
(uri (string-append "http://www.ch-werner.de/sqliteodbc/"
name "-" version ".tar.gz"))
(sha256
(base32
"0p4avhqxnd2l49g3vpzwrmdi8wxyqzy0vswalaagmqfdsfwav52d"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no check target
#:configure-flags
#~(list "--disable-static"
(string-append "--with-sqlite3=" #$(this-package-input "sqlite"))
(string-append "--with-odbc=" #$(this-package-input "unixodbc")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'create-lib-directory
(lambda _
(mkdir-p (string-append #$output "/lib"))))
(add-after 'install 'remove-extra-sqlite-extensions
(lambda _
;; Keep this package focused on the ODBC driver itself.
(for-each delete-file
(find-files (string-append #$output "/lib")
"^libsqlite3_mod_.*\\.(la|so)$"))))
(add-after 'install 'install-odbcinst.ini
(lambda _
(let ((dir (string-append #$output "/share/sqliteodbc")))
(mkdir-p dir)
(call-with-output-file (string-append dir "/odbcinst.ini")
(lambda (port)
(display
(string-append
"[SQLite3]\n"
"Description = SQLite3 ODBC Driver\n"
"Driver = " #$output "/lib/libsqlite3odbc.so\n"
"Setup = " #$output "/lib/libsqlite3odbc.so\n"
"Threading = 2\n")
port)))))))))
(native-search-paths
(list (search-path-specification
(variable "ODBCSYSINI")
(files '("share/sqliteodbc"))
(separator #f))))
(inputs (list sqlite unixodbc))
(home-page "http://www.ch-werner.de/sqliteodbc/")
(synopsis "ODBC driver for SQLite")
(description
"SQLiteODBC provides an ODBC driver for SQLite 3 databases. It installs
the shared library and a driver registration file so applications using
unixODBC can resolve the @code{SQLite3} driver name from a Guix profile.")
(license license:tcl/tk)))
(define-public nanodbc
(package
(name "nanodbc")
@@ -4806,24 +4653,33 @@ PickleShare.")
(define-public python-apsw
(package
(name "python-apsw")
(version "3.50.4.0")
(version "3.46.0.0")
;; The compressed release has fetching functionality disabled.
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rogerbinns/apsw")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"https://github.com/rogerbinns/apsw/releases/download/"
version "/apsw-" version ".zip"))
(sha256
(base32 "0r9awjgpl9cmqz5xd4zbqrpiv0rv5c36a18jkqnsfky6n6sgr424"))))
(base32
"10yfbasi4mq63g0svyl1h49ylwn9znjylq78id16dzxzk9q9ipdx"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'custom
#:test-flags #~(list "-m" "apsw.tests")))
(native-inputs
(list python-setuptools))
(inputs
(list sqlite-next)) ;SQLite 3.45.1 required.
(list unzip python-setuptools python-wheel))
(inputs (list sqlite-next)) ;SQLite 3.45.1 required.
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'build-extensions
(lambda _
(invoke "python" "setup.py" "build" "--enable-all-extensions"
"--enable=load_extension")))
(add-after 'build 'build-test-helper
(lambda _
(invoke "gcc" "-fPIC" "-shared" "-o" "./testextension.sqlext"
"-I." "-Isqlite3" "src/testextension.c"))))))
(home-page "https://github.com/rogerbinns/apsw/")
(synopsis "Another Python SQLite Wrapper")
(description
@@ -5131,54 +4987,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")
@@ -5800,6 +5608,7 @@ __version_tuple__ = version_tuple = (~a)~%" version version-tuple))))))
pkg-config
python-cython
python-pytest
python-pytest-runner
python-setuptools-scm
python-setuptools))
(outputs '("out"))
@@ -6396,7 +6205,7 @@ mechanism of @code{dogpile}.")
(define-public datasette
(package
(name "datasette")
(version "1.0a26")
(version "1.0a19")
(source
(origin
(method git-fetch)
@@ -6405,20 +6214,23 @@ mechanism of @code{dogpile}.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ra0yfrz9w3jx7ix3dmcsg0g8hjxkz37586g7ijmqshxpzczxfm7"))))
(base32 "0wb73iksrc5vg2lnq3q4vr7yhlzxwr711jfmjdndd0s77996zsfh"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 1720 passed, 9 skipped, 8 xfailed, 13 xpassed, 3 warnings, 120
;; subtests passed
#:test-flags
#~(list "--numprocesses" (number->string (min 8 (parallel-job-count)))
"--ignore=tests/test_black.py")
;; See https://github.com/simonw/datasette/issues/2048
#~(list "-k" (string-append
;; These contain two unexpected extra items.
"not test_searchable"
" and not test_searchmode")
"--ignore=tests/test_black.py"
"-n" (number->string (parallel-job-count)))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "pyproject.toml"
(substitute* "setup.py"
(("\"pip\",") "")))))))
(propagated-inputs
(list python-aiofiles
@@ -6433,6 +6245,7 @@ mechanism of @code{dogpile}.")
python-janus
python-jinja2
python-mergedeep
python-pint
python-pluggy
python-pyyaml
python-sqlite-utils
@@ -6441,9 +6254,9 @@ mechanism of @code{dogpile}.")
(list nss-certs-for-test
python-beautifulsoup4
python-cogapp
python-multipart-form-data-conformance
python-pytest
python-pytest-asyncio
python-pytest-asyncio-0.26
python-pytest-runner
python-pytest-timeout
python-pytest-xdist
python-setuptools

View File

@@ -27,6 +27,7 @@
(define-module (gnu packages dav)
#:use-module (guix build-system cargo)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -142,6 +143,9 @@ CardDAV server with a local folder or file.")
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
python-pytest-cov
python-pytest-flake8
python-pytest-isort
python-setuptools
python-waitress
python-wheel))
@@ -240,6 +244,7 @@ efficient syncing
(list python-aioresponses
python-pytest
python-pytest-asyncio
python-pytest-cov
python-pytest-httpserver
python-setuptools
python-setuptools-scm

View File

@@ -20,6 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages debian)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (guix build-system trivial)
#:use-module (gnu packages adns)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
@@ -28,7 +40,6 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
#:use-module (gnu packages dns)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages guile)
@@ -42,17 +53,6 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages wget)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (guix build-system trivial)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))

View File

@@ -275,7 +275,7 @@ simple way to add custom protocol messages.")
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(native-inputs
(list flex python-pytest))
(list flex python-pytest python-pytest-flake8))
(inputs
(list bash-minimal clang llvm unifdef
python python-pebble python-psutil python-chardet))
@@ -1213,7 +1213,7 @@ and input distributions can also be expressed in Fandango.")
;; Shorten paths to sockets in tests.
(lambda _ (setenv "TMPDIR" "/tmp"))))
#:test-target "test"))
(native-inputs (list python python-setuptools)) ; for tests
(native-inputs (list python)) ; for tests
(synopsis "Fault injector in userspace")
(description "Fiu provides CLI utilities and a C library
to mark points of failure inside your code

View File

@@ -41,6 +41,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)

View File

@@ -67,6 +67,7 @@
#:use-module (gnu packages vim)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -289,6 +290,14 @@ install.")
(for-each (lambda (file)
(chmod file #o755))
(find-files #$output "autopkgtest-virt-.*"))))
;; Adjust use of importlib.resources to use python 3.10 compatible
;; syntax, which requires an argument.
;; Drop when switching to python 3.12+.
(add-after 'unpack 'adjust-importlib-resources-for-old-python
(lambda _
(substitute* "reprotest/__init__.py"
(("importlib.resources.files\\(\\)")
"importlib.resources.files(package='reprotest')"))))
(add-after 'unpack 'skip-most-tests
;; These tests require functionality not available in the guix
;; build environment

View File

@@ -27,6 +27,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (guix utils)
#:use-module (gnu packages check)

View File

@@ -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>
@@ -59,6 +59,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system scons)
#:use-module (guix build-system trivial)
@@ -93,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)
@@ -421,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")

View File

@@ -37,6 +37,7 @@
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix deprecation)
#:use-module (guix search-paths)
#:use-module (guix utils)
@@ -200,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
@@ -328,7 +329,7 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
(base32 "1a5vd07wrnfbclvf6pz9p8ag9kdd1453lsl9q0bkyc45hq2xqd2a"))))
(build-system pyproject-build-system)
(native-inputs
(list python-django python-pytest python-setuptools))
(list python-django python-pytest python-pytest-cov python-setuptools))
(home-page "https://github.com/epicserve/django-cache-url")
(synopsis "Configure Django cache settings from URLs")
(description
@@ -419,6 +420,7 @@ and adapters that are useful for non-trivial configuration scenarios.")
python-factory-boy
python-pygments
python-pytest
python-pytest-cov ; runs by default
python-pytest-django
python-setuptools
python-shortuuid
@@ -1327,6 +1329,7 @@ server headers required for Cross-Origin Resource Sharing (CORS).")
python-mock
python-msgpack
python-pytest
python-pytest-cov
python-pytest-django
python-pytest-mock
python-setuptools
@@ -2183,6 +2186,7 @@ templates and not in python-level form definitions.")
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
python-pytest-cov ; runs by default
python-pytest-django
python-setuptools
python-wheel))

View File

@@ -29,6 +29,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)

View File

@@ -108,7 +108,9 @@
(lambda _
(invoke "cmake" "--install" "."))))))
(inputs
`(("zlib" ,zlib)))
`(("libconfig" ,libconfig)
("libedit" ,libedit)
("zlib" ,zlib)))
(native-inputs
`(("lld-wrapper" ,(make-lld-wrapper lld-17 #:lld-as-ld? #t))
("llvm" ,llvm-17)

View File

@@ -1,13 +1,12 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015-2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2019-2021 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com>
@@ -22,11 +21,9 @@
;;; Copyright © 2021, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2024, 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -49,12 +46,12 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages freedesktop)
@@ -68,7 +65,6 @@
#:use-module (gnu packages libidn)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages m4)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
@@ -77,8 +73,6 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages ragel)
#:use-module (gnu packages serialization)
@@ -90,175 +84,17 @@
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
#:use-module (guix utils))
(define-public adns
(package
(name "adns")
(version "1.6.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "git://git.chiark.greenend.org.uk/~ianmdlvl/adns.git")
(commit (string-append "adns-" version))))
(sha256
(base32
"0ln3l5j7wb1xazrzl76p9xar52p6l2k1cwy7jazxw1acl71k9h5n"))))
(build-system gnu-build-system)
(arguments
(list
;; INFO: Tests expect real name resolution to work.
#:tests? #f
#:configure-flags
#~(list
;; Make sure the programs under bin/ find libadns.so.
(string-append "LDFLAGS=-Wl,-rpath -Wl,"
#$output:out
"/lib"))))
(native-inputs
(list m4))
(home-page "https://www.gnu.org/software/adns/")
(synopsis "Asynchronous DNS client library and utilities")
(description
"GNU adns is a C library that provides easy-to-use @acronym{DNS, Domain
Name System} resolution functionality. The library is asynchronous, allowing
several concurrent calls. The package also includes several command-line
utilities for use in scripts.")
(license license:gpl3+)))
(define-public c-ares
(package
(name "c-ares")
(version "1.34.4")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/c-ares/c-ares/releases/download/v"
version "/" name "-" version ".tar.gz"))
(sha256
(base32
"0br2msk3bpl5myhjp9vr5j2scpspvbg2fpnz69dcrr4ycpnxnf7s"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'filter-live-tests
(lambda _
;; Filter tests that require internet access.
(setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))
#$@(if (system-hurd?)
#~((add-after 'unpack 'skip-tests
(lambda _
(substitute* "test/ares-test-main.cc"
(("(^| )main *\\(.*" all)
(string-append all " exit (77);\n")))))
(add-after 'filter-live-tests 'filter-hurd-tests
(lambda _
(setenv "GTEST_FILTER"
(string-append
(getenv "GTEST_FILTER")
":.*Basic/2"
":.*CancelImmediate/2"
":.*CancelImmediateGetHostByAddr/2"
":.*CancelLater/1"
":.*FamilyUnspecified/2"
":.*FamilyV6/2"
":.*GetAddrInfoParallelLookups/1"
":.*GetHostByAddrDestroy/2"
":.*GetHostByNameCNAMENoData/2"
":.*GetHostByNameDestroyAbsolute/2"
":.*GetHostByNameDestroyRelative/2"
":.*GetHostByNameParallelLookups/1"
":.*HostAlias/2"
":.*HostAliasMissing/2"
":.*HostAliasMissingFile/2"
":.*NotImplResponse/2"
":.*RefusedResponse/2"
":.*Resend/1"
":.*RetryWithoutEDNS/2"
":.*SearchDomains/2"
":.*SearchDomainsBare/2"
":.*SearchDomainsServFailOnAAAA/2"
":.*SearchDomainsWithResentReply/1"
":.*SearchHighNdots/2"
":.*SearchNoDataThenFail/2"
":.*SearchNoDataThenNoDataBare/2"
":.*SearchNoDataThenSuccess/2"
":.*ServFailResponse/2"
":.*SimpleQuery/2"
":.*SockCallback/2"
":.*SockConfigureCallback/2"
":.*SortListV4/2"
":.*SortListV6/2"
":.*ThirdServer/2"
":.*TruncationRetry/1"
":.*UnspecifiedFamilyCname6A4/2"
":.*UnspecifiedFamilyV4/2"
":.*UnspecifiedFamilyV6/2")))))
#~()))))
(native-inputs
(list pkg-config))
(home-page "https://c-ares.haxx.se/")
(synopsis "C library for asynchronous DNS requests")
(description
"C-ares is a C library that performs DNS requests and name resolution
asynchronously. It is intended for applications which need to perform DNS
queries without blocking, or need to perform multiple DNS queries in parallel.
The primary examples of such applications are servers which communicate with
multiple clients and programs with graphical user interfaces.")
(license (license:x11-style "https://c-ares.haxx.se/license.html"))))
(define-public c-ares-for-node-lts
(hidden-package c-ares))
(define-public c-ares-for-node-bootstrap
(hidden-package
(package
(inherit c-ares)
(version "1.18.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://c-ares.haxx.se/download/c-ares-" version
".tar.gz"))
(sha256
(base32
"1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))))))
;; INFO: gRPC requires a c-ares built with CMake in order to get the .cmake
;; modules. We can not build c-ares itself with CMake because that would
;; introduce a circular dependency through nghttp2.
;;
;; TODO: It would be nice if we could extract the modules somehow and make
;; them work with the "normal" c-ares package instead of building a whole new
;; library.
(define-public c-ares/cmake
(hidden-package
(package
(inherit c-ares)
(build-system cmake-build-system)
(arguments
(list
;; INFO: Tests require name resolution (the normal variant runs no
;; tests).
#:tests? #f)))))
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson))
(define-public cloudflare-cli
(let ((commit "2d986d3ec1b0e3158c4bd40e8918947cb74aa392")
@@ -307,58 +143,6 @@ protocol.")
(home-page "https://github.com/earlchew/cloudflare-cli")
(license license:expat))))
(define-public ddclient
(package
(name "ddclient")
(version "4.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ddclient/ddclient")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sz4f7qx4yjg6q6ybhzilb7f0kshz46c54y3i4hq2nww2bhkc8a4"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'bootstrap 'patch-ddclient.in-shebang
(lambda _
;; This is run in the bootstrap phase, so patch before
(patch-shebang "ddclient.in")))
(add-after 'install 'wrap-program
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/ddclient")
`("PERL5LIB" ":" prefix
,(map (lambda (input-name)
(string-append (assoc-ref inputs input-name)
"/lib/perl5/site_perl"))
'("perl-json")))))))))
(native-inputs
(list autoconf
automake
perl-http-daemon
perl-plack
perl-test-mockmodule
perl-test-tcp
perl-test-warnings))
(inputs
(list curl
perl
perl-json
bash-minimal))
(home-page "https://github.com/ddclient/ddclient")
(synopsis "Dynamic DNS update client")
(description
"ddclient is used to update dynamic DNS entries for accounts on many
dynamic DNS services. It supports a wide range of routers and protocols,
including Cloudflare, Namecheap, DynDNS, FreeDNS, Google Domains, and many
more.")
(license license:gpl2+)))
(define-public ldns
(package
(name "ldns")
@@ -554,39 +338,6 @@ and BOOTP/TFTP for network booting of diskless machines.")
;; Source files only say GPL2 and GPL3 are allowed.
(license (list license:gpl2 license:gpl3))))
(define-public dnsupdate
(package
(name "dnsupdate")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lopsided98/dnsupdate")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0bp6mm0yhg4hs698xdmvcfad4jqf5rgb1cab88pfzyx9w52x0ag6"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'unittest
#:test-flags #~'("discover" "-p" "*_test.py")))
(native-inputs
(list python-setuptools))
(propagated-inputs
(list python-beautifulsoup4
python-netifaces
python-pyyaml
python-requests))
(home-page "https://github.com/lopsided98/dnsupdate")
(synopsis "Modern and flexible dynamic DNS client")
(description
"Dnsupdate is a dynamic DNS client that provides support for multiple DNS
services, including Afraid.org FreeDNS, Cloudflare, IETF standard DNS
updates (nsupdate), and custom HTTP-based services. It uses YAML
configuration files and supports multiple address detection methods.")
(license license:gpl3+)))
;; 'bind' is the name of a built-in Guile procedure, which is why we choose a
;; different name here.
(define-public isc-bind

View File

@@ -53,6 +53,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (srfi srfi-26))
;; The fetch-plan, install-plan and phases for docbook-xml tend to vary
@@ -665,8 +666,7 @@ the in DocBook SGML DTDs.")
(base32
"0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n"))
(patches
(search-patches "dblatex-importlib.patch"
"dblatex-inkscape-1.0.patch"))))
(search-patches "dblatex-inkscape-1.0.patch"))))
(outputs '("out" "doc"))
(build-system pyproject-build-system)
(arguments

View File

@@ -39,6 +39,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix utils)
#:use-module (gnu packages autotools)

View File

@@ -41,6 +41,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix deprecation)
@@ -471,8 +472,9 @@ inspired by Dash.")
(build-system gnu-build-system)
(arguments
(list
;; Custom build steps to prevent using pyproject-build-system which
;; allows to edit the latter without a texlive + haskell world rebuild.
;; Essentially a lighter copy of the former python-build-system.
;; Using it rather than pyproject-build-system allows to edit the latter
;; without a texlive + haskell world rebuild.
#:phases
#~(modify-phases %standard-phases
(delete 'bootstrap)

View File

@@ -62,6 +62,7 @@
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (ice-9 match))
(define-public treecc

View File

@@ -25,6 +25,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cmake)
#:use-module (guix build-system pyproject)
#:use-module ((guix build-system python) #:select (pypi-uri))
#:use-module (guix build-system r)
#:use-module (guix download)
#:use-module (guix gexp)

View File

@@ -40,6 +40,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)

View File

@@ -91,6 +91,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (srfi srfi-1))

View File

@@ -64,6 +64,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix deprecation)
#:use-module (guix download)
@@ -479,10 +480,8 @@ individual low-level driver modules.")
(build-system gnu-build-system)
(arguments
(list
#:imported-modules %pyproject-build-system-modules
#:modules '((guix build gnu-build-system)
((guix build pyproject-build-system) #:prefix py:)
(guix build utils))
#:imported-modules (append %default-gnu-imported-modules
%python-build-system-modules)
#:make-flags
#~(list (string-append "PREFIX=" #$output))
#:phases
@@ -508,7 +507,8 @@ individual low-level driver modules.")
;; https://github.com/YosysHQ/eqy/actions/runs/18767539188/job/53545383858
(invoke "make" "-C" "examples/spm")
(invoke "make" "-C" "examples/simple"))))
(add-after 'install 'python:wrap py:wrap))))
(add-after 'install 'python:wrap
(@@ (guix build python-build-system) wrap)))))
(native-inputs
(list clang python-minimal-wrapper python-sphinx texinfo yosys))
(inputs
@@ -1069,7 +1069,7 @@ characterization result in a liberty library file.")
(define-public kicad
(package
(name "kicad")
(version "10.0.1")
(version "10.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1077,7 +1077,7 @@ characterization result in a liberty library file.")
(commit version)))
(sha256
(base32
"1mnlv8fyz03pfg8pkqwdl5gjz6vsk98c6414lf3wkvrkb85ljaav"))
"1470x1276yvd8li3w25zjg73fkpl2qp4dsx7adanafq5c4l47rmc"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@@ -1185,9 +1185,7 @@ characterization result in a liberty library file.")
"Kicad is a program for the formation of printed circuit
boards and electrical circuits. The software has a number of programs that
perform specific functions, for example, pcbnew (Editing PCB), eeschema (editing
electrical diagrams), gerbview (viewing Gerber files) and others. To use
SQLite-backed database libraries, install the optional @code{sqliteodbc}
package.")
electrical diagrams), gerbview (viewing Gerber files) and others.")
(license license:gpl3+)))
(define-public kicad-doc
@@ -1202,7 +1200,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"1c0vn13rp0z12rlqhl321pk2gj9577dyky6xj3i6hb040i3v7zrr"))))
"1k0ayxsy0nnv9qxkii9yrxs7jx9y3wfjpsv5yl9wql3vdg3qay69"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html"
@@ -1234,7 +1232,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"0iz4lb33wdsw4f82a0ln8ycgaf39gjws03mvl2j1q9npwj6xl1cm"))))
"0khfnln0f2zsz5hy31nw2rr0nflb2z3s9n9f7g41g03m9l3s43v2"))))
(build-system cmake-build-system)
(native-inputs (list python-wrapper))
(arguments
@@ -1264,7 +1262,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0jqgyi1yb2zc6w56ba7xama0wnhrqwbbnf2fqvr47xihvdcvs87v"))))
"0ymmd1rzrczpvcqzw1mld9x8xhbka0vvjy3kdqwysg4ri97f5wrm"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@@ -1281,7 +1279,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0jr70ry6inzc2fy3s300z0zlmihbq95ba1zckyd1wwbpplaj1gbl"))))
"0k91iw661fpzb7saryjxdcdvk1kis7dhbcpzp7xzjk84i4jvxrp5"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
@@ -2074,10 +2072,7 @@ versus schematic} tests and can assist with automatic routing.")
(list
#:tests? #f ;there are no tests
#:imported-modules (append %qt-build-system-modules
%pyproject-build-system-modules)
#:modules '((guix build qt-build-system)
((guix build pyproject-build-system) #:prefix py:)
(guix build utils))
%python-build-system-modules)
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'build-info-documentation
@@ -2105,7 +2100,8 @@ versus schematic} tests and can assist with automatic routing.")
(chmod bin_ #o755)))
(install-it "mcy")
(install-it "mcy-dash")))
(add-after 'make-install 'python:wrap py:wrap))))
(add-after 'make-install 'python:wrap
(@@ (guix build python-build-system) wrap)))))
(native-inputs
(list pkg-config
python-sphinx
@@ -3012,6 +3008,7 @@ Numpy arrays for convenience.")
(setenv "PDM_BUILD_SCM_VERSION" #$version))))))
(native-inputs
(list python-pdm-backend
python-pytest-cov
python-setuptools
python-setuptools-scm
sby
@@ -3324,7 +3321,9 @@ Standard} data mode.")
(base32 "15nnydvr1a4ykh8cagi484sfgvdg0dnjxaw6c0ivhjbrbblpaqnw"))))
(build-system pyproject-build-system)
(native-inputs
(list python-setuptools python-setuptools-scm))
(list python-pytest-cov
python-setuptools
python-setuptools-scm))
(home-page "http://pyvcd.readthedocs.io/")
(synopsis "Library to manipulate digital wave files")
(description
@@ -3601,7 +3600,10 @@ Automation}.")
#$output "/share/info/hdlmake-figures")))))
#:test-flags #~(list "test_all.py")))
(native-inputs
(list python-setuptools python-sphinx texinfo))
(list python-pytest-cov
python-setuptools
python-sphinx
texinfo))
(propagated-inputs (list python-networkx))
(home-page "https://ohwr.gitlab.io/project/hdl-make/")
(synopsis "Generate multi-purpose makefiles for HDL projects")
@@ -3764,9 +3766,18 @@ design.")
;; Tests are expensive and may introduce race condition on systems with
;; high (more than 16) threads count; limit parallel jobs to 8x.
#~(list
"--numprocesses" (number->string (min 8 (parallel-job-count))))))
"--numprocesses" (number->string (min 8 (parallel-job-count))))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'pathch-pytest-options
(lambda _
(substitute* "pyproject.toml"
((".*--cov=.*") "")
((".*--self-contained-html.*") "")
((".*-n.*auto.*") "")))))))
(native-inputs
(list python-pytest
(list python-pytest-cov
python-pytest-html
python-pytest-xdist
python-setuptools))
(propagated-inputs
@@ -3781,7 +3792,7 @@ to enforce it.")
(define-public python-vunit
(package
(name "python-vunit")
(version "5.0.0-dev.10") ;v4.7.0 dates back from 2 years ago.
(version "5.0.0-dev.9") ;v4.7.0 dates back from 2 years ago.
(source
(origin
(method git-fetch)
@@ -3790,7 +3801,7 @@ to enforce it.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gr9ghwgqly9zf0sf15ai20sac520rs84b9i5qjxdqpj26ayyl1q"))))
(base32 "1j9rvlshzi4mdy7wah1j8ri63drkjb47xly22q40wvl2xp2ghqgs"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -4235,10 +4246,11 @@ them usable as simple logic analyzer and/or oscilloscope hardware.")
(list
#:parallel-tests? #f
#:test-target "test"
#:imported-modules %pyproject-build-system-modules
#:modules `((guix build gnu-build-system)
((guix build pyproject-build-system) #:prefix python:)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:imported-modules `(,@%default-gnu-imported-modules
(guix build python-build-system))
#:make-flags #~(list (string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases

View File

@@ -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

View File

@@ -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

View File

@@ -164,8 +164,7 @@ Mix.CLI.main()"
'("ERL_LIBS" prefix ("${GUIX_ELIXIR_LIBS}"))))
programs))))))))
(outputs '("out" "src"))
(inputs (list bash-minimal erlang rebar3))
(native-inputs (list git-minimal))
(inputs (list bash-minimal erlang rebar3 git))
(native-search-paths
(list (search-path-specification
(variable "GUIX_ELIXIR_LIBS")

File diff suppressed because it is too large Load Diff

View File

@@ -45,6 +45,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module ((guix build utils) #:select (alist-replace delete-file-recursively))
#:use-module (gnu packages)
@@ -1901,7 +1902,7 @@ PicoBlaze; and Zilog Z80 families, plus many of their variants.")
(inputs
(list readline ucsim))
(native-inputs
(list bison boost flex python-minimal-wrapper texinfo zlib))
(list bison boost flex python-2 texinfo zlib))
(home-page "https://sdcc.sourceforge.net/")
(synopsis "C compiler suite for 8-bit microcontrollers")
(description "SDCC is a retargetable, optimizing Standard C compiler suite
@@ -2032,7 +2033,13 @@ whereas kdmx creates pseudo-ttys.")
;; tests: 631 passed, 27 skipped, 1 warning
#:test-flags
;; E ModuleNotFoundError: No module named 'mbed_tools_ci_scripts'
#~(list "--ignore=tests/ci_scripts/test_sync_board_db.py")))
#~(list "--ignore=tests/ci_scripts/test_sync_board_db.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-pytest-config
(lambda _
(substitute* "pytest.ini"
(("addopts = .*") "")))))))
(native-inputs
(list python-factory-boy
python-pytest

View File

@@ -140,6 +140,7 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial))
@@ -3451,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)
@@ -3460,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
@@ -3603,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

View File

@@ -41,6 +41,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix licenses)
#:use-module (srfi srfi-1))

View File

@@ -77,6 +77,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -1827,6 +1828,7 @@ it suitable for security research and analysis.")
(native-inputs (list python-gitpython
python-pytest
python-pytest-asyncio
python-pytest-cov
python-pytest-mock
python-setuptools))
(inputs (list bash-minimal
@@ -2365,6 +2367,7 @@ Newton-Raphson power flow solvers in the C++ library lightsim2grid, and the
python-networkx
python-openpyxl
python-pytest
python-pytest-cov ; --cov runs by default on skrf
python-pytest-mock
python-pyvisa
python-setuptools
@@ -2727,7 +2730,7 @@ dynamics is used by FreeCAD 1.0.0 for its new Assembly workbench.")
(define-public freecad
(package
(name "freecad")
(version "1.1.1")
(version "1.1.0")
(source
(origin
(method git-fetch)
@@ -2737,7 +2740,7 @@ dynamics is used by FreeCAD 1.0.0 for its new Assembly workbench.")
(recursive? #t))) ;needed for the AddonManager
(file-name (git-file-name name version))
(sha256
(base32 "05dx7ifx33705mxb0vc82j0mzzkazakgadfgq5bws30qrxp49xgg"))
(base32 "029ndw1dypx0xhs4fyiinf7gpk8am0vm9b24idvdsx9x7ghrqz4j"))
(snippet
#~(begin
(use-modules (guix build utils))
@@ -2898,22 +2901,20 @@ interpolation toolkit.")
(define-public python-motulator
(package
(name "python-motulator")
(version "0.6.2")
(version "0.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Aalto-Electric-Drives/motulator/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (pypi-uri "motulator" version))
(sha256
(base32 "1di2r1i19jl751v0hj426zkwk48w5yf8zpw2bl6qzk0vq4z2vpbw"))))
(base32 "1kh13zfa4w73q04pny2w2zgym47fp8xy7glwfx82fdx4fihk7dv7"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f)) ; there are no tests
(propagated-inputs
(list python-numpy python-matplotlib python-scipy python-tqdm))
(native-inputs (list python-hatchling))
(propagated-inputs (list python-matplotlib python-numpy python-scipy))
(native-inputs (list python-hatchling
python-ipykernel
python-toml))
(home-page "https://aalto-electric-drives.github.io/motulator/")
(synopsis "Motor Drive Simulator in Python")
(description "This package includes simulation models for an induction

View File

@@ -30,6 +30,7 @@
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)

View File

@@ -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

View File

@@ -220,7 +220,6 @@ testing InfiniBand networks.")
"--disable-assertions"
"--disable-params-check"
"--enable-mt"
(string-append "--with-verbs="
#$(this-package-input "rdma-core"))

View File

@@ -148,11 +148,6 @@ client.")
(list (search-path-specification
(variable "FCITX_ADDON_DIRS")
(files '("lib/fcitx5")))
(search-path-specification
(variable "GUIX_GTK2_IM_MODULE_FILE")
(file-type 'regular)
(separator #f)
(files '("lib/gtk-2.0/2.10.0/immodules-gtk2.cache")))
(search-path-specification
(variable "GUIX_GTK3_IM_MODULE_FILE")
(file-type 'regular)

View File

@@ -29,6 +29,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (gnu packages)
@@ -244,6 +245,7 @@ seamlessly with your desktop environment.")
(native-inputs
(list nss-certs-for-test
python-pytest
python-pytest-cov
python-pytest-mock
python-pytest-recording
python-pytest-retry

View File

@@ -50,6 +50,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system linux-module)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (guix utils)

View File

@@ -70,6 +70,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system emacs)
#:use-module (guix build-system haskell)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system go)
@@ -164,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
@@ -172,7 +173,7 @@
version "/bitcoin-" version ".tar.gz"))
(sha256
(base32
"1qxkcyq8nwq6sw4qi660z8n8356mqdsf4jvpq5ndkvrsx9gfz80b"))))
"1jw4djh22v0nih0n7irdbknfbqavlc4l3b8176b5qgc88a60pl3g"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -196,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))
@@ -1620,7 +1623,10 @@ features:
(sha256
(base32 "0yir8hka3vmpk0qhiaffagkdjg3mjgai808s0razsggbd5cn80bb"))))
(build-system pyproject-build-system)
(native-inputs (list python-pytest python-setuptools))
(native-inputs
(list python-pytest
python-pytest-cov
python-setuptools))
(home-page "https://arthurdejong.org/python-stdnum/")
(synopsis "Python module to handle standardized number and code formats")
(description
@@ -2503,6 +2509,10 @@ analysis of financial market data.")
(base32 "13g5338aa8vgkx8g94vz5d8ynfq3jndvyh1nz6dlhw4axwr4x8dp"))))
(properties '(("upstream-name" #{.}# "mt-940")))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "-c" "/dev/null"))) ; Remove custom --cov flags.
(native-inputs (list python-pytest python-pyyaml python-setuptools))
(home-page "https://mt940.readthedocs.io/")
(synopsis "Python parser for MT940-encoded SWIFT data")

View File

@@ -47,6 +47,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)

View File

@@ -2,7 +2,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2016, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2018, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
@@ -49,6 +49,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -83,6 +84,7 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages mtools)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -522,6 +524,162 @@ Loke and Heimdall communicate via the custom Samsung-developed protocol typicall
referred to as the \"Odin 3 protocol\".")
(license license:expat)))
(define-public ifdtool
(package
(name "ifdtool")
(version "25.09")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://review.coreboot.org/coreboot")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1a1n64dwr5fzdnaj45bjci85ap5yra5gwz4x056zn6481xwvbsmv"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/ifdtool")))
(delete 'configure)) ; no configure script
#:tests? #f)) ; no test suite
(home-page "https://doc.coreboot.org/util/ifdtool/")
(synopsis "Intel Firmware Descriptor dumper")
(description "This package provides @command{ifdtool}, a program to
dump Intel Firmware Descriptor data of an image file.")
(license license:gpl2)))
(define-public bincfg
(package
(name "bincfg")
(version "25.09")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://review.coreboot.org/coreboot")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1a1n64dwr5fzdnaj45bjci85ap5yra5gwz4x056zn6481xwvbsmv"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no test suite
#:make-flags
#~(list
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'unpack 'chdir
(lambda _
(chdir "util/bincfg")))
(add-after 'build 'build-binaries
(lambda* (#:key make-flags #:allow-other-keys)
(for-each
(lambda (target result)
(apply invoke "make" (string-append "gen-" target) make-flags)
(rename-file result
(string-append target ".bin")))
(list
;; generate GbE for X200
"gbe-ich9m"
;; generate GbE for X220/x230
"gbe-82579LM"
;; generate IFD for X200
"ifd-x200")
(list
"flashregion_3_gbe.bin"
"flashregion_3_gbe.bin"
"flashregion_0_fd.bin"))))
;; The Makefile has no install target.
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(lib (string-append #$output "/lib/bincfg"))
(data (string-append #$output "/share/bincfg")))
;; Install the program
(install-file "bincfg" bin)
;; And its data
(for-each
(lambda (path)
(install-file path data))
(append (find-files "." ".*\\.set")
(find-files "." ".*\\.spec")))
;; And the files generated with the data
(for-each
(lambda (path)
(install-file path lib))
(find-files "." ".*\\.bin"))))))))
(native-inputs (list bison flex))
(home-page "https://coreboot.org")
(synopsis "Encoder/decoder for binary formats described in text files")
(description "
The bincfg program comes with specifications files for the following binary
formats:
@itemize
@item Various DDR3 and DDR4 SPD
@item Configuration data for the Intel 82579LM Gigabit Ethernet PHY
@item Configuration data for the Intel Gigabit Ethernet controller present in
the Intel ICH9-M chipset.
@item Intel Firmware Descriptor data for the Lenovo ThinkPad X200
@item Configuration data for the ITE IT8718F SuperIO
@end itemize
It also comes with example files generated by bincfg.")
(license license:gpl3+)))
(define-public intelmetool
(package
(name "intelmetool")
(version "25.09")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://review.coreboot.org/coreboot")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1a1n64dwr5fzdnaj45bjci85ap5yra5gwz4x056zn6481xwvbsmv"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/intelmetool")))
(delete 'configure) ;no configure script
(delete 'check))))
(inputs (list pciutils zlib))
(home-page
"https://github.com/coreboot/coreboot/tree/main/util/intelmetool/")
(synopsis "Intel Management Engine tools")
(description "This package provides tools for working with Intel
Management Engine (ME). You need to @code{sudo rmmod mei_me} and
@code{sudo rmmod mei} before using this tool. Also pass
@code{iomem=relaxed} to the Linux kernel command line.")
(license license:gpl2)
;; This is obviously an Intel thing, plus it requires <cpuid.h>.
(supported-systems '("x86_64-linux" "i686-linux"))))
(define-public me-cleaner
(package
(name "me-cleaner")

View File

@@ -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")
@@ -5519,39 +5559,6 @@ technical and idiosyncratic feel—perfect for headers and pull-quotes. Made to
work well together with Mona Sans.")
(license license:silofl1.1)))
(define-public font-open-sans
(package
(name "font-open-sans")
(version "3.003")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/googlefonts/opensans")
(commit "bd7e37632246368c60fdcbd374dbf9bad11969b6")))
(file-name (git-file-name name version))
(sha256
(base32 "1mlnybaci1cr8z5xzxm7l2xpwfq27x9hqv649hc2ni1cjsyhpjp8"))))
(build-system font-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Install the variable fonts only.
(let ((%install (assoc-ref %standard-phases 'install)))
(with-directory-excursion "fonts/variable"
(%install #:outputs outputs))))))))
(home-page "https://github.com/googlefonts/opensans")
(synopsis "Humanist sans-serif typeface by Steve Matteson")
(description
"Open Sans is an open source humanist sans-serif typeface
that was designed by Steve Matteson under commission from Google. It was
released in 2011 and is based on his earlier design called Droid Sans, which
was specifically created for Android mobile devices but with slight
modifications to its width.")
(license license:silofl1.1)))
(define-public font-peppercarrot
(package

View File

@@ -96,6 +96,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
@@ -472,53 +473,6 @@ font design software, it allows you to join, split, offset, and perform many
other operations on paths.")
(license license:expat)))
(define-public python-booleanoperations
(package
(name "python-booleanoperations")
(version "0.9.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/typemytype/booleanOperations")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ahfgamyq1ndwbr9n8sdx8qhqc2195xnbahylgjpk877hbr2gxav"))))
(build-system pyproject-build-system)
(arguments
(list
;; Some tests fail due to small differences in the expected result (see:
;; <https://github.com/typemytype/booleanOperations/issues/69>).
#:test-flags
#~(list "-k"
(string-join
(list "not test_QTail_reversed_difference"
"test_QTail_reversed_intersection"
"test_QTail_reversed_union"
"test_QTail_reversed_xor"
"test_Q_difference"
"test_Q_intersection"
"test_Q_union"
"test_Q_xor")
" and not "))))
(native-inputs
(list python-defcon-bootstrap
python-fontpens-bootstrap
python-pytest
python-setuptools
python-setuptools-scm))
(propagated-inputs
(list python-fonttools-minimal
python-pyclipper))
(home-page "https://github.com/typemytype/booleanOperations")
(synopsis "Boolean operations on paths")
(description
"Boolean operations on paths which uses a super fast
@url{http://www.angusj.com/delphi/clipper.php, polygon clipper library by
Angus Johnson}.")
(license license:expat)))
(define-public python-cffsubr
(package
(name "python-cffsubr")
@@ -620,6 +574,7 @@ for fontTools.")
(list python-cython
python-defcon
python-pytest
python-pytest-runner
python-setuptools
python-setuptools-scm
python-wheel
@@ -746,7 +701,8 @@ implementing the pen protocol for manipulating glyphs.")
(modify-inputs native-inputs
(append python-fontparts-bootstrap
python-fontpens-bootstrap
python-pytest))))))
python-pytest
python-pytest-runner))))))
;;; A variant used to break a cycle with python-fontpens.
(define-public python-fontparts-bootstrap
@@ -1027,6 +983,7 @@ suite of the @code{psautohint} package.")
(native-inputs
(list psautohint-font-data
python-pytest
python-pytest-cov
python-pytest-xdist
python-setuptools-scm
python-setuptools
@@ -1870,10 +1827,6 @@ definitions.")
pango
potrace
python
;; XXX: Python 3.12 lacks distutils:
;; ModuleNotFoundError: No module named 'distutils'
;; Remove when package is updated.
python-setuptools-bootstrap
zlib))
(arguments
(append

View File

@@ -73,6 +73,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system qt)
#:use-module (guix search-paths)
@@ -1377,43 +1378,41 @@ For information about libevdev, see:
(license license:expat)))
(define-public python-pyxdg
;; Latest unreleased commits add Python 3.12, 3.14 and 3.15 support.
(let ((commit "63033ac306aa26d32e1439417e59ae8f8a4c9820")
(revision "0"))
(package
(name "python-pyxdg")
(version "0.28")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/xdg/pyxdg")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"10wk95rmcr2fglmvmv1a6ad9hkw9587r0rlww0gq6kbfz85whgmd"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
(setenv "XDG_DATA_DIRS"
(string-append #$(this-package-native-input "shared-mime-info")
"/share/")))))))
(native-inputs
(list shared-mime-info
hicolor-icon-theme
python-pytest
python-setuptools))
(home-page "https://www.freedesktop.org/wiki/Software/pyxdg")
(synopsis "Implementations of freedesktop.org standards in Python")
(description
"PyXDG is a collection of implementations of freedesktop.org standards in
(package
(name "python-pyxdg")
(version "0.28")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyxdg" version))
(sha256
(base32
"1d48bqwkbnpid80cpwz6h62i112laxl0ivpj58hdyd79fhqbnrrj"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; Tests failing with error: AssertionError: 'image' != 'inode'
#~(list "--deselect=test/test_mime.py::MimeTest::test_get_type"
"--deselect=test/test_mime.py::MimeTest::test_get_type2")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
(setenv "XDG_DATA_DIRS"
(string-append #$(this-package-native-input "shared-mime-info")
"/share/")))))))
(native-inputs
(list shared-mime-info
hicolor-icon-theme
python-pytest
python-setuptools))
(home-page "https://www.freedesktop.org/wiki/Software/pyxdg")
(synopsis "Implementations of freedesktop.org standards in Python")
(description
"PyXDG is a collection of implementations of freedesktop.org standards in
Python.")
(license license:lgpl2.0))))
(license license:lgpl2.0)))
(define-public hyprland-protocols
(package
@@ -2178,7 +2177,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.")
libxslt ;for xsltproc
pkg-config
python-minimal
python-dbus ;for test
python-dbus-1.2 ;for test
python-pygobject ;for test
vala))
(propagated-inputs
@@ -2372,7 +2371,7 @@ different sorts of messages in different formats.")
(base32 "02wb61h2k3hhis5y2xi5rhc6pmikd13x722hk620sqb9b3m5pn3s"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake libtool pkg-config))
(inputs (list libxslt python-wrapper python-dbus))
(inputs (list libxslt python-wrapper python-dbus-1.2))
(propagated-inputs (list telepathy-glib))
(home-page "https://telepathy.freedesktop.org/")
(synopsis "Telepathy IRC connection manager")
@@ -3418,7 +3417,7 @@ interfaces.")
(define-public xdg-desktop-portal-wlr
(package
(name "xdg-desktop-portal-wlr")
(version "0.8.2")
(version "0.7.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3427,7 +3426,7 @@ interfaces.")
(file-name (git-file-name name version))
(sha256
(base32
"1jj0a9s3h3i04qsxkhcpxjzbb17hs9ngdy7wkypja09233zdz10w"))
"1mbq3czka9swwmfaasnaj89y2m254p3qa522ayclh688jdwh70hq"))
(patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch"))))
(build-system meson-build-system)
(arguments
@@ -3455,7 +3454,7 @@ interfaces.")
(string-append (assoc-ref outputs "out")
"/share/doc/" ,name)))))))
(native-inputs
(list cmake-minimal pkg-config scdoc))
(list cmake-minimal pkg-config))
(inputs (list elogind
bash-minimal
grim

View File

@@ -70,6 +70,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system renpy)
#:use-module (guix build-system scons)
#:use-module (gnu packages)

View File

@@ -97,7 +97,6 @@
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Nikita Alkhovik <forgoty13@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -115,32 +114,40 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages games)
#:autoload (gnu packages pascal) (fpc)
#:use-module (ice-9 match)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix svn-download)
#:use-module (guix gexp)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
#:use-module (gnu packages admin)
#:use-module (gnu packages adns)
#:use-module (gnu packages algebra)
#:use-module (gnu packages assembly)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages admin)
#:use-module (gnu packages audio)
#:use-module (gnu packages avahi)
#:use-module (gnu packages assembly)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages c)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages code)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages dns)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages docbook)
#:use-module (gnu packages emacs)
#:use-module (gnu packages emulators)
#:use-module (gnu packages flex)
@@ -195,8 +202,8 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages messaging)
#:use-module (gnu packages mp3)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages music)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages networking)
@@ -205,6 +212,7 @@
#:use-module (gnu packages oneapi)
#:use-module (gnu packages opencl)
#:use-module (gnu packages pcre)
#:autoload (gnu packages pascal) (fpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-compression)
@@ -222,9 +230,9 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages ruby-xyz)
#:use-module (gnu packages shells)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages squirrel)
#:use-module (gnu packages swig)
@@ -241,31 +249,22 @@
#:use-module (gnu packages wget)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system haskell)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system scons)
#:use-module (guix build-system trivial)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix svn-download)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module ((srfi srfi-1) #:hide (zip))
#:use-module (srfi srfi-26))
@@ -484,7 +483,7 @@ mouse and joystick control, and original music.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/drummyfish/anarch")
(url "https://git.sr.ht/~drummyfish/Anarch")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -4277,11 +4276,11 @@ interface or via an external visual interface such as GNU XBoard.")
(("TestIOTouchDragAnywhere (test_integration)" all _) _))))
(add-before 'bootstrap 'autoreconf
(lambda _
;; automake is out of date in the source
;; autoreconf updates the automake scripts
(invoke "autoreconf")
;; Build fails when autom4te.cache exists.
(delete-file-recursively "autom4te.cache")
;; automake is out of date in the source
;; autoreconf updates the automake scripts
(invoke "autoreconf")
;; Build fails when autom4te.cache exists.
(delete-file-recursively "autom4te.cache")
#t))
(add-after 'install 'delete-freedinkedit-desktop
(lambda* (#:key outputs #:allow-other-keys)
@@ -4611,105 +4610,6 @@ for common mesh file formats, and collision detection.")
(home-page "https://irrlicht.sourceforge.io/")
(license license:zlib)))
(define-public pegasus-frontend
(let ((commit "c3462e68bf3a178420b44f356998255f8d82a113")
(revision "weekly_2024w38"))
(package
(name "pegasus-frontend")
(version (git-version "0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mmatyas/pegasus-frontend")
(commit commit)))
(sha256
(base32 "1p350nlbif33mw5cbqxwli5yf47dxpransxlj2wp8xvh4w1rb3jx"))
(file-name (git-file-name name version))))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase-5
#:make-flags
#~(list (string-append "INSTALL_DESKTOPDIR="
#$output "/share/applications")
(string-append "INSTALL_ICONDIR="
#$output "/share/icons/hicolor"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-modules
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively #$(this-package-native-input
"SortFilterProxyModel")
"./thirdparty/SortFilterProxyModel")
(copy-recursively #$(this-package-native-input
"pegasus-theme-grid")
"./src/themes/pegasus-theme-grid")
(copy-recursively #$(this-package-native-input
"pegasus-frontend-translations") "./lang")))
(add-before 'check 'prepare-test-env
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "QT_QUICK_BACKEND" "software"))))
(add-after 'qt-wrap 'gst-wrap
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/pegasus-fe")
`("GST_PLUGIN_PATH" suffix
,(search-path-as-list '("lib/gstreamer-1.0")
(map cdr inputs)))))))))
(inputs (list sdl2
bash-minimal
qtbase-5
qtsvg-5
qtdeclarative-5
qtgraphicaleffects
qtmultimedia-5
qtgamepad-5
gst-plugins-base
gst-plugins-bad
gst-plugins-good))
(native-inputs (list qttools-5
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/mmatyas/pegasus-frontend-translations")
(commit
"46c7cecec745bdd4c61bfc7ecb967156ad208642")))
(file-name "pegasus-frontend-translations")
(sha256 (base32
"0rvlx199wdrjxr8pgibga556zf4njq4w2n31fdirqgb631rgyqxd")))
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/mmatyas/pegasus-theme-grid")
(commit
"5951db6f2a4fe0db6a4fd6f00da1f280cadfa536")))
(file-name "pegasus-theme-grid")
(sha256 (base32
"1nfnq6lppdm9ni6jk48l1i7hk90m8w2p13swl5nr4zwczln8dbz1")))
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/mmatyas/SortFilterProxyModel")
(commit
"2061f8136ba372fd06c1928a610258b7d88cb144")))
(file-name "SortFilterProxyModel")
(sha256 (base32
"16va8fcf7v6kfm8r9zym0516qrk4vlsy5wmpd3r3002wpz8q39h2")))))
(synopsis
"Graphical frontend for launching and managing game collection")
(description
"Pegasus is a graphical frontend for browsing your game library and
launching all kinds of games from the same place. It's focusing on
customizability, cross platform support (including embedded)
and high performance.")
(home-page "https://pegasus-frontend.org")
(license license:gpl3+))))
(define-public mars
;; No official release since 2013: use the latest commit.
(let ((commit "84664cda094efe6e49d9b1550e4f4f98c33eefa2")
@@ -5521,7 +5421,7 @@ falling, themeable graphics and sounds, and replays.")
(name "wesnoth")
;; Even-numbered minor versions indicate stable versions:
;; https://wiki.wesnoth.org/ReleasingWesnoth#Version_numbering
(version "1.18.7")
(version "1.18.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -5530,17 +5430,27 @@ falling, themeable graphics and sounds, and replays.")
(file-name (git-file-name name version))
(sha256
(base32
"0hdrp4xm9d8kj8id2g5q0wwdwykx4a0f1cs8a7fghmv0czryfv7f"))))
"0cdlczxczqgzdaqwydb9gfgi7d9jc39li72p2rb5nk1rlgfff79s"))))
(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
@@ -5927,7 +5837,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") "\",
@@ -5954,7 +5864,7 @@ Transport Tycoon Deluxe.")
(package
(inherit openttd)
(name "openttd-jgrpp")
(version "0.71.1")
(version "0.70.2")
(source
(origin
(method git-fetch)
@@ -5963,7 +5873,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "jgrpp-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1cy1ghc1mc61hdz8lykx2ggs5nld30jdgj8y4vdli2v1ffhy7xy9"))))
(base32 "1jzzvribf2cqvjl9cympyx9qpplljvmhqrrlw7aq4ckzl92d87z3"))))
(inputs (modify-inputs inputs
(append zstd harfbuzz)))
(arguments
@@ -6739,7 +6649,7 @@ in-window at 640x480 resolution or fullscreen.")
(define-public warzone2100
(package
(name "warzone2100")
(version "4.6.3")
(version "4.6.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/warzone2100/releases/"
@@ -6755,7 +6665,7 @@ in-window at 640x480 resolution or fullscreen.")
"inih" "re2" "utf8proc" "utfcpp")))))
(sha256
(base32
"0fmiy0pm56yy69c0nhynjdiaslwlfg8cdvfl5s78g5pzdi1y47s3"))))
"02x5ihkpfkpjxwvh00d8yqzd796af7d684nk96hzhhq28qw5bb16"))))
(build-system cmake-build-system)
(arguments (list #:configure-flags #~'("-GNinja"
"-DWZ_DISTRIBUTOR=Guix"
@@ -6792,7 +6702,7 @@ in-window at 640x480 resolution or fullscreen.")
opusfile
physfs
re2
sdl3
sdl2
sqlite
utf8proc
utfcpp
@@ -9233,7 +9143,7 @@ elements to achieve a simple goal in the most complex way possible.")
(define-public the-powder-toy
(package
(name "the-powder-toy")
(version "99.5.394")
(version "99.3.384")
(source
(origin
(method git-fetch)
@@ -9242,7 +9152,7 @@ elements to achieve a simple goal in the most complex way possible.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0wd0sg3lpl9xafyj76syvpdjh574cxjmxaf9kssfjjxs20y3hjn8"))
(base32 "0l067j0bbzvr0i2prxrgb0af4xdpl648x741jgnyp4bjzdbm61x7"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "meson.build"
@@ -10233,7 +10143,7 @@ your score gets higher, you level up and the blocks fall faster.")
"-DES_USE_SYSTEM_LIBRARIES=1")
#:make-flags #~(list (string-append "PREFIX=" #$output))
#:build-type "Release"
#:tests? (not (target-x86-32?))
#:tests? (not (target-x86-32?))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
@@ -11217,7 +11127,7 @@ levels to unlock.")
(define-public simgear
(package
(name "simgear")
(version "2024.1.5")
(version "2024.1.4")
(source
(origin
(method git-fetch)
@@ -11229,7 +11139,7 @@ levels to unlock.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ygdc8xkrj7qzm9zklibb1v5w3jp718707zmiwl8fn63sxanbqsq"))
(base32 "1k855yxq06gv42f83c3k9hrsz05xxj6vi1c60227zm0dx3jkb4jq"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -11281,7 +11191,7 @@ and also provides the base for the FlightGear Flight Simulator.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0hpfvacnba2kcyjwm01lkrqkz0gccvljjil8b0ai42l38hxn5r5h"))
(base32 "0xlpry1g5xci4qmj37rjk4sdhg9zada0vw6a047gsm7cq5p7pkxk"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -11365,12 +11275,12 @@ and also provides the base for the FlightGear Flight Simulator.")
("flightgear-data"
,(origin
(method url-fetch)
(uri (string-append "https://mirrors.ibiblio.org/flightgear/ftp/release-"
(uri (string-append "mirror://sourceforge/flightgear/release-"
(version-major+minor version) "/"
"FlightGear-" version "-data.txz"))
(sha256
(base32
"0d81yz9jqmg2jzw5rm769pl1j18pvh2mjkx61l13kw76ja8p6159"))))))
"0pgwxpm5cdm0y6klrmpqspmhmqsfxshz4jljw2kd4wy18fqzd1s6"))))))
(home-page "https://www.flightgear.org/")
(synopsis "Flight simulator")
(description "The goal of the FlightGear project is to create a
@@ -12274,7 +12184,7 @@ for using any UCI engine and also to connect UCI engines to Lichess and IRC.")
(base32 "1kkcnpkzgybm7rqg7nafd7sqd5m4alns6l4j5zcf3p41jdc9s3iv"))))
(build-system glib-or-gtk-build-system)
(inputs (list automake autoconf pkg-config intltool
gettext-minimal libtool glib gtk+-2 boost))
gettext-minimal libtool glib gtk+-2 boost))
(arguments (list #:tests? #f)) ; No tests in source.
(home-page "http://nine-mens-morris.net/downloads.html")
(synopsis "Implementation of the board game Nine Men's Morris")
@@ -13498,8 +13408,8 @@ rules to solve permissions issues.")
(define-public steam-devices-udev-rules
;; Last release from 2019-04-10
(let ((commit "7dde9ecb3c386363ecd9bd0a3b77e4756d200704")
(revision "2"))
(let ((commit "13443480a64fe8f10676606bd57da6de89f8ccb1")
(revision "1"))
(package
(name "steam-devices-udev-rules")
(version (git-version "1.0.0.61" revision commit))
@@ -13511,7 +13421,7 @@ rules to solve permissions issues.")
(file-name (git-file-name name version))
(sha256
(base32
"0w0xkgi9fpvdbpl57f8fy2nwy2icm6iag39b8ifpkijlxgclx1p3"))))
"0i086gmnk93q76sw1laa9br6b7zj2r6nrrw7d64y4q9wcrlxw2bi"))))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("./" "lib/udev/rules.d"

View File

@@ -55,6 +55,7 @@
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system r)
#:use-module (guix build-system zig)
@@ -297,7 +298,7 @@ than 600 operators available.")
(define-public h3
(package
(name "h3")
(version "4.4.1")
(version "4.1.0")
(source
(origin
(method git-fetch)
@@ -306,7 +307,7 @@ than 600 operators available.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ijnbr4a54ph7bkn8waqwgnxmxlylv9yly9mwjdj69lkmdfjgaml"))))
(base32 "0x764xzna8ka6yhgv2y4hb158a61y3g9a6835qckqp7wfkpqvb7f"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
@@ -318,25 +319,48 @@ combining the benefits of a hexagonal grid with S2's hierarchical
subdivisions.")
(license license:asl2.0)))
(define-public python-h3
;; For python-timezonefinder, remove it when it starts supporting newer
;; version.
(define-public h3-3
(package
(name "python-h3")
(version "4.4.2")
(inherit h3)
(name "h3")
(version "3.7.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uber/h3")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0bvsljfxmjvl23v9gxykc4aynjzh5xfy3wg02bxad7cknr1amx9j"))))))
(define-public python-h3
(package
(name "python-h3")
(version "4.0.0b2")
(source
(origin
(method git-fetch) ; no tests data in PyPi package
(uri (git-reference
(url "https://github.com/uber/h3-py")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02gry51hn8x2bl80y1ipcyrg0ghcif4vjch26qil215wdzz1yrzv"))
(base32 "1k1n256hhlh05gjcj64pqh08zlaz6962jkb6nk1aazsgg8p41zs0"))
(modules '((guix build utils)))
;; Remove bundled H3 lib.
(snippet #~(begin (delete-file-recursively "src/h3lib")))))
(build-system pyproject-build-system)
(arguments
(list
;; FIXME: Check why these tests are failing.
;; test_versions - assert (4, 1) == (4, 0)
;; test_resolution - h3._cy.error_system.H3Failed
#:test-flags #~(list "-k" (string-append
"not test_versions"
" and not test_resolution"))
#:phases
#~(modify-phases %standard-phases
;; Use packaged in Guix h3 source.
@@ -357,7 +381,10 @@ subdivisions.")
python-cython
python-numpy
python-pytest
python-scikit-build-core))
python-scikit-build
python-setuptools
python-setuptools-scm
python-wheel))
(inputs (list h3))
(home-page "https://uber.github.io/h3-py")
(synopsis "Python bindings for H3")
@@ -365,6 +392,26 @@ subdivisions.")
hierarchical hexagonal geospatial indexing system")
(license license:asl2.0)))
;; For python-timezonefinder, remove it when it starts supporting newer
;; version.
(define-public python-h3-3
(package
(inherit python-h3)
(name "python-h3")
(version "3.7.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uber/h3-py")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16gxa1sivghxw179rik87r918mjasars2qkzidlwq83qfa4axn20"))))
(inputs
(modify-inputs inputs
(replace "h3" h3-3)))))
(define-public geos
(package
(name "geos")
@@ -1012,6 +1059,7 @@ for seismology.")
(inputs (list gdal))
(native-inputs (list python-cython
python-pytest
python-pytest-cov
python-setuptools
python-tomli
python-versioneer
@@ -1111,7 +1159,7 @@ projections and coordinate transformations library.")
(define-public python-fiona
(package
(name "python-fiona")
(version "1.10.1")
(version "1.9.6")
(source
(origin
(method git-fetch)
@@ -1120,38 +1168,24 @@ projections and coordinate transformations library.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0xribbcy5wvrm5y3bq281dry86vhjcnphg9772yp9s3y30y7mlz4"))))
(base32 "08whhjrspp194qasjhr9kf70fl342ms47k78rwpcf5q6ikf0rfii"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 757 passed, 161 skipped, 24 deselected, 1 xfailed, 6 xpassed
#:test-flags
#~(list "-m" "not network and not wheel"
#$@(map (lambda (test) (string-append "--deselect=tests/" test))
;; UserWarning: The parameter --where is used more than
;; once. Remove its duplicate as parameters should be
;; unique.
(list "test_fio_cat.py::test_bbox_json_yes"
"test_fio_cat.py::test_bbox_no"
"test_fio_cat.py::test_bbox_where"
"test_fio_cat.py::test_bbox_yes"
"test_fio_cat.py::test_bbox_yes_two_files"
"test_fio_cat.py::test_dst_crs_epsg3857"
"test_fio_cat.py::test_multi_layer"
"test_fio_cat.py::test_one"
"test_fio_cat.py::test_two"
"test_fio_cat.py::test_vfs"
"test_fio_cat.py::test_where_no"
"test_fio_cat.py::test_where_yes"
"test_fio_cat.py::test_where_yes_two_files"
;; FileNotFoundError:
;; https://github.com/Toblerity/Fiona/files/\
;; 11151652/coutwildrnp.zip
"test_pyopener.py::test_opener_fsspec_zip_http_fs")))
;; FIXME: Find why the
;; test_no_append_driver_cannot_append[PCIDSK] test is failing.
"-k" "not test_no_append_driver_cannot_append")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'remove-local-source
(add-before 'build 'set-configure-flags
(lambda _
(setenv "CFLAGS" "-Wno-error=incompatible-pointer-types")))
(add-before 'check 'remove-local-fiona
(lambda _
;; This would otherwise interfere with finding the installed
;; fiona when running tests.
(delete-file-recursively "fiona"))))))
(inputs
(list gdal))
@@ -1159,19 +1193,19 @@ projections and coordinate transformations library.")
(list python-attrs
python-certifi
python-click
python-click-plugins
python-click-plugins-1
python-cligj))
(native-inputs
(list gdal ; for gdal-config
python-boto3
python-cython
python-fsspec
python-pytest
python-pytest-cov
python-pytz
python-setuptools
python-shapely))
python-setuptools))
(home-page "https://github.com/Toblerity/Fiona")
(synopsis "Fiona reads and writes spatial data files")
(synopsis
"Fiona reads and writes spatial data files")
(description
"Fiona is GDALs neat and nimble vector API for Python programmers. Fiona
is designed to be simple and dependable. It focuses on reading and writing
@@ -1431,6 +1465,7 @@ street bearings/orientations, and speed/travel time.")
python-pyproj
python-pyyaml
python-pytest
python-pytest-cov
python-pytest-httpserver
python-pytz
python-requests
@@ -1762,7 +1797,10 @@ utilities for data translation and processing.")
;; This test requires internet access.
'(list "--deselect" "test_shapefile.py::test_reader_url")))
(native-inputs
(list python-pytest python-setuptools python-wheel))
(list python-pytest
python-pytest-runner
python-setuptools
python-wheel))
(home-page "https://github.com/GeospatialPython/pyshp")
(synopsis "Read/write support for ESRI Shapefile format")
(description
@@ -2898,7 +2936,7 @@ to the OSM opening hours specification.")
(define-public josm
(package
(name "josm")
(version "19555")
(version "19539")
(source (origin
(method svn-fetch)
(uri (svn-reference
@@ -2907,7 +2945,7 @@ to the OSM opening hours specification.")
(recursive? #f)))
(sha256
(base32
"0kpshdj8kf9ag7h1qqrh9jqc6c9iv8v369mk60a8g7cbzf0xpblw"))
"05kslpvdwl4fldjzl6m2kmqvbmjv5yvipfavg01l30ywhw2c7v7v"))
(file-name (string-append name "-" version "-checkout"))
(modules '((guix build utils)))
(snippet
@@ -3492,9 +3530,10 @@ orienteering sport.")
(list
#:tests? #f ; No tests
#:modules `((guix build gnu-build-system)
((guix build pyproject-build-system) #:prefix python:)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:imported-modules %pyproject-build-system-modules
#:imported-modules `(,@%default-gnu-imported-modules
(guix build python-build-system))
#:configure-flags
#~(list "--with-blas"
"--with-bzlib"
@@ -3666,13 +3705,13 @@ growing set of geoscientific methods.")
(build-system cmake-build-system)
(arguments
(list
#:imported-modules (append %cmake-build-system-modules
%pyproject-build-system-modules
'((guix build qt-utils)))
#:modules '((guix build cmake-build-system)
((guix build pyproject-build-system) #:prefix py:)
((guix build python-build-system) #:prefix python:)
(guix build qt-utils)
(guix build utils))
#:imported-modules `(,@%cmake-build-system-modules
(guix build python-build-system)
(guix build qt-utils))
#:configure-flags
#~(list "-DWITH_QTWEBKIT=NO")
#:phases
@@ -3833,10 +3872,11 @@ growing set of geoscientific methods.")
;; Configure correct path to PyQt5 SIP directory
(add-after 'unpack 'configure-pyqt5-sip-path
(lambda* (#:key inputs #:allow-other-keys)
(let* ((pyqt (assoc-ref inputs "python-pyqt+qscintilla"))
(sip-dir (string-append
(py:site-packages inputs `(("out" . ,pyqt)))
"/PyQt5/bindings")))
(let ((sip-dir (string-append
(assoc-ref inputs "python-pyqt+qscintilla")
"/lib/python"
(python:python-version (assoc-ref inputs "python"))
"/site-packages/PyQt5/bindings")))
(substitute* "cmake/FindPyQt5.py"
(("sip_dir = cfg.default_sip_dir")
(string-append "sip_dir = \"" sip-dir "\"")))
@@ -3866,7 +3906,7 @@ SET\\(PYQT5_SIP_DIR \"\\$\\{Python_SITEARCH\\}/PyQt5/bindings\"\\)")
"-E" (string-join ignored-tests "|")))
(format #t "test suite not run~%"))))
(add-after 'install 'wrap-python
(assoc-ref py:%standard-phases 'wrap))
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-qt
(lambda* (#:key inputs #:allow-other-keys)
(wrap-qt-program "qgis" #:output #$output #:inputs inputs)))

View File

@@ -476,31 +476,17 @@ inverse fourier transform.")
(package
(name "libmypaint")
(version "1.6.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mypaint/libmypaint")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ppgpmnhph9h8ayx9776f79a0bxbdszfw9c6bw7c3ffy2yk40178"))))
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mypaint/libmypaint/"
"releases/download/v" version "/libmypaint-"
version ".tar.xz"))
(sha256
(base32
"0priwpmc7dizccqvn21ig6d649bprl3xl1hmjj7nddznjgr585vl"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'bootstrap 'overwrite-automake-and-aclocal-versions
(lambda _
(setenv "AUTOMAKE" "automake")
(setenv "ACLOCAL" "aclocal"))))))
(native-inputs
(list autoconf
automake
intltool
libtool
pkg-config
python))
(list intltool pkg-config))
;; As needed by 'libmypaint.pc'.
(propagated-inputs
(list json-c gobject-introspection))
@@ -512,26 +498,6 @@ brushstrokes which is used by MyPaint and GIMP.")
(home-page "http://mypaint.org")
(license license:isc)))
;; To update mypaint, remove when a fresh version is released.
(define-public libmypaint-next
(package
(inherit libmypaint)
(name "libmypaint")
(properties '((commit . "551dfb9ca5d2b82f2361a5a8a9e7f386f35fd320")
(revision . "0")))
(version (git-version "1.6.1"
(assoc-ref properties 'revision)
(assoc-ref properties 'commit)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mypaint/libmypaint")
(commit (assoc-ref properties 'commit))))
(file-name (git-file-name name version))
(sha256
(base32 "0pl8cma6gfkrqx364fs1xw7f491f7y6pzxqjq1cdqlrf9r8gg0sk"))))))
(define-public mypaint-brushes
(package
(name "mypaint-brushes")

View File

@@ -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,47 @@
;;; 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 licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#: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.3.11")
(source
(origin
(method url-fetch)
(uri (string-append "http://gkrellm.srcbox.net/releases/gkrellm-"
version ".tar.bz2"))
(sha256
(base32 "01lccz4fga40isv09j8rjgr0qy10rff9vj042n6gi6gdv4z69q0y"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
("gtk+" ,gtk+-2)
("libice" ,libice)
("libsm" ,libsm)))
(native-inputs
(list pkg-config))
(arguments
`(#:tests? #f ; there is no check target
#:phases
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:make-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "INSTALLROOT=" out)
"CC=gcc"))))
(home-page "http://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+)))

View File

@@ -79,6 +79,7 @@
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
@@ -1419,8 +1420,8 @@ original glmark benchmark by Ben Smith.")
(license license:bsd-2)))
(define-public piglit
(let ((revision "2")
(commit "040ed91f234abb6a502d3a6910f1b0e54bd239a7"))
(let ((revision "1")
(commit "814046fe6942eac660ee4a6cc5fcc54011a49945"))
(package
(name "piglit")
(version (git-version "0.0.0" revision commit))
@@ -1431,7 +1432,7 @@ original glmark benchmark by Ben Smith.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1j5dmkym1mmz410xgwygimnjk2aswsqmcpjwz4s98pgmymh1yjvf"))))
(base32 "1bzaalcxskckfnwprw77sbbmfqi59by2j8imaq8ghnlzhlxv7mk7"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DPIGLIT_SSE2=OFF")
@@ -1450,21 +1451,16 @@ original glmark benchmark by Ben Smith.")
"'")))))
(add-after 'install 'wrap
(lambda* (#:key outputs #:allow-other-keys)
(wrap-script (string-append #$output "/bin/piglit")
(wrap-script (string-append (assoc-ref outputs "out")
"/bin/piglit")
`("GUIX_PYTHONPATH" prefix
(,(getenv "GUIX_PYTHONPATH")))))))))
(inputs (list glslang
guile-3.0 ; for wrap-script
(inputs (list guile-3.0 ; for wrap-script
libxkbcommon
python
wayland-protocols
vulkan-headers
vulkan-loader
python python-lxml python-mako python-numpy-1
glslang vulkan-headers vulkan-loader
waffle))
(native-inputs (list pkg-config
python-lxml
python-mako
python-numpy))
(native-inputs (list pkg-config))
(home-page "https://piglit.freedesktop.org/")
(synopsis "Test OpenGL implementations")
(description "Piglit is a collection of automated tests for OpenGL and

View File

@@ -39,7 +39,6 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages ebook)
#:use-module (gnu packages enchant)
#:use-module (gnu packages fonts)
#:use-module (gnu packages freedesktop)
@@ -682,7 +681,7 @@ and a high score table.")
(define-public komikku
(package
(name "komikku")
(version "50.1.0")
(version "1.99.0")
(source
(origin
(method git-fetch)
@@ -692,7 +691,7 @@ and a high score table.")
(file-name (git-file-name name version))
(sha256
(base32
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
"1did8rh3aw6d3g1myavsma986rwashw09g3m442lv8fzmdiw18r4"))))
(build-system meson-build-system)
(arguments
(list
@@ -741,10 +740,8 @@ and a high score table.")
python-cloudscraper
python-colorthief
python-dateparser
python-ebooklib
python-emoji
python-keyring
python-jxlpy
python-lxml
python-magic
python-natsort
@@ -780,7 +777,7 @@ developed with the aim of being used with the Librem 5 phone.")
(define-public komikku-servers
(package
(name "komikku-servers")
(version "50.1.0")
(version "1.99.0")
(source
(origin
(method git-fetch)
@@ -790,7 +787,7 @@ developed with the aim of being used with the Librem 5 phone.")
(file-name (git-file-name name version))
(sha256
(base32
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
"1did8rh3aw6d3g1myavsma986rwashw09g3m442lv8fzmdiw18r4"))))
(build-system copy-build-system)
(arguments
(list

View File

@@ -51,6 +51,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
@@ -1334,74 +1335,6 @@ animation of closing windowed applications.")
GNOME Shell, including the top panel, dash and overview.")
(license license:gpl3)))
(define-public gnome-shell-extension-caffeine
(package
(name "gnome-shell-extension-caffeine")
(version "59")
(source
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/eonpatapon/gnome-shell-extension-caffeine")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sv0iqfb6kjhgcg4pb59n91dyf667vax96kfhz5ik5hhx9n0z43w"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("caffeine@patapon.info"
"share/gnome-shell/extensions/caffeine@patapon.info"
#:include-regexp ("icons" "locale" "preferences" "schemas"
"\\.js(on)?$")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "caffeine@patapon.info/schemas"
(invoke "glib-compile-schemas" ".")))))))
(native-inputs (list `(,glib "bin")))
(synopsis "Disable screensaver and auto suspend in Gnome")
(description "This extension provides a quick setting toggle to enable or
disable the Gnome auto-suspend and screensaver.")
(home-page "https://github.com/eonpatapon/gnome-shell-extension-caffeine")
(license license:gpl2+)))
(define-public gnome-shell-extension-hot-edge
(package
(name "gnome-shell-extension-hot-edge")
(version "27")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jdoda/hotedge")
(commit "90e9cdd6f2a171a676a96a4e6ad0126316317e4d")))
(file-name (git-file-name name version))
(sha256
(base32 "08jqz6n04yvqa77930sghgip5qfj8i4dm8wsm5cqjc4sqm4pn9yy"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("." "share/gnome-shell/extensions/hotedge@jonathan.jdoda.ca"
#:include-regexp ("\\.css$" "\\.js(on)?$" "schemas")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "schemas"
(invoke "glib-compile-schemas" ".")))))))
(native-inputs (list `(,glib "bin")))
(synopsis "Add a hot edge to the bottom of the screen in Gnome")
(description
"Add a hot edge that activates the overview to the bottom of the screen.
This provides a better mouse-based workflow and can be an alternative to a dock.")
(home-page "https://github.com/jdoda/hotedge")
(license license:gpl2+)))
(define-public gnome-shell-extension-radio
(let ((commit "860e55b9e704eb3dde43e6bbeccec5748242498e")
(revision "0"))

View File

@@ -250,6 +250,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module ((guix config) #:select (%storedir))
#:use-module (guix deprecation)
@@ -2597,92 +2598,6 @@ of Evince is to replace the multiple document viewers that exist
on the GNOME Desktop with a single simple application.")
(license license:gpl2+)))
(define-public papers
(package
(name "papers")
(version "50.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/papers/"
(version-major version) "/"
"papers-" version ".tar.xz"))
(sha256
(base32 "01dws72fb19i9jwp3r0khr7ym2ns51fifdzafb5dcr5w8vmj06rh"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:configure-flags
#~(list (string-append "-Dc_link_args=-Wl,-rpath=" #$output "/lib"))
#:imported-modules `(,@%meson-build-system-modules
,@%cargo-build-system-modules)
#:modules `(((guix build cargo-build-system) #:prefix cargo:)
(guix build meson-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-for-build
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))
(substitute* "meson.build"
(("'Cargo.lock',")
""))
(delete-file "Cargo.lock")))
(add-after 'configure 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:vendor-dir "vendor"
#:cargo-target #$(cargo-triplet)
args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums))
(setenv "RUSTFLAGS"
(string-append (or (getenv "RUSTFLAGS") "")
" -C link-arg=-Wl,-rpath,"
#$output "/lib")))))))
(native-inputs
(cons* blueprint-compiler
gettext-minimal
`(,glib "bin")
gobject-introspection
gi-docgen
itstool
pkg-config
rust
`(,rust "cargo")
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(inputs
(cons* appstream
djvulibre
exempi
gtk
libadwaita
libarchive
libspelling
libtiff
nautilus ; for nautilus extension
poppler-next
zlib
(cargo-inputs 'papers)))
(home-page "https://apps.gnome.org/Papers")
;; TODO: drop “new” when updating to GNOME 49 or newer.
(synopsis "GNOME's new document viewer")
(description "Papers is a document viewer capable of displaying multiple
and single page document formats like PDF and DejaVu.")
(license license:gpl2+)))
(define-public gsettings-desktop-schemas
(package
(name "gsettings-desktop-schemas")
@@ -2758,7 +2673,7 @@ schemas for settings shared by various components of the GNOME desktop.")
(invoke "./run-tests")))))))
(native-inputs (list python-pytest python-setuptools xorg-server-for-tests))
(inputs (list gtk+))
(propagated-inputs (list python-pygobject-3.50))
(propagated-inputs (list python-pygobject))
(home-page "https://getting-things-gnome.github.io/liblarch")
(synopsis "Library to easily handle complex data structures")
(description
@@ -2817,7 +2732,7 @@ and how they are displayed (View).")
gtksourceview-4
pango
python
python-dbus
python-dbus-1.2
python-liblarch
python-lxml
python-pycairo
@@ -2985,7 +2900,7 @@ guidelines.")
python
cups
gtk+
python-dbus
python-dbus-1.2
python-pygobject
python-pycups
python-requests
@@ -4999,7 +4914,6 @@ as OpenStreetMap, OpenCycleMap, OpenAerialMap and Maps.")
(arguments
(list
#:configure-flags #~(list "-Ddocs=disabled")
#:parallel-tests? #f ;hsts-db-test might hang otherwise.
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'adjust-tests
@@ -5041,7 +4955,7 @@ as OpenStreetMap, OpenCycleMap, OpenAerialMap and Maps.")
zlib))
(inputs
(list samba/pinned)) ; For ntlm_auth support
(home-page "https://libsoup.gnome.org")
(home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
@@ -5157,7 +5071,7 @@ and the GLib main loop, to integrate well with GNOME applications.")
libxslt
pkg-config
python
python-dbus
python-dbus-1.2
python-pygobject-3.50
vala))
(propagated-inputs
@@ -8158,6 +8072,12 @@ to display dialog boxes from the commandline and shell scripts.")
(build-system meson-build-system)
(arguments
(list
#:modules '((guix build meson-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils)
(ice-9 match))
#:imported-modules `(,@%meson-build-system-modules
(guix build python-build-system))
#:glib-or-gtk? #t
#:configure-flags
#~(list
@@ -8680,7 +8600,7 @@ users.")
libxslt
perl
pkg-config
python-dbus
python-dbus-1.2
python-pygobject-3.50
python-wrapper
vala))
@@ -10622,6 +10542,7 @@ playing media, scanning, and much more.")
cheese
decibels
epiphany
evince
file-roller
gnome-calculator
gnome-calendar
@@ -10641,7 +10562,6 @@ playing media, scanning, and much more.")
localsearch
loupe
nautilus
papers
simple-scan
showtime
xdg-desktop-portal-gnome
@@ -11338,20 +11258,20 @@ basically a text box in which notes can be written.")
(define-public gucharmap
(let ((unicode-files
'(("Blocks.txt"
"05fbpc7miqpv7yic5xkm74ybzxkaf5r58ww21a1iwxqr3apyzvf0")
"041sk54v6rjzb23b9x7yjdwzdp2wc7gvfz7ybavgg4gbh51wm8x1")
("DerivedAge.txt"
"160r7wwidj3c2jl4cw3am0c5d0l7qndis9xx38h0y8fwidvdzv7q")
"04j92xp07v273z3pxkbfmi1svmw9kmnjl9nvz9fv0g5ybk9zk7r6")
("NamesList.txt"
"1x1smmn2kmy8clf6ny2njln75i888lidckc6ssyp2gdhgasdrkhd")
"0vsq8gx7hws8mvxy3nlglpwxw7ky57q0fs09d7w9xgb2ylk7fz61")
("Scripts.txt"
"1grmn3bd4m0rcmz544h94kimlj3gf1f343s8177ddrxfmg9m0plz")
"18c63hx4y5yg408a8d0wx72d2hfnlz4l560y1fsf9lpzifxpqcmx")
("UnicodeData.txt"
"0327jqfw2hyq8x986cfhwrp717r2jl7ydjjwvzp7biarrcfzq7if")
"07d1kq190kgl92ispfx6zmdkvwvhjga0ishxsngzlw8j3kdkz4ap")
("Unihan.zip"
"0pjbyf77lbaxdhwidvpgp81cw13lfhlaw1ynn9vsmkssahmqp97p"))))
"1kfdhgg2gm52x3s07bijb5cxjy0jxwhd097k5lqhvzpznprm6ibf"))))
(package
(name "gucharmap")
(version "17.0.1")
(version "12.0.1")
(source
(origin
(method url-fetch)
@@ -11360,19 +11280,16 @@ basically a text box in which notes can be written.")
name "-" version ".tar.xz"))
(sha256
(base32
"0sfixlmk7qajcvls6kv2hfczmjafjcr54aczwcdfmp5jjll4m17r"))))
(build-system meson-build-system)
"0m915hm2b2d6r3vs1l80rqpssvg78pv8j6nv54yg62kzknnqmpir"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:modules ((ice-9 match)
(guix build meson-build-system)
(guix build glib-or-gtk-build-system)
(guix build utils))
#:glib-or-gtk? #t
#:configure-flags
(list
"-Ducd_path=../unicode-data"
"-Dvapi=false"
;; gtk-doc fails because it didn't generate a devhelp2 file
"-Ddocs=false")
"CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types"
"--with-unicode-data=../unicode-data")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'prepare-unicode-data
@@ -11385,26 +11302,26 @@ basically a text box in which notes can be written.")
',unicode-files))
#t)))))
(native-inputs
(cons* desktop-file-utils
(list glib "bin")
gobject-introspection
intltool
itstool
pkg-config
python
unzip
(map (match-lambda
((file hash)
(origin
(method url-fetch)
(uri (string-append
"https://www.unicode.org/Public/17.0.0/ucd/"
file))
(sha256 (base32 hash)))))
unicode-files)))
`(("desktop-file-utils" ,desktop-file-utils)
("glib:bin" ,glib "bin") ; for glib-compile-resources.
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("itstool" ,itstool)
("pkg-config" ,pkg-config)
,@(map (match-lambda
((file hash)
`(,file
,(origin
(method url-fetch)
(uri (string-append
"http://www.unicode.org/Public/12.0.0/ucd/"
file))
(sha256 (base32 hash))))))
unicode-files)
("unzip" ,unzip)))
(inputs
(list gtk+
libxml2))
`(("gtk+" ,gtk+)
("xmllint" ,libxml2)))
(home-page "https://wiki.gnome.org/Apps/Gucharmap")
(synopsis "Unicode character picker and font browser")
(description
@@ -12331,6 +12248,7 @@ advanced image management tool")
intltool
pkg-config
python-psutil
python-pytest-runner
python-pytest))
(inputs
(list bash-minimal ;for wrap-program
@@ -12339,7 +12257,7 @@ advanced image management tool")
gsettings-desktop-schemas
gtk+
python-wrapper
python-dbus
python-dbus-1.2
python-notify2
python-pycairo
python-pygobject

View File

@@ -165,14 +165,14 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd
(package
(name "libmicrohttpd")
(version "1.0.3")
(version "1.0.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz"))
(sha256
(base32
"0shj6kk4xp3k45vv696bzgx4s2jzpvhp11syck1zb70rmrxba5kq"))))
"1ix843yqhcl8d5gh5652pw2scx4p5n836ca80ymms5rl136lycnz"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags

View File

@@ -43,33 +43,34 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages gnupg)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages adns)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages dns)
#:use-module (gnu packages crypto)
#:use-module (gnu packages emacs)
#:use-module (gnu packages enlightenment)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages openldap)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages pth)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages compression)
#:use-module (gnu packages gtk)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages security-token)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages swig)
@@ -77,23 +78,23 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages tor)
#:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages)
#:use-module (gnu packages xml)
#:use-module (gnu packages popt)
#:use-module (gnu packages xdisorg)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module (guix build-system meson)
#:use-module (srfi srfi-1))
(define-public libgpg-error

View File

@@ -48,34 +48,6 @@
#:use-module (gnu packages xml)
#:use-module (ice-9 match))
(define-public fsviewer
(package
(name "fsviewer")
(version "0.2.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/roblillack/fsviewer")
(commit (string-append "v" version))))
(sha256
(base32
"067fvbq7b4lbnn1flmwf8lm0vq4n6qz5yz6hhab30l4gksfk51cg"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments (list #:tests? #f)) ;no tests
(inputs
(list windowmaker libxmu libxpm))
(native-inputs
(list pkg-config))
(home-page "https://github.com/roblillack/fsviewer")
(synopsis "File viewer for Window Maker")
(description "FSViewer is a NeXT FileViewer lookalike for Window
Maker supporting browser mode and list mode. This version is a fork of
FSViewer.app originally written by George Clernon (1998-99) and later
maintained by Guido Scholz (2002-07).")
(license license:gpl2)))
(define-public gnustep-make
(package
(name "gnustep-make")

View File

@@ -605,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"zh-TW"))
;;; Please keep these versions in sync with icedove.
(define %icecat-base-version "140.10.0")
(define %icecat-base-version "140.9.0")
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
(define %icecat-build-id "20260421000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20260324000000") ;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
"06996548nfmn4r4mfw3wvgb1mp35majc5hjyhs1krgp33ck2m1f0"))))
"0b79x61w51fjf12p5sr9pipg4b3fjdnbsg0j20fdai3jq6jb4wmr"))))
(gnuzilla-commit "02125f31250c0240ee2ab1aa629ce66d4ffb9f30")
(gnuzilla-commit "10a8be3fcf725ed01ffb7279ec27c2fba55dd2d2")
(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
"1hgx286gp0j46pklzzh5kvsnari1j3s0bff384m505m942k6l4hf"))))
"076s3zpq0cj24a2pjarb57k1xv9z45xazps8rgypzw8yc4pxi9rj"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@@ -1249,173 +1249,13 @@ 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
(define %icedove-build-id "20260324000000") ;must be of the form YYYYMMDDhhmmss
;;; See <https://product-details.mozilla.org/1.0/thunderbird_versions.json>
;;; for the source of truth regarding Thunderbird releases.
;;; Please keep these version numbers in sync with icecat.
;;; Please also update thunderbird-comm-source and thunderbird-comm-l10n to
;;; the icedove version.
(define %icedove-version "140.9.1")
(define %icedove-version "140.9.0")
;; Provides the "comm" folder which is inserted into the icecat source.
;; Avoids the duplication of Icecat's source tarball. Pick the changeset that
@@ -1427,11 +1267,11 @@ preferences/advanced-scripts.dtd"
(method hg-fetch)
(uri (hg-reference
(url "https://hg.mozilla.org/releases/comm-esr140")
(changeset "427d792f23672fc4adbe9436ce7dddbb2bfb287a")))
(changeset "8be9f2d3072c225a1e5f153745a18984c2babf8f")))
(file-name (string-append "thunderbird-" %icedove-version "-checkout"))
(sha256
(base32
"09fj375a0zb5kgvw94f13997zhcj67a4g5ylpdbjzfql0chh572p"))
"04j35957x03m5x7mhh8zxa86mwjy0is2vb614sr4inkvvz4rs2hg"))
(patches (search-patches "icedove-observer-fix.patch"))))
;;; To regenerate, see the `format-locales' helper defined above.
@@ -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.

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