mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-08 13:54:05 +02:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f0a9b062ac | |||
| 03401147f2 | |||
| b4f7c683cd | |||
| b87ca9a3d5 | |||
| 97f8dd37cd | |||
| f63700e8d3 | |||
| e8c35a2d49 | |||
| eda1a86685 |
@@ -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
|
||||
@@ -487,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
|
||||
|
||||
@@ -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 \
|
||||
|
||||
@@ -20,9 +20,6 @@ Please send Guix bug reports to bug-guix@gnu.org.
|
||||
*** 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
|
||||
*** New ‘rpm’ format for the ‘guix pack’ command
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
+12
-102
@@ -8737,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
|
||||
|
||||
@@ -8843,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
|
||||
@@ -8856,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.
|
||||
|
||||
@@ -15551,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:
|
||||
|
||||
@@ -16112,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:
|
||||
|
||||
@@ -16141,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
|
||||
@@ -27267,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
|
||||
@@ -53549,9 +53462,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
|
||||
|
||||
@@ -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"
|
||||
@@ -1218,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")))
|
||||
@@ -1249,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")
|
||||
|
||||
@@ -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 }
|
||||
|
||||
+10
-19
@@ -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."))))
|
||||
|
||||
+6
-13
@@ -610,7 +610,6 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/rocm-apps.scm \
|
||||
%D%/packages/rocm-libs.scm \
|
||||
%D%/packages/rocm-tools.scm \
|
||||
%D%/packages/rocq.scm \
|
||||
%D%/packages/rpc.scm \
|
||||
%D%/packages/rpm.scm \
|
||||
%D%/packages/rrdtool.scm \
|
||||
@@ -1131,10 +1130,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/clucene-gcc-14.patch \
|
||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/codex-acp-0.11.1-disable-code-mode.patch \
|
||||
%D%/packages/patches/codex-acp-0.11.1-remove-patch-sections.patch \
|
||||
%D%/packages/patches/codex-acp-0.9.2-remove-patch-sections.patch \
|
||||
%D%/packages/patches/codex-acp-0.9.2-replace-result-flatten.patch \
|
||||
%D%/packages/patches/codex-0.98.0-remove-patch-sections.patch \
|
||||
%D%/packages/patches/rust-codex-0.117.0-remove-patch-sections.patch \
|
||||
%D%/packages/patches/cogl-fix-double-free.patch \
|
||||
%D%/packages/patches/collada-dom-boost.patch \
|
||||
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
|
||||
@@ -1455,6 +1453,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ghc-aeson-encodeDouble.patch \
|
||||
%D%/packages/patches/ghc-basement-fix-32bit.patch \
|
||||
%D%/packages/patches/ghc-bytestring-handle-ghc9.patch \
|
||||
%D%/packages/patches/ghc-chell-quickcheck-enable-qc-2.15.patch \
|
||||
%D%/packages/patches/ghc-clock-realfrag.patch \
|
||||
%D%/packages/patches/ghc-language-haskell-extract-ghc-8.10.patch \
|
||||
%D%/packages/patches/ghc-memory-fix-32bit.patch \
|
||||
@@ -1468,6 +1467,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 \
|
||||
@@ -1617,6 +1617,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 \
|
||||
@@ -1652,7 +1653,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 \
|
||||
@@ -1713,7 +1713,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 \
|
||||
@@ -1746,7 +1745,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 \
|
||||
@@ -2259,7 +2258,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 \
|
||||
@@ -2395,11 +2393,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
|
||||
%D%/packages/patches/rust-codex-0.98.0-test-timeout.patch \
|
||||
%D%/packages/patches/rust-codex-0.98.0-windows-sandbox-protocol-version.patch \
|
||||
%D%/packages/patches/rust-codex-0.117.0-core-remove-self-dep.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-core-remove-self-dep.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-connectors-cache-test-race.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-remove-libwebrtc.patch \
|
||||
%D%/packages/patches/rust-codex-0.120.0-test-timeout.patch \
|
||||
%D%/packages/patches/rust-ring-0.17-ring-core.patch \
|
||||
%D%/packages/patches/rw-igraph-0.10.patch \
|
||||
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
|
||||
|
||||
+4
-34
@@ -1158,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)
|
||||
@@ -1166,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
|
||||
@@ -1309,8 +1309,7 @@ re-executing them as necessary.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))
|
||||
(patches (search-patches "inetutils-drop-test.patch"))))
|
||||
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3442,7 +3441,7 @@ modules and plugins that extend Ansible.")
|
||||
(list ansible
|
||||
bash-minimal
|
||||
encfs
|
||||
fuse
|
||||
fuse-2
|
||||
util-linux ;; for umount
|
||||
findutils
|
||||
git
|
||||
@@ -7170,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")
|
||||
|
||||
+20
-12
@@ -765,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))
|
||||
@@ -773,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
|
||||
@@ -792,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
|
||||
@@ -1177,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
|
||||
@@ -1197,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
|
||||
|
||||
+20
-26
@@ -6529,23 +6529,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"
|
||||
@@ -6553,20 +6552,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
|
||||
@@ -6585,16 +6582,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
|
||||
|
||||
@@ -37,8 +37,6 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages ruby-check)
|
||||
#:use-module (gnu packages ruby-xyz)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages libffi)
|
||||
@@ -55,7 +53,6 @@
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system ruby)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:autoload (guix gnupg) (gnupg-verify*)
|
||||
#:autoload (guix base32) (bytevector->nix-base32-string)
|
||||
@@ -516,46 +513,6 @@ function interface (FFI) directly in your shell. In other words, it allows
|
||||
you to call routines in shared libraries from within Bash.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public bashly
|
||||
(package
|
||||
(name "bashly")
|
||||
(version "1.3.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "bashly" version))
|
||||
(sha256
|
||||
(base32 "17msjzca5ifx8biimdjps655w51yc82d5ys9hwn749bi2f3n8mcz"))))
|
||||
(build-system ruby-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "rspec" "-c" "spec")))))))
|
||||
(native-inputs (list ruby-rspec))
|
||||
(propagated-inputs (list ruby-colsole
|
||||
ruby-completely
|
||||
ruby-filewatcher
|
||||
ruby-gtx
|
||||
ruby-logger
|
||||
ruby-lp
|
||||
ruby-mister-bin
|
||||
ruby-ostruct
|
||||
ruby-requires
|
||||
ruby-tty-markdown))
|
||||
(synopsis
|
||||
"Create feature-rich Bash scrips using simple YAML configuration")
|
||||
(description
|
||||
"Bashly is a CLI for generating feature-rich Bash command line
|
||||
tools. Bashly lets you focus on your specific code, without worrying about
|
||||
command line argument parsing, usage texts, error messages and other functions
|
||||
that are usually handled by a framework in other programming languages.")
|
||||
(home-page "https://bashly.dev/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public blesh
|
||||
(package
|
||||
(name "blesh")
|
||||
|
||||
@@ -22349,6 +22349,37 @@ combinatorial configurations.\", G. Ehrlich - Journal of the ACM (JACM),
|
||||
1973. (Algorithm 7.)")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public fsom
|
||||
(let ((commit "a6ef318fbd347c53189384aef7f670c0e6ce89a3"))
|
||||
(package
|
||||
(name "fsom")
|
||||
(version (git-version "0.0.0" "1" commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ekg/fsom/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0gw1lpvr812pywg9y546x0h1hhj261xwls41r6kqhddjlrcjc0pi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; There are no tests to run.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure) ; There is no configure phase.
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
|
||||
(install-file "fsom" bin)))))))
|
||||
(native-inputs
|
||||
(list gcc-6))
|
||||
(home-page "https://github.com/ekg/fsom")
|
||||
(synopsis "Manage SOM (Self-Organizing Maps) neural networks")
|
||||
(description "A tiny C library for managing SOM (Self-Organizing Maps)
|
||||
neural networks.")
|
||||
(license license:gpl3))))
|
||||
|
||||
(define-public fastahack
|
||||
(package
|
||||
(name "fastahack")
|
||||
|
||||
@@ -275,14 +275,14 @@ generate such a compilation database.")
|
||||
(define-public bmake
|
||||
(package
|
||||
(name "bmake")
|
||||
(version "20260406")
|
||||
(version "20260313")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "09nzd9v12n2pwxmf67056kzjnvxcpk5q2x1fs5qkrsk1ssh5yvpd"))
|
||||
(base32 "0xgryknmv625idw37rq89mpl5rymwdb15j5w8zxwy1gf8b6z7j3n"))
|
||||
(patches (search-patches "bmake-run-check-separately.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
|
||||
+3
-3
@@ -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>
|
||||
;;;
|
||||
@@ -1762,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)
|
||||
@@ -1771,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")
|
||||
|
||||
+25
-1
@@ -3131,7 +3131,7 @@ time by mocking the datetime module.")
|
||||
(define-public python-flaky
|
||||
(package
|
||||
(name "python-flaky")
|
||||
(version "3.8.1") ; On bump, remove some skipped tests in python-cherrypy.
|
||||
(version "3.8.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "flaky" version))
|
||||
@@ -3719,6 +3719,30 @@ system. The code under test requires no modification to work with pyfakefs.")
|
||||
directories and files.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-pytest-tornado5
|
||||
(package
|
||||
(name "python-pytest-tornado5")
|
||||
(version "2.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pytest-tornado5" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
;; Tests require pytest < 6
|
||||
(list #:tests? #f))
|
||||
(propagated-inputs (list python-pytest python-tornado))
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(home-page "https://github.com/vidartf/pytest-tornado")
|
||||
(synopsis
|
||||
"Fixtures and markers to simplify testing of Tornado applications")
|
||||
(description
|
||||
"This package provides a @code{py.test} plugin supplying fixtures and
|
||||
markers to simplify testing of asynchronous tornado applications.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public guile-proba
|
||||
(package
|
||||
(name "guile-proba")
|
||||
|
||||
@@ -580,7 +580,7 @@ stored with user-specified precision.")
|
||||
python-sphinx))
|
||||
(inputs
|
||||
(list fftwf
|
||||
`(,hwloc "lib")
|
||||
`(,hwloc-2 "lib")
|
||||
libtirpc
|
||||
lmfit
|
||||
muparser
|
||||
|
||||
+125
-422
@@ -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.120.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.120.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,41 +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.120.0))
|
||||
(version (package-version rust-codex-0.98.0))
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source rust-codex-0.120.0))
|
||||
(inherit (package-source rust-codex-0.98.0))
|
||||
(patches (search-patches
|
||||
"codex-acp-0.11.1-disable-code-mode.patch"
|
||||
"rust-codex-0.117.0-remove-patch-sections.patch"
|
||||
"rust-codex-0.120.0-connectors-cache-test-race.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
|
||||
#:cargo-install-paths '(list "cli" "exec" "exec-server"
|
||||
"linux-sandbox" "mcp-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,
|
||||
@@ -79,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,
|
||||
@@ -141,213 +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")
|
||||
"--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"
|
||||
@@ -356,60 +226,35 @@
|
||||
"codex-secrets"
|
||||
"codex-execpolicy-legacy"
|
||||
"codex-debug-client"
|
||||
"codex-analytics"
|
||||
"codex-rollout"
|
||||
"codex-terminal-detection"
|
||||
"codex-utils-approval-presets"
|
||||
"codex-utils-cli"
|
||||
;;; Tier 2.
|
||||
"codex-app-server-protocol"
|
||||
"codex-rmcp-client"
|
||||
"codex-otel"
|
||||
"codex-state"
|
||||
"codex-features"
|
||||
"codex-config"
|
||||
"codex-hooks"
|
||||
"codex-instructions"
|
||||
"codex-code-mode"
|
||||
"codex-feedback"
|
||||
"codex-skills"
|
||||
"codex-core"
|
||||
"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.
|
||||
@@ -425,7 +270,7 @@
|
||||
;; Update them to match the actual package version.
|
||||
(let ((snap-files (find-files "." "\\.snap$")))
|
||||
(substitute* snap-files
|
||||
(("\\(v0\\.0\\.0\\) ") "(v0.120.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
|
||||
@@ -434,34 +279,23 @@
|
||||
(("nucleo = \\{ git = [^}]+\\}")
|
||||
"nucleo = \"0.5.0\"")
|
||||
(("runfiles = \\{ git = [^}]+\\}")
|
||||
"runfiles = \"0.1.0\""))
|
||||
;; Remove workspace members that have unbuildable deps
|
||||
;; (libwebrtc requires git fetch, v8-poc requires V8).
|
||||
(substitute* "Cargo.toml"
|
||||
(("\"v8-poc\",") "")
|
||||
(("\"code-mode\",") ""))
|
||||
;; Disable V8 runtime in codex-code-mode: remove path
|
||||
;; so cargo resolves it from the vendor (where it has
|
||||
;; optional = true on v8) and disable default features.
|
||||
(substitute* "Cargo.toml"
|
||||
(("codex-code-mode = \\{ path = \"code-mode\" \\}")
|
||||
"codex-code-mode = { version = \"0.120.0\", default-features = false }"))))
|
||||
(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.
|
||||
;; cargo package requires all dependencies to have versions.
|
||||
;; Add version = "0.120.0" to internal path dependencies.
|
||||
;; 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.120.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.120.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.120.0\""))))))
|
||||
(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
|
||||
@@ -491,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 "\""))
|
||||
@@ -513,120 +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/tests/suite/client.rs"
|
||||
"core/tests/suite/js_repl.rs"
|
||||
"core/tests/suite/skill_approval.rs"
|
||||
"core/tests/suite/user_notification.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 "HOME" "/tmp")
|
||||
(setenv "USER" "nixbld"))))))
|
||||
(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))))
|
||||
(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")
|
||||
@@ -634,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)
|
||||
@@ -651,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
|
||||
@@ -660,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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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>
|
||||
@@ -3360,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
|
||||
@@ -3369,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
|
||||
@@ -3608,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
|
||||
@@ -3617,7 +3617,7 @@ std::wstring, etc).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l13nsl4sgq71m7aifrmmmfyl14vp48vqdh7pb50hxqq6f8bq2b5"))))
|
||||
"19x1yklf641yrpad6lk4cq3jmird10d5ig8hicm3p9lxh92k78cl"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -3628,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++")
|
||||
|
||||
+12
-11
@@ -276,17 +276,18 @@ Ed448-Goldilocks and Curve448, using the Decaf encoding.")
|
||||
(define-public libsodium
|
||||
(package
|
||||
(name "libsodium")
|
||||
(version "1.0.22")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jedisct1/libsodium")
|
||||
(commit (string-append version "-RELEASE"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"05lqdn6nzldsia5mv5a9xfvc5k0kybh9snwv7qsb135gva4bpjwk"))))
|
||||
(version "1.0.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append
|
||||
"https://download.libsodium.org/libsodium/"
|
||||
"releases/libsodium-" version ".tar.gz")
|
||||
(string-append
|
||||
"https://download.libsodium.org/libsodium/"
|
||||
"releases/old/libsodium-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1h9ncvj23qbbni958knzsli8dvybcswcjbx0qjjgi922nf848l3g"))))
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "Portable NaCl-based crypto library")
|
||||
(description
|
||||
|
||||
@@ -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,7 +197,6 @@
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (guix build-system guile)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix build-system pyproject)
|
||||
@@ -3100,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")
|
||||
@@ -5049,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")
|
||||
|
||||
+10
-12
@@ -31,13 +31,13 @@
|
||||
(define-public dhall
|
||||
(package
|
||||
(name "dhall")
|
||||
(version "1.41.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "dhall" version))
|
||||
(sha256
|
||||
(base32
|
||||
"14m5rrvkid76qnvg0l14xw1mnqclhip3gjrz20g1lp4fd5p056ka"))))
|
||||
(version "1.42.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "dhall" version))
|
||||
(sha256
|
||||
(base32 "0fvvqvh6diqi55dmncfs06rvcw8k0a1hs2gq228yxvsfbzcpv44s"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "dhall")))
|
||||
(inputs (list ghc-aeson
|
||||
@@ -73,8 +73,8 @@
|
||||
ghc-text-manipulate
|
||||
ghc-text-short
|
||||
ghc-th-lift-instances
|
||||
ghc-unix-compat
|
||||
ghc-unordered-containers
|
||||
ghc-uri-encode
|
||||
ghc-vector
|
||||
ghc-cryptohash-sha256
|
||||
ghc-http-types
|
||||
@@ -86,7 +86,6 @@
|
||||
ghc-quickcheck-instances
|
||||
ghc-special-values
|
||||
ghc-spoon
|
||||
ghc-system-filepath
|
||||
ghc-tasty
|
||||
ghc-tasty-expected-failure
|
||||
ghc-tasty-hunit
|
||||
@@ -97,9 +96,8 @@
|
||||
ghc-mockery
|
||||
ghc-doctest))
|
||||
(arguments
|
||||
`(#:tests? #f ; Tries to access httpbin.org
|
||||
#:cabal-revision ("4"
|
||||
"0innb3cn98ynb8bd83jdyrm64ij7wcvajg5qcwzdwbyzpr62anfx")))
|
||||
`(#:cabal-revision ("2"
|
||||
"1h9kxpn3kzwmxj07mqc0cxjj2ak3dyxnifb78z5vn34xn747j5bk")))
|
||||
(home-page "http://hackage.haskell.org/package/dhall")
|
||||
(synopsis "Configuration language guaranteed to terminate")
|
||||
(description
|
||||
|
||||
+1
-46
@@ -31,7 +31,7 @@
|
||||
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
|
||||
;;; Copyright © 2025, 2026 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2025 Grigory Shepelev <shegeley@gmail.com>
|
||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||
|
||||
@@ -94,8 +94,6 @@
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages golang-build)
|
||||
#:use-module (gnu packages golang-check)
|
||||
#:use-module (gnu packages golang-compression)
|
||||
#:use-module (gnu packages golang-xyz)
|
||||
#:use-module (gnu packages graphics)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -422,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")
|
||||
|
||||
@@ -77,8 +77,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)
|
||||
@@ -95,8 +93,6 @@
|
||||
#: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)
|
||||
@@ -307,58 +303,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 +498,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
|
||||
|
||||
@@ -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.")))
|
||||
|
||||
|
||||
@@ -290,7 +290,7 @@ based upon the Common Locale Data Repository (CLDR).")
|
||||
(package
|
||||
(inherit elixir-ex-cldr-minimal)
|
||||
(name "elixir-ex-cldr")
|
||||
(version "2.47.2")
|
||||
(version "2.43.2")
|
||||
(source
|
||||
(origin
|
||||
;; The hex.pm package ships only the en locale.
|
||||
@@ -300,7 +300,7 @@ based upon the Common Locale Data Repository (CLDR).")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rivy61aq0c9zfklm4bpvvkj7lzjgy316rwxl8qz92xqp6xa292y"))))
|
||||
(base32 "1wgwp74ya0gkvd5pk4qv9s38p85r5yw370y4wv7jywy3hrbrj9f5"))))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
|
||||
@@ -303,17 +303,7 @@ purposes. Its goal is to be as close as possible to
|
||||
(list
|
||||
#:test-flags
|
||||
;; These tests require network access to badssl.com.
|
||||
#~(list "--exclude" "network")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'make-reproducible
|
||||
(lambda _
|
||||
;; Buffer size has been increased in OTP 28+. For more info see:
|
||||
;; https://github.com/erlang/otp/issues/9722#issuecomment-2808683303
|
||||
(substitute* "test/httpoison_test.exs"
|
||||
(("stream/20") "stream/100")
|
||||
(("<= expected_length") "<= expected_length * 1.1")
|
||||
((">= max_length") ">= max_length * 0.9")))))))
|
||||
#~(list "--exclude" "network")))
|
||||
(native-inputs
|
||||
(list erlang-cowboy
|
||||
elixir-earmark
|
||||
|
||||
@@ -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")
|
||||
|
||||
+87
-644
@@ -56,7 +56,7 @@
|
||||
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
|
||||
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||
;;; Copyright © 2019 Stephen Webber <montokapro@gmail.com>
|
||||
;;; Copyright © 2019, 2021—2026 Liliana Marie Prikler <liliana.prikler@gmail.com>
|
||||
;;; Copyright © 2019, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
|
||||
;;; Copyright © 2019 David Wilson <david@daviwil.com>
|
||||
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
|
||||
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
|
||||
@@ -147,7 +147,7 @@
|
||||
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
||||
;;; Copyright © 2024, 2025 Spencer King <spencer.king@wustl.edu>
|
||||
;;; Copyright © 2024 emma thompson <bigbookofbug@proton.me>
|
||||
;;; Copyright © 2024-2026 Liam Hupfer <liam@hpfr.net>
|
||||
;;; Copyright © 2024-2025 Liam Hupfer <liam@hpfr.net>
|
||||
;;; Copyright © 2024-2025 Alvin Hsu <aurtzy@gmail.com>
|
||||
;;; Copyright © 2024 Olivier Rojon <o.rojon@posteo.net>
|
||||
;;; Copyright © 2024 Divya Ranjan Pattanaik <divya@subvertising.org>
|
||||
@@ -264,7 +264,6 @@
|
||||
#:use-module (gnu packages lisp-xyz)
|
||||
#:use-module (gnu packages lsof)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages machine-learning)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages music)
|
||||
#:use-module (gnu packages version-control)
|
||||
@@ -656,30 +655,6 @@ supported algorithm is chosen to ensure interoperability with
|
||||
Emacs Lisp.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public emacs-org-arbeitszeit
|
||||
(package
|
||||
(name "emacs-org-arbeitszeit")
|
||||
(version "0.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bkaestner/org-arbeitszeit")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0krxainwpn7bnnvbrrhivmh302i9dyfixs6l5wb7xw7qpjgwqzc8"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments (list #:tests? #f)) ; no tests
|
||||
(home-page "https://github.com/bkaestner/org-arbeitszeit")
|
||||
(synopsis "Calculate your worktime")
|
||||
(description
|
||||
"This package provides a new dynamic block for Org called \"arbeitszeit\"
|
||||
(German for \"working hours\"). The dynamic block collects all clocked hours and
|
||||
provides a weekly table to quickly see your accumulated overtime. To insert a
|
||||
new block, use @samp{M-x org-dynamic-block-insert-dblock}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-perl-doc
|
||||
(package
|
||||
(name "emacs-perl-doc")
|
||||
@@ -781,54 +756,6 @@ balance windows (keeping them roughly the same size) whenever the window
|
||||
configuration changes, e.g. after splitting or deleting a window.")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public emacs-ben
|
||||
(package
|
||||
(name "emacs-ben")
|
||||
(version "0.12.11")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/pastor/ben.el")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0iqrk87dl567vwpwm8rmplrpva475a04s6c34rm24xfy2m7wrwk6"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-environment
|
||||
(lambda _
|
||||
;; Since the testsuite uses `direnv', the build needs a home
|
||||
;; directory so `direnv' can allow the contents of the `.envrc`
|
||||
;; files generated for the different tests.
|
||||
(setenv "HOME" "/tmp")
|
||||
(setenv "OFFLINE" "1") ;Enable offline tests.
|
||||
(emacs-substitute-variables "ben.el"
|
||||
("ben-direnv-executable"
|
||||
#$(file-append (this-package-input "direnv")
|
||||
"/bin/direnv"))))))))
|
||||
(inputs (list direnv))
|
||||
(propagated-inputs (list emacs-inheritenv))
|
||||
(home-page "https://codeberg.org/pastor/ben.el")
|
||||
(synopsis "Asynchronous buffer-local environments via @command{direnv}")
|
||||
(description
|
||||
"This package allows you to load environments buffer locally. The
|
||||
package is named @command{ben}, which stands for Buffer ENvironments.
|
||||
|
||||
The project relies on @uref{https://direnv.net, direnv} which allows setting
|
||||
per-directory environments through @file{.envrc} files.
|
||||
|
||||
The main improvement of @command{ben} over @command{envrc} is the asynchronous
|
||||
processing of environments, which prevents Emacs from freezing. This is
|
||||
especially useful while loading computationally heavy environments, such when
|
||||
loading @file{.envrc} files that rely on Guix. In these cases, computations
|
||||
can take hours to complete. This package aims to facilitate loading such
|
||||
environments in the background.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-bookmark-plus
|
||||
(package
|
||||
(name "emacs-bookmark-plus")
|
||||
@@ -857,7 +784,7 @@ reading the extensive documentation about BookmarkPlus on the Emacs Wiki.")
|
||||
(package
|
||||
(name "emacs-bqn-mode")
|
||||
;; Upstream releases are tagged by date.
|
||||
(version "2026-02-08")
|
||||
(version "2025-07-06")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -866,7 +793,7 @@ reading the extensive documentation about BookmarkPlus on the Emacs Wiki.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1m9l4if3a9i6r76v370gh6azgj2lwqcnpavfv2bkvm9ad56f3pa8"))))
|
||||
(base32 "1b25k66nn4qa4ryhm8mzc53qvsvhgjzdngisw28cpdh109627iz3"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;No tests found in source.
|
||||
@@ -906,7 +833,7 @@ input via a small child-frame spawned at the position of the cursor.")
|
||||
(define-public emacs-arei
|
||||
(package
|
||||
(name "emacs-arei")
|
||||
(version "0.9.7")
|
||||
(version "0.9.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -916,13 +843,10 @@ input via a small child-frame spawned at the position of the cursor.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fp4l8rzfd7cds80p8c9jgwwlb7rsw35djh0hs50g89h937w5s02"))))
|
||||
"1m8ic5pcshz2y2maxvbgg70n4k2kgxvj98zisqal15j7djz0hzji"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:lisp-directory "lisp"
|
||||
#:tests? #f)) ; no tests
|
||||
(propagated-inputs
|
||||
(list emacs-consult emacs-eros emacs-sesman emacs-queue))
|
||||
(arguments (list #:tests? #f)) ; no tests
|
||||
(propagated-inputs (list emacs-eros emacs-sesman emacs-queue))
|
||||
(home-page "https://git.sr.ht/~abcdw/emacs-arei")
|
||||
(synopsis "Asynchronous Reliable Extensible IDE")
|
||||
(description "Sleek Guile IDE for Emacs.")
|
||||
@@ -4404,39 +4328,25 @@ perform static analysis of Perl code.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-flymake-flycheck
|
||||
(let ((commit "cbc0fc81bf369b36fe29a49d9e24708027f6da38")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-flymake-flycheck")
|
||||
(version (git-version "0.2" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/purcell/flymake-flycheck")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0fda1n8hhklbq6p1s2dlvgc9xd0qy7qzb8yvxq89idx1irjx0785"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ; There is only a lint-check
|
||||
(propagated-inputs
|
||||
(list emacs-flycheck))
|
||||
(home-page "https://github.com/purcell/flymake-flycheck")
|
||||
(synopsis "Use Flycheck checkers as Flymake backends")
|
||||
(description
|
||||
"This package provides support for running any Flycheck checker as a
|
||||
(package
|
||||
(name "emacs-flymake-flycheck")
|
||||
(version "20210404.2128")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://melpa.org/packages/flymake-flycheck-"
|
||||
version ".el"))
|
||||
(sha256
|
||||
(base32 "1m59ahd5gjlfwf328labwdlpcxh8ywywkwgfrlsy5jyxfc9ss4nv"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-flycheck))
|
||||
(home-page "https://github.com/purcell/flymake-flycheck")
|
||||
(synopsis "Use Flycheck checkers as Flymake backends")
|
||||
(description
|
||||
"This package provides support for running any Flycheck checker as a
|
||||
Flymake diagnostic backend. The effect is that Flymake will control when the
|
||||
checker runs, and Flymake will receive its errors.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-flymake-flycheck-superseded-version
|
||||
(package
|
||||
(inherit emacs-flymake-flycheck)
|
||||
(version "20210404.2128")
|
||||
(properties (list (cons 'superseded emacs-flymake-flycheck)))))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-flymake-quickdef
|
||||
;; This particular commit includes bug fixes on top of 1.0.0 release.
|
||||
@@ -8568,36 +8478,23 @@ them whenever another command is invoked.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-keyfreq
|
||||
(let ((commit "c6955162307f37c2ac631d9daf118781009f8dda")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-keyfreq")
|
||||
(version (git-version "1.8" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dacap/keyfreq")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"18iw0jwr9hmxv5vikqf28sknml0k14rvddp80s2cm6bglaz4sdc3"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ; No tests
|
||||
(home-page "https://github.com/dacap/keyfreq")
|
||||
(synopsis "Track Emacs command frequencies")
|
||||
(description
|
||||
"@code{emacs-keyfeq} tracks and shows how many times you used a command.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-keyfreq-superseded-version
|
||||
(package
|
||||
(inherit emacs-keyfreq)
|
||||
(name "emacs-keyfreq")
|
||||
(version "20160516.716")
|
||||
(properties (list (cons 'superseded emacs-keyfreq)))))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://melpa.org/packages/keyfreq-"
|
||||
version ".el"))
|
||||
(sha256
|
||||
(base32
|
||||
"008hd7d06qskc3mx0bbdgpgy2pwxr8185fzlyqf9qjg49y74p6g8"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/dacap/keyfreq")
|
||||
(synopsis "Track Emacs command frequencies")
|
||||
(description "@code{emacs-keyfeq} tracks and shows how many times you used
|
||||
a command.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-khalel
|
||||
(package
|
||||
@@ -13593,8 +13490,8 @@ for compilation, debugging, documentation lookup, and so on.")
|
||||
(license (list license:gpl2+ license:public-domain))))
|
||||
|
||||
(define-public emacs-sliver
|
||||
(let ((commit "b4cb9cd2a810ba59c946e2592c4a4d56060a8d22")
|
||||
(revision "1"))
|
||||
(let ((commit "d08d41947bb943f25ee2de9573459a6c720e027f")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-sliver")
|
||||
;; No tagged releases. Version comes from source code.
|
||||
@@ -13607,7 +13504,7 @@ for compilation, debugging, documentation lookup, and so on.")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wddivmp5f4m6fdib96vfylqp4kgcw3ipdsi4b9w50dqzvrqrfjh"))))
|
||||
(base32 "08qycim0mxyiqbik9hjlmzpdggl506bcsv1q1icxzd05bm73sh6n"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -13909,28 +13806,6 @@ structure as input representing the HTML tree you want to generate and
|
||||
generates it as a string. Please see the homepage for usage examples.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-jag
|
||||
(package
|
||||
(name "emacs-jag")
|
||||
(version "0.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/martianh/jag.el")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0hfv3hf0p7y5imrzb6rv90cjxd22ih2n529ggc7fwgd1n40zvgj8"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-string-inflection emacs-swagg))
|
||||
(home-page "https://codeberg.org/martianh/jag.el")
|
||||
(synopsis "Generate API client libraries in elisp using swagg.el")
|
||||
(description
|
||||
"This package provides utilities to use swagg.el to generate API client
|
||||
libraries from Swagger specs.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-jedi
|
||||
(package
|
||||
(name "emacs-jedi")
|
||||
@@ -15355,39 +15230,25 @@ markdown features.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public emacs-2048-game
|
||||
;; No tagged releases. Version comes from 2048-game.el
|
||||
(let ((changeset "0e7210d05e6faf53c7bdc8be2381dc0d4c8b19f3")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-2048-game")
|
||||
(version (hg-version "2023.8.8.1" revision changeset))
|
||||
(source
|
||||
(origin
|
||||
(method hg-fetch)
|
||||
(uri (hg-reference
|
||||
(url "https://hg.sr.ht/~zck/game-2048")
|
||||
(changeset changeset)))
|
||||
(file-name (hg-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01xzmi2613d4zwnrh9iywipxx8ml76yqik90mx4mpyar19a6ypi8"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ; No tests
|
||||
(home-page "https://hg.sr.ht/~zck/game-2048")
|
||||
(synopsis "Implementation of the game 2048 in Emacs Lisp")
|
||||
(description
|
||||
"This program is an implementation of 2048 for Emacs.
|
||||
(package
|
||||
(name "emacs-2048-game")
|
||||
(version "20151026.1233")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://melpa.org/packages/2048-game-"
|
||||
version ".el"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gy2pvz79whpavp4jmz8h9krzn7brmvv3diixi1d4w51pcdvaldd"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://hg.sr.ht/~zck/game-2048")
|
||||
(synopsis "Implementation of the game 2048 in Emacs Lisp")
|
||||
(description
|
||||
"This program is an implementation of 2048 for Emacs.
|
||||
The goal of this game is to create a tile with value 2048. The size of the
|
||||
board and goal value can be customized.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-2048-game-superseded-version
|
||||
(package
|
||||
(inherit emacs-2048-game)
|
||||
(version "20151026.1233")
|
||||
(properties (list (cons 'superseded emacs-2048-game)))))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-chess
|
||||
(package
|
||||
@@ -15872,16 +15733,8 @@ versions utilizing Consult's internal API.")
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Move the extensions source files to the top level, which is
|
||||
;; included in the EMACSLOADPATH.
|
||||
(add-after 'unpack 'move-source-files
|
||||
(lambda _
|
||||
(let ((el-files (find-files "./extensions" ".*\\.el$")))
|
||||
(for-each (lambda (f)
|
||||
(rename-file f (basename f)))
|
||||
el-files)))))))
|
||||
#:include #~(cons "^extensions\\/consult-eglot-embark"
|
||||
%default-include)))
|
||||
(propagated-inputs (list emacs-consult emacs-eglot emacs-embark))
|
||||
(home-page "https://github.com/mohkale/consult-eglot")
|
||||
(synopsis "Consulting-read interface for eglot")
|
||||
@@ -16963,32 +16816,6 @@ The following completions are currently available:
|
||||
@end itemize")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-swagg
|
||||
(package
|
||||
(name "emacs-swagg")
|
||||
(version "0.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/isamert/swagg.el")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xlknc7j5vz1sv5gwr8v6vyfginflsksjyzx6qz1svibkdwp223g"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-compat
|
||||
emacs-dash
|
||||
emacs-s
|
||||
emacs-request
|
||||
emacs-yaml))
|
||||
(home-page "https://github.com/isamert/swagg.el")
|
||||
(synopsis "UI to interact with OpenAPI definations")
|
||||
(description
|
||||
"This package provides a practical Emacs UI for OpenAPI definitions. It
|
||||
lets you fetch and interact with OpenAPI (formerly Swagger) definitions.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-sway
|
||||
(let ((commit "84eae5e16a643eb00b0a422ded751cceb17cc8f0")
|
||||
(revision "0"))
|
||||
@@ -24753,13 +24580,6 @@ Meow’s motions.")
|
||||
#:tests? #f ; no test suite
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'patch-el-files 'patch-xauth-path
|
||||
;; Uses xauth directly at runtime to authenticate with the X server.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "xcb.el"
|
||||
(("xauth list")
|
||||
(string-append (search-input-file inputs "/bin/xauth")
|
||||
" list")))))
|
||||
(add-after 'expand-load-path 'regenerate-el-files
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
(substitute* "xelb-gen"
|
||||
@@ -24767,7 +24587,6 @@ Meow’s motions.")
|
||||
(invoke "make"
|
||||
(format #f "PROTO_PATH=~a/share/xcb"
|
||||
#$(this-package-native-input "xcb-proto"))))))))
|
||||
(inputs (list xauth))
|
||||
(native-inputs (list xcb-proto))
|
||||
(propagated-inputs (list emacs-compat))
|
||||
(home-page "https://github.com/emacs-exwm/xelb")
|
||||
@@ -25154,7 +24973,7 @@ lines, and @code{gc} to comment out the target of a motion.")
|
||||
(define-public emacs-eglot
|
||||
(package
|
||||
(name "emacs-eglot")
|
||||
(version "1.23")
|
||||
(version "1.21")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -25162,7 +24981,7 @@ lines, and @code{gc} to comment out the target of a motion.")
|
||||
".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"1l83c90rdamlk576bd859jkg6406hgxi7w4c6ixlw509c66qr3s6"))))
|
||||
"03fx22rv8ijxq0jnn7xlfqhkpk2b109ygpjbcchp41sa4q7d6nbl"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-eldoc
|
||||
@@ -25875,52 +25694,6 @@ available key bindings that follow C-x (or as many as space allows given your
|
||||
settings).")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-whisper-el
|
||||
(let ((commit "fd9bf5787a99dd31a4bdf54d2bd9821aacf84e93")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-whisper-el")
|
||||
(version "0.4.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/natrys/whisper.el")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0za55s117v7sc7cj4xlxxhkaamjlggs1g319n7fz54saa2wzmdj5"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-external-programs
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "whisper.el"
|
||||
(("\\(executable-find \"ffmpeg\"\\)")
|
||||
"t")
|
||||
(("\"ffmpeg\"")
|
||||
(string-append "\"" #$(this-package-input "ffmpeg")
|
||||
"/bin/ffmpeg\""))
|
||||
((",\\(whisper--find-whispercpp-main\\)")
|
||||
(string-append "\"" #$(this-package-input "whisper-cpp")
|
||||
"/bin/whisper-cli\"")))
|
||||
(emacs-substitute-variables "whisper.el"
|
||||
("whisper-install-whispercpp" 'nil)))))))
|
||||
(inputs
|
||||
(list ffmpeg whisper-cpp))
|
||||
(home-page "https://github.com/natrys/whisper.el")
|
||||
(synopsis "Speech to text interface for Emacs")
|
||||
(description
|
||||
"@code{emacs-whisper-el} captures audio with an input device, and
|
||||
transcribes text inserted into current Emacs buffer, optionally after
|
||||
translating to English from your local language. Transcription uses the
|
||||
C/C++ port whisper.cpp for inference.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
;; Tagged release upstream is from before the package was orphaned.
|
||||
;; The base version is extracted from the "Version" keyword in the main file
|
||||
;; with "-git" suffix removed.
|
||||
@@ -28599,7 +28372,7 @@ unstructured, meant for quick @code{JavaScript} experiments.")
|
||||
(define-public emacs-firefox-release-notes
|
||||
(package
|
||||
(name "emacs-firefox-release-notes")
|
||||
(version "1.8")
|
||||
(version "1.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -28610,7 +28383,7 @@ unstructured, meant for quick @code{JavaScript} experiments.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13ymnx4vgiq5f3cjk3zddrq4xnv6116j5zzza67v98q7rsvzl049"))))
|
||||
(base32 "1i9ncnn0qys0v0bqw87jwx0sa2g31n1i1gfr9zqdml3hakyz8b5f"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -32121,31 +31894,6 @@ leverages the Parinfer Rust Emacs library to do most of the heavy lifting.")
|
||||
bookmarks and history.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-shr-syntax-highlight
|
||||
(package
|
||||
(name "emacs-shr-syntax-highlight")
|
||||
(version "0.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/coopi/emacs-shr-syntax-highlight")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04ax8svpw2s0085pp93dsz5xhhbqr58ghkr1ab2g38pczlsbz18s"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://codeberg.org/coopi/emacs-shr-syntax-highlight")
|
||||
(synopsis "Syntax highlighting for code blocks rendered by shr")
|
||||
(description
|
||||
"This package adds syntax highlighting to @code{<pre>} code blocks
|
||||
rendered by @acronym{@code{shr}, Simple @acronym{HTML, HyperText Markup
|
||||
Language} Renderer}, used by @acronym{EWW, Emacs Web Wowser} and similar
|
||||
interfaces. It reads @acronym{CSS, Cascading Style Sheets} class annotations
|
||||
such as @code{language-python} and fontifies block contents using the
|
||||
corresponding Emacs major mode.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public emacs-stumpwm-mode
|
||||
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
|
||||
(revision "3"))
|
||||
@@ -35664,199 +35412,12 @@ files are easily readable and they work nicely with version control systems.")
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:include #~(cons "^data\\/" %default-include)
|
||||
#:tests? #f ; no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; The nerd-icons-install-fonts function would otherwise
|
||||
;; download fonts from the network. Replace it with a stub
|
||||
;; that instructs the user to install the font via Guix.
|
||||
(add-after 'unpack 'disable-font-installer
|
||||
(lambda _
|
||||
(emacs-batch-edit-file "nerd-icons.el"
|
||||
'(progn
|
||||
(search-forward "(defun nerd-icons-install-fonts")
|
||||
(beginning-of-line)
|
||||
(kill-sexp)
|
||||
(insert "\
|
||||
(defun nerd-icons-install-fonts (&optional pfx)
|
||||
(interactive \"P\")
|
||||
(message \"To use nerd-icons fonts, install `font-nerd-symbols' using
|
||||
`guix package -i font-nerd-symbols' or add it to your manifest or home config.
|
||||
Remember, that you may have to run `fc-cache -rv' to refresh the font cache.\
|
||||
\"))")
|
||||
(basic-save-buffer))))))))
|
||||
#:tests? #f)) ; no tests
|
||||
(synopsis "Library for easily using nerd font icons inside Emacs")
|
||||
(description "Nerd-icons an alternative to all-the-icons. It works on both
|
||||
GUI and terminal, and requires a nerd font installed on your system.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-dired
|
||||
;; No tags provided upstream
|
||||
(let ((commit "adf9a2bb5f3f13be7a676923639337f3fcc5d8c3")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-dired")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rainstormstudio/nerd-icons-dired")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0x1xmwlfjgbk5kk4bxvgz4ykwwgiwmdbzhgsw49kpzz678a3qzrp"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/rainstormstudio/nerd-icons-dired")
|
||||
(synopsis "Icons for Dired via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to Dired, using the @code{nerd-icons} package.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-ivy-rich
|
||||
;; Tagged release is not up-to-date, according to the "Version:" keyword in
|
||||
;; main file.
|
||||
(let ((commit "5006f91b49e86e232cdc1a628501b76124c41dac")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-ivy-rich")
|
||||
(version (git-version "1.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/seagle0128/nerd-icons-ivy-rich")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m62l4cl9j3ssd25rz40vgrv99bmwn6l4ig2sf8zzi0fpzm8axgh"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;tests require Cask
|
||||
(propagated-inputs
|
||||
(list emacs-ivy-rich
|
||||
emacs-nerd-icons))
|
||||
(home-page "https://github.com/seagle0128/nerd-icons-ivy-rich")
|
||||
(synopsis "Icons for Ivy via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to Ivy, using the @code{ivy-rich} and
|
||||
@code{nerd-icons} packages.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-ibuffer
|
||||
(package
|
||||
(name "emacs-nerd-icons-ibuffer")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/seagle0128/nerd-icons-ibuffer")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wj6kcgvh700maj9i5pmgzc48lbj0dbxx849a8w519m4anr7b23s"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;tests require Cask
|
||||
(propagated-inputs
|
||||
(list emacs-nerd-icons))
|
||||
(home-page "https://github.com/seagle0128/nerd-icons-ibuffer")
|
||||
(synopsis "Icons for Ibuffer via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to ibuffer in Emacs, using the @code{nerd-icons}
|
||||
package.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-nerd-icons-completion
|
||||
;; No tags provided upstream
|
||||
(let ((commit "63a6b3f1eb98bb381c86a1658ac401c8967079b8")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-completion")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rainstormstudio/nerd-icons-completion")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08p361rh5mv3ng10av1381kzl9s4msdjyca96hsgsh05qwq5pdrf"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/rainstormstudio/nerd-icons-completion")
|
||||
(synopsis "Icons for Emacs minibuffer completion via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to minibuffer completion in Emacs, using the
|
||||
@code{nerd-icons} package. It supports @code{vertico} and @code{marginalia}.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-nerd-icons-corfu
|
||||
(package
|
||||
(name "emacs-nerd-icons-corfu")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/LuigiPiucco/nerd-icons-corfu")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "036p45wqwrqhn5xv5sn3gsm2mb79gj6fk24zpkfa7wrv45qqgb21"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs
|
||||
(list emacs-corfu
|
||||
emacs-nerd-icons))
|
||||
(home-page "https://github.com/LuigiPiucco/nerd-icons-corfu")
|
||||
(synopsis "Icons for Corfu via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to @code{corfu}, using the @code{nerd-icons}
|
||||
package.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-nerd-icons-mode-line
|
||||
;; No tags provided upstream
|
||||
(let ((commit "23eca8e16799524889d661f4140355e81b8f929c")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-nerd-icons-mode-line")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/grolongo/nerd-icons-mode-line")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0l2bg22cllab9wz5wxd6zhrywavqrlvv1a6y49ij63qhlsfncy6s"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f)) ;no tests
|
||||
(propagated-inputs (list emacs-nerd-icons))
|
||||
(home-page "https://github.com/grolongo/nerd-icons-mode-line")
|
||||
(synopsis "Icons for the Emacs modeline via Nerd Icons")
|
||||
(description
|
||||
"This package adds icons to the modeline in Emacs, using the
|
||||
@code{nerd-icons} package.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-all-the-icons
|
||||
;; The latest release was on 3 June 2021.
|
||||
(let ((commit "4778632b29c8c8d2b7cd9ce69535d0be01d846f9")
|
||||
@@ -39910,7 +39471,7 @@ user interfaces for various built-in modes.")
|
||||
(define-public emacs-calibredb
|
||||
(package
|
||||
(name "emacs-calibredb")
|
||||
(version "2.14.0")
|
||||
(version "2.13.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -39919,40 +39480,31 @@ user interfaces for various built-in modes.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1g0jg6a6fgvxd5bsydckbqwf899d2d9732laz4k1k476mbws5dqy"))))
|
||||
(base32 "1a4gyc3gcq18j29pw2i296d70nvx5fbzlw9fdmqwzncciqz5as6m"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:include #~(cons "\\.py$" %default-include)
|
||||
#:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(make-file-writable "calibredb-core.el")
|
||||
(let ((calibredb (search-input-file inputs "/bin/calibredb"))
|
||||
(fetch-ebook-metadata
|
||||
(search-input-file inputs "/bin/fetch-ebook-metadata"))
|
||||
(ebook-convert
|
||||
(search-input-file inputs "/bin/ebook-convert"))
|
||||
(calibre-debug
|
||||
(search-input-file inputs "/bin/calibre-debug"))
|
||||
(ebook-meta
|
||||
(search-input-file inputs "/bin/ebook-meta"))
|
||||
(folder-program
|
||||
(string-append #$output
|
||||
"/share/emacs/site-lisp/calibredb-"
|
||||
#$version "/calibredb-folder.py")))
|
||||
(search-input-file inputs "/bin/calibre-debug")))
|
||||
(emacs-substitute-variables "calibredb-core.el"
|
||||
("calibredb-fetch-metadata-program" fetch-ebook-metadata)
|
||||
("calibredb-program" calibredb)
|
||||
("calibredb-convert-program" ebook-convert)
|
||||
("calibredb-debug-program" calibre-debug)
|
||||
("calibredb-ebook-meta-program" ebook-meta)
|
||||
("calibredb-folder-program" folder-program))))))))
|
||||
("calibredb-debug-program" calibre-debug))))))))
|
||||
(inputs
|
||||
(list calibre))
|
||||
(propagated-inputs
|
||||
(list emacs-dash emacs-esxml emacs-request emacs-s))
|
||||
(list emacs-dash emacs-esxml emacs-s))
|
||||
(home-page "https://github.com/chenyanming/calibredb.el")
|
||||
(synopsis "Yet another calibre client for Emacs")
|
||||
(description "This package integrates calibre into Emacs.
|
||||
@@ -41537,7 +41089,7 @@ time.")
|
||||
(define-public emacs-mastodon
|
||||
(package
|
||||
(name "emacs-mastodon")
|
||||
(version "2.0.16")
|
||||
(version "2.0.12")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -41546,69 +41098,21 @@ time.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1z8qwnc01d9hx5m1xj3acpdzllfh4rxmypzcr3jl4ipp6dybzbx6"))))
|
||||
(base32 "0q02v1vizzj1r35b7b6cw185jjibhc6izj9ih4sm6c83l9yb99yh"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command #~(list "make" "tests")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Move the source files to the top level, which is
|
||||
;; included in the EMACSLOADPATH.
|
||||
(add-after 'unpack 'move-source-files
|
||||
(lambda _
|
||||
(let ((el-files (find-files "./lisp" ".*\\.el$")))
|
||||
(for-each (lambda (f)
|
||||
(rename-file f
|
||||
(basename f)))
|
||||
el-files))))
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("cask") ""))
|
||||
(substitute* "test/ert-helper.el"
|
||||
(("lisp\\/") ""))))
|
||||
(add-before 'check 'skip-failing-tests
|
||||
(lambda _
|
||||
(let-syntax
|
||||
((disable-tests
|
||||
(syntax-rules ()
|
||||
((_ file ())
|
||||
(syntax-error "test names list must not be empty"))
|
||||
((_ file (test-name ...))
|
||||
(substitute* file
|
||||
(((string-append
|
||||
"^\\(ert-deftest " test-name ".*") all)
|
||||
(string-append all "(skip-unless nil)\n")) ...)))))
|
||||
(disable-tests
|
||||
"test/mastodon-profile-tests.el"
|
||||
("mastodon-profile--add-author-bylines"
|
||||
"mastodon-profile--make-author-buffer"))
|
||||
(disable-tests
|
||||
"test/mastodon-auth-tests.el"
|
||||
("mastodon-auth--handle-token-response--good"
|
||||
"mastodon-auth-plstore-token-check"))
|
||||
(disable-tests
|
||||
"test/mastodon-client-tests.el"
|
||||
("mastodon-client--make-user-active"
|
||||
"mastodon-client--store"
|
||||
"mastodon-client--store-access-token"))
|
||||
(disable-tests
|
||||
"test/mastodon-tl-tests.el"
|
||||
("mastodon-tl--byline-timestamp-has-relative-display"
|
||||
"mastodon-tl--next-tab-item--no-spaces-at-ends"
|
||||
"mastodon-tl--next-tab-item--with-spaces-at-ends"))
|
||||
(disable-tests
|
||||
"test/mastodon-media-tests.el"
|
||||
("mastodon-media--get-avatar-rendering"
|
||||
"mastodon-media--inline-images"
|
||||
"mastodon-media--load-image-from-url-avatar-with-imagemagic"
|
||||
"mastodon-media--load-image-from-url-avatar-without-imagemagic"
|
||||
"mastodon-media--load-image-from-url-media-link-with-imagemagic"
|
||||
"mastodon-media--load-image-from-url-media-link-without-imagemagic"
|
||||
"mastodon-media--load-image-from-url-url-fetching-fails"
|
||||
"mastodon-media--process-image-response"))))))))
|
||||
(native-inputs (list emacs-el-mock))
|
||||
#:tests? #f ; requires cask
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
;; Move the source files to the top level, which is
|
||||
;; included in the EMACSLOADPATH.
|
||||
(add-after 'unpack 'move-source-files
|
||||
(lambda _
|
||||
(let ((el-files (find-files "./lisp" ".*\\.el$")))
|
||||
(for-each (lambda (f)
|
||||
(rename-file f
|
||||
(basename f)))
|
||||
el-files)))))))
|
||||
(propagated-inputs
|
||||
(list emacs-persist emacs-tp))
|
||||
(home-page "https://codeberg.org/martianh/mastodon.el")
|
||||
@@ -41707,17 +41211,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
|
||||
(sha256
|
||||
(base32 "1y3k82q5iii7ddm6yj7397x2jscbcnvapd04zc5wjkqdr50cay3l"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command #~(list "make" "tests")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'remove-cask
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("cask ") "")))))))
|
||||
(native-inputs
|
||||
(list emacs-el-mock emacs-exemplify-ert emacs-exemplify-eval))
|
||||
(arguments (list #:tests? #f)) ;depends on exemplify-ert
|
||||
(propagated-inputs (list emacs-fedi emacs-magit emacs-tp emacs-transient))
|
||||
(home-page "https://codeberg.org/martianh/fj.el")
|
||||
(synopsis "Client for Forgejo instances")
|
||||
@@ -45410,57 +44904,6 @@ Features:
|
||||
@end itemize\n")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-exemplify-ert
|
||||
(package
|
||||
(name "emacs-exemplify-ert")
|
||||
(version "0.6.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.sr.ht/~flandrew/exemplify-ert")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0y98pf3hq595h7vkqs1rrwhdsizi22y32mv345drvrc6xysyb7hr"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command #~(list "emacs" "-Q" "--batch"
|
||||
"-l" "dev/examples.el"
|
||||
"-f" "ert-run-tests-batch-and-exit")))
|
||||
(propagated-inputs (list emacs-dash emacs-f emacs-s))
|
||||
(home-page "https://git.sr.ht/~flandrew/exemplify-ert")
|
||||
(synopsis "Emacs library to implement regression tests")
|
||||
(description
|
||||
"This Emacs package is an extension to @code{ert}. It aims at writing
|
||||
test cases in a simplified form.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-exemplify-eval
|
||||
(package
|
||||
(name "emacs-exemplify-eval")
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.sr.ht/~flandrew/exemplify-eval")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0f2rfgjcmpw45y0ayx8ww9d9q86y0jwkb46ixp1qd7782qxpa5lg"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no tests
|
||||
(home-page "https://git.sr.ht/~flandrew/exemplify-eval")
|
||||
(synopsis "Create arrowified examples from sexps")
|
||||
(description
|
||||
"This Emacs package is an extension to @code{ert}, and creates
|
||||
@code{emacs-exemplify-ert}–like examples. It aims at writing test cases in a
|
||||
simplified form.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-pcmpl-args
|
||||
(package
|
||||
(name "emacs-pcmpl-args")
|
||||
|
||||
@@ -3452,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)
|
||||
@@ -3461,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
|
||||
@@ -3604,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
|
||||
|
||||
@@ -2730,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)
|
||||
@@ -2740,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))
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -220,7 +220,6 @@ testing InfiniBand networks.")
|
||||
"--disable-assertions"
|
||||
"--disable-params-check"
|
||||
|
||||
"--enable-mt"
|
||||
(string-append "--with-verbs="
|
||||
#$(this-package-input "rdma-core"))
|
||||
|
||||
|
||||
@@ -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)
|
||||
|
||||
+29
-21
@@ -165,7 +165,7 @@
|
||||
;; <https://bitcoincore.org/en/lifecycle/#schedule>.
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "31.0")
|
||||
(version "30.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -173,7 +173,7 @@
|
||||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qxkcyq8nwq6sw4qi660z8n8356mqdsf4jvpq5ndkvrsx9gfz80b"))))
|
||||
"1jw4djh22v0nih0n7irdbknfbqavlc4l3b8176b5qgc88a60pl3g"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list #:qtbase qtbase
|
||||
@@ -197,7 +197,9 @@
|
||||
"python3" "./test/functional/test_runner.py" "--timeout-factor=2"
|
||||
(string-append "--jobs=" (number->string (parallel-job-count)))))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
(list bash ; provides the sh command for system_tests
|
||||
coreutils ; provides the cat, echo and false commands for system_tests
|
||||
pkg-config
|
||||
python ; for the tests
|
||||
python-pyzmq ; for the tests
|
||||
qttools))
|
||||
@@ -321,37 +323,41 @@ based on Qt.")
|
||||
(define-public ghc-hledger
|
||||
(package
|
||||
(name "ghc-hledger")
|
||||
(version "1.27.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hledger" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qdg87m7ys2ykqqq32p7h7aw827w4f5bcqx4dspxxq6zqlvzddqb"))))
|
||||
(version "1.43.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hledger" version))
|
||||
(sha256
|
||||
(base32 "043gw3amc29fbjxlzyc4m97bw5i5462352lmk61adlxcd12l47i1"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hledger")))
|
||||
(inputs (list ghc-decimal
|
||||
ghc-diff
|
||||
ghc-aeson
|
||||
ghc-ansi-terminal
|
||||
ghc-breakpoint
|
||||
ghc-cmdargs
|
||||
ghc-data-default
|
||||
ghc-extra
|
||||
ghc-githash
|
||||
ghc-hashable
|
||||
ghc-hledger-lib
|
||||
ghc-http-client
|
||||
ghc-http-types
|
||||
ghc-lucid
|
||||
ghc-math-functions
|
||||
ghc-megaparsec
|
||||
ghc-microlens
|
||||
ghc-modern-uri
|
||||
ghc-regex-tdfa
|
||||
ghc-req
|
||||
ghc-safe
|
||||
ghc-shakespeare
|
||||
ghc-split
|
||||
ghc-tabular
|
||||
ghc-tasty
|
||||
ghc-temporary
|
||||
ghc-text-ansi
|
||||
ghc-timeit
|
||||
ghc-unordered-containers
|
||||
ghc-utf8-string
|
||||
@@ -382,8 +388,8 @@ Accounting.")
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'install-doc
|
||||
(lambda _
|
||||
(install-file "hledger.info" (string-append #$output "/share/info"))
|
||||
(install-file "hledger.1" (string-append #$output "/man/man1"))))
|
||||
(install-file "embeddedfiles/hledger.info" (string-append #$output "/share/info"))
|
||||
(install-file "embeddedfiles/hledger.1" (string-append #$output "/man/man1"))))
|
||||
(add-after 'register 'remove-libraries
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(delete-file-recursively (string-append (assoc-ref outputs "out") "/lib")))))))))
|
||||
@@ -2306,13 +2312,13 @@ textual ledgers to Beancount files.")
|
||||
(define-public hledger-web
|
||||
(package
|
||||
(name "hledger-web")
|
||||
(version "1.27.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hledger-web" version))
|
||||
(sha256
|
||||
(base32
|
||||
"151dxci7dld8626dzw823sr3d9iaac92wfzbfcbdz4jh9f7n07wa"))))
|
||||
(version "1.43.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hledger-web" version))
|
||||
(sha256
|
||||
(base32 "0d4sv9k3m7s0764lbq2l8w9p2p47cby177l0avl5w3fa9y8d0gyd"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hledger-web")))
|
||||
(inputs (list ghc-decimal
|
||||
@@ -2320,7 +2326,6 @@ textual ledgers to Beancount files.")
|
||||
ghc-base64
|
||||
ghc-blaze-html
|
||||
ghc-blaze-markup
|
||||
ghc-breakpoint
|
||||
ghc-case-insensitive
|
||||
ghc-clientsession
|
||||
ghc-cmdargs
|
||||
@@ -2328,6 +2333,8 @@ textual ledgers to Beancount files.")
|
||||
ghc-conduit-extra
|
||||
ghc-data-default
|
||||
ghc-extra
|
||||
ghc-file-embed
|
||||
ghc-githash
|
||||
ghc-hjsmin
|
||||
ghc-hledger
|
||||
ghc-hledger-lib
|
||||
@@ -2337,6 +2344,7 @@ textual ledgers to Beancount files.")
|
||||
ghc-http-types
|
||||
ghc-megaparsec
|
||||
ghc-network
|
||||
ghc-safe
|
||||
ghc-shakespeare
|
||||
ghc-unix-compat
|
||||
ghc-unordered-containers
|
||||
|
||||
+40
-33
@@ -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
|
||||
|
||||
@@ -3454,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
|
||||
|
||||
+18
-8
@@ -5534,13 +5534,23 @@ falling, themeable graphics and sounds, and replays.")
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no test target
|
||||
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")))
|
||||
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; XXX: Our Lua doesn't have a C++ library, force C linkage.
|
||||
(substitute* '("src/lua/wrapper_lua.h"
|
||||
"src/lua/wrapper_lualib.h"
|
||||
"src/lua/wrapper_lauxlib.h")
|
||||
(("#include \"(lua|lualib|lauxlib)\\.h\"")
|
||||
"#include \"lua.hpp\"")))))))
|
||||
(inputs
|
||||
(list boost-1.83
|
||||
curl
|
||||
dbus
|
||||
libvorbis
|
||||
lua-5.4-for-c++
|
||||
lua-5.4
|
||||
openssl
|
||||
pango
|
||||
sdl2
|
||||
@@ -5927,7 +5937,7 @@ Transport Tycoon Deluxe.")
|
||||
(add-after 'unpack 'patch-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/music/fluidsynth.cpp"
|
||||
(("_default_soundfonts\\[\\] = \\{" all)
|
||||
(("default_sf\\[\\] = \\{" all)
|
||||
(string-append all "
|
||||
\t/* Guix hardcoded :P */
|
||||
\t\"" (search-input-file inputs "/share/soundfonts/FreePatsGM.sf2") "\",
|
||||
@@ -5954,7 +5964,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 +5973,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
|
||||
@@ -13498,8 +13508,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 +13521,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"
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -16,8 +19,44 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages gkrellm)
|
||||
#:use-module (gnu packages monitoring)
|
||||
#:use-module (guix deprecation))
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
(define-deprecated/public-alias gkrellm
|
||||
(@ (guix packages monitoring) gkrellm))
|
||||
(define-public gkrellm
|
||||
(package
|
||||
(name "gkrellm")
|
||||
(version "2.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gkrellm.srcbox.net/releases/gkrellm-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0qvy2xmwmfy5f0g09yn9lr262shnx82ba04r5il2wj4qscg3r7h8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list gtk+-2 libsm))
|
||||
(native-inputs (list gettext-minimal pkg-config))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;there is no check target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)) ;no configure script
|
||||
#:make-flags
|
||||
#~(list (string-append "INSTALLROOT=" #$output)
|
||||
(string-append "CC=" #$(cc-for-target)))))
|
||||
(home-page "https://gkrellm.srcbox.net/")
|
||||
(synopsis "System monitors")
|
||||
(description
|
||||
"GKrellM is a single process stack of system monitors which supports
|
||||
applying themes to match its appearance to your window manager, Gtk, or any
|
||||
other theme.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
@@ -1335,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"))
|
||||
|
||||
+1
-87
@@ -2598,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")
|
||||
@@ -10628,6 +10542,7 @@ playing media, scanning, and much more.")
|
||||
cheese
|
||||
decibels
|
||||
epiphany
|
||||
evince
|
||||
file-roller
|
||||
gnome-calculator
|
||||
gnome-calendar
|
||||
@@ -10647,7 +10562,6 @@ playing media, scanning, and much more.")
|
||||
localsearch
|
||||
loupe
|
||||
nautilus
|
||||
papers
|
||||
simple-scan
|
||||
showtime
|
||||
xdg-desktop-portal-gnome
|
||||
|
||||
@@ -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")
|
||||
|
||||
+6
-166
@@ -605,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"zh-TW"))
|
||||
|
||||
;;; Please keep these versions in sync with icedove.
|
||||
(define %icecat-base-version "140.10.0")
|
||||
(define %icecat-base-version "140.9.1")
|
||||
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
|
||||
(define %icecat-build-id "20260421000000") ;must be of the form YYYYMMDDhhmmss
|
||||
(define %icecat-build-id "20260414000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
@@ -627,9 +627,9 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06996548nfmn4r4mfw3wvgb1mp35majc5hjyhs1krgp33ck2m1f0"))))
|
||||
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
|
||||
|
||||
(gnuzilla-commit "02125f31250c0240ee2ab1aa629ce66d4ffb9f30")
|
||||
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -640,7 +640,7 @@ in the case of Firefox, it is browser/locales/all-locales."
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"1hgx286gp0j46pklzzh5kvsnari1j3s0bff384m505m942k6l4hf"))))
|
||||
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
@@ -1249,166 +1249,6 @@ testing.")
|
||||
(cpe-name . "firefox_esr")
|
||||
(cpe-version . ,(first (string-split version #\-)))))))
|
||||
|
||||
;;; TEMPORARY old version of icecat-source for use by icedove until it is updated.
|
||||
(define %icecat-140.9.1-base-version "140.9.1")
|
||||
(define %icecat-140.9.1-version (string-append %icecat-140.9.1-base-version "-gnu1"))
|
||||
(define icecat-140.9.1-source
|
||||
(let* ((major-version (first (string-split %icecat-140.9.1-base-version #\.)))
|
||||
(minor-version (second (string-split %icecat-140.9.1-base-version #\.)))
|
||||
(sub-version (third (string-split %icecat-140.9.1-base-version #\.)))
|
||||
|
||||
(upstream-firefox-version (string-append %icecat-140.9.1-base-version "esr"))
|
||||
(upstream-firefox-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://ftp.mozilla.org/pub/firefox/releases/"
|
||||
upstream-firefox-version "/source/"
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
|
||||
|
||||
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "git://git.savannah.gnu.org/gnuzilla.git")
|
||||
(commit gnuzilla-commit)))
|
||||
(file-name (git-file-name "gnuzilla"
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
(makeicecat-patch
|
||||
(local-file (assume-valid-file-name
|
||||
(search-patch "icecat-makeicecat.patch")))))
|
||||
|
||||
(origin
|
||||
(method computed-origin-method)
|
||||
(file-name (string-append "icecat-" %icecat-140.9.1-version ".tar.zst"))
|
||||
(sha256 #f)
|
||||
(uri
|
||||
(delay
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((firefox-dir
|
||||
(string-append "firefox-" #$%icecat-140.9.1-base-version))
|
||||
(icecat-dir
|
||||
(string-append "icecat-" #$%icecat-140.9.1-version)))
|
||||
|
||||
(set-path-environment-variable
|
||||
"PATH" '("bin")
|
||||
(list #+python
|
||||
#+(canonical-package bash)
|
||||
#+(canonical-package coreutils)
|
||||
#+(canonical-package findutils)
|
||||
#+(canonical-package patch)
|
||||
#+(canonical-package xz)
|
||||
#+(canonical-package zstd)
|
||||
#+(canonical-package sed)
|
||||
#+(canonical-package grep)
|
||||
#+(canonical-package bzip2)
|
||||
#+(canonical-package gzip)
|
||||
#+(canonical-package tar)))
|
||||
|
||||
(set-path-environment-variable
|
||||
"PYTHONPATH"
|
||||
(list #+(format #f "lib/python~a/site-packages"
|
||||
(version-major+minor
|
||||
(package-version python))))
|
||||
'#+(cons python-jsonschema
|
||||
(map second
|
||||
(package-transitive-propagated-inputs
|
||||
python-jsonschema))))
|
||||
|
||||
;; We copy the gnuzilla source directory because it is
|
||||
;; read-only in 'gnuzilla-source', and the makeicecat script
|
||||
;; uses "cp -a" to copy parts of it and assumes that the
|
||||
;; copies will be writable.
|
||||
(copy-recursively #+gnuzilla-source "/tmp/gnuzilla"
|
||||
#:log (%make-void-port "w"))
|
||||
|
||||
(with-directory-excursion "/tmp/gnuzilla"
|
||||
(make-file-writable "makeicecat")
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+makeicecat-patch)
|
||||
(patch-shebang "makeicecat")
|
||||
(substitute* "makeicecat"
|
||||
(("^readonly FFMAJOR=(.*)" all ffmajor)
|
||||
(unless (string=? #$major-version
|
||||
(string-trim-both ffmajor))
|
||||
;; The makeicecat script cannot be expected to work
|
||||
;; properly on a different version of Firefox, even if
|
||||
;; no errors occur during execution.
|
||||
(error "makeicecat major version mismatch"))
|
||||
(string-append "readonly FFMAJOR=" #$major-version "\n"))
|
||||
(("^readonly FFMINOR=.*")
|
||||
(string-append "readonly FFMINOR=" #$minor-version "\n"))
|
||||
(("^readonly FFSUB=.*")
|
||||
(string-append "readonly FFSUB=" #$sub-version "\n"))
|
||||
(("^readonly DATADIR=.*")
|
||||
"readonly DATADIR=/tmp/gnuzilla/data\n")
|
||||
(("^readonly SOURCEDIR=.*")
|
||||
(string-append "readonly SOURCEDIR=" icecat-dir "\n"))
|
||||
(("/bin/sed")
|
||||
#+(file-append (canonical-package sed) "/bin/sed"))))
|
||||
|
||||
(format #t "Unpacking upstream firefox tarball...~%")
|
||||
(force-output)
|
||||
(invoke "tar" "xf" #+upstream-firefox-source)
|
||||
(rename-file firefox-dir icecat-dir)
|
||||
|
||||
(with-directory-excursion icecat-dir
|
||||
(format #t "Populating l10n directory...~%")
|
||||
(force-output)
|
||||
(mkdir "l10n")
|
||||
(with-directory-excursion "l10n"
|
||||
(for-each
|
||||
(lambda (locale)
|
||||
(let ((locale-dir (string-append #+mozilla-l10n "/"
|
||||
locale)))
|
||||
(format #t " ~a~%" locale)
|
||||
(force-output)
|
||||
(copy-recursively locale-dir locale
|
||||
#:log (%make-void-port "w"))
|
||||
(for-each make-file-writable (find-files locale))
|
||||
(with-directory-excursion locale
|
||||
(mkdir-p "browser/chrome/browser/preferences")
|
||||
(call-with-output-file "browser/chrome/browser/\
|
||||
preferences/advanced-scripts.dtd"
|
||||
(lambda (port) #f)))))
|
||||
'#+%icecat-locales)
|
||||
(copy-recursively #+mozilla-compare-locales
|
||||
"compare-locales"
|
||||
#:log (%make-void-port "w"))
|
||||
(delete-file "compare-locales/.gitignore")))
|
||||
|
||||
(format #t "Running makeicecat script...~%")
|
||||
(force-output)
|
||||
(invoke "bash" "/tmp/gnuzilla/makeicecat")
|
||||
|
||||
(format #t "Packing IceCat source tarball...~%")
|
||||
(force-output)
|
||||
(setenv "ZSTD_NBTHREADS" (number->string (parallel-job-count)))
|
||||
(invoke "tar" "cfa" #$output
|
||||
;; Avoid non-determinism in the archive. We set the
|
||||
;; mtime of files in the archive to early 1980 because
|
||||
;; the build process fails if the mtime of source
|
||||
;; files is pre-1980, due to the creation of zip
|
||||
;; archives.
|
||||
"--mtime=@315619200" ; 1980-01-02 UTC
|
||||
"--owner=root:0"
|
||||
"--group=root:0"
|
||||
"--sort=name"
|
||||
icecat-dir)))))))))
|
||||
|
||||
|
||||
(define %icedove-build-id "20260403000000") ;must be of the form YYYYMMDDhhmmss
|
||||
;;; See <https://product-details.mozilla.org/1.0/thunderbird_versions.json>
|
||||
;;; for the source of truth regarding Thunderbird releases.
|
||||
@@ -1543,7 +1383,7 @@ preferences/advanced-scripts.dtd"
|
||||
;; Extract the base Icecat tarball, renaming its top-level
|
||||
;; directory.
|
||||
(invoke "tar" "--transform" (string-append "s,[^/]*," #$name ",")
|
||||
"-xf" #$icecat-140.9.1-source)
|
||||
"-xf" #$icecat-source)
|
||||
(chdir #$name)
|
||||
|
||||
;; Merge the Thunderdbird localization data.
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
;;; Copyright © 2025 Arthur Rodrigues <arthurhdrodrigues@proton.me>
|
||||
;;; Copyright © 2025 Patrick Norton <patrick.147.norton@gmail.com>
|
||||
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -2874,7 +2873,7 @@ package.")
|
||||
(define-public go-github-com-refraction-networking-utls
|
||||
(package
|
||||
(name "go-github-com-refraction-networking-utls")
|
||||
(version "1.8.2")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2883,7 +2882,7 @@ package.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03kgwxdm2lg28fn2w5q7ql2szsiwj2xjdf477h1g3a4a9y9j6zk0"))))
|
||||
(base32 "1iywar5vqsml4b177k2nkcxmjm8mw92g3p112yjsrpmikiwpwpyw"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/refraction-networking/utls"
|
||||
@@ -3641,39 +3640,6 @@ algorithm described in @url{https://rfc-editor.org/rfc/rfc2898.html,RFC 2898}
|
||||
and @url{https://rfc-editor.org/rfc/rfc8018.html,RFC 8018}.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-github-com-xtls-reality
|
||||
(package
|
||||
(name "go-github-com-xtls-reality")
|
||||
(version "0.0.0-20260322125925-9234c772ba8f")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xtls/reality")
|
||||
(commit (go-version->git-ref version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wncy5aph6nmq4814xjhj6b5p1wm2fyrqn83dw0xlyxvq2z6iqfs"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:import-path "github.com/xtls/reality"))
|
||||
(propagated-inputs
|
||||
(list go-github-com-cloudflare-circl
|
||||
go-github-com-juju-ratelimit
|
||||
go-github-com-pires-go-proxyproto
|
||||
go-github-com-refraction-networking-utls
|
||||
go-golang-org-x-crypto
|
||||
go-golang-org-x-sys))
|
||||
(home-page "https://github.com/xtls/reality")
|
||||
(synopsis "Implementation of REALITY protocol")
|
||||
(description
|
||||
"This package provides an implementation of REALITY protocol, which is
|
||||
intented to eliminate the detectable TLS fingerprint on the server side, while
|
||||
still maintain the secrecy. It achieves full real TLS that is
|
||||
undistingwishable with the specified SNI to the middleman.")
|
||||
(license (list license:bsd-3 license:mpl2.0))))
|
||||
|
||||
(define-public go-github-com-youmark-pkcs8
|
||||
(package
|
||||
(name "go-github-com-youmark-pkcs8")
|
||||
|
||||
@@ -50,7 +50,6 @@
|
||||
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
|
||||
;;; Copyright © 2026 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -20006,36 +20005,6 @@ at
|
||||
Tracer implementation from the @code{OpenTracing} project.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-go-opentelemetry-io-contrib-zpages
|
||||
(package
|
||||
(name "go-go-opentelemetry-io-contrib-zpages")
|
||||
(version "0.68.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/open-telemetry/opentelemetry-go-contrib")
|
||||
(commit (go-version->git-ref version
|
||||
#:subdir "zpages"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0nh7g1zxr3drqcbhsnnkqaz2hn1rnawg8jalixng23c9hwfgqaly"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:go go-1.25
|
||||
#:import-path "go.opentelemetry.io/contrib/zpages"
|
||||
#:unpack-path "go.opentelemetry.io/contrib"))
|
||||
(native-inputs (list go-github-com-stretchr-testify))
|
||||
(propagated-inputs (list go-go-opentelemetry-io-otel
|
||||
go-go-opentelemetry-io-otel-sdk
|
||||
go-go-opentelemetry-io-otel-trace))
|
||||
(home-page "https://opentelemetry.io/")
|
||||
(synopsis "Display telemetry stats")
|
||||
(description "Package zPages implements a collection of HTML pages that
|
||||
display telemetry stats.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-go-opentelemetry-io-otel
|
||||
(package
|
||||
(name "go-go-opentelemetry-io-otel")
|
||||
|
||||
@@ -75,7 +75,6 @@
|
||||
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
|
||||
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
|
||||
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -8037,7 +8036,7 @@ supports concurrent serializable transactions.")
|
||||
(package
|
||||
(inherit go-github-com-dgraph-io-badger)
|
||||
(name "go-github-com-dgraph-io-badger-v4")
|
||||
(version "4.9.1")
|
||||
(version "4.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -8046,7 +8045,7 @@ supports concurrent serializable transactions.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0a9lk7fw06yb89wy9rp4q50ircw5imm1cqzhyhs92d0cia5qbhh6"))))
|
||||
(base32 "0v4c69whypm3k40hrx8bw9rjrcb0swz43v056s0fadqr04j0ncwj"))))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; TODO: tests hang, find out why.
|
||||
@@ -8059,8 +8058,7 @@ supports concurrent serializable transactions.")
|
||||
go-github-com-klauspost-compress
|
||||
go-github-com-pkg-errors
|
||||
go-github-com-spf13-cobra
|
||||
go-go-opentelemetry-io-contrib-zpages
|
||||
go-go-opentelemetry-io-otel
|
||||
go-go-opencensus-io
|
||||
go-golang-org-x-net
|
||||
go-golang-org-x-sys
|
||||
go-google-golang-org-protobuf))))
|
||||
@@ -17606,7 +17604,7 @@ implementing features like:
|
||||
(define-public go-github-com-maruel-natural
|
||||
(package
|
||||
(name "go-github-com-maruel-natural")
|
||||
(version "1.3.0")
|
||||
(version "1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -17615,7 +17613,7 @@ implementing features like:
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1nr1ai3b7yvz4wz4k0jqvjq3978hpk9yxarn7g7i3d2sxbdc0g4q"))))
|
||||
(base32 "040aikizdd7c4zm8xindb2ps16s60i0fkf8gkll2rir7lwv6q7ks"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -22788,16 +22786,16 @@ it is capable of logging at some or all levels.")
|
||||
(define-public go-github-com-rivo-tview
|
||||
(package
|
||||
(name "go-github-com-rivo-tview")
|
||||
(version "0.42.0")
|
||||
(version "0.0.0-20241227133733-17b7edb88c57")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rivo/tview")
|
||||
(commit (string-append "v" version))))
|
||||
(commit (go-version->git-ref version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0jw47h92l0vp1lg6s5kng4hjv81hi8qxx9h5yilc7rzrr8l9ksd2"))))
|
||||
(base32 "1w59vyvs8k5mzl7k39zpwcwwdgam2pbz0rnrfnnjgvkld1rh81dc"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list #:import-path "github.com/rivo/tview"))
|
||||
|
||||
+25
-18
@@ -517,19 +517,22 @@ functions which were removed.")
|
||||
"0pik2d3995z0rjcjhb4hsj5fsph3m8khg6j10k6mx4j2j727aq6l"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; no check target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'set-flags
|
||||
(lambda _
|
||||
;; Allow 'bin/ganv_bench' to find libganv-1.so.
|
||||
(setenv "LDFLAGS"
|
||||
(string-append "-Wl,-rpath=" #$output "/lib")))))))
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'set-flags
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Allow 'bin/ganv_bench' to find libganv-1.so.
|
||||
(setenv "LDFLAGS"
|
||||
(string-append "-Wl,-rpath="
|
||||
(assoc-ref outputs "out") "/lib"))
|
||||
#t)))
|
||||
#:tests? #f)) ; no check target
|
||||
(inputs
|
||||
`(("gtk" ,gtk+-2)
|
||||
("gtkmm" ,gtkmm-2)))
|
||||
(native-inputs
|
||||
(list `(,glib "bin") ; for glib-genmarshal, etc.
|
||||
pkg-config))
|
||||
(inputs (list gtk+-2 gtkmm-2))
|
||||
(home-page "https://drobilla.net/software/ganv/")
|
||||
(synopsis "GTK+ widget for interactive graph-like environments")
|
||||
(description
|
||||
@@ -1457,9 +1460,10 @@ exceptions, macros, and a dynamic programming environment.")
|
||||
(inherit guile-cairo)
|
||||
(name "guile2.2-cairo")
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(delete "guile" "guile-lib")
|
||||
(append guile-2.2 guile2.2-lib)))))
|
||||
`(("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile2.2-lib)
|
||||
,@(fold alist-delete (package-inputs guile-cairo)
|
||||
'("guile" "guile-lib"))))))
|
||||
|
||||
(define-public guile-cairo-next
|
||||
;; A commit with cairo-pointer->context, missing from guile-cairo@1.11.2
|
||||
@@ -1575,10 +1579,11 @@ images onto Cairo surfaces.")
|
||||
(inherit guile-rsvg)
|
||||
(name "guile2.2-rsvg")
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(delete "guile" "guile-lib")
|
||||
(append guile-2.2 guile2.2-lib)))
|
||||
(propagated-inputs (list guile2.2-cairo))))
|
||||
`(("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile2.2-lib)
|
||||
,@(fold alist-delete (package-inputs guile-rsvg)
|
||||
'("guile" "guile-lib"))))
|
||||
(propagated-inputs `(("guile-cairo" ,guile2.2-cairo)))))
|
||||
|
||||
(define-public guile-present
|
||||
(package
|
||||
@@ -1644,7 +1649,9 @@ documents.")
|
||||
(name "guile2.2-present")
|
||||
(inputs (list guile-2.2))
|
||||
(propagated-inputs
|
||||
(list guile2.2-lib guile2.2-cairo guile2.2-rsvg))))
|
||||
`(("guile-lib" ,guile2.2-lib)
|
||||
("guile-cairo" ,guile2.2-cairo)
|
||||
("guile-rsvg" ,guile2.2-rsvg)))))
|
||||
|
||||
;;;
|
||||
;;; C++ bindings.
|
||||
|
||||
+87
-162
@@ -60,7 +60,6 @@
|
||||
;;; Copyright © 2025 Andy Tai <atai@atai.org>
|
||||
;;; Copyright © 2025 Ekaitz Zarraga <ekaitz@elenq.tech>
|
||||
;;; Copyright © 2026 Matt Wette <matt.wette@gmail.com>
|
||||
;;; Copyright © 2026 Dzianis Jackievič <mail@miesta.by>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1168,7 +1167,7 @@ is not available for Guile 2.0.")
|
||||
(package
|
||||
(inherit guile-fibers-1.3)
|
||||
(name "guile-fibers")
|
||||
(version "1.4.3")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin (inherit (package-source guile-fibers-1.3))
|
||||
(file-name (git-file-name name version))
|
||||
@@ -1177,7 +1176,7 @@ is not available for Guile 2.0.")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"1q0a9y0cc8rld1z7mcj61fkldhd0kn9n4yq25izxslbgg4g5h9j6"))
|
||||
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))
|
||||
(patches '())))
|
||||
(arguments
|
||||
(if (target-aarch64?)
|
||||
@@ -1257,8 +1256,30 @@ is not available for Guile 2.0.")
|
||||
(modify-inputs native-inputs
|
||||
(replace "guile" guile-2.2)))))
|
||||
|
||||
;; Deprecated on 2026-04-23
|
||||
(define-deprecated-package guile-fibers-next guile-fibers)
|
||||
(define-public guile-fibers-next
|
||||
(let ((commit "297359f0ad655378bcc3ff0d4e96101965ef39b4")
|
||||
(revision "0"))
|
||||
(package
|
||||
(inherit guile-fibers)
|
||||
(name "guile-fibers-next")
|
||||
(version (git-version "1.4.2"
|
||||
revision
|
||||
commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/guile/fibers.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))))
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(replace "guile" guile-next)))
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(replace "guile" guile-next))))))
|
||||
|
||||
(define-public guile-kracht
|
||||
(package
|
||||
@@ -1516,7 +1537,7 @@ order to provide IDE functionality for Guile Scheme.")
|
||||
(define-public guile-ares-rs
|
||||
(package
|
||||
(name "guile-ares-rs")
|
||||
(version "0.9.7")
|
||||
(version "0.9.6")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1526,42 +1547,35 @@ order to provide IDE functionality for Guile Scheme.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xbznh5zjswfydgqg53g50ya7zm0hidin74g2glk849l9j45szw3"))))
|
||||
"1vkww3vc0lsh5f8yh6fnh402rx3rsm0ss69rdkmplhzp4c7c4z1d"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:source-directory "src/guile"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'build 'install-scripts
|
||||
(add-after 'build 'install-script
|
||||
(lambda _
|
||||
(define bin (string-append #$output "/bin"))
|
||||
(define site (string-append #$output "/share/guile/site/3.0"))
|
||||
(define ccache
|
||||
(string-append #$output "/lib/guile/3.0/site-ccache"))
|
||||
|
||||
(define (install-script name)
|
||||
(let ((oldpath
|
||||
(string-append site "/ares/scripts/" name ".scm"))
|
||||
(newpath
|
||||
(string-append bin "/" name)))
|
||||
(symlink oldpath newpath)
|
||||
(wrap-program newpath
|
||||
`("GUILE_LOAD_PATH" ":" =
|
||||
,(list "$GUILE_LOAD_PATH"
|
||||
site
|
||||
(getenv "GUILE_LOAD_PATH")))
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" =
|
||||
,(list "$GUILE_LOAD_COMPILED_PATH"
|
||||
ccache
|
||||
(getenv "GUILE_LOAD_COMPILED_PATH"))))
|
||||
;; Not needed since the wrapper followed the symlink.
|
||||
(delete-file (string-append bin "/." name "-real"))))
|
||||
|
||||
(mkdir bin)
|
||||
(for-each install-script '("ares-nrepl" "ares-suitbl")))))))
|
||||
(inputs (list bash-minimal guile-3.0-latest))
|
||||
(propagated-inputs (list guile-fibers))
|
||||
(let* ((bin (string-append #$output "/bin"))
|
||||
(oldpath (string-append
|
||||
#$output
|
||||
;; This file will be named ares-nrepl.scm for
|
||||
;; the next version.
|
||||
"/share/guile/site/3.0/ares/scripts/ares.scm"))
|
||||
(newpath (string-append bin "/ares-nrepl")))
|
||||
(mkdir bin)
|
||||
(symlink oldpath newpath)
|
||||
(wrap-program newpath
|
||||
`("GUILE_LOAD_PATH" ":" =
|
||||
,(list (string-append #$output "/share/guile/site/3.0")
|
||||
(getenv "GUILE_LOAD_PATH")))
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" =
|
||||
,(list (string-append #$output "/lib/guile/3.0/site-ccache")
|
||||
(getenv "GUILE_LOAD_COMPILED_PATH"))))
|
||||
;; Not needed since the wrapper followed the symlink.
|
||||
(delete-file (string-append bin "/.ares-nrepl-real"))))))))
|
||||
(inputs (list bash-minimal guile-3.0))
|
||||
(propagated-inputs (list guile-fibers guile-custom-ports))
|
||||
(home-page "https://git.sr.ht/~abcdw/guile-ares-rs")
|
||||
(synopsis "Asynchronous Reliable Extensible Sleek RPC Server for Guile")
|
||||
(description "Asynchronous Reliable Extensible Sleek RPC Server for
|
||||
@@ -5693,32 +5707,27 @@ perform geometrical transforms on JPEG images.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public guile-jtd
|
||||
;; There are a few unreleased commits that include niceties such as warning
|
||||
;; that the debug VM must be used; use the latest commit until the next
|
||||
;; release comes.
|
||||
(let ((commit "425f86ae954d6445aaedacfd4ecd50aa0022e59d")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "guile-jtd")
|
||||
(version (git-version "220323a" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mwette/guile-jtd")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
|
||||
(build-system guile-build-system)
|
||||
(native-inputs (list guile-3.0))
|
||||
(home-page "https://github.com/mwette/guile-jtd")
|
||||
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
|
||||
(description
|
||||
"The @code{(jtd)} module for Guile provides a procedure
|
||||
(package
|
||||
(name "guile-jtd")
|
||||
(version "220323a")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mwette/guile-jtd")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
|
||||
(build-system guile-build-system)
|
||||
(native-inputs (list guile-3.0))
|
||||
(home-page "https://github.com/mwette/guile-jtd")
|
||||
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
|
||||
(description
|
||||
"The @code{(jtd)} module for Guile provides a procedure
|
||||
@code{jump-to-debugger} for escaping to the Guile REPL for the purpose of
|
||||
debugging code.")
|
||||
(license license:lgpl2.1+))))
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public guile-png
|
||||
(package
|
||||
@@ -5781,7 +5790,7 @@ processing filters.")
|
||||
(define-public guile-pnm
|
||||
(package
|
||||
(name "guile-pnm")
|
||||
(version "0.2.0")
|
||||
(version "0.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5790,7 +5799,7 @@ processing filters.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "06kgp1gh8hdj1j6w7i981prx93wfjpayrnjlydlzs7l5j04l4m3a"))))
|
||||
(base32 "1yvsni4hll20g99zq4wl734f9i8gpjr1sqsnk3a93k2dd7b6ymac"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -6390,88 +6399,6 @@ as signed sessions, multipart message support, etc.")
|
||||
(propagated-inputs
|
||||
(list guile2.2-irregex guile2.2-gcrypt))))
|
||||
|
||||
(define-public guile-compose
|
||||
(package
|
||||
(name "guile-compose")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/jadzi/guile-compose.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1g68gczs96nrb0vf1hv4n07zsp2516gpiwq1wwlhcq4rzynhf12h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags
|
||||
#~'("GUILE_AUTO_COMPILE=0")))
|
||||
(inputs (list guile-3.0))
|
||||
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
|
||||
(synopsis "Procedure composition utilities for Guile Scheme")
|
||||
(description
|
||||
"This tiny package provides some procedures and macros to extend
|
||||
Guile Scheme procedure composition facilities. For example, there is
|
||||
a @code{compose-top}, a reverse-order analog to native @code{compose}
|
||||
procedure. The @code{compose-cont} is a macro, utilizing some power of
|
||||
continuations to build really flexible flows.
|
||||
|
||||
This library is intended to stay basic and small, so it has no any
|
||||
external dependencies and can be a good base for other packages, like e.g.
|
||||
@code{guile-web-middleware}.")
|
||||
(license (list license:lgpl3+))
|
||||
(home-page "https://jadzi.codeberg.page/guile-compose")))
|
||||
|
||||
(define-public guile-web-middleware
|
||||
(package
|
||||
(name "guile-web-middleware")
|
||||
(version "0.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/jadzi/guile-web-middleware.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01wb8v0lszphdv08ly4aqv59qm5h8yw2fgm025vkn61djspsq4j9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags
|
||||
#~'("GUILE_AUTO_COMPILE=0")))
|
||||
(inputs (list guile-3.0))
|
||||
(propagated-inputs (list guile-compose))
|
||||
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
|
||||
(synopsis "Web application middleware composition for Guile Scheme")
|
||||
(description
|
||||
"This package provides means to compose a web application by
|
||||
chaining procedures, a.k.a. middlewares. By those means, composed
|
||||
procedures form a standard request handler for any Guile's web server
|
||||
implementation.
|
||||
|
||||
Each middleware has its own limited responsibility in request
|
||||
processing. Also, middlewares are simple Scheme procedures, so they
|
||||
can be easily tested and shared among web applications.
|
||||
|
||||
Out of the box, this package provides several procedures for commonly
|
||||
required tasks. Among them:
|
||||
|
||||
@itemize
|
||||
@item Error handling with customizable page contents.
|
||||
@item Request filtering.
|
||||
@item Request logging.
|
||||
@item Serving static files, file URL generation.
|
||||
@item Request routing, handling parameters, route URL generation.
|
||||
@item Middleware nesting, composing whole apps.
|
||||
@end itemize
|
||||
|
||||
This package relies on @code{guile-compose} package as its only dependency.")
|
||||
(license (list license:lgpl3+))
|
||||
(home-page "https://jadzi.codeberg.page/guile-web-middleware")))
|
||||
|
||||
(define-public guile-web-driver-ng
|
||||
(package
|
||||
(name "guile-web-driver-ng")
|
||||
@@ -7764,11 +7691,11 @@ is an attempt to combine both into something useful.")
|
||||
(license license:asl2.0))))
|
||||
|
||||
(define-public guile-knots
|
||||
(let ((commit "f767eca066495e6582e89ba1b91907c0c5657878")
|
||||
(revision "34"))
|
||||
(let ((commit "d79284b4715efc347b22d510c3e3134a0c584b17")
|
||||
(revision "32"))
|
||||
(package
|
||||
(name "guile-knots")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(version (git-version "0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -7776,7 +7703,7 @@ is an attempt to combine both into something useful.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"18fqmpyrrxy8phxxm5b7d1qhhvc3rsrs243xiinkj2hn2ca1cqi8"))
|
||||
"0i87jc3dznw6pdib0yy49d8066c1jvwp2m01xi92amx45dkl8ixc"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -7789,13 +7716,13 @@ is an attempt to combine both into something useful.")
|
||||
(list pkg-config
|
||||
autoconf
|
||||
automake
|
||||
guile-3.0-latest
|
||||
guile-next
|
||||
guile-lib
|
||||
guile-fibers))
|
||||
guile-fibers-next))
|
||||
(inputs
|
||||
(list guile-3.0-latest))
|
||||
(list guile-next))
|
||||
(propagated-inputs
|
||||
(list guile-fibers))
|
||||
(list guile-fibers-next))
|
||||
(home-page "https://cbaines.codeberg.page/guile-knots/")
|
||||
(synopsis "Patterns and functionality to use with Guile Fibers")
|
||||
(description
|
||||
@@ -8011,16 +7938,14 @@ This module implements this interface by use of Guile's dynamic FFI.")
|
||||
(define-public guile-bstructs
|
||||
(package
|
||||
(name "guile-bstructs")
|
||||
(version "0.2.0")
|
||||
(version "0.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.dthompson.us/guile-bstructs.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "18dwhcsbcjix61hy32ckjyvgmg1r9smq2krp2m1yc6sinlszh0f2"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.dthompson.us/releases"
|
||||
"/guile-bstructs/guile-bstructs-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0f847aiyzhrlvd2jmckyqrkrvi7i9mg8rmyhbh7fs1vzykcf67wb"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list autoconf automake guile-3.0 pkg-config texinfo))
|
||||
(inputs (list guile-3.0))
|
||||
@@ -8091,14 +8016,14 @@ application to open a given file or URL based on given configurations.")
|
||||
(define-public guile-goblins
|
||||
(package
|
||||
(name "guile-goblins")
|
||||
(version "0.18.0")
|
||||
(version "0.17.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.spritely.institute/releases"
|
||||
"/guile-goblins/guile-goblins-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0gj5018wmq97ln1z7x03a13z3p35xc8762id9bl9fgkxwm01df1a"))))
|
||||
(base32 "16jkmfspsnza2fdk5jr05a5pfh7x856gpg031i21s1yvy43l8mi0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
+20
-10
@@ -653,10 +653,7 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
|
||||
(define (guile-variant-package-name prefix)
|
||||
(lambda (name)
|
||||
"Return NAME with PREFIX instead of \"guile-\", when applicable."
|
||||
(if (and (string-prefix? "guile-" name)
|
||||
|
||||
;; Don't rename guile-bootstrap@2.0.
|
||||
(not (string=? "guile-bootstrap" name)))
|
||||
(if (string-prefix? "guile-" name)
|
||||
(string-append prefix "-"
|
||||
(string-drop name
|
||||
(string-length "guile-")))
|
||||
@@ -903,8 +900,8 @@ type system, elevating types to first-class status.")
|
||||
(define-public guile-git
|
||||
(package
|
||||
(name "guile-git")
|
||||
(version "0.11.1")
|
||||
(home-page "https://codeberg.org/guile-git/guile-git.git")
|
||||
(version "0.11.0")
|
||||
(home-page "https://gitlab.com/guile-git/guile-git.git")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -913,11 +910,11 @@ type system, elevating types to first-class status.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xpzchnglddphi3chv53xqaz2x6rpq3l4s023w7r4mmndb6lgz0b"))))
|
||||
"1yjyil6z4k80pjdps8v6h6lxikwxmjxvrslf2jrmq2rrfnajschz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ; to prevent guild warnings
|
||||
;; https://codeberg.org/guile-git/guile-git/issues/20
|
||||
;; https://gitlab.com/guile-git/guile-git/-/issues/20
|
||||
,@(if (target-ppc32?)
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
@@ -925,7 +922,20 @@ type system, elevating types to first-class status.")
|
||||
(lambda _
|
||||
(substitute* "Makefile.am"
|
||||
((".*tests/blob\\.scm.*") ""))))))
|
||||
'())))
|
||||
'())
|
||||
,@(if (system-hurd?)
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-tests/hurd
|
||||
(lambda _
|
||||
(substitute* "tests/proxy.scm"
|
||||
(("\\(test-begin.*" all)
|
||||
(string-append
|
||||
all
|
||||
"(when (string-ci= \"GNU\" (vector-ref (uname) 0))\n"
|
||||
" (test-skip 1))\n")))))))
|
||||
'())))
|
||||
(native-inputs
|
||||
(list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures))
|
||||
(inputs
|
||||
@@ -994,7 +1004,7 @@ Guile's foreign function interface.")
|
||||
(file-name (string-append "guile-lzlib-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1v1pfqp6hwl0rivs7swhqnfgznxlfnws9ldmn6avnhd10filfa3a"))
|
||||
"1whgmwkr1v8m63p4aaqn8blwl9vcrswwhbfv4bm0aghl5a6rryd7"))
|
||||
(patches (search-patches "guile-lzlib-gcc-14.patch"
|
||||
"guile-lzlib-hurd64.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
+179
-153
@@ -96,13 +96,13 @@ library. It is primarily used with HLint's @code{--refactor} flag.")
|
||||
(define-public cabal-install
|
||||
(package
|
||||
(name "cabal-install")
|
||||
(version "3.6.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cabal-install" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dihpm4h3xh13vnpvwflnb7v614qdvljycc6ffg5cvhwbwfrxyfw"))))
|
||||
(version "3.12.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cabal-install" version))
|
||||
(sha256
|
||||
(base32 "1cmifq189i4x0r0yha3dl8nrzzfh92bnd2saak7dqvvjkkysqj38"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cabal-install")))
|
||||
(inputs (list ghc-async
|
||||
@@ -117,13 +117,35 @@ library. It is primarily used with HLint's @code{--refactor} flag.")
|
||||
ghc-tar
|
||||
ghc-zlib
|
||||
ghc-hackage-security
|
||||
ghc-open-browser
|
||||
ghc-regex-base
|
||||
ghc-regex-posix
|
||||
ghc-safe-exceptions
|
||||
ghc-semaphore-compat
|
||||
ghc-resolv
|
||||
ghc-lukko))
|
||||
(native-inputs (list ghc-tasty
|
||||
ghc-tasty-golden
|
||||
ghc-tasty-quickcheck
|
||||
ghc-tasty-expected-failure
|
||||
ghc-tasty-hunit
|
||||
ghc-tree-diff
|
||||
ghc-quickcheck
|
||||
ghc-tasty
|
||||
ghc-tasty-hunit
|
||||
ghc-tasty
|
||||
ghc-tasty-hunit
|
||||
ghc-tagged
|
||||
ghc-tagged
|
||||
ghc-tasty
|
||||
ghc-tasty-expected-failure
|
||||
ghc-tasty-hunit
|
||||
ghc-tasty-quickcheck
|
||||
ghc-quickcheck
|
||||
ghc-pretty-show))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"1kpgyfl5njxp4c8ax5ziag1bhqvph3h0pn660v3vpxalz8d1j6xv")))
|
||||
"0fdzqdkg2vbyg0lnbk9bdskr2d23hwjpmnc7jnvpzkcmxmcvl99n")))
|
||||
(home-page "https://www.haskell.org/cabal/")
|
||||
(synopsis "Command-line interface for Cabal and Hackage")
|
||||
(description
|
||||
@@ -145,11 +167,10 @@ installation of Haskell libraries and programs.")
|
||||
"17wi7fma2qaqdm1hwgaam3fd140v9bpa8ky0wg708h1pqc5v2nbz"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cpphs")))
|
||||
(inputs
|
||||
(list ghc-polyparse ghc-old-locale ghc-old-time))
|
||||
(inputs (list ghc-polyparse))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1f8jzs8zdh4wwbcq8fy6qqxkv75ypnvsm4yzw49wpr3b9vpnzlha")))
|
||||
`(#:cabal-revision ("2"
|
||||
"0vxav36p0kplp4dpd17i4cfzrsl3r437d840xwv83lf1bqp7mrxc")))
|
||||
(home-page "https://projects.haskell.org/cpphs/")
|
||||
(synopsis "Liberalised re-implementation of cpp, the C pre-processor")
|
||||
(description "Cpphs is a re-implementation of the C pre-processor that is
|
||||
@@ -269,20 +290,18 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
|
||||
(define-public ghcid
|
||||
(package
|
||||
(name "ghcid")
|
||||
(version "0.8.7")
|
||||
(version "0.8.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "ghcid" version))
|
||||
(sha256
|
||||
(base32 "0yqc1pkfajnr56gnh43sbj50r7c3r41b2jfz07ivgl6phi4frjbq"))))
|
||||
(base32 "1dq8lc0dwzib8y21279q4j54cmm7lvx64b3hw2yiym1kzi9rrhj4"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "ghcid")))
|
||||
(inputs
|
||||
(list ghc-extra ghc-ansi-terminal ghc-cmdargs ghc-fsnotify
|
||||
ghc-terminal-size))
|
||||
(native-inputs
|
||||
(list ghc-tasty ghc-tasty-hunit))
|
||||
(inputs (list ghc-extra ghc-ansi-terminal ghc-cmdargs ghc-fsnotify
|
||||
ghc-terminal-size))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-hunit))
|
||||
(home-page "https://github.com/ndmitchell/ghcid#readme")
|
||||
(synopsis "GHCi based bare bones IDE")
|
||||
(description
|
||||
@@ -404,95 +423,97 @@ to @code{cabal repl}).")
|
||||
(string-append bin "/git-remote-annex"))
|
||||
(symlink (string-append bin "/git-annex")
|
||||
(string-append bin "/git-remote-tor-annex"))))))))
|
||||
(inputs
|
||||
(list curl
|
||||
ghc-aeson
|
||||
ghc-ansi-terminal
|
||||
ghc-async
|
||||
ghc-attoparsec
|
||||
ghc-aws
|
||||
ghc-bloomfilter
|
||||
ghc-byteable
|
||||
ghc-case-insensitive
|
||||
ghc-clientsession
|
||||
ghc-concurrent-output
|
||||
ghc-conduit
|
||||
ghc-connection
|
||||
ghc-crypto-api
|
||||
ghc-cryptonite
|
||||
ghc-data-default
|
||||
ghc-dav
|
||||
ghc-dbus
|
||||
ghc-disk-free-space
|
||||
ghc-dlist
|
||||
ghc-edit-distance
|
||||
ghc-exceptions
|
||||
ghc-fdo-notify
|
||||
ghc-feed
|
||||
ghc-filepath-bytestring
|
||||
ghc-free
|
||||
ghc-git-lfs
|
||||
ghc-hinotify
|
||||
ghc-http-client
|
||||
ghc-http-client-tls
|
||||
ghc-http-client-restricted
|
||||
ghc-http-conduit
|
||||
ghc-http-types
|
||||
ghc-ifelse
|
||||
ghc-magic
|
||||
ghc-memory
|
||||
ghc-microlens
|
||||
ghc-monad-control
|
||||
ghc-monad-logger
|
||||
ghc-mountpoints
|
||||
ghc-network
|
||||
ghc-network-bsd
|
||||
ghc-network-info
|
||||
ghc-network-multicast
|
||||
ghc-network-uri
|
||||
ghc-old-locale
|
||||
ghc-optparse-applicative
|
||||
ghc-persistent
|
||||
ghc-persistent-sqlite
|
||||
ghc-persistent-template
|
||||
ghc-quickcheck
|
||||
ghc-random
|
||||
ghc-regex-tdfa
|
||||
ghc-resourcet
|
||||
ghc-safesemaphore
|
||||
ghc-sandi
|
||||
ghc-securemem
|
||||
ghc-servant-client
|
||||
ghc-servant-server
|
||||
ghc-socks
|
||||
ghc-split
|
||||
ghc-stm-chans
|
||||
ghc-tagsoup
|
||||
ghc-torrent
|
||||
ghc-transformers
|
||||
ghc-unbounded-delays
|
||||
ghc-unix-compat
|
||||
ghc-unliftio-core
|
||||
ghc-unordered-containers
|
||||
ghc-utf8-string
|
||||
ghc-uuid
|
||||
ghc-vector
|
||||
ghc-wai
|
||||
ghc-wai-extra
|
||||
ghc-warp
|
||||
ghc-warp-tls
|
||||
ghc-yesod
|
||||
ghc-yesod-core
|
||||
ghc-yesod-form
|
||||
ghc-yesod-static
|
||||
lsof
|
||||
rsync
|
||||
xdg-utils))
|
||||
(inputs (list ghc-network-uri
|
||||
ghc-optparse-applicative
|
||||
ghc-uuid
|
||||
ghc-data-default
|
||||
ghc-case-insensitive
|
||||
ghc-random
|
||||
ghc-dlist
|
||||
ghc-unix-compat
|
||||
ghc-safesemaphore
|
||||
ghc-async
|
||||
ghc-disk-free-space
|
||||
ghc-ifelse
|
||||
ghc-monad-logger
|
||||
ghc-free
|
||||
ghc-utf8-string
|
||||
ghc-sandi
|
||||
ghc-monad-control
|
||||
ghc-bloomfilter
|
||||
ghc-edit-distance
|
||||
ghc-resourcet
|
||||
ghc-http-client
|
||||
ghc-http-client-tls
|
||||
ghc-http-types
|
||||
ghc-http-conduit
|
||||
ghc-http-client-restricted
|
||||
ghc-conduit
|
||||
ghc-old-locale
|
||||
ghc-persistent-sqlite
|
||||
ghc-persistent
|
||||
ghc-persistent-template
|
||||
ghc-unliftio-core
|
||||
ghc-microlens
|
||||
ghc-aeson
|
||||
ghc-vector
|
||||
ghc-tagsoup
|
||||
ghc-unordered-containers
|
||||
ghc-feed
|
||||
ghc-regex-tdfa
|
||||
ghc-socks
|
||||
ghc-byteable
|
||||
ghc-stm-chans
|
||||
ghc-securemem
|
||||
ghc-crypto-api
|
||||
ghc-memory
|
||||
ghc-split
|
||||
ghc-attoparsec
|
||||
ghc-concurrent-output
|
||||
ghc-unbounded-delays
|
||||
ghc-quickcheck
|
||||
ghc-tasty
|
||||
ghc-tasty-hunit
|
||||
ghc-tasty-quickcheck
|
||||
ghc-tasty-rerun
|
||||
ghc-ansi-terminal
|
||||
ghc-aws
|
||||
ghc-dav
|
||||
ghc-network
|
||||
ghc-network-bsd
|
||||
ghc-git-lfs
|
||||
ghc-clock
|
||||
ghc-crypton
|
||||
ghc-servant
|
||||
ghc-servant-server
|
||||
ghc-servant-client
|
||||
ghc-servant-client-core
|
||||
ghc-warp
|
||||
ghc-warp-tls
|
||||
ghc-os-string
|
||||
ghc-file-io
|
||||
ghc-mountpoints
|
||||
ghc-yesod
|
||||
ghc-yesod-static
|
||||
ghc-yesod-form
|
||||
ghc-yesod-core
|
||||
ghc-path-pieces
|
||||
ghc-wai
|
||||
ghc-wai-extra
|
||||
ghc-blaze-builder
|
||||
ghc-clientsession
|
||||
ghc-shakespeare
|
||||
ghc-hinotify
|
||||
ghc-dbus
|
||||
ghc-fdo-notify
|
||||
ghc-network-multicast
|
||||
ghc-network-info
|
||||
ghc-torrent
|
||||
ghc-magic
|
||||
ghc-criterion))
|
||||
(propagated-inputs
|
||||
(list git))
|
||||
(native-inputs
|
||||
(list ghc-tasty ghc-tasty-hunit ghc-tasty-quickcheck ghc-tasty-rerun
|
||||
perl))
|
||||
(native-inputs (list ghc-filepath-bytestring))
|
||||
(home-page "https://git-annex.branchable.com/")
|
||||
(synopsis "Manage files with Git, without checking in their contents")
|
||||
(description "This package allows managing files with Git, without
|
||||
@@ -513,13 +534,13 @@ used to keep a folder in sync between computers.")
|
||||
(define-public hlint
|
||||
(package
|
||||
(name "hlint")
|
||||
(version "3.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hlint" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0bkk03c9hacvfd73dk89g4r81b50g7pjgw5pavldali4qwss34cz"))))
|
||||
(version "3.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hlint" version))
|
||||
(sha256
|
||||
(base32 "0dzy7spc45v88yplczhd3la464bhcbaihi619a45bd06ghrp55nr"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hlint")))
|
||||
(inputs (list ghc-unordered-containers
|
||||
@@ -536,12 +557,10 @@ used to keep a folder in sync between computers.")
|
||||
ghc-aeson
|
||||
ghc-deriving-aeson
|
||||
ghc-filepattern
|
||||
ghc-lib-parser
|
||||
ghc-lib-parser-ex
|
||||
hscolour
|
||||
ghc-yaml))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1rdaffg5n179yfcn5zjwjb0bki09qy13gz2ijky455y9pbaz8yz9")))
|
||||
(home-page "https://github.com/ndmitchell/hlint#readme")
|
||||
(synopsis "Suggest improvements for Haskell source code")
|
||||
(description
|
||||
@@ -553,13 +572,13 @@ unwanted suggestions, and to add your own custom suggestions.")
|
||||
(define-public hoogle
|
||||
(package
|
||||
(name "hoogle")
|
||||
(version "5.0.18.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hoogle" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0v6k75w0an9pqgb7a6cicnpf9rz77xd2lmxfbafc5l4f99jg83bn"))))
|
||||
(version "5.0.18.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hoogle" version))
|
||||
(sha256
|
||||
(base32 "08z32d87vqzhapb2vw21h25jb2g74csxlpvd8f54xl91k3ijs3wx"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hoogle")))
|
||||
(inputs (list ghc-quickcheck
|
||||
@@ -569,7 +588,7 @@ unwanted suggestions, and to add your own custom suggestions.")
|
||||
ghc-cmdargs
|
||||
ghc-conduit
|
||||
ghc-conduit-extra
|
||||
ghc-connection
|
||||
ghc-crypton-connection
|
||||
ghc-extra
|
||||
ghc-foundation
|
||||
ghc-old-locale
|
||||
@@ -582,6 +601,7 @@ unwanted suggestions, and to add your own custom suggestions.")
|
||||
ghc-mmap
|
||||
ghc-process-extras
|
||||
ghc-resourcet
|
||||
ghc-safe
|
||||
ghc-storable-tuple
|
||||
ghc-tar
|
||||
ghc-uniplate
|
||||
@@ -593,6 +613,9 @@ unwanted suggestions, and to add your own custom suggestions.")
|
||||
ghc-warp-tls
|
||||
ghc-zlib
|
||||
ghc-semigroups))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1129flhhb1992rijw46dclvmpqlylmbrzl4swsnk2knylx6jgw5a")))
|
||||
(home-page "https://hoogle.haskell.org/")
|
||||
(synopsis "Haskell API Search")
|
||||
(description
|
||||
@@ -604,14 +627,13 @@ or by approximate type signature.")
|
||||
(define-public hscolour
|
||||
(package
|
||||
(name "hscolour")
|
||||
(version "1.24.4")
|
||||
(version "1.25")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hscolour" version))
|
||||
(sha256
|
||||
(base32
|
||||
"079jwph4bwllfp03yfr26s5zc6m6kw3nhb1cggrifh99haq34cr4"))))
|
||||
(base32 "0z679khnmb6as1zcdb44n9qjk7in32jpm4ldscpqg7jrapd31kjl"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hscolour")))
|
||||
(home-page "https://hackage.haskell.org/package/hscolour")
|
||||
@@ -760,7 +782,7 @@ Wayland, and Linux console environments alike.")
|
||||
ghc-text-zipper
|
||||
ghc-timezone-olson
|
||||
ghc-timezone-series
|
||||
ghc-unix-compat-7
|
||||
ghc-unix-compat
|
||||
ghc-unordered-containers
|
||||
ghc-utf8-string
|
||||
ghc-uuid
|
||||
@@ -954,6 +976,7 @@ too slow and you'll get wound up in the scroll and crushed.")
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
(list #:haddock? #f ; TODO: Fails to build.
|
||||
#:cabal-revision '("1" "1935jrzy1r3g9cc74b330fmxnz2i1j8hsdk9jnl557qgk6xjqzs7")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'build 'build-man-page
|
||||
@@ -993,13 +1016,13 @@ advanced user's otherwise working script to fail under future circumstances.
|
||||
(define-public shelltestrunner
|
||||
(package
|
||||
(name "shelltestrunner")
|
||||
(version "1.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "shelltestrunner" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1a5kzqbwg6990249ypw0cx6cqj6663as1kbj8nzblcky8j6kbi6b"))))
|
||||
(version "1.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "shelltestrunner" version))
|
||||
(sha256
|
||||
(base32 "1c6bjyxqa4mgnh3w4pqp6sbr5cf160n7jf9i1b4b9sdxzdjk7g87"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "shelltestrunner")))
|
||||
(arguments
|
||||
@@ -1022,17 +1045,19 @@ advanced user's otherwise working script to fail under future circumstances.
|
||||
"tests/examples")
|
||||
(format #t "test suite not run~%"))
|
||||
#t))))))
|
||||
(inputs
|
||||
(list ghc-diff
|
||||
ghc-cmdargs
|
||||
ghc-filemanip
|
||||
ghc-hunit
|
||||
ghc-pretty-show
|
||||
ghc-regex-tdfa
|
||||
ghc-safe
|
||||
ghc-utf8-string
|
||||
ghc-test-framework
|
||||
ghc-test-framework-hunit))
|
||||
(inputs (list ghc-diff
|
||||
ghc-filemanip
|
||||
ghc-hunit
|
||||
ghc-cmdargs
|
||||
ghc-pretty-show
|
||||
ghc-regex-tdfa
|
||||
ghc-safe
|
||||
ghc-test-framework
|
||||
ghc-test-framework-hunit
|
||||
ghc-utf8-string
|
||||
ghc-hspec
|
||||
ghc-hspec-core
|
||||
ghc-hspec-contrib))
|
||||
(home-page "https://github.com/simonmichael/shelltestrunner")
|
||||
(synopsis "Test CLI programs")
|
||||
(description
|
||||
@@ -1045,13 +1070,13 @@ output, stderr, and exit status.")
|
||||
(define-public stylish-haskell
|
||||
(package
|
||||
(name "stylish-haskell")
|
||||
(version "0.14.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "stylish-haskell" version))
|
||||
(sha256
|
||||
(base32
|
||||
"17w92v0qnwj7m6yqdq5cxbr04xiz0yfnnyx5q54218wdl7n5lf6d"))))
|
||||
(version "0.15.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "stylish-haskell" version))
|
||||
(sha256
|
||||
(base32 "06y6f7bv5j5k7q81194v9jqcbmmqcv7h8ii3lq1783bpfnyd6h19"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "stylish-haskell")))
|
||||
(inputs (list ghc-aeson
|
||||
@@ -1061,6 +1086,7 @@ output, stderr, and exit status.")
|
||||
ghc-hsyaml-aeson
|
||||
ghc-hsyaml
|
||||
ghc-semigroups
|
||||
ghc-lib-parser
|
||||
ghc-lib-parser-ex
|
||||
ghc-strict
|
||||
ghc-optparse-applicative))
|
||||
|
||||
+319
-283
@@ -45,22 +45,18 @@
|
||||
(define-public ghc-tasty-ant-xml
|
||||
(package
|
||||
(name "ghc-tasty-ant-xml")
|
||||
(version "1.1.8")
|
||||
(version "1.1.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-ant-xml" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0h9mllhw9cd0rn34xhj8grwmbny7z7hpd8qmp9lfcdj0s4qx9vx8"))))
|
||||
(base32 "00zgsd6jjfwasr69d0y781vhjr7d8p1jbaaz4pn75ljf33akd92l"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-ant-xml")))
|
||||
(inputs
|
||||
(list ghc-generic-deriving ghc-xml ghc-tagged ghc-tasty))
|
||||
(home-page
|
||||
"https://github.com/ocharles/tasty-ant-xml")
|
||||
(synopsis
|
||||
"Render tasty output to XML for Jenkins")
|
||||
(inputs (list ghc-generic-deriving ghc-tagged ghc-tasty ghc-xml))
|
||||
(home-page "http://github.com/ocharles/tasty-ant-xml")
|
||||
(synopsis "Render tasty output to XML for Jenkins")
|
||||
(description
|
||||
"A tasty ingredient to output test results in XML, using the Ant
|
||||
schema. This XML can be consumed by the Jenkins continuous integration
|
||||
@@ -76,33 +72,37 @@ framework.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-smallcheck" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0csgwn3vch0jnpqyyfnrfjq4z0dpl67imh5a7byll3hhlyidgjym"))))
|
||||
(base32 "0csgwn3vch0jnpqyyfnrfjq4z0dpl67imh5a7byll3hhlyidgjym"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-smallcheck")))
|
||||
(inputs
|
||||
(list ghc-tasty ghc-smallcheck ghc-async ghc-tagged))
|
||||
(home-page "https://documentup.com/feuerbach/tasty")
|
||||
(inputs (list ghc-tasty ghc-smallcheck ghc-tagged ghc-optparse-applicative))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"0033ha2w9rzc1rxpzh1dkfdrn256i5lvb41pqbdh2i6kli0v5vmh")))
|
||||
(home-page "https://github.com/feuerbach/tasty")
|
||||
(synopsis "SmallCheck support for the Tasty test framework")
|
||||
(description "This package provides SmallCheck support for the Tasty
|
||||
Haskell test framework.")
|
||||
(license license:bsd-3)))
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-tasty-quickcheck
|
||||
(package
|
||||
(name "ghc-tasty-quickcheck")
|
||||
(version "0.10.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-quickcheck" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qnc6rdvjvlw08q6sln2n98rvj0s0pp689h6w4z58smjbn0lr25l"))))
|
||||
(version "0.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-quickcheck" version))
|
||||
(sha256
|
||||
(base32 "0si4ccgqlv8h33d6310rrqba7f4pz3g8cinqfj42yd7damsdxm73"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-quickcheck")))
|
||||
(inputs (list ghc-tagged ghc-tasty ghc-random ghc-quickcheck
|
||||
ghc-optparse-applicative))
|
||||
(native-inputs (list ghc-tasty-hunit ghc-pcre-light))
|
||||
(native-inputs (list ghc-regex-tdfa ghc-tasty-hunit))
|
||||
(arguments
|
||||
`(#:cabal-revision ("3"
|
||||
"1wzvha4xam8npx5mk33c056grmrqnjd6m38nnm6d7y99w2mn1a7w")))
|
||||
(home-page "https://github.com/UnkindPartition/tasty")
|
||||
(synopsis "QuickCheck support for the Tasty test framework")
|
||||
(description "This package provides QuickCheck support for the Tasty
|
||||
@@ -140,22 +140,23 @@ contains the correct result for the test.")
|
||||
(define-public ghc-tasty
|
||||
(package
|
||||
(name "ghc-tasty")
|
||||
(version "1.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty" version))
|
||||
(sha256
|
||||
(base32
|
||||
"006bf4gyc30i2gvb17hj1mzrh1kwnwf7l050x3f72wi6c2axl87l"))))
|
||||
(version "1.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty" version))
|
||||
(sha256
|
||||
(base32 "10076vlklbcyiz7plakrihava5sy3dvwhskjldqzhfl18jvcg82l"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty")))
|
||||
(inputs
|
||||
(append
|
||||
(list ghc-tagged ghc-optparse-applicative ghc-ansi-terminal)
|
||||
;; TODO: Add ghc-unbounded-delays unconditionally on next rebuild cycle.
|
||||
(if (member (%current-system) '("i686-linux"))
|
||||
(list ghc-unbounded-delays)
|
||||
'())))
|
||||
(list ghc-tagged
|
||||
ghc-optparse-applicative
|
||||
ghc-ansi-terminal
|
||||
ghc-unbounded-delays)) ; needed on 32-bit architectures
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"04llcf1i3gawdik0bjhxdgls2wkiqlx0gi76nfh784nv2qzxlpbb")))
|
||||
(home-page "https://github.com/UnkindPartition/tasty")
|
||||
(synopsis "Modern and extensible testing framework")
|
||||
(description
|
||||
@@ -167,17 +168,20 @@ and any other types of tests into a single test suite.")
|
||||
(define-public ghc-tasty-hedgehog
|
||||
(package
|
||||
(name "ghc-tasty-hedgehog")
|
||||
(version "1.3.1.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-hedgehog" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1iq452mvd9wc9pfmjsmm848jwp3cvsk1faf2mlr21vcs0yaxvq3m"))))
|
||||
(version "1.4.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-hedgehog" version))
|
||||
(sha256
|
||||
(base32 "0lki03z0p38x0dkqx5cqga30zy5m31gxn1saqylja9bi6bbq8d25"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-hedgehog")))
|
||||
(inputs (list ghc-tagged ghc-tasty ghc-hedgehog))
|
||||
(native-inputs (list ghc-tasty-expected-failure))
|
||||
(arguments
|
||||
`(#:cabal-revision ("6"
|
||||
"1rb8ncp6xyy7jr6v0hyls9m529ba0djndsxgxmkgr52rk3qq8lrc")))
|
||||
(home-page "https://github.com/qfpl/tasty-hedgehog")
|
||||
(synopsis "Integration for tasty and hedgehog")
|
||||
(description
|
||||
@@ -190,22 +194,25 @@ framework}.")
|
||||
(define-public ghc-tasty-hspec
|
||||
(package
|
||||
(name "ghc-tasty-hspec")
|
||||
(version "1.2.0.2")
|
||||
(version "1.2.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-hspec" version))
|
||||
(sha256
|
||||
(base32 "0cfcpi25jmnmzfzsx364qsj68q6gyph5z112kl8ja222hnhhr2n2"))))
|
||||
(base32 "1hk1nkjvhp89xxgzj6dhbgw0fknnghpng6afq4i39hjkwv5p78ni"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-hspec")))
|
||||
(inputs (list ghc-hspec
|
||||
ghc-hspec-api
|
||||
ghc-hspec-core
|
||||
ghc-quickcheck
|
||||
ghc-tasty
|
||||
ghc-tasty-smallcheck
|
||||
ghc-tasty-quickcheck
|
||||
ghc-tagged))
|
||||
ghc-tasty-quickcheck))
|
||||
(arguments
|
||||
`(#:cabal-revision ("7"
|
||||
"0s1y34i8g7fva0z10ws3ipcy2jmlvqk0v4hdbx8rqnby5n0l5kay")))
|
||||
(home-page "https://github.com/mitchellwrosen/tasty-hspec")
|
||||
(synopsis "Hspec support for the Tasty test framework")
|
||||
(description
|
||||
@@ -215,19 +222,17 @@ framework}.")
|
||||
(define-public ghc-tasty-hunit
|
||||
(package
|
||||
(name "ghc-tasty-hunit")
|
||||
(version "0.10.0.3")
|
||||
(version "0.10.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-hunit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gz6zz3w7s44pymw33xcxnawryl27zk33766sab96nz2xh91kvxp"))))
|
||||
(base32 "1xh33ss7dncm7zanzkzh7ywb3a46k7vkcbh6v8jb767gq6kizw2s"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-hunit")))
|
||||
(inputs
|
||||
(list ghc-call-stack-boot ghc-tasty))
|
||||
(home-page "http://documentup.com/feuerbach/tasty")
|
||||
(inputs (list ghc-tasty ghc-call-stack-boot))
|
||||
(home-page "https://github.com/UnkindPartition/tasty")
|
||||
(synopsis "HUnit support for the Tasty test framework")
|
||||
(description "This package provides HUnit support for the Tasty Haskell
|
||||
test framework.")
|
||||
@@ -257,13 +262,13 @@ tasty.")
|
||||
(define-public ghc-tasty-lua
|
||||
(package
|
||||
(name "ghc-tasty-lua")
|
||||
(version "1.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-lua" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1vnyvgcjsvqhwwyqkbgqksr9ppj5whiihpwcqkg33sl7jj3ysdwv"))))
|
||||
(version "1.1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-lua" version))
|
||||
(sha256
|
||||
(base32 "03b2n3gw2w70cnl57w3sh3cv5ka270sf07jlxpb4zs0z5gh83p1r"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-lua")))
|
||||
(inputs (list ghc-hslua-core
|
||||
@@ -288,16 +293,15 @@ from Lua.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-th" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0b2ivrw2257m4cy4rjnkwqlarh83j1y3zywnmaqqqbvy667sqnj3"))))
|
||||
(base32 "0b2ivrw2257m4cy4rjnkwqlarh83j1y3zywnmaqqqbvy667sqnj3"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-th")))
|
||||
(inputs
|
||||
(list ghc-haskell-src-exts ghc-tasty ghc-tasty-hunit))
|
||||
(inputs (list ghc-haskell-src-exts ghc-tasty))
|
||||
(native-inputs (list ghc-tasty-hunit))
|
||||
(home-page "https://github.com/bennofs/tasty-th")
|
||||
(synopsis "Automatically generate tasty TestTrees")
|
||||
(description
|
||||
"Tasty-th automatically generates tasty TestTrees from functions of the
|
||||
"Tasty-th automatically generates tasty TestTrees from functions of the
|
||||
current module, using TemplateHaskell. This is a fork the original
|
||||
test-framework-th package, modified to work with tasty instead of
|
||||
test-framework.")
|
||||
@@ -306,28 +310,27 @@ test-framework.")
|
||||
(define-public ghc-tasty-rerun
|
||||
(package
|
||||
(name "ghc-tasty-rerun")
|
||||
(version "1.1.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-rerun" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sccp5zx9v2rx741nbmgd8mzjhy5m4v74hk26d23xz93ph8aqx7s"))))
|
||||
(version "1.1.20")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-rerun" version))
|
||||
(sha256
|
||||
(base32 "0px58jm1yqbg32qf2s0yk09d2qdjxkkz9df89f31q3nzw85jv2ky"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-rerun")))
|
||||
(inputs
|
||||
(list ghc-optparse-applicative ghc-reducers ghc-split ghc-tagged
|
||||
ghc-tasty))
|
||||
(inputs (list ghc-optparse-applicative ghc-split ghc-tagged ghc-tasty))
|
||||
(arguments
|
||||
`(#:cabal-revision ("3"
|
||||
"0091arn90cx5rzn5n2bpb9alzybwraf9yj7hb0bwdfyamzpf3pkb")))
|
||||
`(#:cabal-revision ("1"
|
||||
"13xmx91hp7i0qzrhada9ckliqkynwlwa8x6pjbvxjcy1y0qsd7hk")))
|
||||
(home-page "https://github.com/ocharles/tasty-rerun")
|
||||
(synopsis "Run tests by filtering the test tree")
|
||||
(description "This package adds the ability to run tests by filtering the
|
||||
(description
|
||||
"This package adds the ability to run tests by filtering the
|
||||
test tree based on the result of a previous test run. You can use this to run
|
||||
only those tests that failed in the last run, or to only run the tests that have
|
||||
been added since previous test run.")
|
||||
(license license:bsd-3)))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-tasty-expected-failure
|
||||
(package
|
||||
@@ -362,17 +365,17 @@ development.")
|
||||
(define-public ghc-quickcheck-instances
|
||||
(package
|
||||
(name "ghc-quickcheck-instances")
|
||||
(version "0.3.29.1")
|
||||
(version "0.3.33")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-instances" version))
|
||||
(sha256
|
||||
(base32 "0jx2wfy7y5dr14s9i457g2aah4isjxry4mlbqhj7vlav6ib84gdj"))))
|
||||
(base32 "0rl8y3rb4fm4nqz122bp5f2aya4f8bc9m9i9n2vwlyq2gdacs0v8"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-instances")))
|
||||
(inputs (list ghc-quickcheck
|
||||
ghc-splitmix
|
||||
ghc-splitmix-bootstrap
|
||||
ghc-case-insensitive
|
||||
ghc-data-fix
|
||||
ghc-hashable
|
||||
@@ -383,17 +386,15 @@ development.")
|
||||
ghc-scientific
|
||||
ghc-strict
|
||||
ghc-tagged
|
||||
ghc-text-short
|
||||
ghc-these
|
||||
ghc-time-compat
|
||||
ghc-transformers-compat
|
||||
ghc-unordered-containers
|
||||
ghc-uuid-types
|
||||
ghc-vector
|
||||
ghc-data-array-byte
|
||||
ghc-text-short))
|
||||
ghc-vector))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"118xy4z4dy4bpkzsp98daiv3l4n5j7ph9my0saca7cqjybqwkcip")))
|
||||
`(#:cabal-revision ("1"
|
||||
"1xkc7rsfgya4rwiizh0yfincws3knpdnh08m280v1dgik4kv37vh")))
|
||||
(home-page "https://github.com/haskellari/qc-instances")
|
||||
(synopsis "Common quickcheck instances")
|
||||
(description "This package provides QuickCheck instances for types
|
||||
@@ -409,17 +410,38 @@ provided by the Haskell Platform.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-unicode" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0s43s1bzbg3gwsjgm7fpyksd1339f0m26dlw2famxwyzgvm0a80k"))))
|
||||
(base32 "0s43s1bzbg3gwsjgm7fpyksd1339f0m26dlw2famxwyzgvm0a80k"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-unicode")))
|
||||
(inputs (list ghc-quickcheck))
|
||||
(home-page
|
||||
"https://github.com/bos/quickcheck-unicode")
|
||||
(home-page "https://github.com/bos/quickcheck-unicode")
|
||||
(synopsis "Generator functions Unicode-related tests")
|
||||
(description "This package provides generator and shrink functions for
|
||||
testing Unicode-related software.")
|
||||
(license license:bsd-3)))
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public ghc-quickcheck-text
|
||||
(package
|
||||
(name "ghc-quickcheck-text")
|
||||
(version "0.1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-text" version))
|
||||
(sha256
|
||||
(base32 "02dbs0k6igmsa1hcw8yfvp09v7038vp4zlsp9706km3cmswgshj4"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-text")))
|
||||
(inputs (list ghc-quickcheck))
|
||||
(home-page "https://github.com/olorin/quickcheck-text")
|
||||
(synopsis "Alternative arbitrary instance for Text")
|
||||
(description
|
||||
"The usual Arbitrary instance for Text (in
|
||||
<https://hackage.haskell.org/package/quickcheck-instances quickcheck-instances>)
|
||||
only has single-byte instances and so isn't an ideal representation of a valid
|
||||
UTF-8 character. This package has generators for one-, two- and three-byte
|
||||
UTF-8 characters (all that are currently in use).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-quickcheck-io
|
||||
(package
|
||||
@@ -446,17 +468,19 @@ use HUnit assertions as QuickCheck properties.")
|
||||
(define-public ghc-quickcheck
|
||||
(package
|
||||
(name "ghc-quickcheck")
|
||||
(version "2.14.3")
|
||||
(version "2.15.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "QuickCheck" version))
|
||||
(sha256
|
||||
(base32 "0085lwy14r7hk7ibmv8d7d54ja9zin0ijf0b27xai898dfrj43sw"))))
|
||||
(base32 "0zvfydg44ibs1br522rzvdlxj9mpz0h62js1hay1sj5gvdnj3cm3"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "QuickCheck")))
|
||||
(inputs
|
||||
(list ghc-random ghc-splitmix-bootstrap))
|
||||
(inputs (list ghc-random-bootstrap ghc-splitmix-bootstrap))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"0cgfp4s51cjphsn9cls6rndisvqmi94vn95xan9g1yz6p5xk7z8c")))
|
||||
(home-page "https://github.com/nick8325/quickcheck")
|
||||
(synopsis "Automatic testing of Haskell programs")
|
||||
(description
|
||||
@@ -479,10 +503,8 @@ expressed in Haskell, using combinators defined in the QuickCheck library.")
|
||||
(base32 "1kyam4cy7qmnizjwjm8jamq43w7f0fs6ljfplwj0ib6wi2kjh0wv"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-assertions")))
|
||||
(native-inputs
|
||||
(list ghc-hspec))
|
||||
(inputs
|
||||
(list ghc-ieee754 ghc-pretty-show ghc-quickcheck))
|
||||
(inputs (list ghc-quickcheck ghc-ieee754 ghc-pretty-show))
|
||||
(native-inputs (list ghc-hspec))
|
||||
(home-page "https://github.com/s9gf4ult/quickcheck-assertions")
|
||||
(synopsis "HUnit-like assertions for QuickCheck")
|
||||
(description
|
||||
@@ -494,33 +516,27 @@ HUnit.")
|
||||
(define-public ghc-test-framework
|
||||
(package
|
||||
(name "ghc-test-framework")
|
||||
(version "0.8.2.0")
|
||||
(version "0.8.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "test-framework" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hhacrzam6b8f10hyldmjw8pb7frdxh04rfg3farxcxwbnhwgbpm"))))
|
||||
(base32 "04ijf5x6xx8i5lqv9ir33zs1rfzc4qkwwz8c1fdycnzvydcv4dnp"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "test-framework")))
|
||||
(inputs (list ghc-ansi-terminal
|
||||
ghc-ansi-wl-pprint
|
||||
ghc-random
|
||||
ghc-regex-posix
|
||||
ghc-old-locale
|
||||
ghc-xml
|
||||
ghc-hostname))
|
||||
(native-inputs (list ghc-hunit ghc-quickcheck ghc-semigroups-bootstrap))
|
||||
(arguments
|
||||
`(#:tests? #f ; FIXME: Tests do not build.
|
||||
#:cabal-revision
|
||||
("6" "0wbq9wiaag69nsqxwijzhs5y1hb9kbpkp1x65dvx158cxp8i9w9r")))
|
||||
;(native-inputs
|
||||
; (list ghc-hunit ghc-quickcheck))
|
||||
(inputs
|
||||
`(("ghc-ansi-terminal" ,ghc-ansi-terminal)
|
||||
("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint)
|
||||
("ghc-hostname" ,ghc-hostname)
|
||||
("ghc-old-locale" ,ghc-old-locale)
|
||||
("ghc-random" ,ghc-random)
|
||||
("ghc-regex-posix" ,ghc-regex-posix)
|
||||
("ghc-xml" ,ghc-xml)
|
||||
("ghc-libxml" ,ghc-libxml)
|
||||
("ghc-semigroups" ,ghc-semigroups-bootstrap)))
|
||||
(home-page "https://batterseapower.github.io/test-framework/")
|
||||
`(#:cabal-revision ("1"
|
||||
"1yv1qsr6bxphxk9430id9bqhfmkffdqmfg0k017dp9pnn4pqj0zh")))
|
||||
(home-page "https://github.com/haskell/test-framework#readme")
|
||||
(synopsis "Framework for running and organising tests")
|
||||
(description
|
||||
"This package allows tests such as QuickCheck properties and HUnit test
|
||||
@@ -557,23 +573,21 @@ reporting and test statistics output.")
|
||||
(define-public ghc-test-framework-quickcheck2
|
||||
(package
|
||||
(name "ghc-test-framework-quickcheck2")
|
||||
(version "0.3.0.5")
|
||||
(version "0.3.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "test-framework-quickcheck2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ngf9vvby4nrdf1i7dxf5m9jn0g2pkq32w48xdr92n9hxka7ixn9"))))
|
||||
(base32 "1d0w2q9sm8aayk0aj1zr2irpnqwpzixn6pdfq1i904vs1kkb2xin"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "test-framework-quickcheck2")))
|
||||
(inputs (list ghc-test-framework ghc-quickcheck ghc-extensible-exceptions
|
||||
ghc-random))
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("3" "0mglqfimla4vvv80mg08aj76zf4993wmngqlirh05h8i9nmgv6lh")))
|
||||
(inputs
|
||||
(list ghc-extensible-exceptions ghc-quickcheck ghc-random
|
||||
ghc-test-framework))
|
||||
(home-page "https://batterseapower.github.io/test-framework/")
|
||||
`(#:cabal-revision ("1"
|
||||
"1af2gw9gvq143jdqmsnxj23cgss9ffdyr67951a5x151aps04y7z")))
|
||||
(home-page "https://github.com/haskell/test-framework")
|
||||
(synopsis "QuickCheck2 support for test-framework")
|
||||
(description
|
||||
"This package provides QuickCheck2 support for the test-framework
|
||||
@@ -592,9 +606,8 @@ package.")
|
||||
(base32 "1xpgpk1gp4w7w46b4rhj80fa0bcyz8asj2dcjb5x1c37b7rw90b0"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "test-framework-smallcheck")))
|
||||
(inputs
|
||||
(list ghc-smallcheck ghc-test-framework))
|
||||
(home-page "https://github.com/Bodigrim/smallcheck")
|
||||
(inputs (list ghc-test-framework ghc-smallcheck))
|
||||
(home-page "https://github.com/feuerbach/smallcheck")
|
||||
(synopsis "SmallCheck support for test-framework")
|
||||
(description
|
||||
"This package lets programmers use SmallCheck properties in Haskell's
|
||||
@@ -660,17 +673,17 @@ JUnit tool for Java.")
|
||||
(define-public hspec-discover
|
||||
(package
|
||||
(name "hspec-discover")
|
||||
(version "2.9.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-discover" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0536kdxjw6p8b6gcwvmr22jbmb6cgzbddi0fkd01b2m847z37sb5"))))
|
||||
(version "2.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-discover" version))
|
||||
(sha256
|
||||
(base32 "044vgsy45ff00h9z2k3jgn2m37npcjiacc4cifahrjlmwa7a7ylp"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-discover")))
|
||||
(native-inputs (list ghc-quickcheck ghc-hspec-meta ghc-mockery-bootstrap))
|
||||
(home-page "http://hspec.github.io/")
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "Automatically discover and run Hspec tests")
|
||||
(description "hspec-discover is a tool which automatically discovers and
|
||||
runs Hspec tests.")
|
||||
@@ -679,28 +692,30 @@ runs Hspec tests.")
|
||||
(define-public ghc-hspec-core
|
||||
(package
|
||||
(name "ghc-hspec-core")
|
||||
(version "2.9.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-core" version))
|
||||
(sha256
|
||||
(base32
|
||||
"040rzqiqwkp373jjpij8lkmv08pp2ya92zzcf95bw8px215rp08n"))))
|
||||
(version "2.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-core" version))
|
||||
(sha256
|
||||
(base32 "030400w95775jrivbi7n1nnx6j5z717rqd3986ggklb8h9hjalfc"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-core")))
|
||||
(inputs (list ghc-hunit
|
||||
ghc-quickcheck
|
||||
ghc-ansi-terminal
|
||||
ghc-call-stack
|
||||
ghc-clock
|
||||
ghc-haskell-lexer
|
||||
ghc-hspec-expectations
|
||||
ghc-quickcheck-io
|
||||
ghc-random
|
||||
ghc-setenv
|
||||
ghc-tf-random))
|
||||
(native-inputs (list ghc-base-orphans-bootstrap ghc-hspec-meta
|
||||
ghc-silently-bootstrap ghc-temporary))
|
||||
(home-page "http://hspec.github.io/")
|
||||
ghc-silently-bootstrap ghc-temporary-bootstrap))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"0yq9nnawcgbgxiz4ymfa8k66jrvgrhmv8j7g880x8k6q8q4ncqlq")))
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "Testing framework for Haskell")
|
||||
(description "This library exposes internal types and functions that can
|
||||
be used to extend Hspec's functionality.")
|
||||
@@ -709,23 +724,28 @@ be used to extend Hspec's functionality.")
|
||||
(define-public ghc-hspec-meta
|
||||
(package
|
||||
(name "ghc-hspec-meta")
|
||||
(version "2.9.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-meta" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1raxwpsmcijl3x2h5naw6aydhbiknxvhj3x7v384bi1rqi51ainm"))))
|
||||
(version "2.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-meta" version))
|
||||
(sha256
|
||||
(base32 "1612pg5gihqjxrzqqvbbgckaqiwq3rmz3rg07lrjhzklg975nj69"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-meta")))
|
||||
(inputs (list ghc-quickcheck
|
||||
(inputs (list ghc-hunit
|
||||
ghc-quickcheck
|
||||
ghc-ansi-terminal
|
||||
ghc-call-stack-boot
|
||||
ghc-clock
|
||||
ghc-haskell-lexer
|
||||
ghc-hspec-expectations
|
||||
ghc-quickcheck-io
|
||||
ghc-random
|
||||
ghc-setenv))
|
||||
(home-page "http://hspec.github.io/")
|
||||
ghc-tf-random))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"1jrk14s51psb0zjici56220iyb98i3q06sd3rsyx594s3cddgn5d")))
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "Version of Hspec to test Hspec itself")
|
||||
(description "This library provides a stable version of Hspec which is
|
||||
used to test the in-development version of Hspec.")
|
||||
@@ -734,38 +754,58 @@ used to test the in-development version of Hspec.")
|
||||
(define-public ghc-hspec
|
||||
(package
|
||||
(name "ghc-hspec")
|
||||
(version "2.9.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec" version))
|
||||
(sha256
|
||||
(base32
|
||||
"092sfqjkargxxszp9jjqa8ldjz0xv34jwn6k21q59ys5ckvsrpc1"))))
|
||||
(version "2.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec" version))
|
||||
(sha256
|
||||
(base32 "1zdgkn0gkcphcsfqcqwcfqiqvkz12ljks46v3czpaysndz8icfip"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec")))
|
||||
(inputs (list ghc-quickcheck ghc-hspec-core hspec-discover
|
||||
ghc-hspec-expectations))
|
||||
(home-page "http://hspec.github.io/")
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "Testing Framework for Haskell")
|
||||
(description "This library provides the Hspec testing framework for
|
||||
Haskell, inspired by the Ruby library RSpec.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-hspec-api
|
||||
(package
|
||||
(name "ghc-hspec-api")
|
||||
(version "2.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-api" version))
|
||||
(sha256
|
||||
(base32 "1xn2b2hafyq6qm3zaia9nw27ir4cg8v2qn499bz2zwnp2vkjra07"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-api")))
|
||||
(inputs (list ghc-hspec-core))
|
||||
(native-inputs (list ghc-hspec))
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "A Testing Framework for Haskell")
|
||||
(description
|
||||
"This package provides a stable API that can be used to extend Hspec's
|
||||
functionality.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-hspec-contrib
|
||||
(package
|
||||
(name "ghc-hspec-contrib")
|
||||
(version "0.5.1.1")
|
||||
(version "0.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-contrib" version))
|
||||
(sha256
|
||||
(base32 "1nyb5n2jiq920yyf3flzyxrs5xpfyppl3jn18zhviyysjjk5drpx"))))
|
||||
(base32 "0002xzvyh790iwf1y33d4nflrbp5sxvpsp010srcfryf1n3qx2b0"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-contrib")))
|
||||
(inputs (list ghc-hunit ghc-call-stack ghc-hspec-core))
|
||||
(native-inputs (list ghc-quickcheck ghc-hspec hspec-discover))
|
||||
(arguments (list #:tests? #f)) ; Fail to build.
|
||||
(home-page "https://hspec.github.io/")
|
||||
(synopsis "Contributed functionality for Hspec")
|
||||
(description "This package provides contributed Hspec extensions.")
|
||||
@@ -774,22 +814,25 @@ Haskell, inspired by the Ruby library RSpec.")
|
||||
(define-public ghc-hspec-expectations
|
||||
(package
|
||||
(name "ghc-hspec-expectations")
|
||||
(version "0.8.2")
|
||||
(version "0.8.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hspec-expectations" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1vxl9zazbaapijr6zmcj72j9wf7ka1pirrjbwddwwddg3zm0g5l1"))))
|
||||
(base32 "1zr1pqchcwglfr5dvcrgc1l5x924n9w09n2zr68dmkqf4dzdx3bv"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hspec-expectations")))
|
||||
(inputs (list ghc-hunit ghc-call-stack))
|
||||
(arguments
|
||||
;; Tests depend on ghc-nanospec.
|
||||
(arguments '(#:tests? #f))
|
||||
(inputs (list ghc-hunit))
|
||||
(home-page "https://github.com/sol/hspec-expectations")
|
||||
`(#:tests? #f
|
||||
#:cabal-revision ("2"
|
||||
"14zzsjqcz1zbnvi50i82lx84nc8b5da7ar5cazzh44lklyag0ds2")))
|
||||
(home-page "https://github.com/hspec/hspec-expectations#readme")
|
||||
(synopsis "Catchy combinators for HUnit")
|
||||
(description "This library provides catchy combinators for HUnit, see
|
||||
(description
|
||||
"This library provides catchy combinators for HUnit, see
|
||||
@uref{https://github.com/sol/hspec-expectations#readme, the README}.")
|
||||
(license license:expat)))
|
||||
|
||||
@@ -854,13 +897,13 @@ implementations of cryptographic ciphers.")
|
||||
(define-public ghc-hedgehog
|
||||
(package
|
||||
(name "ghc-hedgehog")
|
||||
(version "1.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hedgehog" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dbk75hk6hqpzkjdlpw3s63qhm42kqigij33p321by6xndb59jg1"))))
|
||||
(version "1.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "hedgehog" version))
|
||||
(sha256
|
||||
(base32 "0sl6x9q9kyrpv73565w9na9dm10wzxdl0qgiraqarffynfgn0hg9"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "hedgehog")))
|
||||
(inputs (list ghc-ansi-terminal
|
||||
@@ -875,8 +918,12 @@ implementations of cryptographic ciphers.")
|
||||
ghc-primitive
|
||||
ghc-random
|
||||
ghc-resourcet
|
||||
ghc-safe-exceptions
|
||||
ghc-transformers-base
|
||||
ghc-wl-pprint-annotated))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"1m0b9m8dw5nw4b3w1jbp5fd0b0kqlyvvy3qsfxc7md77iafxq169")))
|
||||
(home-page "https://hedgehog.qa")
|
||||
(synopsis "Property-based testing in the spirt of QuickCheck")
|
||||
(description
|
||||
@@ -892,26 +939,16 @@ To get started quickly, see the examples:
|
||||
(define-public cabal-doctest
|
||||
(package
|
||||
(name "cabal-doctest")
|
||||
(version "1.0.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cabal-doctest" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wxs0xkspc80h0g8ks792lrzldxvcnhc9rja1j0k678ijs20hmjm"))))
|
||||
(version "1.0.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cabal-doctest" version))
|
||||
(sha256
|
||||
(base32 "0gwjpwv2v7c7gs2dvf7ixsxx6likmgw5yi0fy4bqc0i7nkqg4bfw"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cabal-doctest")))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"0868js0qgfhvmyw4hjzrvmlzyqsm8dfsbmqhybxb90x44xi3r0i1")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'update-constraints
|
||||
(lambda _
|
||||
(substitute* "cabal-doctest.cabal"
|
||||
(("\\b(Cabal|base)\\s+[^,]+" all dep)
|
||||
dep)))))))
|
||||
(home-page "https://github.com/haskellari/cabal-doctest")
|
||||
(home-page "https://github.com/ulidtko/cabal-doctest")
|
||||
(synopsis "Setup.hs helper for running doctests")
|
||||
(description
|
||||
"To properly work, the @code{doctest} package needs plenty of
|
||||
@@ -971,13 +1008,13 @@ random testing, and hybrids of the two.")
|
||||
(define-public ghc-inspection-testing
|
||||
(package
|
||||
(name "ghc-inspection-testing")
|
||||
(version "0.4.6.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "inspection-testing" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mxff0v3ciccbk4b8kxnh4752fzbwn7213qd8xji0csv6gi2w83y"))))
|
||||
(version "0.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "inspection-testing" version))
|
||||
(sha256
|
||||
(base32 "0zi1q86sd9jy5dpqfs2j71acdl7kvik0ps78xirpdhyldhwwyqws"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "inspection-testing")))
|
||||
(home-page "https://github.com/nomeata/inspection-testing")
|
||||
@@ -1010,33 +1047,33 @@ examples and more information.")
|
||||
(name "ghc-quickcheck-classes")
|
||||
(version "0.6.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-classes" version))
|
||||
(sha256
|
||||
(base32 "19iw15mvb7gws3ljdxqwsbb4pmfc0sfflf8szgmrhiqr3k82mqv2"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-classes" version))
|
||||
(sha256
|
||||
(base32 "19iw15mvb7gws3ljdxqwsbb4pmfc0sfflf8szgmrhiqr3k82mqv2"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-classes")))
|
||||
(inputs
|
||||
(list ghc-quickcheck
|
||||
ghc-primitive
|
||||
ghc-primitive-addr
|
||||
ghc-quickcheck-classes-base
|
||||
ghc-aeson
|
||||
ghc-semigroupoids
|
||||
ghc-semirings
|
||||
ghc-vector))
|
||||
(native-inputs
|
||||
(list ghc-base-orphans
|
||||
ghc-tagged
|
||||
ghc-base-orphans
|
||||
ghc-tagged
|
||||
ghc-tasty
|
||||
ghc-tasty-quickcheck))
|
||||
(inputs (list ghc-quickcheck
|
||||
ghc-primitive
|
||||
ghc-primitive-addr
|
||||
ghc-quickcheck-classes-base
|
||||
ghc-semigroups-bootstrap
|
||||
ghc-fail
|
||||
ghc-tagged
|
||||
ghc-aeson
|
||||
ghc-semigroupoids
|
||||
ghc-semirings
|
||||
ghc-vector))
|
||||
(native-inputs (list ghc-base-orphans ghc-base-orphans ghc-tasty
|
||||
ghc-tasty-quickcheck))
|
||||
(arguments
|
||||
`(#:cabal-revision ("3"
|
||||
"1pawam5rsdcdv21fqc87khzqjm0ixwzklfxd6gk3b2qrr5q66bn5")))
|
||||
(home-page "https://github.com/andrewthad/quickcheck-classes#readme")
|
||||
(synopsis "QuickCheck common typeclasses")
|
||||
(description
|
||||
"This library provides QuickCheck properties to ensure that typeclass
|
||||
"This library provides QuickCheck properties to ensure that typeclass
|
||||
instances adhere to the set of laws that they are supposed to. There are
|
||||
other libraries that do similar things, such as @code{genvalidity-hspec} and
|
||||
@code{checkers}. This library differs from other solutions by not introducing
|
||||
@@ -1052,24 +1089,26 @@ constraints more cleanly.")
|
||||
(name "ghc-quickcheck-classes-base")
|
||||
(version "0.6.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-classes-base" version))
|
||||
(sha256
|
||||
(base32 "16c6gq4cqpkwnq1pzkhm6r7mrwk4an50ha5w77bmiia2qkhla6ch"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "quickcheck-classes-base" version))
|
||||
(sha256
|
||||
(base32 "16c6gq4cqpkwnq1pzkhm6r7mrwk4an50ha5w77bmiia2qkhla6ch"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "quickcheck-classes-base")))
|
||||
(inputs
|
||||
(list ghc-quickcheck
|
||||
ghc-contravariant
|
||||
ghc-bifunctors
|
||||
ghc-semigroups
|
||||
ghc-fail
|
||||
ghc-tagged))
|
||||
(inputs (list ghc-quickcheck
|
||||
ghc-contravariant
|
||||
ghc-bifunctors
|
||||
ghc-semigroups-bootstrap
|
||||
ghc-fail
|
||||
ghc-tagged))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1p3v38jhpx0r6rnvaspkkivl8xyq2mq4xnmycgmkj1gr77vplkdr")))
|
||||
(home-page "https://github.com/andrewthad/quickcheck-classes#readme")
|
||||
(synopsis "QuickCheck common typeclasses from `base`")
|
||||
(description
|
||||
"This library is a minimal variant of `quickcheck-classes` that only
|
||||
"This library is a minimal variant of `quickcheck-classes` that only
|
||||
provides laws for typeclasses from `base`. The main purpose of splitting this
|
||||
out is so that `primitive` can depend on `quickcheck-classes-base` in its test
|
||||
suite, avoiding the circular dependency that arises if `quickcheck-classes` is
|
||||
@@ -1087,67 +1126,61 @@ this library uses the higher-kinded typeclasses
|
||||
(define-public ghc-doctest-lib
|
||||
(package
|
||||
(name "ghc-doctest-lib")
|
||||
(version "0.1")
|
||||
(version "0.1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "doctest-lib" version))
|
||||
(sha256
|
||||
(base32 "1vswam0dhw52dihgnzirh18gqs8rj8h6jd7pl6y1mg2f9f9zmih2"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "doctest-lib" version))
|
||||
(sha256
|
||||
(base32 "1hb3zx1xzib3v41blnwcbhc2v0rzwdzq7gm4sajqndimwjkkxc67"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "doctest-lib")))
|
||||
(home-page "https://hub.darcs.net/thielema/doctest-lib/")
|
||||
(synopsis "Parts of doctest exposed as library")
|
||||
(description
|
||||
"Parts of doctest exposed as library. For use with the doctest-extract utility.")
|
||||
"Parts of doctest exposed as library. For use with the doctest-extract utility.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-doctest-exitcode-stdio
|
||||
(package
|
||||
(name "ghc-doctest-exitcode-stdio")
|
||||
(version "0.0")
|
||||
(version "0.0.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "doctest-exitcode-stdio" version))
|
||||
(sha256
|
||||
(base32 "1g3c7yrqq2mwqbmvs8vkx1a3cf0p0x74b7fnn344dsk7bsfpgv0x"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "doctest-exitcode-stdio" version))
|
||||
(sha256
|
||||
(base32 "0kg5xiw4giyvqpcj6cxqqnysvixhxlwm0pbg3qks8dzwb5w79dvk"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "doctest-exitcode-stdio")))
|
||||
(inputs
|
||||
(list ghc-doctest-lib ghc-quickcheck ghc-semigroups))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1065s8bch6zhl6mc8nhvfpwd1irmjd04z7xgycbpihc14x4ijim3")))
|
||||
(inputs (list ghc-doctest-lib ghc-quickcheck ghc-semigroups))
|
||||
(home-page "https://hub.darcs.net/thielema/doctest-exitcode-stdio/")
|
||||
(synopsis "Run Doctests in a @code{Cabal.Test.exitcode-stdio} environment")
|
||||
(description
|
||||
"This package allows on to run Doctests in a Cabal.Test.exitcode-stdio
|
||||
"This package allows on to run Doctests in a Cabal.Test.exitcode-stdio
|
||||
environment.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-tasty-silver
|
||||
(package
|
||||
(name "ghc-tasty-silver")
|
||||
(version "3.3.1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-silver" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13j0zs0ciijv9q2nncna1gbgsgw2g7xc228hzmqic1750n3ybz9m"))))
|
||||
(version "3.3.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-silver" version))
|
||||
(sha256
|
||||
(base32 "01w3576kymglcddinh10m1wgy71dia49k2pnw5y1c97jjrhanf17"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-silver")))
|
||||
(inputs (list ghc-ansi-terminal
|
||||
ghc-async
|
||||
ghc-optparse-applicative
|
||||
ghc-process-extras
|
||||
ghc-regex-tdfa
|
||||
ghc-silently
|
||||
ghc-tagged
|
||||
ghc-tasty
|
||||
ghc-temporary
|
||||
ghc-semigroups))
|
||||
ghc-temporary))
|
||||
(native-inputs (list ghc-tasty-hunit))
|
||||
(home-page "https://github.com/phile314/tasty-silver")
|
||||
(synopsis "Fancy test runner, including support for golden tests")
|
||||
@@ -1163,16 +1196,19 @@ result of golden tests.")
|
||||
(define-public ghc-tasty-inspection-testing
|
||||
(package
|
||||
(name "ghc-tasty-inspection-testing")
|
||||
(version "0.1.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-inspection-testing" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0p46w44f19w7lvdzyg3vq6qzix0rjp8p23ilxz82dviq38lgmifp"))))
|
||||
(version "0.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tasty-inspection-testing" version))
|
||||
(sha256
|
||||
(base32 "0wl2xlnbmqdkwhi4ic6a4q4lxf9qg433lidi8d0hlp3ykrjpbcay"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tasty-inspection-testing")))
|
||||
(inputs (list ghc-inspection-testing ghc-tasty))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"0z9al0hyq381fw146agbpz7rf24rwms1w91m7s0k1w3xbfw16l9n")))
|
||||
(home-page "https://github.com/Bodigrim/tasty-inspection-testing")
|
||||
(synopsis "Inspection testing support for tasty")
|
||||
(description
|
||||
|
||||
+193
-142
@@ -62,18 +62,19 @@ format.")
|
||||
(package
|
||||
(name "ghc-asn1-encoding")
|
||||
(version "0.9.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "asn1-encoding" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02nsr30h5yic1mk7znf0q4z3n560ip017n60hg7ya25rsfmxxy6r"))))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "asn1-encoding" version))
|
||||
(sha256
|
||||
(base32 "02nsr30h5yic1mk7znf0q4z3n560ip017n60hg7ya25rsfmxxy6r"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "asn1-encoding")))
|
||||
(inputs
|
||||
(list ghc-hourglass ghc-asn1-types))
|
||||
(native-inputs
|
||||
(list ghc-tasty ghc-tasty-quickcheck))
|
||||
(inputs (list ghc-hourglass ghc-asn1-types))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-quickcheck))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"16503ryhq15f2rfdav2qnkq11dg2r3vk3f9v64q9dmxf8dh8zv97")))
|
||||
(home-page "https://github.com/vincenthz/hs-asn1")
|
||||
(synopsis "ASN1 data reader and writer in RAW, BER and DER forms")
|
||||
(description
|
||||
@@ -111,15 +112,18 @@ when ASN1 pattern matching is not convenient.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypto-api" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19bsmkqkpnvh01b77pmyarx00fic15j4hvg4pzscrj4prskrx2i9"))))
|
||||
(base32 "19bsmkqkpnvh01b77pmyarx00fic15j4hvg4pzscrj4prskrx2i9"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypto-api")))
|
||||
(inputs (list ghc-cereal ghc-tagged ghc-entropy))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"1z6n1sa5pn3iqvqjrd8hv4bc2pxzsrhm5sh0l8z7g9lbqp6w0wp5")))
|
||||
(home-page "https://github.com/TomMD/crypto-api")
|
||||
(synopsis "Provides generic interface for cryptographic operations
|
||||
for Haskell")
|
||||
(description "This Haskell package provides a generic interface for
|
||||
(description
|
||||
"This Haskell package provides a generic interface for
|
||||
cryptographic operations (hashes, ciphers, randomness).
|
||||
|
||||
Maintainers of hash and cipher implementations are encouraged to add instances
|
||||
@@ -197,13 +201,15 @@ that hides the C implementation.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptohash-md5" version))
|
||||
(sha256
|
||||
(base32
|
||||
"018g13hkmq5782i24b4518hcd926fl6x6fh5hd7b9wlxwc5dn21v"))))
|
||||
(base32 "018g13hkmq5782i24b4518hcd926fl6x6fh5hd7b9wlxwc5dn21v"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cryptohash-md5")))
|
||||
(native-inputs (list ghc-base16-bytestring ghc-puremd5 ghc-tasty
|
||||
ghc-tasty-hunit ghc-tasty-quickcheck))
|
||||
(home-page "https://github.com/hvr/cryptohash-md5")
|
||||
ghc-tasty-quickcheck ghc-tasty-hunit))
|
||||
(arguments
|
||||
`(#:cabal-revision ("6"
|
||||
"0m7f9mgw4w9vcch37ja9zgbn0knq8rjppqr9x2ylkcdxfdnmhhif")))
|
||||
(home-page "https://github.com/haskell-hvr/cryptohash-md5")
|
||||
(synopsis "MD5 implementation for Haskell")
|
||||
(description "This Haskell package provides implementation of MD5.")
|
||||
(license license:bsd-3)))
|
||||
@@ -212,20 +218,20 @@ that hides the C implementation.")
|
||||
(package
|
||||
(name "ghc-cryptohash-sha1")
|
||||
(version "0.11.101.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptohash-sha1" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0h9jl9v38gj0vnscqx7xdklk634p05fa6z2pcvknisq2mnbjq154"))))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptohash-sha1" version))
|
||||
(sha256
|
||||
(base32 "0h9jl9v38gj0vnscqx7xdklk634p05fa6z2pcvknisq2mnbjq154"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cryptohash-sha1")))
|
||||
(native-inputs (list ghc-base16-bytestring ghc-sha ghc-tasty
|
||||
ghc-tasty-quickcheck ghc-tasty-hunit))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"0bz9rfl7b2iwn45m0lxcmsyi5rrv3xdgzx2lzr79bds91dw6i25b")))
|
||||
(home-page "https://github.com/hvr/cryptohash-sha1")
|
||||
`(#:cabal-revision ("6"
|
||||
"1cxdw2y10z4v0mz91wki7f233jziipx85j4qy5msig4nv3djkprb")))
|
||||
(home-page "https://github.com/haskell-hvr/cryptohash-sha1")
|
||||
(synopsis "SHA-1 implementation for Haskell")
|
||||
(description
|
||||
"This Haskell package provides an incremental and one-pass,
|
||||
@@ -246,20 +252,18 @@ the C implementation.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptohash-sha256" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
|
||||
(base32 "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cryptohash-sha256")))
|
||||
(native-inputs (list ghc-base16-bytestring ghc-sha ghc-tasty
|
||||
ghc-tasty-quickcheck ghc-tasty-hunit))
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("1" "1hyzqv30rpj920ddnr0zypyjjlh52vyp2d140pn2byayj820rkgs")
|
||||
#:tests? #f)) ; TODO: tasty ==1.1.*
|
||||
(native-inputs
|
||||
(list ghc-base16-bytestring ghc-sha ghc-tasty ghc-tasty-hunit
|
||||
ghc-tasty-quickcheck))
|
||||
(home-page "https://github.com/hvr/cryptohash-sha1")
|
||||
`(#:cabal-revision ("6"
|
||||
"01s12sl5mxvraj5fj3cs0pkb03pm8xpjz13y09dpl7i6rv6f578f")))
|
||||
(home-page "https://github.com/haskell-hvr/cryptohash-sha256")
|
||||
(synopsis "SHA-256 implementation for Haskell")
|
||||
(description "This Haskell package provides an incremental and
|
||||
(description
|
||||
"This Haskell package provides an incremental and
|
||||
one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
|
||||
SHA-256 cryptographic hash algorithm}, with performance close to the
|
||||
fastest implementations available in other languages.
|
||||
@@ -272,12 +276,12 @@ the C implementation.")
|
||||
(package
|
||||
(name "ghc-cryptonite")
|
||||
(version "0.30")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptonite" version))
|
||||
(sha256
|
||||
(base32
|
||||
"07bb97iszhnrfddh5ql6p3dqd0c13xycjw5n2kljw7d0ia59q2an"))))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "cryptonite" version))
|
||||
(sha256
|
||||
(base32 "07bb97iszhnrfddh5ql6p3dqd0c13xycjw5n2kljw7d0ia59q2an"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "cryptonite")))
|
||||
(inputs (list ghc-memory ghc-basement))
|
||||
@@ -326,19 +330,17 @@ elsewhere.")
|
||||
(define-public ghc-digest
|
||||
(package
|
||||
(name "ghc-digest")
|
||||
(version "0.0.1.7")
|
||||
(version "0.0.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "digest" version))
|
||||
(sha256
|
||||
(base32 "02jzw0bsng87y1n2kgpy7vb30lvqsnpbfd8dpg4hmvbg9s06qgdj"))))
|
||||
(base32 "163418p50bqdxn8ajzj6x3455xbch9jq1w6psbkdz5qzw017py6b"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "digest")))
|
||||
(arguments
|
||||
`(#:extra-directories ("zlib")
|
||||
#:cabal-revision ("1"
|
||||
"0wh34kyag2vhwvsdwv8qmvm13gy32nc94yfyqfdnl67nyc2sx8wl")))
|
||||
`(#:extra-directories ("zlib")))
|
||||
(inputs (list zlib))
|
||||
(native-inputs (list pkg-config))
|
||||
(home-page "http://hackage.haskell.org/package/digest")
|
||||
@@ -352,13 +354,13 @@ are implemented as FFI bindings to efficient code from zlib.")
|
||||
(define-public ghc-entropy
|
||||
(package
|
||||
(name "ghc-entropy")
|
||||
(version "0.4.1.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "entropy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rbx4ydabrjs8kkdg9laznkh9nisiq6b5z93vnp9bh6iy59ivb45"))))
|
||||
(version "0.4.1.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "entropy" version))
|
||||
(sha256
|
||||
(base32 "1slj5n783k2amsx2hqs5qwvcw4rgfhdhgmiyg7cii0wg4w0mmpgm"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "entropy")))
|
||||
(home-page "https://github.com/TomMD/entropy")
|
||||
@@ -415,6 +417,35 @@ the MD5 digest (hash) algorithm. This now supports the @code{crypto-api} class
|
||||
interface.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-rsa
|
||||
(package
|
||||
(name "ghc-rsa")
|
||||
(version "2.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "RSA" version))
|
||||
(sha256
|
||||
(base32 "0hchsqrxpfw7mqrqwscfy8ig1w2di6w3nxpzi873w0gibv2diibj"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "RSA")))
|
||||
(inputs (list ghc-crypto-api ghc-crypto-pubkey-types ghc-sha))
|
||||
(native-inputs (list ghc-quickcheck ghc-tagged ghc-test-framework
|
||||
ghc-test-framework-quickcheck2))
|
||||
(arguments
|
||||
`(#:cabal-revision ("2"
|
||||
"090yzm99fmh7c6z4m9hbkasqhc3xlw104g2b6wnk77n1abd13ryj")))
|
||||
(home-page "http://hackage.haskell.org/package/RSA")
|
||||
(synopsis
|
||||
"Implementation of RSA, using the padding schemes of PKCS#1 v2.1.")
|
||||
(description
|
||||
"This library implements the RSA encryption and signature algorithms for
|
||||
arbitrarily-sized @code{ByteStrings}. While the implementations work, they are
|
||||
not necessarily the fastest ones on the planet. Particularly key generation.
|
||||
The algorithms included are based of RFC 3447, or the Public-Key Cryptography
|
||||
Standard for RSA, version 2.1 (a.k.a, PKCS#1 v2.1).")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-sha
|
||||
(package
|
||||
(name "ghc-sha")
|
||||
@@ -594,6 +625,24 @@ implementation. If it matters for your case, you should make sure you have
|
||||
AES-NI available, or you'll need to use a different implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-crypto-pubkey-types
|
||||
(package
|
||||
(name "ghc-crypto-pubkey-types")
|
||||
(version "0.4.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypto-pubkey-types" version))
|
||||
(sha256
|
||||
(base32 "0q0wlzjmpx536h1zcdzrpxjkvqw8abj8z0ci38138kpch4igbnby"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypto-pubkey-types")))
|
||||
(inputs (list ghc-asn1-types ghc-asn1-encoding))
|
||||
(home-page "http://github.com/vincenthz/hs-crypto-pubkey-types")
|
||||
(synopsis "Generic cryptography Public keys algorithm types")
|
||||
(description "Generic cryptography public keys algorithm types.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-crypto-random
|
||||
(package
|
||||
(name "ghc-crypto-random")
|
||||
@@ -617,13 +666,13 @@ abstraction for CPRNGs.")
|
||||
(define-public ghc-crypton
|
||||
(package
|
||||
(name "ghc-crypton")
|
||||
(version "0.34")
|
||||
(version "1.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypton" version))
|
||||
(sha256
|
||||
(base32 "1mhypjhzn95in853bp7ary0a2xc6lsji6j8hrrgn2mfa4ilq8i24"))))
|
||||
(base32 "06h1qjvqd8gmiyzvh31sc061vcgns101l0774c44a8k44015925l"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypton")))
|
||||
(inputs (list ghc-memory ghc-basement))
|
||||
@@ -653,13 +702,13 @@ abstraction for CPRNGs.")
|
||||
(define-public ghc-crypton-x509
|
||||
(package
|
||||
(name "ghc-crypton-x509")
|
||||
(version "1.7.6")
|
||||
(version "1.7.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypton-x509" version))
|
||||
(sha256
|
||||
(base32 "1zyaz0krf08g36g30zr5wn8f2x51l4dj2zcjnhpiw9h05p54mdzb"))))
|
||||
(base32 "10pkva9wvm6ih48bprxlnyhnn3nr6xq9dhkrk4hfxpsaij6f9v7g"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypton-x509")))
|
||||
(inputs (list ghc-memory
|
||||
@@ -669,13 +718,7 @@ abstraction for CPRNGs.")
|
||||
ghc-asn1-encoding
|
||||
ghc-asn1-parse
|
||||
ghc-crypton))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-x509))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"10a2x47znhbayyfr6fqgq27623akpycyjbfxz4hnavavf1x6ary5")
|
||||
;; build phase fails when tests are activated.
|
||||
;; See https://github.com/kazu-yamamoto/crypton-certificate/pull/7
|
||||
#:tests? #f))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-quickcheck))
|
||||
(home-page "https://github.com/kazu-yamamoto/crypton-certificate")
|
||||
(synopsis "X509 reader and writer")
|
||||
(description "This package provides generic X509 support for Haskell.")
|
||||
@@ -684,13 +727,13 @@ abstraction for CPRNGs.")
|
||||
(define-public ghc-crypton-x509-store
|
||||
(package
|
||||
(name "ghc-crypton-x509-store")
|
||||
(version "1.6.9")
|
||||
(version "1.6.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypton-x509-store" version))
|
||||
(sha256
|
||||
(base32 "0vr5b9cyf9x016wn1g0bryslf5nz8jq2sy8r3llwqfg02apihqiy"))))
|
||||
(base32 "07vq7f883cm5krqz2kc0qkh9ks54jknrwdqvfqsk91s12b693a83"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypton-x509-store")))
|
||||
(inputs (list ghc-pem ghc-asn1-types ghc-asn1-encoding ghc-crypton
|
||||
@@ -727,24 +770,25 @@ storage methods, and accessors.")
|
||||
(define-public ghc-crypton-x509-validation
|
||||
(package
|
||||
(name "ghc-crypton-x509-validation")
|
||||
(version "1.6.12")
|
||||
(version "1.6.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypton-x509-validation" version))
|
||||
(sha256
|
||||
(base32 "1xjhwvmkcy47a6xiqxb3xy944ca7g660203jdrz5xzd46zibfq0f"))))
|
||||
(base32 "07b09kgrd3m5ahxpj458r5ycd30bz8ldwjwf19mdcnfv4x0kj3pd"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypton-x509-validation")))
|
||||
(inputs (list ghc-memory
|
||||
ghc-hourglass
|
||||
ghc-data-default-class
|
||||
ghc-data-default
|
||||
ghc-pem
|
||||
ghc-asn1-types
|
||||
ghc-asn1-encoding
|
||||
ghc-crypton-x509
|
||||
ghc-crypton-x509-store
|
||||
ghc-crypton))
|
||||
ghc-crypton
|
||||
ghc-iproute))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-hunit))
|
||||
(home-page "https://github.com/kazu-yamamoto/crypton-certificate")
|
||||
(synopsis "X.509 Certificate and CRL validation")
|
||||
@@ -752,6 +796,44 @@ storage methods, and accessors.")
|
||||
and @dfn{Certificates revocation list} (CRL) validation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-crypton-socks
|
||||
(package
|
||||
(name "ghc-crypton-socks")
|
||||
(version "0.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypton-socks" version))
|
||||
(sha256
|
||||
(base32 "0fwzlvndyxjwhxambxdjzzm63yvb6jzsg53dkv3i6x17biz0hdm8"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypton-socks")))
|
||||
(inputs (list ghc-cereal ghc-network ghc-network-bsd))
|
||||
(home-page "http://github.com/mpilgrem/crypton-socks")
|
||||
(synopsis "SOCKS Protocol Version 5")
|
||||
(description
|
||||
"This package provides a library implementing SOCKS Protocol Version 5.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-crypto-token
|
||||
(package
|
||||
(name "ghc-crypto-token")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "crypto-token" version))
|
||||
(sha256
|
||||
(base32 "18xphlvn6wzyi6lqrvm5vic97pkcbiph1938p5l1mb22rj5215zm"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "crypto-token")))
|
||||
(inputs (list ghc-crypton ghc-memory ghc-network-byte-order))
|
||||
(native-inputs (list ghc-hspec hspec-discover))
|
||||
(home-page "http://hackage.haskell.org/package/crypto-token")
|
||||
(synopsis "crypto tokens")
|
||||
(description "Encrypted tokens/tickets to keep state in the client side.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-cprng-aes
|
||||
(package
|
||||
(name "ghc-cprng-aes")
|
||||
@@ -804,20 +886,17 @@ percent.
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "ed25519" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0v8msqvgzimhs7p5ri25hrb1ni2wvisl5rmdxy89fc59py79b9fq"))))
|
||||
(base32 "0v8msqvgzimhs7p5ri25hrb1ni2wvisl5rmdxy89fc59py79b9fq"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "ed25519")))
|
||||
(native-inputs (list ghc-quickcheck ghc-doctest))
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("6" "0qyx6cl52fnll8lp6v9133wfvv3zhvq7v2crn441mng520j9wp48")
|
||||
;; We omit these test suites because they require old versions of
|
||||
;; packages and packages we do not have.
|
||||
#:configure-flags
|
||||
'("--flags=-test-hlint -test-doctests -test-properties")))
|
||||
(home-page "http://thoughtpolice.github.com/hs-ed25519")
|
||||
`(#:cabal-revision ("9"
|
||||
"0y5vfdcys18waa5k5zxiq9n8jq0l05j76riml23i0gxmwgdhsmgi")))
|
||||
(home-page "https://github.com/thoughtpolice/hs-ed25519/")
|
||||
(synopsis "Ed25519 cryptographic signatures")
|
||||
(description "This package provides a simple, fast, self-contained
|
||||
(description
|
||||
"This package provides a simple, fast, self-contained
|
||||
copy of the Ed25519 public-key signature system with a clean interface.
|
||||
It also includes support for detached signatures, and thorough
|
||||
documentation on the design and implementation, including usage
|
||||
@@ -827,29 +906,41 @@ guidelines.")
|
||||
(define-public ghc-tls
|
||||
(package
|
||||
(name "ghc-tls")
|
||||
(version "1.5.8")
|
||||
(version "2.1.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tls" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rxdv8ab98kd4nqql7djmmi51k4vayq21s38s43sx3rzn0iyla3b"))))
|
||||
"1csdy3426lva1a5f7gh9qm96vzfraqj91jbxlm79wbf1jsdzfhsq"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tls")))
|
||||
(inputs (list ghc-cereal
|
||||
ghc-data-default-class
|
||||
ghc-memory
|
||||
ghc-cryptonite
|
||||
ghc-asn1-types
|
||||
(inputs (list ghc-asn1-types
|
||||
ghc-asn1-encoding
|
||||
ghc-x509
|
||||
ghc-x509-store
|
||||
ghc-x509-validation
|
||||
ghc-async
|
||||
ghc-hourglass
|
||||
ghc-network))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck))
|
||||
(home-page "http://github.com/vincenthz/hs-tls")
|
||||
ghc-base16-bytestring
|
||||
ghc-cereal
|
||||
ghc-crypton
|
||||
ghc-crypton-x509
|
||||
ghc-crypton-x509-store
|
||||
ghc-crypton-x509-validation
|
||||
ghc-data-default
|
||||
ghc-memory
|
||||
ghc-network
|
||||
ghc-serialise
|
||||
ghc-transformers
|
||||
ghc-unix-time
|
||||
ghc-zlib))
|
||||
(native-inputs (list ghc-quickcheck
|
||||
ghc-asn1-types
|
||||
ghc-async
|
||||
ghc-crypton
|
||||
ghc-crypton-x509
|
||||
ghc-crypton-x509-validation
|
||||
ghc-hourglass
|
||||
ghc-hspec
|
||||
ghc-serialise
|
||||
hspec-discover))
|
||||
(home-page "http://github.com/haskell-tls/hs-tls")
|
||||
(synopsis "TLS/SSL protocol native implementation (Server and Client)")
|
||||
(description
|
||||
"Native Haskell TLS and SSL protocol implementation for server and client.
|
||||
@@ -861,43 +952,6 @@ Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many
|
||||
extensions.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-tls-1.9
|
||||
(package
|
||||
(name "ghc-tls")
|
||||
(version "1.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "tls" version))
|
||||
(sha256
|
||||
(base32 "0gj3af9sqd0bw7dpcqfyvbslpxsk2ij00a77kl710fwhw35vj1an"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "tls")))
|
||||
(inputs (list ghc-cereal
|
||||
ghc-data-default-class
|
||||
ghc-memory
|
||||
ghc-crypton
|
||||
ghc-asn1-types
|
||||
ghc-asn1-encoding
|
||||
ghc-crypton-x509
|
||||
ghc-crypton-x509-store
|
||||
ghc-crypton-x509-validation
|
||||
ghc-async
|
||||
ghc-unix-time
|
||||
ghc-network))
|
||||
(native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck))
|
||||
(home-page "https://github.com/haskell-tls/hs-tls")
|
||||
(synopsis "TLS/SSL protocol native implementation (server and client)")
|
||||
(description
|
||||
"This package provides a native Haskell TLS and SSL protocol
|
||||
implementation for server and client. It provides a high-level implementation
|
||||
of a sensitive security protocol, eliminating a common set of security issues
|
||||
through the use of the advanced type system, high level constructions and
|
||||
common Haskell features. It currently implements the SSL3.0, TLS1.0, TLS1.1
|
||||
and TLS1.2 protocol, and supports RSA and Ephemeral (Elliptic curve and
|
||||
regular) Diffie Hellman key exchanges, and many extensions.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-hsopenssl
|
||||
(package
|
||||
(name "ghc-hsopenssl")
|
||||
@@ -914,7 +968,7 @@ regular) Diffie Hellman key exchanges, and many extensions.")
|
||||
(list #:extra-directories (list "openssl")
|
||||
#:configure-flags
|
||||
#~(list "--ghc-options=-optc=-Wno-incompatible-pointer-types")))
|
||||
(inputs (list ghc-network openssl-3.0))
|
||||
(inputs (list ghc-network openssl))
|
||||
(home-page "https://github.com/haskell-cryptography/HsOpenSSL")
|
||||
(synopsis "Partial OpenSSL binding for Haskell")
|
||||
(description
|
||||
@@ -960,17 +1014,14 @@ the tls package, and borrows some ideas from x509-system.")
|
||||
(method url-fetch)
|
||||
(uri (hackage-uri "openssl-streams" version))
|
||||
(sha256
|
||||
(base32
|
||||
"10pnnpzgb5xr811kc9qdk7h2cgn6hk2yiyhnzz8f8p0fjzc0pwjm"))))
|
||||
(base32 "10pnnpzgb5xr811kc9qdk7h2cgn6hk2yiyhnzz8f8p0fjzc0pwjm"))))
|
||||
(build-system haskell-build-system)
|
||||
(properties '((upstream-name . "openssl-streams")))
|
||||
(inputs
|
||||
(list ghc-hsopenssl ghc-io-streams ghc-network))
|
||||
(native-inputs
|
||||
(list ghc-hunit ghc-test-framework ghc-test-framework-hunit))
|
||||
(inputs (list ghc-hsopenssl ghc-io-streams ghc-network))
|
||||
(native-inputs (list ghc-hunit ghc-test-framework ghc-test-framework-hunit))
|
||||
(arguments
|
||||
`(#:cabal-revision ("1"
|
||||
"0vfawnfcjrw29qg1n7k6z6bk4bmnk869gjlr9mxw4mzxgl80b2vp")))
|
||||
`(#:cabal-revision ("3"
|
||||
"1vizl9yajkbd59rrnfb38xwq7hfj36avbv6vwqnkhbvz3qaj3dwg")))
|
||||
(home-page "https://hackage.haskell.org/package/openssl-streams")
|
||||
(synopsis "OpenSSL network support for io-streams")
|
||||
(description "This library contains io-streams routines for secure
|
||||
|
||||
+643
-542
File diff suppressed because it is too large
Load Diff
+5065
-4419
File diff suppressed because it is too large
Load Diff
+329
-12
@@ -1626,12 +1626,6 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
|
||||
(file-pattern ".*\\.conf\\.d$")
|
||||
(file-type 'directory)))))))
|
||||
|
||||
;; Versions newer than ghc defined below (i.e. the compiler
|
||||
;; haskell-build-system uses) should use ghc-next as their name to
|
||||
;; ensure ghc (without version specification) and ghc-* packages are
|
||||
;; always compatible. See https://issues.guix.gnu.org/issue/47335.
|
||||
(define-public ghc ghc-9.2)
|
||||
|
||||
;; 9.4 is the last version to support the make-based build system,
|
||||
;; but it boot with 9.2, only 9.0 is supported.
|
||||
(define ghc-bootstrap-for-9.4 ghc-9.0)
|
||||
@@ -1695,22 +1689,24 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
|
||||
(let ((base ghc-9.2))
|
||||
(package
|
||||
(inherit base)
|
||||
(name "ghc-next")
|
||||
(version "9.4.4")
|
||||
(name "ghc")
|
||||
(version "9.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.haskell.org/ghc/dist/" version
|
||||
"/ghc-" version "-src.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))
|
||||
"0nlhx2cbq1jh2yr6zk475lavjkh9sncj57qp77p51pkfad4kkxpa"))
|
||||
(patches (search-patches "ghc-9-StgCRunAsm-only-when-needed.patch"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:phases phases '%standard-phases)
|
||||
#~(modify-phases #$phases
|
||||
;; Files don’t exist any more.
|
||||
(delete 'skip-tests)))))
|
||||
(delete 'skip-tests)))
|
||||
((#:tests? _ #f)
|
||||
#f)))
|
||||
(native-inputs
|
||||
`(;; GHC 9.4 must be built with GHC >= 9.0.
|
||||
("ghc-bootstrap" ,ghc-bootstrap-for-9.4)
|
||||
@@ -1722,8 +1718,7 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
|
||||
version "/ghc-" version "-testsuite.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))
|
||||
(patches (search-patches "ghc-testsuite-recomp015-execstack.patch"))))
|
||||
"1xbps33pq6mg2bwp5gvmc4qhgdq52yng5993if99b9s3fylqk86l"))))
|
||||
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
|
||||
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
|
||||
,@(filter (match-lambda
|
||||
@@ -1738,4 +1733,326 @@ SRC_HC_OPTS += -optc-mno-outline-atomics
|
||||
(file-pattern ".*\\.conf\\.d$")
|
||||
(file-type 'directory)))))))
|
||||
|
||||
;;; GHC >= 9.6 must be built using it's new haskell-written Hadrian build
|
||||
;;; system. Use this opportunity to cut the inheritance chain to simplify
|
||||
;;; understanding what building ghc requires with the new build system.
|
||||
|
||||
(define-public ghc-9.8
|
||||
(let ((ghc-bootstrap ghc-9.4))
|
||||
(package
|
||||
(name "ghc")
|
||||
(version "9.8.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://downloads.haskell.org/~ghc/" version
|
||||
"/ghc-" version "-src.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l87yb8hmd350klrp6lw2h9hjlla11pgzx1n4jlrfdvkgxmyvy5j"))))
|
||||
(outputs (list "out" "doc"))
|
||||
(arguments
|
||||
(list
|
||||
#:make-flags #~(list "-V" "--docs=no-sphinx")
|
||||
#:configure-flags
|
||||
#~(list
|
||||
(string-append "--with-gmp-libraries="
|
||||
(assoc-ref %build-inputs "gmp") "/lib")
|
||||
(string-append "--with-gmp-includes="
|
||||
(assoc-ref %build-inputs "gmp") "/include")
|
||||
"--with-system-libffi"
|
||||
(string-append "--with-ffi-libraries="
|
||||
(assoc-ref %build-inputs "libffi") "/lib")
|
||||
(string-append "--with-ffi-includes="
|
||||
(assoc-ref %build-inputs "libffi") "/include")
|
||||
(string-append "--with-curses-libraries="
|
||||
(assoc-ref %build-inputs "ncurses") "/lib")
|
||||
(string-append "--with-curses-includes="
|
||||
(assoc-ref %build-inputs "ncurses") "/include"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-iserv-rpath
|
||||
(lambda _
|
||||
(mkdir-p "_build")
|
||||
(call-with-output-file
|
||||
"_build/hadrian.settings"
|
||||
(lambda (port)
|
||||
(display
|
||||
(string-append
|
||||
"*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
|
||||
#$output "/lib/ghc-" #$(package-version this-package)
|
||||
"/lib/" #$(or (%current-target-system)
|
||||
(%current-system))
|
||||
"-ghc-" #$(package-version this-package) "/")
|
||||
port)))))
|
||||
;; This phase patches the 'ghc-pkg' command so that it sorts the list
|
||||
;; of packages in the binary cache it generates.
|
||||
(add-before 'build 'fix-ghc-pkg-nondeterminism
|
||||
(lambda _
|
||||
(substitute* "utils/ghc-pkg/Main.hs"
|
||||
(("confs = map \\(path </>\\) \\$ filter \\(\".conf\" `isSuffixOf`\\) fs")
|
||||
"confs = map (path </>) $ filter (\".conf\" `isSuffixOf`) (sort fs)"))))
|
||||
(add-after 'unpack 'unpack-testsuite
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(with-directory-excursion ".."
|
||||
(invoke "tar" "xvf" (assoc-ref inputs "ghc-testsuite")))))
|
||||
(add-after 'unpack-testsuite 'fix-/bin/sh-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute*
|
||||
(list "hadrian/src/Rules/BinaryDist.hs"
|
||||
"hadrian/src/Rules/Test.hs"
|
||||
"libraries/process/System/Process/Posix.hs"
|
||||
"libraries/process/jsbits/process.js"
|
||||
"libraries/unix/cbits/execvpe.c"
|
||||
"testsuite/tests/driver/T8602/T8602.script"
|
||||
"testsuite/timeout/timeout.py")
|
||||
(("/bin/sh") (search-input-file inputs "/bin/sh")))))
|
||||
(add-after 'unpack-testsuite 'fix-cc-reference
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute*
|
||||
(list "utils/hsc2hs/src/Common.hs")
|
||||
(("\"cc\"") "\"gcc\""))))
|
||||
;; XXX: something causes ld-wrapper to see test\ \ \ spaces/... and
|
||||
;; look for the files "test\", "\", "\" and "spaces/...", which obviously
|
||||
;; don't exist
|
||||
(add-after 'unpack-testsuite 'fix-testsuite
|
||||
(lambda _
|
||||
(substitute*
|
||||
(list "testsuite/driver/runtests.py")
|
||||
(("'test spaces'") "'dont-test-spaces'"))))
|
||||
(add-before 'configure 'set-target-programs
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((binutils (assoc-ref inputs "binutils"))
|
||||
(gcc (assoc-ref inputs "gcc"))
|
||||
(ld-wrapper (assoc-ref inputs "ld-wrapper")))
|
||||
(setenv "CC" (string-append gcc "/bin/gcc"))
|
||||
(setenv "CXX" (string-append gcc "/bin/g++"))
|
||||
(setenv "LD" (string-append ld-wrapper "/bin/ld"))
|
||||
(setenv "NM" (string-append binutils "/bin/nm"))
|
||||
(setenv "RANLIB" (string-append binutils "/bin/ranlib"))
|
||||
(setenv "STRIP" (string-append binutils "/bin/strip"))
|
||||
;; The 'ar' command does not follow the same pattern.
|
||||
(setenv "fp_prog_ar" (string-append binutils "/bin/ar")))))
|
||||
(add-before 'build 'build-hadrian
|
||||
(lambda* (#:key (inputs '()) #:allow-other-keys)
|
||||
(invoke "./hadrian/bootstrap/bootstrap.py"
|
||||
"-s" (assoc-ref inputs "hadrian-bootstrap")
|
||||
"-w" (which "ghc"))))
|
||||
(add-before 'build-hadrian 'fix-environment
|
||||
(lambda _
|
||||
(unsetenv "GHC_PACKAGE_PATH")
|
||||
(setenv "CONFIG_SHELL" (which "bash"))))
|
||||
(replace 'build
|
||||
(lambda* (#:key (parallel-build? #f) (make-flags '())
|
||||
#:allow-other-keys)
|
||||
(apply invoke "_build/bin/hadrian"
|
||||
`("binary-dist-dir"
|
||||
,@(if parallel-build?
|
||||
(list (string-append
|
||||
"-j" (number->string
|
||||
(parallel-job-count)))))
|
||||
,@make-flags))))
|
||||
(replace 'check
|
||||
(lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '())
|
||||
#:allow-other-keys)
|
||||
(if tests?
|
||||
(apply invoke "_build/bin/hadrian"
|
||||
`(,@(if parallel-tests?
|
||||
(list (string-append
|
||||
"-j"
|
||||
(number->string (parallel-job-count))))
|
||||
'())
|
||||
,@make-flags
|
||||
"test"
|
||||
,(string-append
|
||||
"--broken-test="
|
||||
(string-join
|
||||
(list "T15904" ; ld-wrapper, apparently
|
||||
"T16521" ; no idea
|
||||
;; These fail due to gcc
|
||||
;; -Wincompatible-pointer-types, which
|
||||
;; apparently is not used in GHC's CI
|
||||
;; https://gitlab.haskell.org/ghc/ghc/-/issues/22263
|
||||
"hs_try_putmvar001"
|
||||
"list_threads_and_misc_roots"
|
||||
"testwsdeque")))
|
||||
"--skip-perf"))
|
||||
(format #t "test suite not run~%"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key (make-flags '()) #:allow-other-keys)
|
||||
(apply invoke "_build/bin/hadrian"
|
||||
`("install"
|
||||
,@make-flags
|
||||
,(string-append "--prefix=" #$output)))))
|
||||
(add-after 'install 'remove-unnecessary-references
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (find-files (string-append (assoc-ref outputs "out") "/lib/")
|
||||
"settings")
|
||||
(("/gnu/store/.*/bin/(.*)" m program) program))
|
||||
|
||||
;; Remove references to "doc" output from "out" by rewriting
|
||||
;; the "haddock-interfaces" fields and removing the optional
|
||||
;; "haddock-html" field in the generated .conf files.
|
||||
(let ((doc (assoc-ref outputs "doc"))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(for-each (lambda (config-file)
|
||||
(substitute* config-file
|
||||
(("^haddock-html: .*") "\n")
|
||||
(((format #f "^haddock-interfaces: ~a" doc))
|
||||
(string-append "haddock-interfaces: " out))))
|
||||
(find-files (string-append out "/lib") ".conf")))
|
||||
;; Move the referenced files to the "out" output.
|
||||
(for-each (lambda (haddock-file)
|
||||
(let* ((subdir (string-drop haddock-file (string-length doc)))
|
||||
(new (string-append out subdir)))
|
||||
(mkdir-p (dirname new))
|
||||
(rename-file haddock-file new)))
|
||||
(find-files doc "\\.haddock$")))))
|
||||
(add-after 'install 'replace-$pkgroot
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
((@ (srfi srfi-11) let*-values)
|
||||
(((out) (assoc-ref outputs "out"))
|
||||
((_ version) (package-name->name+version
|
||||
(strip-store-file-name out))))
|
||||
;; We split out the version because we want this to also work
|
||||
;; with packages named "ghc-next" instead of "ghc"
|
||||
(substitute*
|
||||
(find-files
|
||||
(string-append (assoc-ref outputs "out") "/lib/ghc-"
|
||||
version "/lib/package.conf.d/")
|
||||
"^.*\\.conf$")
|
||||
(("\\$\\{pkgroot\\}/")
|
||||
(string-append (assoc-ref outputs "out") "/lib/ghc-"
|
||||
version "/lib/")))))))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list bash-minimal gmp ncurses libffi))
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("python" ,python)
|
||||
("git" ,git-minimal/pinned)
|
||||
("which" ,which)
|
||||
("ghostscript" ,ghostscript)
|
||||
("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
|
||||
("ghc-bootstrap" ,ghc-bootstrap)
|
||||
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
|
||||
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
|
||||
("ghc-testsuite"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://www.haskell.org/ghc/dist/"
|
||||
version "/ghc-" version "-testsuite.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hxylm3nhxzl7yidarlavvcg1240w4bk0hy5jnvwna24jyxz69i6"))
|
||||
(patches (search-patches "ghc-testsuite-recomp015-execstack.patch"))))
|
||||
("hadrian-bootstrap"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://downloads.haskell.org/~ghc/"
|
||||
version "/hadrian-bootstrap-sources/"
|
||||
"hadrian-bootstrap-sources-"
|
||||
(package-version ghc-bootstrap) ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14dkxif9x4hy85phcj3j0glf95k04g4ab6hfchpw9vxgvk97syi1"))))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GHC_PACKAGE_PATH")
|
||||
(files (list (string-append "lib/ghc-" version)))
|
||||
(file-pattern ".*\\.conf\\.d$")
|
||||
(file-type 'directory))))
|
||||
(home-page "https://www.haskell.org/ghc")
|
||||
(synopsis "The Glasgow Haskell Compiler")
|
||||
(description
|
||||
"The Glasgow Haskell Compiler (GHC) is a state-of-the-art compiler and
|
||||
interactive environment for the functional language Haskell.")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public ghc-9.10
|
||||
(let ((base ghc-9.8))
|
||||
(package
|
||||
(inherit base)
|
||||
(name "ghc")
|
||||
(version "9.10.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://downloads.haskell.org/~ghc/" version
|
||||
"/ghc-" version "-src.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pm84cgr3yg99r3srdjllgz6zig8h7dbwa597srwcnjp0nh41zam"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:phases phases #~%standard-phases)
|
||||
#~(modify-phases #$phases
|
||||
(replace 'check
|
||||
(lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '())
|
||||
#:allow-other-keys)
|
||||
(if tests?
|
||||
(apply invoke "_build/bin/hadrian"
|
||||
`(,@(if parallel-tests?
|
||||
(list (string-append
|
||||
"-j"
|
||||
(number->string (parallel-job-count))))
|
||||
'())
|
||||
,@make-flags
|
||||
"test"
|
||||
,(string-append
|
||||
"--broken-test="
|
||||
(string-join
|
||||
(list "T15904" ; ld-wrapper, apparently
|
||||
"T16521" ; no idea
|
||||
;; These fail due to gcc
|
||||
;; -Wincompatible-pointer-types, which
|
||||
;; apparently is not used in GHC's CI
|
||||
;; https://gitlab.haskell.org/ghc/ghc/-/issues/22263
|
||||
"list_threads_and_misc_roots"
|
||||
"stack_misc_closures")))
|
||||
"--skip-perf"))
|
||||
(format #t "test suite not run~%"))))))))
|
||||
(native-inputs
|
||||
`(("ghc-bootstrap" ,base)
|
||||
("ghc-testsuite"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://downloads.haskell.org/~ghc/"
|
||||
version "/ghc-" version "-testsuite.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"143ifc4g3jc6s9hcry5qha913rzwg4hpsvk6pqvxk5r0qigfxjwx"))
|
||||
(patches (search-patches "ghc-testsuite-recomp015-execstack.patch"))))
|
||||
("hadrian-bootstrap"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://downloads.haskell.org/~ghc/" version
|
||||
"/hadrian-bootstrap-sources/"
|
||||
"hadrian-bootstrap-sources-"
|
||||
(package-version base) ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"162lbafvdamfhx1jldax3shgk8jbbqn4an97ny363lxbdjgdn708"))))
|
||||
,@(filter (match-lambda
|
||||
(("ghc-bootstrap" . _) #f)
|
||||
(("ghc-testsuite" . _) #f)
|
||||
(("hadrian-bootstrap" . _) #f)
|
||||
(_ #t))
|
||||
(package-native-inputs base))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GHC_PACKAGE_PATH")
|
||||
(files (list (string-append "lib/ghc-" version)))
|
||||
(file-pattern ".*\\.conf\\.d$")
|
||||
(file-type 'directory)))))))
|
||||
|
||||
;; Versions newer than ghc defined below (i.e. the compiler
|
||||
;; haskell-build-system uses) should use ghc-next as their name to
|
||||
;; ensure ghc (without version specification) and ghc-* packages are
|
||||
;; always compatible. See https://issues.guix.gnu.org/issue/47335.
|
||||
(define-public ghc ghc-9.10)
|
||||
|
||||
;;; haskell.scm ends here
|
||||
|
||||
@@ -489,22 +489,11 @@ lost.
|
||||
"0b9d2i22ghyjarwi1c596q5mf7gj1k04k784hnmrd2d4x9hgv9ax"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "--with-corosync"
|
||||
"--disable-static"
|
||||
"--localstatedir=/var"
|
||||
(list #:configure-flags #~(list "--with-corosync" "--disable-static"
|
||||
(string-append "--with-initdir="
|
||||
#$output "/etc/init.d")
|
||||
(string-append "--with-ocfdir="
|
||||
#$output "/lib"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; Do not attempt to install /var.
|
||||
(substitute* '("Makefile.am"
|
||||
"daemons/schedulerd/Makefile.am")
|
||||
(("install-exec-local:")
|
||||
"install-exec-local-disabled:")))))))
|
||||
#$output "/lib"))))
|
||||
(native-inputs (list autoconf
|
||||
automake
|
||||
cmocka
|
||||
|
||||
@@ -339,6 +339,30 @@ coverage.")
|
||||
;; that list in further version.
|
||||
(supported-systems (list "x86_64-linux"))))
|
||||
|
||||
(define-public lttng-modules
|
||||
(package
|
||||
(name "lttng-modules")
|
||||
(version "2.13.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://lttng.org/files/lttng-modules/"
|
||||
"lttng-modules-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"19jx1yz1hsbr4vwfp2nr6z52a5g50iimaak962k49diay5zryi66"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:make-flags (list "CONFIG_LTTNG=m"
|
||||
"CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m")))
|
||||
(home-page "https://lttng.org/")
|
||||
(synopsis "LTTng kernel modules for the LTTng tracer toolset")
|
||||
(description
|
||||
"LTTng kernel modules are Linux kernel modules which make
|
||||
LTTng kernel tracing possible. They include essential control modules and
|
||||
many probes which instrument numerous interesting parts of Linux.")
|
||||
(license (list license:lgpl2.1 license:gpl2 license:expat))))
|
||||
|
||||
(define-public lttng-ust
|
||||
(package
|
||||
(name "lttng-ust")
|
||||
|
||||
@@ -55,12 +55,13 @@
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'make-git-checkout-writable
|
||||
(lambda _
|
||||
(for-each make-file-writable (find-files "."))))
|
||||
(for-each make-file-writable (find-files "."))
|
||||
#t))
|
||||
(add-before 'build 'remove-binaries
|
||||
(lambda _
|
||||
(delete-file "lib/org/xerial/snappy/OSInfo.class")
|
||||
(delete-file-recursively
|
||||
"src/main/resources/org/xerial/snappy/native")))
|
||||
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'build-jni
|
||||
(lambda _
|
||||
;; Rebuild one of the binaries we removed earlier
|
||||
@@ -97,33 +98,36 @@
|
||||
(add-after 'build-jni 'copy-jni
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources/org/xerial/snappy/native"
|
||||
"build/classes/org/xerial/snappy/native")))
|
||||
"build/classes/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'set-test-memory-size
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("<junit printsummary=")
|
||||
"<junit maxmemory=\"2G\" printsummary="))))
|
||||
(("<junit printsummary=") "<junit maxmemory=\"2G\" printsummary="))
|
||||
#t))
|
||||
(add-before 'check 'fix-failing
|
||||
(lambda _
|
||||
(with-directory-excursion "src/test/java/org/xerial/snappy"
|
||||
;; This package assumes maven build, which puts results in
|
||||
;; "target". We put them in "build" instead, so fix that.
|
||||
;; This package assumes maven build, which puts results in "target".
|
||||
;; We put them in "build" instead, so fix that.
|
||||
(substitute* "SnappyLoaderTest.java"
|
||||
(("target/classes") "build/classes"))
|
||||
;; This requires Hadoop, which is not in Guix yet.
|
||||
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java")))))))
|
||||
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java"))
|
||||
#t)))))
|
||||
(inputs
|
||||
(list java-osgi-framework))
|
||||
`(("osgi-framework" ,java-osgi-framework)))
|
||||
(propagated-inputs
|
||||
(list bitshuffle-for-snappy snappy))
|
||||
`(("bitshuffle" ,bitshuffle-for-snappy)
|
||||
("snappy" ,snappy)))
|
||||
(native-inputs
|
||||
(list java-junit
|
||||
java-hamcrest-core
|
||||
java-xerial-core
|
||||
java-plexus-classworlds
|
||||
java-commons-lang
|
||||
java-commons-io
|
||||
perl))
|
||||
`(("junit" ,java-junit)
|
||||
("hamcrest" ,java-hamcrest-core)
|
||||
("xerial-core" ,java-xerial-core)
|
||||
("classworlds" ,java-plexus-classworlds)
|
||||
("commons-lang" ,java-commons-lang)
|
||||
("commons-io" ,java-commons-io)
|
||||
("perl" ,perl)))
|
||||
(home-page "https://github.com/xerial/snappy-java")
|
||||
(synopsis "Compression/decompression algorithm in Java")
|
||||
(description "Snappy-java is a Java port of snappy, a fast C++
|
||||
@@ -152,13 +156,13 @@ compressor/decompressor.")
|
||||
(add-before 'build 'remove-binaries
|
||||
(lambda _
|
||||
(delete-file "lib/org/xerial/snappy/OSInfo.class")
|
||||
(delete-file-recursively
|
||||
"src/main/resources/org/xerial/snappy/native")))
|
||||
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'build 'build-jni
|
||||
(lambda _
|
||||
;; Rebuild one of the binaries we removed earlier
|
||||
(invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
||||
"-d" "lib")
|
||||
"-d" "lib")
|
||||
;; Link to the dynamic snappy, not the static ones
|
||||
(substitute* "Makefile.common"
|
||||
(("-shared") "-shared -lsnappy"))
|
||||
@@ -180,14 +184,16 @@ compressor/decompressor.")
|
||||
(add-after 'build-jni 'copy-jni
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources/org/xerial/snappy/native"
|
||||
"build/classes/org/xerial/snappy/native")))
|
||||
"build/classes/org/xerial/snappy/native")
|
||||
#t))
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda _
|
||||
(mkdir-p "src/test/resources/org/xerial/snappy/")
|
||||
(copy-recursively "src/test/java/org/xerial/snappy/testdata"
|
||||
"src/test/resources/org/xerial/snappy/testdata")
|
||||
(install-file "src/test/java/org/xerial/snappy/alice29.txt"
|
||||
"src/test/resources/org/xerial/snappy/"))))))))
|
||||
"src/test/resources/org/xerial/snappy/")
|
||||
#t)))))))
|
||||
|
||||
(define-public java-iq80-snappy
|
||||
(package
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
;;; Copyright © 2024, 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
|
||||
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -53,9 +52,7 @@
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages docker)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages monitoring)
|
||||
#:use-module (gnu packages networking)
|
||||
@@ -1713,13 +1710,13 @@ analyzing Jupyter Notebooks.")
|
||||
(define-public python-qtconsole
|
||||
(package
|
||||
(name "python-qtconsole")
|
||||
(version "5.7.2")
|
||||
(version "5.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "qtconsole" version))
|
||||
(sha256
|
||||
(base32 "088m56fav6xlcw55srxz96yf7rj2ndmycy4f3m69498r2swqbd17"))))
|
||||
(base32 "0w9i0s70dm39cxgn3vh4wcaxdywzp9j0ac7f49q4qmggx4f3fcqd"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1767,67 +1764,6 @@ analyzing Jupyter Notebooks.")
|
||||
rich media output.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-spyder-kernels
|
||||
(package
|
||||
(name "python-spyder-kernels")
|
||||
(version "3.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/spyder-ide/spyder-kernels")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0yhrifh148g93qkwx9ggsh2kr9789apzlw91ais4dyas5yf1xj8w"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "-k" (string-append
|
||||
;; Avoid pulling Django for a single test.
|
||||
"not test_django_settings"
|
||||
;; AssertionError.
|
||||
" and not test_umr_reload_modules"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'redirect-HOME
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(propagated-inputs (list python-cloudpickle
|
||||
python-ipykernel
|
||||
python-ipython
|
||||
python-jupyter-client
|
||||
python-packaging
|
||||
python-pyxdg
|
||||
python-pyzmq
|
||||
python-traitlets
|
||||
python-wurlitzer))
|
||||
(native-inputs (list python-anyio
|
||||
python-cython
|
||||
python-dask
|
||||
python-h5py
|
||||
python-matplotlib
|
||||
python-numpy
|
||||
python-pandas
|
||||
python-pillow
|
||||
python-polars
|
||||
python-pyarrow
|
||||
python-pydicom
|
||||
python-pytest
|
||||
python-scipy
|
||||
python-setuptools
|
||||
python-xarray))
|
||||
(home-page "https://github.com/spyder-ide/spyder-kernels")
|
||||
(synopsis "Jupyter kernels for Spyder's console")
|
||||
(description "This package provides Jupyter kernels for use with the
|
||||
consoles of Spyder, the Scientific Python Development Environment.
|
||||
|
||||
These kernels can be launched either through Spyder itself or in an
|
||||
independent Python session, and allow for interactive or file-based execution
|
||||
of Python code inside Spyder.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-voila
|
||||
(package
|
||||
(name "python-voila")
|
||||
|
||||
@@ -37,7 +37,6 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
@@ -190,17 +189,16 @@ framework. It builds XMPP clients complying with the XMPP Compliance Suites
|
||||
(package
|
||||
(name "kaidan")
|
||||
(version "0.15.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kde/unstable/kaidan/" version
|
||||
"/kaidan-" version ".tar.xz"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(delete-file-recursively "3rdparty")))
|
||||
(sha256
|
||||
(base32 "11g4lifji6gh9zmpgyx4dnmxyzzwkhhj84j2w9r4bvgqm2pxdhnd"))))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kde/unstable/kaidan/" version
|
||||
"/kaidan-" version ".tar.xz"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(delete-file-recursively "3rdparty")))
|
||||
(sha256
|
||||
(base32 "11g4lifji6gh9zmpgyx4dnmxyzzwkhhj84j2w9r4bvgqm2pxdhnd"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -211,18 +209,10 @@ framework. It builds XMPP clients complying with the XMPP Compliance Suites
|
||||
(add-before 'check 'set-home
|
||||
(lambda _
|
||||
;; Tests need write permission in $HOME.
|
||||
(setenv "HOME" "/tmp")))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda _
|
||||
(let ((gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
|
||||
(wrap-program (string-append #$output "/bin/kaidan")
|
||||
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix
|
||||
(,gst-plugin-path)))))))))
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(native-inputs (list extra-cmake-modules
|
||||
pkg-config))
|
||||
(inputs (list bash-minimal
|
||||
gst-plugins-good-qt
|
||||
gstreamer
|
||||
(inputs (list gstreamer
|
||||
icu4c
|
||||
kcrash
|
||||
kdsingleapplication
|
||||
|
||||
@@ -1191,42 +1191,37 @@ CDs.")
|
||||
(define-public plasmatube
|
||||
(package
|
||||
(name "plasmatube")
|
||||
(version "26.04.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kde/stable/release-service/" version
|
||||
"/src/plasmatube-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0dby9wypbrhg6g03kvl8fc40zpnri03hf3kk3vi1z16pwc7sn093"))))
|
||||
(version "25.12.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kde/stable/release-service/" version
|
||||
"/src/plasmatube-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jc6iqcxz0zyai26vx80nyfr818r4cj8lpw0b1pbvb1vya12v8zy"))))
|
||||
(build-system qt-build-system)
|
||||
(native-inputs (list extra-cmake-modules pkg-config python-minimal))
|
||||
(inputs
|
||||
(list kconfig
|
||||
kcoreaddons
|
||||
kdbusaddons
|
||||
kdeclarative ; for org.kde.kquickcontrolsaddons
|
||||
ki18n
|
||||
kirigami
|
||||
kirigami-addons
|
||||
kitemmodels
|
||||
ki18n
|
||||
kwindowsystem
|
||||
mpvqt
|
||||
purpose
|
||||
qqc2-desktop-style ; for org.kde.desktop
|
||||
qtdeclarative
|
||||
qtkeychain-qt6
|
||||
qtmultimedia
|
||||
qtsvg
|
||||
qtkeychain-qt6
|
||||
qtwayland
|
||||
sonnet
|
||||
yt-dlp))
|
||||
(arguments (list #:qtbase qtbase))
|
||||
(home-page "https://apps.kde.org/plasmatube/")
|
||||
(synopsis "YouTube and PeerTube video player")
|
||||
(description
|
||||
"Plasmatube is a YouTube video player that uses Invidious and Piped
|
||||
APIs. It can also play videos from PeerTube sources.")
|
||||
(synopsis "Kirigami YouTube video player")
|
||||
(description "This package provides YouTube video player based
|
||||
on QtMultimedia and @command{yt-dlp}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public rattlesnake
|
||||
|
||||
@@ -1853,9 +1853,6 @@ for xdg-desktop-portal that is using Qt/KF5.")
|
||||
breeze-icons ;default mouse icon
|
||||
colord
|
||||
discover
|
||||
ffmpegthumbs
|
||||
flatpak ;for discover
|
||||
flatpak-kcm ;to manage flatpak app permissions
|
||||
kactivitymanagerd
|
||||
kdeclarative ;required by sddm breeze theme
|
||||
kde-cli-tools
|
||||
|
||||
@@ -33,7 +33,6 @@
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages textutils))
|
||||
|
||||
@@ -96,7 +95,7 @@
|
||||
"/html"))))))
|
||||
#:tests? #f)) ; tests fail without access to USB
|
||||
(native-inputs
|
||||
(list doxygen graphviz pkg-config python python-setuptools swig))
|
||||
(list doxygen graphviz pkg-config python swig-4.0))
|
||||
(inputs
|
||||
(list boost libconfuse))
|
||||
(propagated-inputs
|
||||
|
||||
+13
-14
@@ -125,14 +125,14 @@
|
||||
;; ex:
|
||||
;; tar xf /gnu/store/...-firefox-123.4.source.tar.xz -O \
|
||||
;; firefox-123.4/browser/locales/l10n-changesets.json | grep revision
|
||||
(let ((commit "fefe280d909d0eee8d60edd2a6db7d969df56c5b"))
|
||||
(let ((commit "0245ffb160688061f0e0c67ea488bcdfdacbeca4"))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mozilla-l10n/firefox-l10n.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "firefox-l10n" commit))
|
||||
(sha256 (base32 "0z1ksvspbn4bbzxdl2w4x7bg36j4rwhaby8g37apg4393frh558i")))))
|
||||
(sha256 (base32 "0y8xdxql04yys0wj685v4yp3kmx1ivnndg6z11vam8vszh0j7ak6")))))
|
||||
|
||||
(define* (make-librewolf-source #:key version firefox-hash librewolf-hash l10n)
|
||||
(let* ((ff-src (firefox-source-origin
|
||||
@@ -205,8 +205,7 @@
|
||||
(search-patches
|
||||
"librewolf-compare-paths.patch"
|
||||
"librewolf-use-system-wide-dir.patch"
|
||||
"librewolf-add-store-to-rdd-allowlist.patch"
|
||||
"librewolf-150.0-encoding_rs-rust-fix.patch"))
|
||||
"librewolf-add-store-to-rdd-allowlist.patch"))
|
||||
;; Slim down the tarball by removing unbundled libraries and 75 Mo (800+
|
||||
;; Mo uncompressed) of unused tests.
|
||||
;; TODO: Unbundle security/nss and media/libpng.
|
||||
@@ -245,17 +244,17 @@
|
||||
;; It's used for cache validation and therefore can lead to strange bugs.
|
||||
;; ex: date '+%Y%m%d%H%M%S'
|
||||
;; or: (format-time-string "%Y%m%d%H%M%S")
|
||||
(define %librewolf-build-id "20260421153818")
|
||||
(define %librewolf-build-id "20260409162101")
|
||||
|
||||
(define-public librewolf
|
||||
(package
|
||||
(name "librewolf")
|
||||
(version "150.0-1")
|
||||
(version "149.0.2-2")
|
||||
(source
|
||||
(make-librewolf-source
|
||||
#:version version
|
||||
#:firefox-hash "151rxzl80dm8jsxl6fwzgbirwq4zpms5adwwnbjcwdd1r3s3vr7v"
|
||||
#:librewolf-hash "0iw9v3zc1fxc93yyhldqarxaypgmbndh2ylsy330kcbpb6p1gnmr"
|
||||
#:firefox-hash "1kkhg3lgyakinn5ankxrlxbf39wi61mqbhwrj1l4q5l7y0n1m4va"
|
||||
#:librewolf-hash "1bai8g2kc9snck2f724al29q6r57vkj3d7v58rf0mgzpqzvwnw5f"
|
||||
#:l10n firefox-l10n))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -353,18 +352,18 @@
|
||||
(cdr pref)))
|
||||
`(("extensions.getAddons.search.browseURL"
|
||||
,(string-append
|
||||
"https://gnuzilla.gnu.org/"
|
||||
"https://gnuzilla.gnu.org/mozzarella/"
|
||||
"search.php?q=%TERMS%"))
|
||||
("extensions.getAddons.get.url" .
|
||||
"https://gnuzilla.gnu.org")
|
||||
"https://gnuzilla.gnu.org/mozzarella")
|
||||
("extensions.getAddons.link.url" .
|
||||
"https://gnuzilla.gnu.org")
|
||||
"https://gnuzilla.gnu.org/mozzarella")
|
||||
("extensions.getAddons.discovery.api_url" .
|
||||
"https://gnuzilla.gnu.org")
|
||||
"https://gnuzilla.gnu.org/mozzarella")
|
||||
("extensions.getAddons.langpacks.url" .
|
||||
"https://gnuzilla.gnu.org")
|
||||
"https://gnuzilla.gnu.org/mozzarella")
|
||||
("lightweightThemes.getMoreURL" .
|
||||
"https://gnuzilla.gnu.org")))))))
|
||||
"https://gnuzilla.gnu.org/mozzarella")))))))
|
||||
(add-after 'patch-source-shebangs 'patch-cargo-checksums
|
||||
(lambda _
|
||||
(use-modules (guix build cargo-utils))
|
||||
|
||||
+182
-14
@@ -2767,6 +2767,32 @@ This package provides the @command{corefreqd} data collection daemon, the
|
||||
(supported-systems (list "x86_64-linux"))
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public librem-ec-acpi-linux-module
|
||||
(package
|
||||
(name "librem-ec-acpi-linux-module")
|
||||
(version "0.9.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://source.puri.sm/nicole.faerber/librem-ec-acpi-dkms")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0m8hamf0550083jnk5q4hv20l8lfiardnkxbib4hhvqghpzzbxl0"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; no test suite
|
||||
(home-page "https://source.puri.sm/nicole.faerber/librem-ec-acpi-dkms")
|
||||
(synopsis "Linux kernel module to control the Librem Embedded Controller")
|
||||
(description
|
||||
"This is the Linux kernel @acronym{ACPI, Advanced Configuration and Power
|
||||
Interface} platform driver for the @acronym{EC, Embedded Controller} firmware
|
||||
on Purism Librem laptop computers. It allows user-space control over the
|
||||
battery charging thresholds, keyboard backlight, fans and thermal monitors,
|
||||
and the notification, WiFi, and Bluetooth LED.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public tuxedo-keyboard
|
||||
(package
|
||||
(name "tuxedo-keyboard")
|
||||
@@ -2797,6 +2823,70 @@ kernel modules to control the keyboard on most Tuxedo computers. The @code{tuxed
|
||||
module is also needed for the @code{tuxedo-control-center} (short tcc) package.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public evdi
|
||||
(package
|
||||
(name "evdi")
|
||||
(version "1.14.8") ;inherited by libevdi
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/DisplayLink/evdi")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "18n8kk4gbbj252a2dqb7mbpscfb437x42flh1fsl4g5c8brczc77"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no test suite
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "module"))))))
|
||||
(home-page "https://github.com/DisplayLink/evdi")
|
||||
(synopsis
|
||||
"@acronym{EVDI, Extensible Virtual Display Interface} Linux kernel module")
|
||||
(description
|
||||
"The @acronym{EVDI, Extensible Virtual Display Interface} is a Linux kernel
|
||||
module that enables management of multiple screens, allowing user-space programs
|
||||
to take control over what happens with the image. It is essentially a virtual
|
||||
display for which applications using the @code{libevdi} library can add, remove,
|
||||
and receive screen updates.
|
||||
|
||||
The EVDI driver uses the standard Linux @acronym{DRM, Direct Rendering Manager}.
|
||||
Its displays can be controlled by standard tools such as @command{xrandr} and
|
||||
display settings applets in graphical environments")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public libevdi
|
||||
(package
|
||||
(inherit evdi)
|
||||
(name "libevdi")
|
||||
(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)
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "library")))
|
||||
(replace 'install
|
||||
(lambda* _
|
||||
(let* ((lib (string-append #$output "/lib")))
|
||||
(mkdir-p lib)
|
||||
(install-file "libevdi.so" lib)))))))
|
||||
(inputs (list libdrm))
|
||||
(native-inputs (list pkg-config))
|
||||
(synopsis
|
||||
"@acronym{EVDI, Extensible Virtual Display Interface} user-space library")
|
||||
(description
|
||||
"Libevdi is a library that gives applications easy access to
|
||||
@acronym{EVDI, Extensible Virtual Display Interface} devices provided by the
|
||||
@code{evdi} driver package.")
|
||||
(license license:lgpl2.1)))
|
||||
|
||||
(define-public ec
|
||||
(package
|
||||
(name "ec")
|
||||
@@ -2822,6 +2912,62 @@ registers of the @acronym{EC, Embedded Controller} supported by the
|
||||
@code{ec_sys} Linux driver.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public lkrg
|
||||
(package
|
||||
(name "lkrg")
|
||||
(version "0.9.7")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lkrg-org/lkrg")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0k0z9caj48nqjwk3bapgfcdzi1lkizxcjj4r1dvkvwsk38mbk1c4"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:linux linux-libre
|
||||
#:tests? #f
|
||||
#:make-flags #~(list (string-append "CC="
|
||||
#$(cc-for-target))
|
||||
(string-append "SYSSRC="
|
||||
(assoc-ref %build-inputs
|
||||
"linux-module-builder")
|
||||
"/lib/modules/build"))))
|
||||
(inputs (list bash-minimal))
|
||||
(home-page "https://lkrg.org/")
|
||||
(synopsis "Linux Kernel Runtime Guard")
|
||||
(description
|
||||
"This package performs runtime integrity checking of the Linux kernel and
|
||||
detection of security vulnerability exploits against the kernel.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public vhba-module
|
||||
(package
|
||||
(name "vhba-module")
|
||||
(version "20211218")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://downloads.sourceforge.net/cdemu/vhba-module/vhba-module-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1dkprnnya0i8121p7ip4g8cww99drk7fzbwcxx65x02jqk0siibj"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ; no test suite
|
||||
(home-page "https://cdemu.sourceforge.io/")
|
||||
(synopsis "Linux kernel module that emulates SCSI devices")
|
||||
(description
|
||||
"The @acronym{VHBA, Virtual SCSI Host Bus Adapter} module is the link
|
||||
between the CDemu user-space daemon and the kernel Linux. It acts as a
|
||||
low-level SCSI driver that emulates a virtual SCSI adapter which can have
|
||||
multiple virtual devices attached to it. Its typical use with CDEmu is to
|
||||
emulate optical devices such as DVD and CD-ROM drives.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public bbswitch-module
|
||||
;; Use "develop" branch since stable release does not build on Linux >= 5.6.
|
||||
;; See https://github.com/Bumblebee-Project/bbswitch/issues/205.
|
||||
@@ -3018,6 +3164,36 @@ Linux kernel module, it also contains a modprobe configuration and udev rules,
|
||||
which need to be installed separately.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public vendor-reset-linux-module
|
||||
(let ((commit "4b466e92a2d9f76ce1082cde982c7be0be91e248")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "vendor-reset-linux-module")
|
||||
(version (git-version "0.1.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gnif/vendor-reset")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gaf4j20grng689c9fylcqri3j9ycnhr2bsva2z6qcdqvzl6yxbi"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no test suite
|
||||
(home-page "https://github.com/gnif/vendor-reset")
|
||||
(synopsis
|
||||
"Kernel module that resets GPUs that are affected by the reset bug")
|
||||
(description
|
||||
"This package provides a kernel module that is capable of
|
||||
resetting hardware devices into a state where they can be
|
||||
re-initialized or passed through into a virtual machine (VFIO).
|
||||
While it would be great to have these in the kernel as PCI quirks,
|
||||
some of the reset procedures are very complex and would never be
|
||||
accepted as a quirk (ie AMD Vega 10).")
|
||||
(license license:gpl2))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Pluggable authentication modules (PAM).
|
||||
@@ -4738,7 +4914,7 @@ transparently through a bridge.")
|
||||
(define-public libnl
|
||||
(package
|
||||
(name "libnl")
|
||||
(version "3.12.0")
|
||||
(version "3.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -4747,7 +4923,7 @@ transparently through a bridge.")
|
||||
"/libnl-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"066xq01y2mx0xi7bwa5y6ciw1ygla15qdlzzyvyzb8zijrqwllgw"))))
|
||||
"0faryrbvp0x4s2zhg5d78vd5q4w34lrr736gpm9wcwpaxv5krr4z"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
@@ -4762,7 +4938,7 @@ transparently through a bridge.")
|
||||
(string-join (string-split version #\.) "_")
|
||||
"/libnl-doc-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "18f14pdycghy6fcd27faqgh19zpam6b45s8bgsk85kb9wwzq3yd4"))))))
|
||||
(base32 "1ra8xdf06q9hlsrnc1yz67xkp4kd9sd27ff02mlixixnyyjp32sp"))))))
|
||||
(outputs `("out" "doc"))
|
||||
(arguments
|
||||
`(#:phases
|
||||
@@ -11918,7 +12094,7 @@ provides user-space tools for creating EROFS file systems.")
|
||||
(define-public rasdaemon
|
||||
(package
|
||||
(name "rasdaemon")
|
||||
(version "0.8.4")
|
||||
(version "0.8.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -11927,17 +12103,9 @@ provides user-space tools for creating EROFS file systems.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1930g35igfdw5bzcd6diy59rm1q4yirpjgqznfqfsichnmk04kmf"))))
|
||||
(base32 "0vfw4vf75fnpbxnfsmpdwdzhplnccz24j23bg6nsb3b4wa8hv4sa"))))
|
||||
(native-inputs (list autoconf automake libtool pkg-config))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
dmidecode
|
||||
kmod
|
||||
libtraceevent
|
||||
pciutils
|
||||
perl
|
||||
perl-dbd-sqlite
|
||||
sqlite))
|
||||
(inputs (list bash-minimal libtraceevent perl perl-dbd-sqlite sqlite dmidecode kmod))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
|
||||
@@ -89,7 +89,6 @@
|
||||
#:use-module (gnu packages wget)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module ((srfi srfi-1) #:hide (zip)))
|
||||
|
||||
(define (lua-search-paths version)
|
||||
@@ -171,22 +170,6 @@ for configuration, scripting, and rapid prototyping.")
|
||||
"lua-5.4-search-paths.patch"))))
|
||||
(native-search-paths (lua-search-paths "5.4"))))
|
||||
|
||||
|
||||
(define-public lua-5.4-for-c++
|
||||
(let ((lua-pkg lua-5.4))
|
||||
(hidden-package
|
||||
(package/inherit lua-pkg
|
||||
(name (string-append (package-name lua-pkg) "-for-c++"))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments lua-pkg)
|
||||
((#:make-flags old-flags)
|
||||
(map
|
||||
(match-lambda
|
||||
((string-append "CC=" _)
|
||||
`(string-append "CC=" ,(cxx-for-target)))
|
||||
(else else))
|
||||
old-flags))))))))
|
||||
|
||||
(define-public lua-5.2
|
||||
(package (inherit lua)
|
||||
(version "5.2.4")
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
(define-public luanti
|
||||
(package
|
||||
(name "luanti")
|
||||
(version "5.15.2")
|
||||
(version "5.15.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -66,7 +66,7 @@
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1mcbsgf549y2jg9qds95wwgd1699mkk4byv9ls4lpg43bd829dhk"))
|
||||
(base32 "07g41ljv117pmw6402mqznccwl1hd9jp2l8wkb4l211cbm4c6vv9"))
|
||||
(modules '((guix build utils)
|
||||
(srfi srfi-26)
|
||||
(ice-9 ftw)))
|
||||
@@ -488,7 +488,7 @@ with different rules and mechanics.")
|
||||
(define-public luanti-mineclonia
|
||||
(package
|
||||
(name "luanti-mineclonia")
|
||||
(version "0.121.1")
|
||||
(version "0.120.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -497,7 +497,7 @@ with different rules and mechanics.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1c3x59iq04vfc0fa09z6g8davrr2vhdywppdbgyw64n7vk4f6br9"))))
|
||||
"135xllkvdravry25y1f94wqn7nxb0pnrpn7xiagh2b5vjbajhdg4"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
`(#:install-plan
|
||||
|
||||
@@ -9647,7 +9647,7 @@ researchers and developers alike to get started on SAT.")
|
||||
(define-public kissat
|
||||
(package
|
||||
(name "kissat")
|
||||
(version "4.0.4")
|
||||
(version "4.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -9657,7 +9657,7 @@ researchers and developers alike to get started on SAT.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1snimig4cp97p570nin2i38my72zvwypldyhr125i1z6cd9pa046"))))
|
||||
"0acg61cfcjg13if2i375cyl4xvwmabhfhi9z8pnw971046am6bzv"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list xz gzip lzip bzip2 p7zip))
|
||||
(arguments
|
||||
@@ -9668,10 +9668,6 @@ researchers and developers alike to get started on SAT.")
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-source
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "test/testfile.c"
|
||||
;; Don't check if /etc/passwd isn't writable.
|
||||
;; When building in a container/chroot, this fails spuriously.
|
||||
((".*/etc/passwd.*") ""))
|
||||
(substitute* "scripts/generate-build-header.sh"
|
||||
;; by default BUILD includes the build date which
|
||||
;; makes the build not reproducible.
|
||||
@@ -11458,7 +11454,7 @@ expression parsing and evaluation.")
|
||||
(define-public highs
|
||||
(package
|
||||
(name "highs")
|
||||
(version "1.14.0")
|
||||
(version "1.10.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -11467,14 +11463,14 @@ expression parsing and evaluation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "16y664rzvxd8785195k0srz0842zvl0zdkf6qi103p503pj81afh"))))
|
||||
(base32 "19q99nkk6r6k91gxp8a5rjil1399qyfgfc6jqlg2gd82vpcw8c8b"))))
|
||||
(build-system cmake-build-system)
|
||||
(home-page "https://highs.dev")
|
||||
(synopsis "High performance software for linear optimization")
|
||||
(description
|
||||
"HiGHS provides serial and parallel solvers for large-scale sparse
|
||||
linear programming (LP), mixed-integer programming (MIP), and quadratic
|
||||
programming (QP) models.")
|
||||
programming (QP) models")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public trilinos-zoltan
|
||||
|
||||
@@ -1151,7 +1151,7 @@ simultaneously and therefore appear under the same nickname on IRC.")
|
||||
(define-public python-nbxmpp
|
||||
(package
|
||||
(name "python-nbxmpp")
|
||||
(version "7.2.0")
|
||||
(version "7.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1160,7 +1160,7 @@ simultaneously and therefore appear under the same nickname on IRC.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1dyf4jh76ffbl45x4cpk6rsn1r4wck54b3d8wfd2swxaqq4p7lis"))))
|
||||
(base32 "1n7b6yv2k89hsmhmx9pi7m8l3aq97xppaz3hm7mvqgvxnlw0c1kr"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments (list #:test-backend #~'unittest))
|
||||
(propagated-inputs
|
||||
@@ -1184,7 +1184,7 @@ of xmpppy.")
|
||||
(define-public gajim
|
||||
(package
|
||||
(name "gajim")
|
||||
(version "2.4.6")
|
||||
(version "2.4.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1192,7 +1192,7 @@ of xmpppy.")
|
||||
(version-major+minor version)
|
||||
"/gajim-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0ilpgkzw45scjlnag94p8v6np629v7w0ihci5a2w5d742gpqvq6c"))
|
||||
(base32 "1rkxzf1pfd29rip5bw4730fl7b2xk12zpiwnfkyzxlkmbh4j3kp2"))
|
||||
(patches
|
||||
(search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch"))))
|
||||
(build-system pyproject-build-system)
|
||||
@@ -1278,6 +1278,7 @@ of xmpppy.")
|
||||
glib
|
||||
glib-networking
|
||||
gsettings-desktop-schemas
|
||||
gsound
|
||||
libspelling
|
||||
libadwaita
|
||||
gstreamer
|
||||
@@ -1292,7 +1293,6 @@ of xmpppy.")
|
||||
libsoup
|
||||
libxscrnsaver
|
||||
network-manager
|
||||
python-cryptography
|
||||
python-css-parser
|
||||
python-dbus-1.2
|
||||
python-emoji
|
||||
@@ -3437,14 +3437,14 @@ notifications.")
|
||||
(define-public pounce
|
||||
(package
|
||||
(name "pounce")
|
||||
(version "3.2")
|
||||
(version "3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://git.causal.agency/pounce/snapshot/pounce-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1i0s76mip9kfmi85bfk10p4k1kg5wkq1gm4l9gadnq9ssxnvzvjs"))
|
||||
(base32 "0kk0jrfiwfaybr0i5xih3b0yd4i6v3bz866a7xal1j8wddalbwlp"))
|
||||
(patches (search-patches "pounce-readable-checks.patch"))))
|
||||
(outputs '("out" "debug"))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
@@ -1,16 +1,11 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2021, 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2021 Stefan Reichör <stefan@xsteve.at>
|
||||
;;; Copyright © 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
|
||||
;;; Copyright © 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018-2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2018, 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019, 2023 Vasile Dumitrascu <va511e@yahoo.com>
|
||||
;;; Copyright © 2020 Alex ter Weele <alex.ter.weele@gmail.com>
|
||||
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
|
||||
;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org>
|
||||
@@ -24,6 +19,9 @@
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
|
||||
;;; Copyright © 2025 Christian Birk Sørensen <chrbirks@gmail.com>
|
||||
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019, 2023 Vasile Dumitrascu <va511e@yahoo.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -72,7 +70,6 @@
|
||||
#:use-module (gnu packages golang-check)
|
||||
#:use-module (gnu packages golang-web)
|
||||
#:use-module (gnu packages golang-xyz)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages mail)
|
||||
@@ -414,37 +411,6 @@ system statistics (CPU, disk, and memory usage, etc.) and more on the
|
||||
desktop.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gkrellm
|
||||
(package
|
||||
(name "gkrellm")
|
||||
(version "2.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gkrellm.srcbox.net/releases/gkrellm-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0qvy2xmwmfy5f0g09yn9lr262shnx82ba04r5il2wj4qscg3r7h8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs (list gtk+-2 libsm))
|
||||
(native-inputs (list gettext-minimal pkg-config))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;there is no check target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)) ;no configure script
|
||||
#:make-flags
|
||||
#~(list (string-append "INSTALLROOT=" #$output)
|
||||
(string-append "CC=" #$(cc-for-target)))))
|
||||
(home-page "https://gkrellm.srcbox.net/")
|
||||
(synopsis "System monitors")
|
||||
(description
|
||||
"GKrellM is a single process stack of system monitors which supports
|
||||
applying themes to match its appearance to your window manager, Gtk, or any
|
||||
other theme.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public glances
|
||||
(package
|
||||
(name "glances")
|
||||
|
||||
+95
-3
@@ -76,7 +76,95 @@
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public hwloc
|
||||
(define-public hwloc-1
|
||||
(package
|
||||
(name "hwloc")
|
||||
(version "1.11.13")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.open-mpi.org/software/hwloc/v"
|
||||
(version-major+minor version)
|
||||
"/downloads/hwloc-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j69p8a1pjpbpwn4w7l4dfxmaxxqikchjzqw1ncw05zmcmvlnjd4"))
|
||||
(patches (search-patches "hwloc-1-test-btrfs.patch"))))
|
||||
|
||||
(properties
|
||||
;; Tell the 'generic-html' updater to monitor this URL for updates.
|
||||
`((release-monitoring-url
|
||||
. "https://www-lb.open-mpi.org/software/hwloc/current")))
|
||||
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" ;'lstopo' & co., depends on Cairo, libx11, etc.
|
||||
"lib" ;small closure
|
||||
"doc" ;400+ section 3 man pages
|
||||
"debug"))
|
||||
(inputs
|
||||
(append (if (%current-target-system)
|
||||
'() ;fewer dependencies when cross-compiling
|
||||
(list libx11 cairo ncurses expat))
|
||||
(if (target-arm32?) '() (list numactl))))
|
||||
(propagated-inputs
|
||||
;; hwloc.pc lists it in 'Requires.private'.
|
||||
(list libpciaccess))
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "--localstatedir=/var")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'skip-linux-libnuma-test
|
||||
(lambda _
|
||||
;; Arrange to skip 'tests/linux-libnuma', which fails on some
|
||||
;; machines: <https://github.com/open-mpi/hwloc/issues/213>.
|
||||
(substitute* "tests/linux-libnuma.c"
|
||||
(("numa_available\\(\\)")
|
||||
"-1"))))
|
||||
(add-after 'install 'refine-libnuma
|
||||
;; Give -L arguments for libraries to avoid propagation
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "lib"))
|
||||
(numa (assoc-ref inputs "numactl")))
|
||||
(substitute* (map (lambda (f) (string-append out "/" f))
|
||||
'("lib/pkgconfig/hwloc.pc" "lib/libhwloc.la"))
|
||||
(("-lnuma" lib)
|
||||
(string-append "-L" numa "/lib " lib))))))
|
||||
(add-after 'install 'avoid-circular-references
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((lib (assoc-ref outputs "lib")))
|
||||
;; Suppress the 'prefix=' and 'exec_prefix=' lines so that the
|
||||
;; "lib" output doesn't refer to "out".
|
||||
(substitute* (string-append lib "/lib/pkgconfig/hwloc.pc")
|
||||
(("^.*prefix=.*$")
|
||||
"")))))
|
||||
(add-after 'install 'move-man3-pages
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Move section 3 man pages to the "doc" output.
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(doc (assoc-ref outputs "doc")))
|
||||
(copy-recursively (string-append out "/share/man/man3")
|
||||
(string-append doc "/share/man/man3"))
|
||||
(delete-file-recursively
|
||||
(string-append out "/share/man/man3"))))))))
|
||||
(home-page "https://www.open-mpi.org/projects/hwloc/")
|
||||
(synopsis "Abstraction of hardware architectures")
|
||||
(description
|
||||
"hwloc provides a portable abstraction (across OS,
|
||||
versions, architectures, ...) of the hierarchical topology of modern
|
||||
architectures, including NUMA memory nodes, sockets, shared caches, cores and
|
||||
simultaneous multithreading. It also gathers various attributes such as cache
|
||||
and memory information. It primarily aims at helping high-performance
|
||||
computing applications with gathering information about the hardware so as to
|
||||
exploit it accordingly and efficiently.
|
||||
|
||||
hwloc may display the topology in multiple convenient formats. It also offers
|
||||
a powerful programming interface to gather information about the hardware,
|
||||
bind processes, and much more.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hwloc-2
|
||||
(package
|
||||
(name "hwloc")
|
||||
(version "2.13.0")
|
||||
@@ -186,6 +274,10 @@ a powerful programming interface to gather information about the hardware,
|
||||
bind processes, and much more.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hwloc
|
||||
;; The latest stable series of hwloc.
|
||||
hwloc-2)
|
||||
|
||||
(define-public openmpi-4
|
||||
(package
|
||||
(name "openmpi")
|
||||
@@ -214,7 +306,7 @@ bind processes, and much more.")
|
||||
(package-supported-systems package)))
|
||||
(list package)
|
||||
'()))))
|
||||
(append (list `(,hwloc "lib")
|
||||
(append (list `(,hwloc-2 "lib")
|
||||
gfortran
|
||||
libfabric-1 ;fails to build with 2.3
|
||||
libevent
|
||||
@@ -607,7 +699,7 @@ arrays) that expose a buffer interface.")
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(,zlib
|
||||
(,hwloc "lib")
|
||||
(,hwloc-2 "lib")
|
||||
,slurm
|
||||
,@(if (and (not (%current-target-system))
|
||||
(member (%current-system) (package-supported-systems ucx)))
|
||||
|
||||
@@ -171,7 +171,6 @@
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages machine-learning)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages messaging)
|
||||
#:use-module (gnu packages mp3)
|
||||
#:use-module (gnu packages mpd)
|
||||
#:use-module (gnu packages mruby-xyz)
|
||||
@@ -594,38 +593,6 @@ updates via @command{mopidy local scan} while Mopidy is running, so you can
|
||||
scan your media library periodically, for example from a cron job.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public mopidy-mopiqtt
|
||||
(package
|
||||
(name "mopidy-mopiqtt")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fmarzocca/mopiqtt")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1gaxxbpws9xshsbknq78h0c1k3ynvc466hkq4952pv00q203zqk4"))
|
||||
;; XXX: https://github.com/fmarzocca/Mopiqtt/issues/6
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "tests/test_smoke.py"
|
||||
(("mqtt")
|
||||
"mopiqtt"))
|
||||
(substitute* "tests/conftest.py"
|
||||
(("mqtt")
|
||||
"mopiqtt"))))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(propagated-inputs (list mopidy python-paho-mqtt python-pykka))
|
||||
(home-page "https://github.com/fmarzocca/mopiqtt")
|
||||
(synopsis "MQTT interface for Mopidy")
|
||||
(description
|
||||
"This package provides an MQTT interface extension for Mopidy music server.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public clementine
|
||||
;; Clementine has one automatic release per commit at
|
||||
;; <https://github.com/clementine-player/Clementine/releases>.
|
||||
|
||||
@@ -966,7 +966,7 @@ fi"
|
||||
icu4c-76
|
||||
libuv-for-node-lts
|
||||
`(,nghttp2 "lib")
|
||||
openssl-3.0
|
||||
openssl
|
||||
zlib
|
||||
; ngtcp2? nghttp3?
|
||||
;; Regular build-time dependencies.
|
||||
@@ -986,7 +986,7 @@ fi"
|
||||
ngtcp2
|
||||
nghttp3
|
||||
`(,nghttp2 "lib")
|
||||
openssl-3.0
|
||||
openssl
|
||||
zlib))
|
||||
(supported-systems
|
||||
(cons "riscv64-linux" (package-supported-systems node-bootstrap)))
|
||||
|
||||
@@ -286,7 +286,7 @@ This package tracks the Extended Support Release (ESR) channel.")
|
||||
(package
|
||||
(inherit nss)
|
||||
(name "nss-rapid")
|
||||
(version "3.123")
|
||||
(version "3.121")
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source nss))
|
||||
@@ -297,7 +297,7 @@ This package tracks the Extended Support Release (ESR) channel.")
|
||||
"releases/NSS_" version-with-underscores "_RTM/src/"
|
||||
"nss-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32 "0jafdl18q9j36bwk73i462qkc24070b5llchffd7fsd2k0ri2i91"))
|
||||
(base32 "0bk3lxmj364vlf4x2q01pf0li3mm5ixgnfnxirxqp9xyh63qyfnb"))
|
||||
(patches
|
||||
(search-patches "nss-3.56-pkgconfig.patch"
|
||||
"nss-getcwd-nonnull.patch"
|
||||
|
||||
@@ -173,7 +173,7 @@ time-stamping or reference clock, sub-microsecond accuracy is possible.")
|
||||
(native-inputs (list which pkg-config))
|
||||
(inputs (cons* guile-3.0 ; for wrap-script
|
||||
libevent
|
||||
openssl-3.0
|
||||
openssl
|
||||
perl
|
||||
perl-http-tiny
|
||||
perl-io-socket-ssl
|
||||
|
||||
@@ -81,3 +81,72 @@
|
||||
(description "This tool extracts cooking recipe from HTML structured data
|
||||
in the @url{https://schema.org/Recipe} format.")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public gourmet
|
||||
;; Use the latest commit to gain Python 3 support.
|
||||
(let ((revision "0")
|
||||
(commit "8af29c8ded24528030e5ae2ea3461f61c1e5a575"))
|
||||
(package
|
||||
(name "gourmet")
|
||||
(version (git-version "0.17.4" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/thinkle/gourmet")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08fbw6zp32ws6w9czwy2sqc9c9izlkglsskshj2114d0l79z4gj8"))
|
||||
(patches (search-patches "gourmet-sqlalchemy-compat.patch"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; XXX: Some tests in deeper directories or otherwise discovered by
|
||||
;; Pytest are broken.
|
||||
#~(list "--ignore-glob=gourmet/tests/**/*.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-environemnt
|
||||
(lambda _
|
||||
(setenv "HOME" "/tmp")
|
||||
(system "Xvfb &")
|
||||
(setenv "DISPLAY" ":0")))
|
||||
(add-after 'install 'install-dekstop-file-and-icons
|
||||
(lambda _
|
||||
(define share (string-append #$output "/share"))
|
||||
(install-file ".flatpak/io.github.thinkle.Gourmet.desktop"
|
||||
(string-append share "/applications"))
|
||||
(install-file ".flatpak/io.github.thinkle.Gourmet.svg"
|
||||
(string-append share "/icons/Gourmet")))))))
|
||||
(native-inputs
|
||||
(list python-dogtail
|
||||
python-pytest
|
||||
python-selenium
|
||||
python-setuptools
|
||||
xorg-server-for-tests))
|
||||
(inputs
|
||||
(list gtk+
|
||||
python-argcomplete
|
||||
python-beautifulsoup4
|
||||
python-gst
|
||||
python-keyring
|
||||
python-lxml
|
||||
python-pillow
|
||||
python-pycairo
|
||||
python-pyenchant
|
||||
python-pygobject
|
||||
python-requests
|
||||
python-scrape-schema-recipe
|
||||
python-sqlalchemy
|
||||
python-toml))
|
||||
(home-page "https://thinkle.github.io/gourmet/")
|
||||
(synopsis "Recipe organizer")
|
||||
(description
|
||||
"Gourmet Recipe Manager is a recipe organizer that allows you to collect,
|
||||
search, organize, and browse your recipes. Gourmet can also generate shopping
|
||||
lists and calculate nutritional information. It imports Mealmaster,
|
||||
MasterCook and KRecipe files and exports PDFs, webpages, and other formats.")
|
||||
(license gpl2+))))
|
||||
|
||||
+98
-4
@@ -1,4 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
|
||||
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
|
||||
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -16,8 +20,98 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages nvi)
|
||||
#:use-module (gnu packages text-editors)
|
||||
#:use-module (guix deprecation))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix utils))
|
||||
|
||||
(define-deprecated/public-alias nvi
|
||||
(@ (gnu packages text-editors) nvi))
|
||||
(define-public nvi
|
||||
(package
|
||||
(name "nvi")
|
||||
(version "1.81.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri ;; sites.google.coma/bostic.com/keithbostic/vi is stale.
|
||||
(string-append "http://harrier.slackbuilds.org/misc/nvi-" version
|
||||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0nbbs1inyrqds0ywn3ln5slv54v5zraq7lszkg8nsavv4kivhh9l"))
|
||||
(patches (search-patches "nvi-assume-preserve-path.patch"
|
||||
"nvi-dbpagesize-binpower.patch"
|
||||
"nvi-add-function-prototypes.patch"
|
||||
"nvi-db4.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Create a wrapper for the configure script, make it executable.
|
||||
'(let ((conf-wrap (open-output-file "configure")))
|
||||
(display "#!/bin/sh" conf-wrap)
|
||||
(newline conf-wrap)
|
||||
(display
|
||||
"../nvi-1.81.6/dist/configure --srcdir=../nvi-1.81.6/dist $@"
|
||||
conf-wrap)
|
||||
(newline conf-wrap)
|
||||
(close-output-port conf-wrap)
|
||||
(chmod "configure" #o0755)
|
||||
|
||||
;; Glibc 2.30 removed the deprecated <sys/stropts.h>, so fall back
|
||||
;; to the internal PTY allocation logic.
|
||||
(substitute* "ex/ex_script.c"
|
||||
(("#ifdef HAVE_SYS5_PTY")
|
||||
"#if defined(HAVE_SYS5_PTY) && !defined(__GLIBC__)"))
|
||||
#t))))
|
||||
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:out-of-source? #t
|
||||
#:configure-flags
|
||||
#~'("--enable-widechar"
|
||||
#$@(if (%current-target-system)
|
||||
'("vi_cv_sprintf_count=yes")
|
||||
'()))
|
||||
#:make-flags
|
||||
#~(list
|
||||
;; Add CFLAGS to relax gcc-14's strictness.
|
||||
;; nvi's configure chokes on passing CFLAGS and ignores
|
||||
;; CFLAGS set in the environment.
|
||||
(string-append "CFLAGS=-g -O2"
|
||||
" -Wno-error=incompatible-pointer-types"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'fix-configure
|
||||
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||
;; Replace outdated config.sub and config.guess:
|
||||
(with-directory-excursion "dist"
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(chmod file #o755)
|
||||
(install-file
|
||||
(format #f "~a/share/automake-~a/~a"
|
||||
(assoc-ref (or native-inputs inputs)
|
||||
"automake")
|
||||
#$(version-major+minor
|
||||
(package-version automake))
|
||||
file)
|
||||
"."))
|
||||
'("config.sub" "config.guess"))))))))
|
||||
(inputs
|
||||
(list bdb ncurses))
|
||||
(native-inputs
|
||||
(list automake)) ;Up to date 'config.guess' and 'config.sub'.
|
||||
(synopsis "The Berkeley Vi Editor")
|
||||
(description
|
||||
"Vi is the original screen based text editor for Unix systems. It is
|
||||
considered the standard text editor, and is available on almost all Unix
|
||||
systems. Nvi is intended as a \"bug-for-bug compatible\" clone of the
|
||||
original BSD vi editor. As such, it doesn't have a lot of snazzy features as
|
||||
do some of the other vi clones such as elvis and vim. However, if all you
|
||||
want is vi, this is the one to get.")
|
||||
(home-page "https://sites.google.com/a/bostic.com/keithbostic/vi")
|
||||
(license bsd-3)))
|
||||
|
||||
+174
-393
@@ -91,7 +91,6 @@
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages unicode)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages vim)
|
||||
#:use-module (gnu packages virtualization)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages web-browsers)
|
||||
@@ -798,29 +797,30 @@ describing upgrade scenarios in package-based software distributions.")
|
||||
(define-public ocaml-mccs
|
||||
(package
|
||||
(name "ocaml-mccs")
|
||||
(version "1.1+19")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/AltGr/ocaml-mccs")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1x1y5rhj4f0xakbgfn9f90a9xy09v99p8mc42pbnam5kghyjmxy6"))))
|
||||
(version "1.1+14")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/AltGr/ocaml-mccs")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"17bvm0jhhs8h3p5sbb65asj53a8sxl634cc0kvcivpams74837zq"))))
|
||||
(build-system dune-build-system)
|
||||
(propagated-inputs (list ocaml-cudf))
|
||||
(home-page "https://www.i3s.unice.fr/~cpjm/misc/")
|
||||
(synopsis "Upgrade path problem solver")
|
||||
(description
|
||||
"Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver.
|
||||
(description "Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver.
|
||||
Mccs take as input a CUDF problem and computes the best solution according to
|
||||
a set of criteria. It relies on a Integer Programming solver or a
|
||||
Pseudo Boolean solver to achieve its task. Mccs can use a wide set of
|
||||
underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.")
|
||||
(license (list license:bsd-3 license:gpl3+
|
||||
;; With static-linking exception
|
||||
license:lgpl2.1+))))
|
||||
(license (list
|
||||
license:bsd-3
|
||||
license:gpl3+
|
||||
;; With static-linking exception
|
||||
license:lgpl2.1+))))
|
||||
|
||||
(define-public ocaml-dose3
|
||||
(package
|
||||
@@ -945,156 +945,47 @@ the opam file format.")
|
||||
;; With static-linking exception
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public ocaml-swhid-core
|
||||
(package
|
||||
(name "ocaml-swhid-core")
|
||||
(version "0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/OCamlPro/swhid_core")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0h3zndyk94lf2lakc3cb8b7a00jqh0y1m8xk6mg61gj2kdpdbfdq"))))
|
||||
(build-system dune-build-system)
|
||||
(properties `((upstream-name . "swhid_core")))
|
||||
(home-page "https://github.com/ocamlpro/swhid_core")
|
||||
(synopsis "OCaml library to work with swhids")
|
||||
(description
|
||||
"swhid_core is an OCaml library to work with Software Heritage persistent
|
||||
identifiers (swhids). This is the core library, for most use cases you should
|
||||
use the swhid library instead.")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public ocaml-spdx-licenses
|
||||
(package
|
||||
(name "ocaml-spdx-licenses")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/kit-ty-kate/spdx_licenses")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08vh9mfkq34f0l5ka94hhklc43kvz09wd04x1gkxkawn4786rf9z"))))
|
||||
(build-system dune-build-system)
|
||||
(native-inputs (list ocaml-alcotest))
|
||||
(properties `((upstream-name . "spdx_licenses")))
|
||||
(home-page "https://github.com/kit-ty-kate/spdx_licenses")
|
||||
(synopsis "Strict SPDX License Expression parser")
|
||||
(description
|
||||
"This package provides an up-to-date and strict SPDX License Expression
|
||||
parser. It implements the format described in:
|
||||
https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
|
||||
See https://spdx.org/licenses/ for more details.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ocaml-0install-solver
|
||||
(package
|
||||
(name "ocaml-0install-solver")
|
||||
(version "2.18")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/0install/0install")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hm72k355qwgh16hngmnd77bgawf20ipnqxfncdzl10rqrc0640b"))))
|
||||
(build-system dune-build-system)
|
||||
(arguments
|
||||
`(#:package "0install-solver"))
|
||||
(native-inputs (list ocaml-ounit2))
|
||||
(home-page "https://docs.0install.net/developers/solver/")
|
||||
(synopsis "Package dependency solver")
|
||||
(description
|
||||
"This package provides a package dependency resolver based on a SAT solver.
|
||||
This was originally written for the 0install package manager, but is now
|
||||
generic and is also used as a solver backend for opam. The SAT solver is
|
||||
based on @code{MiniSat} (http://minisat.se/Papers.html) and the application to
|
||||
package management is based on OPIUM (Optimal Package Install/Uninstall
|
||||
Manager). 0install-solver uses a (novel?) strategy to find the optimal
|
||||
solution extremely quickly (even for a SAT-based solver).")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public ocaml-opam-0install-cudf
|
||||
(package
|
||||
(name "ocaml-opam-0install-cudf")
|
||||
(version "0.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ocaml-opam/opam-0install-cudf")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "12v1bgnxcxdylgxbsjlcr90rzwcp39rjlv191cy8g2s33nyxyi2c"))))
|
||||
(build-system dune-build-system)
|
||||
(propagated-inputs (list ocaml-cudf ocaml-0install-solver))
|
||||
(native-inputs (list ocaml-alcotest))
|
||||
(home-page "https://opam.ocaml.org")
|
||||
(synopsis "Opam solver using 0install backend using the CUDF interface")
|
||||
(description
|
||||
"Opam's default solver is designed to maintain a set of packages over time,
|
||||
minimising disruption when installing new programs and finding a compromise
|
||||
solution across all packages. In many situations (e.g. CI, local roots or
|
||||
duniverse builds) this is not necessary, and we can get a solution much faster
|
||||
by using a different algorithm. This package provides a generic solver library
|
||||
which uses 0install's solver library. The library uses the CUDF library in
|
||||
order to interface with opam as it is the format common used to talk to all the
|
||||
supported solvers.")
|
||||
(license license:isc)))
|
||||
|
||||
(define ocaml-opam-core
|
||||
(package
|
||||
(name "ocaml-opam-core")
|
||||
(version "2.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ocaml/opam")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "10diw6wdl6v89kbvb8x22dbfacw1ikhl63hybyp2s7560450hygc"))))
|
||||
(version "2.1.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ocaml/opam")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ckd87rcmcz11iyhhm5qnmy27jbdffx6n1fr06hvrqqrzi00jljh"))))
|
||||
(build-system dune-build-system)
|
||||
(arguments
|
||||
`(#:package "opam-core"
|
||||
;; tests are run with the opam package
|
||||
#:tests? #f
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'build 'pre-build
|
||||
(lambda* (#:key inputs make-flags #:allow-other-keys)
|
||||
(let ((bash (assoc-ref inputs "bash"))
|
||||
(bwrap (search-input-file inputs "/bin/bwrap")))
|
||||
(substitute* "src/core/opamSystem.ml"
|
||||
(("\"/bin/sh\"")
|
||||
(string-append "\"" bash "/bin/sh\""))
|
||||
(("getconf")
|
||||
(which "getconf")))))))))
|
||||
(propagated-inputs (list ocaml-graph
|
||||
ocaml-re
|
||||
ocaml-patch
|
||||
ocaml-uutf
|
||||
ocaml-swhid-core
|
||||
ocaml-jsonm
|
||||
ocaml-sha))
|
||||
(arguments `(#:package "opam-core"
|
||||
;; tests are run with the opam package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'pre-build
|
||||
(lambda* (#:key inputs make-flags #:allow-other-keys)
|
||||
(let ((bash (assoc-ref inputs "bash"))
|
||||
(bwrap (search-input-file inputs "/bin/bwrap")))
|
||||
(substitute* "src/core/opamSystem.ml"
|
||||
(("\"/bin/sh\"")
|
||||
(string-append "\"" bash "/bin/sh\""))
|
||||
(("getconf")
|
||||
(which "getconf")))))))))
|
||||
(propagated-inputs
|
||||
(list ocaml-graph
|
||||
ocaml-re
|
||||
ocaml-cppo))
|
||||
(inputs (list bubblewrap))
|
||||
(home-page "https://opam.ocaml.org")
|
||||
(home-page "https://opam.ocamlpro.com/")
|
||||
(synopsis "Package manager for OCaml")
|
||||
(description
|
||||
"OPAM is a tool to manage OCaml packages. It supports multiple
|
||||
simultaneous compiler installations, flexible package constraints, and a
|
||||
Git-friendly development workflow.")
|
||||
;; The 'LICENSE' file waives some requirements compared to LGPLv2.1.
|
||||
(license license:lgpl2.1)))
|
||||
;; The 'LICENSE' file waives some requirements compared to LGPLv3.
|
||||
(license license:lgpl3)))
|
||||
|
||||
(define ocaml-opam-format
|
||||
(package
|
||||
@@ -1111,56 +1002,24 @@ Git-friendly development workflow.")
|
||||
|
||||
(define-public opam-installer
|
||||
(package
|
||||
(inherit ocaml-opam-core)
|
||||
(name "opam-installer")
|
||||
(version "2.5.1")
|
||||
;; opam has some library dependencies that in turn depend on
|
||||
;; opam-installer (https://codeberg.org/guix/guix/issues/3588). To break
|
||||
;; the cycle, we build opam-installer from a version of the release that
|
||||
;; vendors all dependencies. Then the remaining opam packages can be built
|
||||
;; in the usual way from git sources.
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ocaml/opam/releases/download/"
|
||||
version "/opam-full-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1v9k00az5lkdrlb64xb9h8xasnsz73kms0j0bz64hh2wbypvzia8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; Tests depend on the full opam package.
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
#~'("--with-vendored-deps")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-shell-path
|
||||
(lambda _
|
||||
(let ((sh (which "sh")))
|
||||
(substitute* "configure"
|
||||
(("/bin/sh") sh)))))
|
||||
;; The Makefile builds both opam and opam-installer, but we
|
||||
;; only want the latter.
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(define (install source dest-dir)
|
||||
(install-file source
|
||||
(string-append #$output "/" dest-dir)))
|
||||
(install "opam-installer" "bin")
|
||||
(install "_build/default/doc/man/opam-installer.1"
|
||||
"share/man/man1"))))))
|
||||
(native-inputs (list ocaml))
|
||||
(home-page "https://opam.ocaml.org")
|
||||
(native-inputs (list ocaml-opam-format
|
||||
ocaml-cmdliner))
|
||||
(inputs '())
|
||||
(propagated-inputs '())
|
||||
(arguments `(#:package "opam-installer"
|
||||
;; requires all of opam
|
||||
#:tests? #f))
|
||||
(synopsis "Tool for installing OCaml packages")
|
||||
(description
|
||||
"@var{opam-installer} is a tool for installing OCaml packages
|
||||
(description "@var{opam-installer} is a tool for installing OCaml packages
|
||||
based on @code{.install} files defined by the OPAM package manager. It is
|
||||
useful for installing OCaml packages without requiring the entirety of
|
||||
OPAM.")
|
||||
(properties `((ocaml5.0-variant unquote
|
||||
(delay opam-installer))))
|
||||
;; The 'LICENSE' file waives some requirements compared to LGPLv2.1.
|
||||
(license license:lgpl2.1)))
|
||||
(properties
|
||||
;; opam-installer is used as a tool and not as a library, we can use the
|
||||
;; OCaml 4.14 compiled opam until opam is compatible with OCaml 5.0.
|
||||
`((ocaml5.0-variant . ,(delay opam-installer))))))
|
||||
|
||||
(define ocaml-opam-repository
|
||||
(package
|
||||
@@ -1197,7 +1056,7 @@ OPAM.")
|
||||
(string-append "add_sys_mounts "
|
||||
(%store-directory)
|
||||
" /run/current-system /usr")))))))))
|
||||
(inputs (list bubblewrap ocaml-spdx-licenses))
|
||||
(inputs (list bubblewrap))
|
||||
(propagated-inputs (list ocaml-opam-repository))))
|
||||
|
||||
(define ocaml-opam-solver
|
||||
@@ -1207,8 +1066,7 @@ OPAM.")
|
||||
(inputs '())
|
||||
(propagated-inputs (list ocaml-opam-format
|
||||
ocaml-mccs
|
||||
ocaml-dose3
|
||||
ocaml-opam-0install-cudf))
|
||||
ocaml-dose3))
|
||||
(arguments `(#:package "opam-solver"
|
||||
;; tests are run with the opam package
|
||||
#:tests? #f
|
||||
@@ -1235,7 +1093,7 @@ OPAM.")
|
||||
ocaml-opam-repository
|
||||
ocaml-base64
|
||||
ocaml-re
|
||||
ocaml-spdx-licenses))))
|
||||
ocaml-cmdliner))))
|
||||
|
||||
(define-public opam
|
||||
(package
|
||||
@@ -1244,171 +1102,120 @@ OPAM.")
|
||||
(build-system dune-build-system)
|
||||
(arguments
|
||||
`(#:package "opam"
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'check 'prepare-checks
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Opam tests need to run an isolated environment from a writable
|
||||
;; home directory.
|
||||
(mkdir-p "test-home")
|
||||
(setenv "HOME"
|
||||
(string-append (getcwd) "/test-home"))
|
||||
(with-output-to-file (string-append (getcwd)
|
||||
"/test-home/.gitconfig")
|
||||
(lambda _
|
||||
(display "[user]
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'prepare-checks
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Opam tests need to run an isolated environment from a writable
|
||||
;; home directory.
|
||||
(mkdir-p "test-home")
|
||||
(setenv "HOME" (string-append (getcwd) "/test-home"))
|
||||
(with-output-to-file (string-append (getcwd) "/test-home/.gitconfig")
|
||||
(lambda _
|
||||
(display "[user]
|
||||
email = guix@localhost.none
|
||||
name = Guix Builder
|
||||
name = Guix Builder")
|
||||
(newline)))
|
||||
|
||||
[protocol \"file\"]
|
||||
allow = always")
|
||||
(newline)))
|
||||
;; Opam tests require data from opam-repository. Instead of
|
||||
;; downloading them with wget from the guix environment, copy the
|
||||
;; content to the expected directory.
|
||||
(substitute* "tests/reftests/dune.inc"
|
||||
(("tar -C.*opam-archive-([0-9a-f]*)[^)]*" _ commit)
|
||||
(string-append "rmdir %{targets}) (run cp -r "
|
||||
(assoc-ref inputs (string-append "opam-repo-" commit))
|
||||
"/ %{targets}) (run chmod +w -R %{targets}"))
|
||||
(("wget[^)]*") "touch %{targets}")
|
||||
;; Disable a failing test because it tries to clone a git
|
||||
;; repository from inside bwrap
|
||||
(("diff upgrade-format.test upgrade-format.out") "run true")
|
||||
;; Disable a failing test because it tries to figure out which
|
||||
;; distro this is, and it doesn't know Guix
|
||||
(("diff pin.unix.test pin.unix.out") "run true")
|
||||
;; Disable a failing test because of a failed expansion
|
||||
(("diff opamroot-versions.test opamroot-versions.out") "run true")
|
||||
;; Disable a failing test, probably because the repository we
|
||||
;; replaced is not as expected
|
||||
(("diff opamrt-big-upgrade.test opamrt-big-upgrade.out") "run true")
|
||||
;; Disable a failing test because of missing sandboxing
|
||||
;; functionality
|
||||
(("diff init.test init.out") "run true"))
|
||||
(substitute* "tests/reftests/dune"
|
||||
;; Because of our changes to the previous file, we cannot check
|
||||
;; it can be regenerated
|
||||
(("diff dune.inc dune.inc.gen") "run true"))
|
||||
;; Ensure we can run the generated build.sh (no /bin/sh)
|
||||
(substitute* '("tests/reftests/legacy-local.test"
|
||||
"tests/reftests/legacy-git.test")
|
||||
(("#! ?/bin/sh")
|
||||
(string-append "#!"
|
||||
(search-input-file inputs "/bin/sh"))))
|
||||
(substitute* "tests/reftests/testing-env"
|
||||
(("OPAMSTRICT=1")
|
||||
(string-append "OPAMSTRICT=1\nLIBRARY_PATH="
|
||||
(assoc-ref inputs "libc") "/lib"))))))))
|
||||
(native-inputs
|
||||
(let ((opam-repo (lambda (commit hash)
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ocaml/opam-repository")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "opam-repo" commit))
|
||||
(sha256 (base32 hash))))))
|
||||
`(("dune" ,dune)
|
||||
("ocaml-cppo" ,ocaml-cppo)
|
||||
|
||||
;; Opam tests require data from opam-repository. Instead
|
||||
;; of downloading them with wget from the guix
|
||||
;; environment, copy the content to the expected
|
||||
;; directory.
|
||||
(substitute* "tests/reftests/dune.inc"
|
||||
(("tar -C.*opam-archive-([0-9a-f]*)[^)]*" _ commit)
|
||||
(string-append "rmdir %{targets}) (run cp -r "
|
||||
(begin
|
||||
;; When updating opam, uncomment the following
|
||||
;; call. It will list "opam-repo" commit-ish
|
||||
;; required to run tests (see native-inputs
|
||||
;; below). Remove versions that are no longer
|
||||
;; required, and add new ones if necessary.
|
||||
;;
|
||||
;; (pk commit)
|
||||
(assoc-ref inputs
|
||||
(string-append "opam-repo-" commit)))
|
||||
"/ %{targets}) (run chmod +w -R %{targets}"))
|
||||
(("wget[^)]*")
|
||||
"touch %{targets}")
|
||||
;; For tests.
|
||||
("git" ,git-minimal/pinned)
|
||||
("openssl" ,openssl)
|
||||
("python" ,python-wrapper)
|
||||
("rsync" ,rsync)
|
||||
("unzip" ,unzip)
|
||||
("which" ,which)
|
||||
|
||||
;; Selectively disable a fraction of opam's "reftests"
|
||||
;; (CRAM-style regression tests). Most of these tests
|
||||
;; make assumptions about the build environment that
|
||||
;; don't hold for Guix.
|
||||
|
||||
;; Test tries to clone a git repository from inside
|
||||
;; bwrap
|
||||
(("diff upgrade-format.test upgrade-format.out")
|
||||
"run true")
|
||||
;; Test tries to figure out which distro this is, and
|
||||
;; it doesn't know Guix
|
||||
(("diff pin.unix.test pin.unix.out")
|
||||
"run true")
|
||||
;; A variable expansion fails.
|
||||
(("diff opamroot-versions.test opamroot-versions.out")
|
||||
"run true")
|
||||
;; The repository we replaced is probably not as
|
||||
;; expected
|
||||
(("diff opamrt-big-upgrade.test opamrt-big-upgrade.out")
|
||||
"run true")
|
||||
;; Disable a failing test because of missing sandboxing
|
||||
;; functionality
|
||||
(("diff init.test init.out")
|
||||
"run true")
|
||||
;; These tests try to normalize output to exclude
|
||||
;; version strings, but this seems to break some
|
||||
;; output assertions if $BASEDIR happens to include
|
||||
;; the version.
|
||||
(("diff cli-versioning.test cli-versioning.out")
|
||||
"run true")
|
||||
(("diff hooks-variables.test hooks-variables.out")
|
||||
"run true")
|
||||
;; Fails on noisy git output.
|
||||
(("diff action-disk.test action-disk.out")
|
||||
"run true")
|
||||
;; Requires network access.
|
||||
(("diff download.test download.out")
|
||||
"run true")
|
||||
(("diff swhid.unix.test swhid.unix.out")
|
||||
"run true")
|
||||
;; Depends on 3rd-party git repos.
|
||||
(("diff lock.test lock.out")
|
||||
"run true"))
|
||||
|
||||
(substitute* "tests/reftests/dune"
|
||||
;; Because of our changes to the previous file, we
|
||||
;; cannot check it can be regenerated
|
||||
(("diff dune.inc dune.inc.gen")
|
||||
"run true"))
|
||||
;; Ensure we can run the generated build.sh (no /bin/sh)
|
||||
(substitute* '("tests/reftests/legacy-local.test"
|
||||
"tests/reftests/legacy-git.test")
|
||||
(("#! ?/bin/sh")
|
||||
(string-append "#!"
|
||||
(search-input-file inputs "/bin/sh"))))
|
||||
(substitute* "tests/reftests/testing-env"
|
||||
(("OPAMSTRICT=1")
|
||||
(string-append "OPAMSTRICT=1\nLIBRARY_PATH="
|
||||
(assoc-ref inputs "libc") "/lib"))))))))
|
||||
|
||||
(native-inputs (let ((opam-repo (lambda (commit hash)
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url
|
||||
"https://github.com/ocaml/opam-repository")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "opam-repo"
|
||||
commit))
|
||||
(sha256 (base32 hash))))))
|
||||
`(("dune" ,dune)
|
||||
|
||||
;; For tests.
|
||||
("git" ,git-minimal/pinned)
|
||||
("openssl" ,openssl)
|
||||
("python" ,python-wrapper)
|
||||
("rsync" ,rsync)
|
||||
("unzip" ,unzip)
|
||||
("which" ,which)
|
||||
("xxd" ,xxd)
|
||||
|
||||
;; Data for tests
|
||||
("opam-repo-0070613707" ,(opam-repo
|
||||
"00706137074d536d2019d2d222fbe1bea929deda"
|
||||
"1gv1vvmfscj7wirfv6qncp8pf81wygnpzjwd0lyqcxm7g8r8lb4w"))
|
||||
("opam-repo-009e00fa" ,(opam-repo
|
||||
"009e00fa86300d11c311309a2544e5c6c3eb8de2"
|
||||
"1wwy0rwrsjf4q10j1rh1dazk32fbzhzy6f7zl6qmndidx9b1bq7w"))
|
||||
("opam-repo-11ea1cb" ,(opam-repo
|
||||
"11ea1cb6f2418b1f8a6679e4422771a04c9c3655"
|
||||
"1s4p0wfn3bx97yvm8xvj3yhzv2pz0jwml68g2ybv37hj9mpbrsq0"))
|
||||
("opam-repo-143dd2a2f59f5befbf3cb90bb2667f911737fbf8" ,
|
||||
(opam-repo "143dd2a2f59f5befbf3cb90bb2667f911737fbf8"
|
||||
"1kliiy9n2j8myxhbz1brq6yingfy0si1bmv15j1hbnbpyi3bavr9"))
|
||||
("opam-repo-297366c" ,(opam-repo
|
||||
"297366cd01c3aaf29b967bf0b34ccc7989d4d5b3"
|
||||
"1ysg69gys37nc2cxivs2ikh6xp0gj85if4rcrr874mqb9z12dm0j"))
|
||||
("opam-repo-3235916" ,(opam-repo
|
||||
"3235916a162a59d7c82dac3fe24214975d48f1aa"
|
||||
"1yf73rv2n740a4s9g7a9k4j91b4k7al88nwnw9cdw0k2ncbmr486"))
|
||||
("opam-repo-7090735c" ,(opam-repo
|
||||
"7090735c9d1dd2dc481c4128c5ef4d3667238f15"
|
||||
"1bccsgjhlp64lmvfjfn6viywf3x73ji75myg9ssf1ij1fkmabn0z"))
|
||||
("opam-repo-7371c1d9" ,(opam-repo
|
||||
"7371c1d9c53000840fb9a6d8ec13d87ffaa98401"
|
||||
"0lmy3rmp5liyp2dsx4s90rjdwc012947ig2fz6y97s3pmwsbf9g8"))
|
||||
("opam-repo-a5d7cdc0" ,(opam-repo
|
||||
"a5d7cdc0c91452b0aef4fa71c331ee5237f6dddd"
|
||||
"0z7kawqisy07088p5xjxwpvmvzlbj1d9cgdipsj90yx7nc5qh369"))
|
||||
("opam-repo-ad4dd344" ,(opam-repo
|
||||
"ad4dd344fe5cd1cab49ced49d6758a9844549fb4"
|
||||
"1a1qj47kj8xjdnc4zc50ijrix1kym1n7k20n3viki80a7518baw8"))
|
||||
("opam-repo-c1842d168d" ,(opam-repo
|
||||
"c1842d168de956caf06d7ac8588e65020d7594d8"
|
||||
"142y1ac7sprygyh91shcp0zcyfxjjkshi9g44qgg4rx60rbsbhai"))
|
||||
("opam-repo-c1ba97dafe95c865d37ad4d88f6e57c9ffbe7f0a" ,
|
||||
(opam-repo "c1ba97dafe95c865d37ad4d88f6e57c9ffbe7f0a"
|
||||
"0sllm110dvs3w1k7qhias5y8v6ikkk2knw97v1fk9lnw4lq45gv6"))
|
||||
("opam-repo-de897adf36c4230dfea812f40c98223b31c4521a" ,
|
||||
(opam-repo "de897adf36c4230dfea812f40c98223b31c4521a"
|
||||
"1m18x9gcwnbar8yv9sbfz8a3qpw412fp9cf4d6fb7syn0p0h96jw"))
|
||||
("opam-repo-f372039d" ,(opam-repo
|
||||
"f372039db86a970ef3e662adbfe0d4f5cd980701"
|
||||
"0ld7fcry6ss6fmrpswvr6bikgx299w97h0gwrjjh7kd7rydsjdws")))))
|
||||
(inputs (list ocaml-opam-client))))
|
||||
;; Data for tests
|
||||
("opam-repo-0070613707"
|
||||
,(opam-repo "00706137074d536d2019d2d222fbe1bea929deda"
|
||||
"1gv1vvmfscj7wirfv6qncp8pf81wygnpzjwd0lyqcxm7g8r8lb4w"))
|
||||
("opam-repo-009e00fa"
|
||||
,(opam-repo "009e00fa86300d11c311309a2544e5c6c3eb8de2"
|
||||
"1wwy0rwrsjf4q10j1rh1dazk32fbzhzy6f7zl6qmndidx9b1bq7w"))
|
||||
("opam-repo-7090735c"
|
||||
,(opam-repo "7090735c9d1dd2dc481c4128c5ef4d3667238f15"
|
||||
"1bccsgjhlp64lmvfjfn6viywf3x73ji75myg9ssf1ij1fkmabn0z"))
|
||||
("opam-repo-a5d7cdc0"
|
||||
,(opam-repo "a5d7cdc0c91452b0aef4fa71c331ee5237f6dddd"
|
||||
"0z7kawqisy07088p5xjxwpvmvzlbj1d9cgdipsj90yx7nc5qh369"))
|
||||
("opam-repo-ad4dd344"
|
||||
,(opam-repo "ad4dd344fe5cd1cab49ced49d6758a9844549fb4"
|
||||
"1a1qj47kj8xjdnc4zc50ijrix1kym1n7k20n3viki80a7518baw8"))
|
||||
("opam-repo-c1842d168d"
|
||||
,(opam-repo "c1842d168de956caf06d7ac8588e65020d7594d8"
|
||||
"142y1ac7sprygyh91shcp0zcyfxjjkshi9g44qgg4rx60rbsbhai"))
|
||||
("opam-repo-c1d23f0e"
|
||||
,(opam-repo "c1d23f0e17ec83a036ebfbad1c78311b898a2ca0"
|
||||
"0j9abisx3ifzm66ci3p45mngmz4f0fx7yd9jjxrz3f8w5jffc9ii"))
|
||||
("opam-repo-f372039d"
|
||||
,(opam-repo "f372039db86a970ef3e662adbfe0d4f5cd980701"
|
||||
"0ld7fcry6ss6fmrpswvr6bikgx299w97h0gwrjjh7kd7rydsjdws"))
|
||||
("opam-repo-11ea1cb"
|
||||
,(opam-repo "11ea1cb6f2418b1f8a6679e4422771a04c9c3655"
|
||||
"1s4p0wfn3bx97yvm8xvj3yhzv2pz0jwml68g2ybv37hj9mpbrsq0"))
|
||||
("opam-repo-297366c"
|
||||
,(opam-repo "297366cd01c3aaf29b967bf0b34ccc7989d4d5b3"
|
||||
"1ysg69gys37nc2cxivs2ikh6xp0gj85if4rcrr874mqb9z12dm0j"))
|
||||
("opam-repo-3235916"
|
||||
,(opam-repo "3235916a162a59d7c82dac3fe24214975d48f1aa"
|
||||
"1yf73rv2n740a4s9g7a9k4j91b4k7al88nwnw9cdw0k2ncbmr486"))
|
||||
("opam-repo-de897adf36c4230dfea812f40c98223b31c4521a"
|
||||
,(opam-repo "de897adf36c4230dfea812f40c98223b31c4521a"
|
||||
"1m18x9gcwnbar8yv9sbfz8a3qpw412fp9cf4d6fb7syn0p0h96jw")))))
|
||||
(inputs (list ocaml-opam-client))
|
||||
(properties
|
||||
;; OPAM is used as a tool and not as a library, we can use the OCaml 4.14
|
||||
;; compiled opam until opam is compatible with OCaml 5.0.
|
||||
`((ocaml5.0-variant . ,(delay opam))))))
|
||||
|
||||
(define-public ocaml-opam-monorepo
|
||||
(package
|
||||
@@ -4317,32 +4124,6 @@ and command-line tool.")
|
||||
length of domain names are preserved throughout the module.")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public ocaml-patch
|
||||
(package
|
||||
(name "ocaml-patch")
|
||||
(version "3.1.0")
|
||||
(build-system dune-build-system)
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hannesm/patch")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1zg35f427ixd3jhkiwk91sil45pmf6ns7yfcgyi6gf2r0y241xn3"))))
|
||||
(native-inputs (list ocaml-alcotest))
|
||||
(home-page "https://github.com/hannesm/patch")
|
||||
(synopsis "Applies unified diffs in pure OCaml")
|
||||
(description
|
||||
"This package applies unified diffs in pure OCaml.
|
||||
|
||||
The loosely specified diff file format is widely used for transmitting
|
||||
differences of line-based information. The motivating example is opam, which
|
||||
is able to validate updates being cryptographically signed (e.g. conex) by
|
||||
providing a unified diff.")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public ocaml-macaddr
|
||||
(package
|
||||
(name "ocaml-macaddr")
|
||||
@@ -6372,7 +6153,7 @@ serializers and deserializers from type definitions.")
|
||||
(build-system dune-build-system)
|
||||
(propagated-inputs (list ocaml-yojson))
|
||||
(properties `((upstream-name . "ppx_yojson_conv_lib")))
|
||||
(synopsis "Runtime library used by ocaml PPX yojson converter")
|
||||
(synopsis "Runtime library used by ocaml PPX yojson convertor")
|
||||
(description "Ppx_yojson_conv_lib is the runtime library used by
|
||||
ppx_yojson_conv, a ppx rewriter that can be used to convert ocaml types
|
||||
to a Yojson.Safe value.")
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
;; Relax hard requirement of PIP.
|
||||
;; Relax hard requirment of PIP.
|
||||
((".*pip>=18.0.*") ""))))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
;;; Copyright © 2025-2026 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
|
||||
;;; Copyright © 2025 unwox <me@unwox.com>
|
||||
;;; Copyright © 2026 Owen T. Heisler <writer@owenh.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -817,33 +816,7 @@ high-performance computing} clusters.")
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-load-paths-in-entry-point
|
||||
(lambda _
|
||||
(define load-path
|
||||
(cons (string-append #$output
|
||||
"/share/guile/site/"
|
||||
(target-guile-effective-version))
|
||||
(parse-path (getenv "GUILE_LOAD_PATH"))))
|
||||
(define load-compiled-path
|
||||
(cons (string-append #$output
|
||||
"/lib/guile/"
|
||||
(target-guile-effective-version)
|
||||
"/site-ccache")
|
||||
(parse-path (getenv "GUILE_LOAD_COMPILED_PATH"))))
|
||||
(define search-paths-header
|
||||
`(begin
|
||||
(set! %load-path
|
||||
(append (list ,@load-path) %load-path))
|
||||
(set! %load-compiled-path
|
||||
(append (list ,@load-compiled-path)
|
||||
%load-compiled-path))))
|
||||
(substitute* "guix/extensions/toys.scm"
|
||||
(("^\\(define-module \\(guix extensions toys\\)")
|
||||
(string-append
|
||||
(with-output-to-string
|
||||
(lambda () (write search-paths-header)))
|
||||
"\n(define-module (guix extensions toys)")))))
|
||||
(add-after 'set-load-paths-in-entry-point 'register-guix-extension
|
||||
(add-after 'unpack 'register-guix-extension
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((ext-path (string-append #$output "/share/guix/extensions")))
|
||||
(mkdir-p ext-path)
|
||||
@@ -1225,13 +1198,13 @@ transactions from C or Python.")
|
||||
automake
|
||||
|
||||
;; Guile libraries are needed here for cross-compilation.
|
||||
guile-3.0-latest
|
||||
guile-next
|
||||
guile-gnutls
|
||||
guile-json-4
|
||||
guix
|
||||
guix-data-service
|
||||
guix-build-coordinator
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots
|
||||
guile-pfds
|
||||
guile-prometheus
|
||||
@@ -1242,7 +1215,7 @@ transactions from C or Python.")
|
||||
guix
|
||||
guix-data-service
|
||||
guix-build-coordinator
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots
|
||||
guile-pfds
|
||||
guile-prometheus
|
||||
@@ -1525,7 +1498,7 @@ manage (install/update) them for you.")
|
||||
"--ignore=tests/trust/test_signature_verification.py"
|
||||
"-k" (string-join
|
||||
;; XXX: Issues salad: network access, can't detect Conda
|
||||
;; environment, assertion failed; review if they may be
|
||||
;; environemnt, assertion failed; review if they may be
|
||||
;; fixed.
|
||||
;;
|
||||
;; test_info_all: Fails due to parallel test interference.
|
||||
@@ -2160,8 +2133,8 @@ environments.")
|
||||
"153bgcjqw6jp0yl0vj0k67k9c8lw82vac6b0cnacrjrcb24lcpdq")))))))
|
||||
|
||||
(define-public guix-build-coordinator
|
||||
(let ((commit "a52e17ae733de601ef3d4aa72b88ff7ed02aceb7")
|
||||
(revision "138"))
|
||||
(let ((commit "bd3467e7b60f22089c4a3bf6d32caafbd03625f0")
|
||||
(revision "137"))
|
||||
(package
|
||||
(name "guix-build-coordinator")
|
||||
(version (git-version "0" revision commit))
|
||||
@@ -2172,7 +2145,7 @@ environments.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"164k3ygn69h0z6bbsqpk22psnn2b1lbpidmaixf3kaj6kfjvz7xw"))
|
||||
"0h9kxpijilrn9v2s8dy7sdifshri4fxvdgvxxacvvbw01fb3llmv"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -2211,7 +2184,7 @@ environments.")
|
||||
"guile-gnutls"
|
||||
#$@(if (target-hurd?)
|
||||
'()
|
||||
'("guile-fibers"
|
||||
'("guile-fibers-next"
|
||||
"guile-knots")))))
|
||||
(wrap-program file
|
||||
`("PATH" ":" prefix
|
||||
@@ -2255,12 +2228,12 @@ environments.")
|
||||
guile-gcrypt
|
||||
guix
|
||||
guile-prometheus
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots
|
||||
guile-lib
|
||||
guile-3.0-latest))
|
||||
guile-next))
|
||||
(inputs
|
||||
(list guile-3.0-latest
|
||||
(list guile-next
|
||||
sqlite-next
|
||||
bash-minimal
|
||||
(libc-utf8-locales-for-target)
|
||||
@@ -2275,7 +2248,7 @@ environments.")
|
||||
guile-sqlite3
|
||||
guix
|
||||
guile-gnutls
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots))
|
||||
(home-page "https://git.cbaines.net/guix/build-coordinator/")
|
||||
(synopsis "Tool to help build derivations")
|
||||
@@ -2311,9 +2284,9 @@ outputs of those builds.")
|
||||
guix
|
||||
guile-prometheus
|
||||
guile-lib
|
||||
guile-3.0-latest))
|
||||
guile-next))
|
||||
(inputs
|
||||
(list guile-3.0-latest
|
||||
(list guile-next
|
||||
guix
|
||||
guile-prometheus
|
||||
guile-gcrypt
|
||||
@@ -2415,8 +2388,8 @@ in an isolated environment, in separate namespaces.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public nar-herder
|
||||
(let ((commit "44ca801e2352b64e19921c72177b35b2e49a7a09")
|
||||
(revision "53"))
|
||||
(let ((commit "cc1e9052785de0a08b05f85a7c7c400d95e339e7")
|
||||
(revision "52"))
|
||||
(package
|
||||
(name "nar-herder")
|
||||
(version (git-version "0" revision commit))
|
||||
@@ -2427,7 +2400,7 @@ in an isolated environment, in separate namespaces.")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"15sc9rgna1fxsns1q9q1xlrqfqc4r5lcmmddw0af2lhll75kj7v2"))
|
||||
"0qsyvmxr5kkayvvda8f5lmamz098vcjrfgpbwd5519fcw8xbnk8q"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -2464,7 +2437,7 @@ in an isolated environment, in separate namespaces.")
|
||||
"guile-prometheus"
|
||||
"guile-sqlite3"
|
||||
"guile-gnutls"
|
||||
"guile-fibers"
|
||||
"guile-fibers-next"
|
||||
"guile-knots")))
|
||||
(wrap-program file
|
||||
`("GUILE_LOAD_PATH" ":" prefix
|
||||
@@ -2494,12 +2467,10 @@ in an isolated environment, in separate namespaces.")
|
||||
|
||||
;; Guile libraries are needed here for cross-compilation.
|
||||
guile-next
|
||||
guile-3.0-latest
|
||||
guile-aws
|
||||
guile-json-4
|
||||
guile-gcrypt
|
||||
guix
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots
|
||||
guile-prometheus
|
||||
guile-lib
|
||||
@@ -2508,13 +2479,12 @@ in an isolated environment, in separate namespaces.")
|
||||
guile-sqlite3))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
guile-3.0-latest))
|
||||
guile-next))
|
||||
(propagated-inputs
|
||||
(list guile-aws
|
||||
guile-json-4
|
||||
(list guile-json-4
|
||||
guile-gcrypt
|
||||
guix
|
||||
guile-fibers
|
||||
guile-fibers-next
|
||||
guile-knots
|
||||
guile-prometheus
|
||||
guile-lib
|
||||
@@ -2772,8 +2742,6 @@ cp -r /tmp/locale/*/en_US.*")))
|
||||
(propagated-inputs (list glib-networking
|
||||
gnupg
|
||||
gsettings-desktop-schemas
|
||||
;; Required for flatpak-validate-icon SVG validation.
|
||||
(librsvg-for-system)
|
||||
;; The following are listed in Requires.private of
|
||||
;; `flatpak.pc'.
|
||||
curl
|
||||
|
||||
@@ -254,7 +254,7 @@ when jobs finish.")
|
||||
(inputs
|
||||
(append
|
||||
(list freeipmi
|
||||
`(,hwloc "lib")
|
||||
`(,hwloc-2 "lib")
|
||||
json-c
|
||||
linux-pam)
|
||||
(if (supported-package? openpmix-4)
|
||||
|
||||
+39
-87
@@ -39,7 +39,6 @@
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (ice-9 match))
|
||||
@@ -324,7 +323,7 @@ Pascal programs.")
|
||||
(define-public lazarus
|
||||
(package
|
||||
(name "lazarus")
|
||||
(version "4.6")
|
||||
(version "2.2.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -337,95 +336,48 @@ Pascal programs.")
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mkimvd5hiwlsxpjwqnhd7lwb0x2icnf9ks09wza7j5xaq7xjswy"))))
|
||||
"0hpk6fxmy1h1q0df41jg1vnp8g8vynrg5v5ad43lv229nizfs3wj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;No tests exist
|
||||
#:make-flags #~(list (string-append "INSTALL_PREFIX="
|
||||
#$output)
|
||||
"LCL_PLATFORM=qt6")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
;; lcl/interfaces/qt6/cbindings/ ships the C++ source of
|
||||
;; libQt6Pas -- the Qt6 C-ABI bridge that LCL's qt6
|
||||
;; widgetset calls into. Build it with qmake6 and stage
|
||||
;; the library so the IDE finds it at runtime.
|
||||
(add-before 'build 'build-qt6pas
|
||||
(lambda _
|
||||
(with-directory-excursion "lcl/interfaces/qt6/cbindings"
|
||||
(invoke "qmake6" "Qt6Pas.pro"
|
||||
(string-append "PREFIX=" #$output))
|
||||
(invoke "make" "-j"
|
||||
(number->string (parallel-job-count))))))
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs make-flags #:allow-other-keys)
|
||||
(let* ((qt6pas-build
|
||||
(string-append (getcwd)
|
||||
"/lcl/interfaces/qt6/cbindings"))
|
||||
(qt6pas-runtime
|
||||
(string-append #$output "/lib"))
|
||||
(input-libs
|
||||
(map (lambda (x)
|
||||
(string-append (assoc-ref inputs x) "/lib"))
|
||||
'("qtbase" "libx11")))
|
||||
;; Link against the build tree so the linker
|
||||
;; resolves libQt6Pas now; bake the final
|
||||
;; $out/lib into RUNPATH so the installed
|
||||
;; binary finds it at runtime.
|
||||
(fpc-args
|
||||
(append (map (lambda (d)
|
||||
(string-append "-Fl" d))
|
||||
(cons qt6pas-build input-libs))
|
||||
(map (lambda (d)
|
||||
(string-append "-k-rpath=" d))
|
||||
(cons qt6pas-runtime input-libs)))))
|
||||
(setenv "LAZARUS_LIBPATHS"
|
||||
(string-join fpc-args " "))
|
||||
(setenv "MAKEFLAGS"
|
||||
(string-append "LHELP_OPT="
|
||||
(string-join fpc-args "\\ "))))
|
||||
(apply invoke "make" "bigide" make-flags)))
|
||||
(add-after 'install 'wrap-qt
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Qt6 apps load their platform plugins
|
||||
;; (libqxcb.so, libqwayland.so, ...) from
|
||||
;; QT_PLUGIN_PATH; each qt input has its plugins
|
||||
;; under lib/qt6/plugins/. Wrap lazarus-ide so the
|
||||
;; wayland/xcb platform plugins are found at runtime.
|
||||
(let ((plugin-path
|
||||
(string-join
|
||||
(map (lambda (i)
|
||||
(string-append (assoc-ref inputs i)
|
||||
"/lib/qt6/plugins"))
|
||||
'("qtbase" "qtsvg" "qtwayland"))
|
||||
":")))
|
||||
(for-each
|
||||
(lambda (prog)
|
||||
(wrap-program (string-append #$output "/bin/" prog)
|
||||
`("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
|
||||
'("lazarus-ide" "startlazarus")))))
|
||||
(add-after 'install 'install-qt6pas
|
||||
(lambda _
|
||||
;; qmake's `make install' tries to copy libQt6Pas.so
|
||||
;; into Qt's install prefix (read-only store path);
|
||||
;; place it under $out/lib/ instead.
|
||||
(let ((src "lcl/interfaces/qt6/cbindings")
|
||||
(dst (string-append #$output "/lib")))
|
||||
(mkdir-p dst)
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(let ((sf (string-append src "/" f))
|
||||
(df (string-append dst "/" f)))
|
||||
(if (eq? 'symlink (stat:type (lstat sf)))
|
||||
(symlink (readlink sf) df)
|
||||
(copy-file sf df))))
|
||||
'("libQt6Pas.so"
|
||||
"libQt6Pas.so.6"
|
||||
"libQt6Pas.so.6.2"
|
||||
"libQt6Pas.so.6.2.10"))))))))
|
||||
(native-inputs (list fpc pkg-config qtbase qttools))
|
||||
(inputs (list qtbase qtsvg qtwayland libx11))
|
||||
#$output))
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((libdirs (map (lambda (x)
|
||||
(assoc-ref inputs x))
|
||||
'("glib" "gdk-pixbuf"
|
||||
"gtk+"
|
||||
"libx11"
|
||||
"libx11"
|
||||
"pango"
|
||||
"cairo"
|
||||
"at-spi2-core")))
|
||||
(libs (append (map (lambda (name)
|
||||
(string-append "-Fl"
|
||||
name
|
||||
"/lib"))
|
||||
libdirs)
|
||||
(map (lambda (name)
|
||||
(string-append
|
||||
"-k-rpath=" name
|
||||
"/lib")) libdirs))))
|
||||
(setenv "LAZARUS_LIBPATHS"
|
||||
(string-join libs " "))
|
||||
(setenv "MAKEFLAGS"
|
||||
(string-append "LHELP_OPT="
|
||||
(string-join libs "\\ "))))
|
||||
(invoke "make" "bigide"))))))
|
||||
(native-inputs (list fpc pkg-config))
|
||||
(inputs (list glib
|
||||
gdk-pixbuf
|
||||
gtk+-2
|
||||
libx11
|
||||
pango
|
||||
cairo
|
||||
at-spi2-core))
|
||||
(synopsis "Integrated development environment for Pascal")
|
||||
(description "This package provides an integrated development environment
|
||||
for Pascal.")
|
||||
|
||||
@@ -1798,7 +1798,7 @@ is the community-enhanced, \"jumbo\" version of John the Ripper.")
|
||||
(home-page "https://github.com/hashcat/maskprocessor")
|
||||
(synopsis "High-Performance word generator")
|
||||
(description "Maskprocessor is a high-performance word generator with a
|
||||
per-position configurable charset.")
|
||||
per-position configureable charset.")
|
||||
(license (list license:expat))))
|
||||
|
||||
(define-public fpm2
|
||||
|
||||
@@ -1,128 +0,0 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-04-13
|
||||
License: ASL2.0
|
||||
|
||||
Make V8 an optional dependency in codex-code-mode.
|
||||
|
||||
The V8 engine is only needed for actually executing JavaScript in the
|
||||
code-mode sandbox. The description helpers, tool name constants, and
|
||||
data types do not require V8. Gate the runtime and service modules
|
||||
behind a "v8-runtime" feature so that consumers like codex-acp that
|
||||
never use code-mode can avoid the V8 build dependency.
|
||||
|
||||
--- a/codex-rs/code-mode/Cargo.toml 2026-04-13 16:14:49.459504037 +0000
|
||||
+++ codex-rs/code-mode/Cargo.toml 2026-04-13 16:14:49.466438318 +0000
|
||||
@@ -12,6 +12,10 @@
|
||||
[lints]
|
||||
workspace = true
|
||||
|
||||
+[features]
|
||||
+default = ["v8-runtime"]
|
||||
+v8-runtime = ["dep:v8"]
|
||||
+
|
||||
[dependencies]
|
||||
async-trait = { workspace = true }
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
@@ -19,7 +23,7 @@
|
||||
tokio = { workspace = true, features = ["macros", "rt", "sync", "time"] }
|
||||
tokio-util = { workspace = true, features = ["rt"] }
|
||||
tracing = { workspace = true }
|
||||
-v8 = { workspace = true }
|
||||
+v8 = { workspace = true, optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
pretty_assertions = { workspace = true }
|
||||
--- a/codex-rs/code-mode/src/lib.rs 2026-04-13 16:14:49.461337956 +0000
|
||||
+++ codex-rs/code-mode/src/lib.rs 2026-04-13 16:14:49.470869556 +0000
|
||||
@@ -1,6 +1,8 @@
|
||||
mod description;
|
||||
mod response;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
mod runtime;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
mod service;
|
||||
|
||||
pub use description::CODE_MODE_PRAGMA_PREFIX;
|
||||
@@ -16,15 +18,82 @@
|
||||
pub use description::render_json_schema_to_typescript;
|
||||
pub use response::FunctionCallOutputContentItem;
|
||||
pub use response::ImageDetail;
|
||||
+
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::DEFAULT_EXEC_YIELD_TIME_MS;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::DEFAULT_MAX_OUTPUT_TOKENS_PER_EXEC_CALL;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::DEFAULT_WAIT_YIELD_TIME_MS;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::ExecuteRequest;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::RuntimeResponse;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use runtime::WaitRequest;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use service::CodeModeService;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use service::CodeModeTurnHost;
|
||||
+#[cfg(feature = "v8-runtime")]
|
||||
pub use service::CodeModeTurnWorker;
|
||||
|
||||
+// Stub types when V8 is not available.
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub const DEFAULT_EXEC_YIELD_TIME_MS: u64 = 10_000;
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub const DEFAULT_MAX_OUTPUT_TOKENS_PER_EXEC_CALL: usize = 10_000;
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub const DEFAULT_WAIT_YIELD_TIME_MS: u64 = 10_000;
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub struct ExecuteRequest {
|
||||
+ pub tool_call_id: String,
|
||||
+ pub enabled_tools: Vec<ToolDefinition>,
|
||||
+ pub source: String,
|
||||
+ pub stored_values: std::collections::HashMap<String, serde_json::Value>,
|
||||
+ pub yield_time_ms: Option<u64>,
|
||||
+ pub max_output_tokens: Option<usize>,
|
||||
+}
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+#[derive(Clone, Debug)]
|
||||
+pub struct WaitRequest {
|
||||
+ pub cell_id: String,
|
||||
+ pub yield_time_ms: u64,
|
||||
+ pub terminate: bool,
|
||||
+}
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+#[derive(Debug, PartialEq)]
|
||||
+pub enum RuntimeResponse {
|
||||
+ Yielded { cell_id: String, content_items: Vec<FunctionCallOutputContentItem> },
|
||||
+ Terminated { cell_id: String, content_items: Vec<FunctionCallOutputContentItem> },
|
||||
+ Result { cell_id: String, content_items: Vec<FunctionCallOutputContentItem>, stored_values: std::collections::HashMap<String, serde_json::Value>, error_text: Option<String> },
|
||||
+}
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+#[async_trait::async_trait]
|
||||
+pub trait CodeModeTurnHost: Send + Sync {
|
||||
+ async fn invoke_tool(&self, tool_name: String, input: Option<serde_json::Value>, cancellation_token: tokio_util::sync::CancellationToken) -> Result<serde_json::Value, String>;
|
||||
+ async fn notify(&self, call_id: String, cell_id: String, text: String) -> Result<(), String>;
|
||||
+}
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub struct CodeModeService;
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+impl CodeModeService {
|
||||
+ pub fn new() -> Self { Self }
|
||||
+ pub async fn stored_values(&self) -> std::collections::HashMap<String, serde_json::Value> { Default::default() }
|
||||
+ pub async fn replace_stored_values(&self, _values: std::collections::HashMap<String, serde_json::Value>) {}
|
||||
+ pub async fn execute(&self, _request: ExecuteRequest) -> Result<RuntimeResponse, String> { Err("code-mode requires v8-runtime feature".into()) }
|
||||
+ pub async fn wait(&self, _request: WaitRequest) -> Result<RuntimeResponse, String> { Err("code-mode requires v8-runtime feature".into()) }
|
||||
+ pub fn start_turn_worker(&self, _host: std::sync::Arc<dyn CodeModeTurnHost>) -> CodeModeTurnWorker { CodeModeTurnWorker }
|
||||
+}
|
||||
+
|
||||
+#[cfg(not(feature = "v8-runtime"))]
|
||||
+pub struct CodeModeTurnWorker;
|
||||
+
|
||||
pub const PUBLIC_TOOL_NAME: &str = "exec";
|
||||
pub const WAIT_TOOL_NAME: &str = "wait";
|
||||
@@ -1,20 +0,0 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-02-08
|
||||
License: ASL2.0
|
||||
|
||||
Remove [patch.crates-io] section.
|
||||
|
||||
This section points to git repositories which are unavailable in an
|
||||
offline build. The vendored tokio-tungstenite and tungstenite forks
|
||||
are provided as cargo-inputs instead.
|
||||
|
||||
--- a/Cargo.toml
|
||||
+++ b/Cargo.toml
|
||||
@@ -52,7 +52,3 @@
|
||||
let-underscore = "warn"
|
||||
rust-2018-idioms = "warn"
|
||||
unused = "warn"
|
||||
-
|
||||
-[patch.crates-io]
|
||||
-tokio-tungstenite = { git = "https://github.com/openai-oss-forks/tokio-tungstenite", rev = "132f5b39c862e3a970f731d709608b3e6276d5f6" }
|
||||
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
|
||||
@@ -0,0 +1,21 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-02-08
|
||||
License: ASL2.0
|
||||
|
||||
Remove [patch.crates-io] and [patch.'ssh://...'] sections.
|
||||
|
||||
These sections point to git repositories which are unavailable in an
|
||||
offline build. The vendored tokio-tungstenite and tungstenite forks
|
||||
are provided as cargo-inputs instead.
|
||||
|
||||
diff -u a/Cargo.toml b/Cargo.toml
|
||||
--- a/Cargo.toml
|
||||
+++ b/Cargo.toml
|
||||
@@ -47,8 +47,2 @@
|
||||
unused = "warn"
|
||||
-
|
||||
-[patch.crates-io]
|
||||
-tokio-tungstenite = { git = "https://github.com/JakkuSakura/tokio-tungstenite", branch = "proxy-support" }
|
||||
-
|
||||
-[patch.'ssh://git@github.com/JakkuSakura/tungstenite-rs.git']
|
||||
-tungstenite = { git = "https://github.com/JakkuSakura/tungstenite-rs", branch = "proxy-support" }
|
||||
@@ -0,0 +1,52 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-02-08
|
||||
License: ASL2.0
|
||||
|
||||
Replace Result::flatten() with and_then(|x| x).
|
||||
|
||||
Result::flatten() was stabilized in Rust 1.89.0 but the build
|
||||
toolchain only provides Rust 1.88.0. Use the equivalent
|
||||
.and_then(|x| x) form which works on all stable Rust versions.
|
||||
|
||||
diff -u a/src/local_spawner.rs b/src/local_spawner.rs
|
||||
--- a/src/local_spawner.rs
|
||||
+++ b/src/local_spawner.rs
|
||||
@@ -156,7 +156,7 @@
|
||||
});
|
||||
rx.recv()
|
||||
.map_err(|e| std::io::Error::other(e.to_string()))
|
||||
- .flatten()
|
||||
+ .and_then(|x| x)
|
||||
}
|
||||
|
||||
fn write(&self, path: &std::path::Path, contents: &[u8]) -> std::io::Result<()> {
|
||||
@@ -174,7 +174,7 @@
|
||||
});
|
||||
rx.recv()
|
||||
.map_err(|e| std::io::Error::other(e.to_string()))
|
||||
- .flatten()
|
||||
+ .and_then(|x| x)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -207,7 +207,7 @@
|
||||
let file = rx
|
||||
.await
|
||||
.map_err(|e| std::io::Error::other(e.to_string()))
|
||||
- .flatten()?;
|
||||
+ .and_then(|x| x)?;
|
||||
|
||||
Ok(Box::new(tokio::io::BufReader::new(Cursor::new(file.into_bytes()))) as _)
|
||||
})
|
||||
diff -u a/src/thread.rs b/src/thread.rs
|
||||
--- a/src/thread.rs
|
||||
+++ b/src/thread.rs
|
||||
@@ -1817,7 +1817,7 @@
|
||||
let mut new_custom_prompts = load_custom_prompts
|
||||
.await
|
||||
.map_err(|_| Error::internal_error())
|
||||
- .flatten()
|
||||
+ .and_then(|x| x)
|
||||
.inspect_err(|e| error!("Failed to load custom prompts {e:?}"))
|
||||
.unwrap_or_default();
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
From 4617d2682738aeaece613ea61390dd47447c2d9f Mon Sep 17 00:00:00 2001
|
||||
From: Potato Hatsue <1793913507@qq.com>
|
||||
Date: Fri, 12 Sep 2025 06:07:02 -0700
|
||||
Subject: [PATCH] Allow QuickCheck 2.15.0
|
||||
|
||||
---
|
||||
Test/Chell/QuickCheck.hs | 8 ++++++++
|
||||
chell-quickcheck.cabal | 2 +-
|
||||
2 files changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Test/Chell/QuickCheck.hs b/Test/Chell/QuickCheck.hs
|
||||
index ea1c488..3227b8e 100644
|
||||
--- a/Test/Chell/QuickCheck.hs
|
||||
+++ b/Test/Chell/QuickCheck.hs
|
||||
@@ -1,3 +1,4 @@
|
||||
+{-# LANGUAGE CPP #-}
|
||||
module Test.Chell.QuickCheck (property) where
|
||||
|
||||
import Test.Chell qualified as Chell
|
||||
@@ -30,7 +31,12 @@ property name prop = Chell.test name $ \opts -> Text.withNullTerminal $ \term ->
|
||||
{ State.terminal = term,
|
||||
State.maxSuccessTests = QuickCheck.maxSuccess args,
|
||||
State.maxDiscardedRatio = QuickCheck.maxDiscardRatio args,
|
||||
+#if MIN_VERSION_QuickCheck(2,15,0)
|
||||
+ State.replayStartSize = Nothing,
|
||||
+ State.maxTestSize = QuickCheck.maxSize args,
|
||||
+#else
|
||||
State.computeSize = computeSize (QuickCheck.maxSize args) (QuickCheck.maxSuccess args),
|
||||
+#endif
|
||||
State.numSuccessTests = 0,
|
||||
State.numDiscardedTests = 0,
|
||||
State.classes = mempty,
|
||||
@@ -59,6 +65,7 @@ property name prop = Chell.test name $ \opts -> Text.withNullTerminal $ \term ->
|
||||
Test.GaveUp {} -> Chell.TestAborted notes output
|
||||
Test.NoExpectedFailure {} -> Chell.TestFailed notes [failure]
|
||||
|
||||
+#if !MIN_VERSION_QuickCheck(2,15,0)
|
||||
-- copied from quickcheck-2.4.1.1/src/Test/QuickCheck/Test.hs
|
||||
computeSize :: Int -> Int -> Int -> Int -> Int
|
||||
computeSize maxSize maxSuccess n d
|
||||
@@ -79,3 +86,4 @@ computeSize maxSize maxSuccess n d
|
||||
|
||||
roundTo :: Int -> Int -> Int
|
||||
roundTo n m = (n `div` m) * m
|
||||
+#endif
|
||||
diff --git a/chell-quickcheck.cabal b/chell-quickcheck.cabal
|
||||
index e854412..1f3a1d9 100644
|
||||
--- a/chell-quickcheck.cabal
|
||||
+++ b/chell-quickcheck.cabal
|
||||
@@ -34,7 +34,7 @@ library
|
||||
build-depends:
|
||||
, base ^>= 4.16 || ^>= 4.17 || ^>= 4.18 || ^>= 4.19 || ^>= 4.20 || ^>= 4.21
|
||||
, chell ^>= 0.5
|
||||
- , QuickCheck ^>= 2.14.2
|
||||
+ , QuickCheck ^>= 2.14.2 || ^>= 2.15.0
|
||||
, random ^>= 1.2.1 || ^>= 1.3.0
|
||||
|
||||
exposed-modules:
|
||||
@@ -4,7 +4,7 @@
|
||||
# number of sections)
|
||||
'$(TEST_HC)' $(TEST_HC_OPTS) Generate.hs
|
||||
./Generate > ManySections.s
|
||||
+ echo '.section .note.GNU-stack,"",@progbits' > ManySections.s
|
||||
+ echo '.section .note.GNU-stack,"",@progbits' >> ManySections.s
|
||||
echo 'main = putStrLn "Running main..."' > Main.hs
|
||||
'$(TEST_HC)' $(TEST_HC_OPTS) -c ManySections.s
|
||||
'$(TEST_HC)' $(TEST_HC_OPTS) --make -O Main.hs ManySections.o
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
On GNU/Hurd, 'PATH_MAX' is undefined. Provide a reasonable default value.
|
||||
Adapted from <https://github.com/libgit2/libgit2/pull/7100>.
|
||||
|
||||
diff --git a/tests/clar/clar.h b/tests/clar/clar.h
|
||||
index ca72292ae91..98e2b14e880 100644
|
||||
--- a/t/unit-tests/clar/clar.h
|
||||
+++ b/t/unit-tests/clar/clar.h
|
||||
@@ -14,6 +14,8 @@
|
||||
# define CLAR_MAX_PATH 4096
|
||||
#elif defined(_WIN32)
|
||||
# define CLAR_MAX_PATH MAX_PATH
|
||||
+#elif !defined(PATH_MAX) /* GNU/Hurd */
|
||||
+# define CLAR_MAX_PATH 4096
|
||||
#else
|
||||
# define CLAR_MAX_PATH PATH_MAX
|
||||
#endif
|
||||
@@ -0,0 +1,54 @@
|
||||
From 093316a897a2eb4972a7a3a5888f40975d03f6bf Mon Sep 17 00:00:00 2001
|
||||
From: Brice Goglin <Brice.Goglin@inria.fr>
|
||||
Date: Tue, 5 Apr 2022 17:39:50 +0200
|
||||
Subject: [PATCH] linux: (partial) fix the discovery of hugepages on btrfs
|
||||
fsroot
|
||||
|
||||
btrfs always returns 1 in directory stat.st_nlink.
|
||||
It breaks make check in tests/linux/ because the hugepages discovery
|
||||
uses st_nlink to allocate the memory page_types array.
|
||||
|
||||
Always allocate at least 3 page_types slots
|
||||
(enough for all known cases, 1 for normal, 2 for huge pages)
|
||||
|
||||
(partially cherry-picked from commit 7f351cec9bfe54a031f35ad16c9cfb99784d76dc)
|
||||
|
||||
We don't reallocate later if needed as in 2.x commit 7f351cec9bfe54a031f35ad16c9cfb99784d76dc
|
||||
because v1.11 doesn't deserve a complete fix. Just commit the minimal change
|
||||
so that tests/linux/2i386-2t-hugepagesizecount with HWLOC_PAGESIZE_DEBUG=4096
|
||||
doesn't crash in btrfs anymore (test-topology.sh fails during make check if /tmp is in btrfs).
|
||||
|
||||
Thanks to Philippe Swartvagher for the report.
|
||||
|
||||
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
|
||||
---
|
||||
src/topology-linux.c | 11 +++++++++--
|
||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/topology-linux.c b/src/topology-linux.c
|
||||
index 58c275fea..269eca7f5 100644
|
||||
--- a/src/topology-linux.c
|
||||
+++ b/src/topology-linux.c
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright © 2009 CNRS
|
||||
- * Copyright © 2009-2019 Inria. All rights reserved.
|
||||
+ * Copyright © 2009-2022 Inria. All rights reserved.
|
||||
* Copyright © 2009-2013, 2015 Université Bordeaux
|
||||
* Copyright © 2009-2014 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright © 2015 Intel, Inc. All rights reserved.
|
||||
@@ -2329,7 +2329,14 @@ hwloc_get_procfs_meminfo_info(struct hwloc_topology *topology,
|
||||
|
||||
err = hwloc_stat("/sys/kernel/mm/hugepages", &st, data->root_fd);
|
||||
if (!err) {
|
||||
- types = 1 + st.st_nlink-2;
|
||||
+ types = 1 /* normal non-huge size */ + st.st_nlink - 2 /* ignore . and .. */;
|
||||
+ if (types < 3)
|
||||
+ /* some buggy filesystems (e.g. btrfs when reading from fsroot)
|
||||
+ * return wrong st_nlink for directories (always 1 for btrfs).
|
||||
+ * use 3 as a sane default (default page + 2 huge sizes).
|
||||
+ * hwloc_parse_hugepages_info() will extend it if needed.
|
||||
+ */
|
||||
+ types = 3;
|
||||
has_sysfs_hugepages = 1;
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
To be remove when updating inetutils.
|
||||
See
|
||||
https://cgit.git.savannah.gnu.org/cgit/inetutils.git/commit/?id=556621adc3dcb62dbb28c54905cef15837947115
|
||||
https://codeberg.org/guix/guix/issues/7995
|
||||
|
||||
diff --git a/tests/libls.sh b/tests/libls.sh
|
||||
index 827020f2..9fdef8be 100755
|
||||
--- a/tests/libls.sh
|
||||
+++ b/tests/libls.sh
|
||||
@@ -91,7 +91,6 @@ REPLY_a1=`$LS -a1 $LSDIR`
|
||||
REPLY_A1=`$LS -A1 $LSDIR`
|
||||
|
||||
REPLY_C=`$LS -C $LSDIR`
|
||||
-REPLY_Cf=`$LS -Cf $LSDIR`
|
||||
REPLY_Cr=`$LS -Cr $LSDIR`
|
||||
REPLY_Ct=`$LS -Ct $LSDIR`
|
||||
REPLY_x=`$LS -x $LSDIR`
|
||||
@@ -130,9 +129,6 @@ test `echo "$diff" | $GREP -c -v '^[.]\{1,2\}$'` -eq 0 ||
|
||||
fi
|
||||
}
|
||||
|
||||
-test x"$REPLY_C" != x"$REPLY_Cf" ||
|
||||
- { errno=1; echo >&2 'Failed to disable sorting with "-f".'; }
|
||||
-
|
||||
test x"$REPLY_C" != x"$REPLY_Cr" ||
|
||||
{ errno=1; echo >&2 'Failed to reverse sorting with "-r".'; }
|
||||
@@ -1,260 +0,0 @@
|
||||
From d8702527f4f1f67f765330f5018bfcb182946c45 Mon Sep 17 00:00:00 2001
|
||||
From: Henri Sivonen <hsivonen@hsivonen.fi>
|
||||
Date: Tue, 21 Apr 2026 07:09:20 +0000
|
||||
Subject: [PATCH] Bug 2033279 - Make --enable-rust-simd work with Rust 1.95.
|
||||
r=firefox-build-system-reviewers,supply-chain-reviewers,ahochheiden
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D295287
|
||||
---
|
||||
.cargo/config.toml.in | 5 ++
|
||||
Cargo.lock | 4 +-
|
||||
Cargo.toml | 2 +
|
||||
supply-chain/audits.toml | 6 ++
|
||||
supply-chain/config.toml | 4 ++
|
||||
.../rust/encoding_rs/.cargo-checksum.json | 2 +-
|
||||
.../rust/encoding_rs/.cargo_vcs_info.json | 6 --
|
||||
third_party/rust/encoding_rs/Cargo.toml | 60 ++++++++++---------
|
||||
third_party/rust/encoding_rs/Cargo.toml.orig | 45 --------------
|
||||
.../rust/encoding_rs/src/x_user_defined.rs | 2 +
|
||||
10 files changed, 54 insertions(+), 82 deletions(-)
|
||||
delete mode 100644 third_party/rust/encoding_rs/.cargo_vcs_info.json
|
||||
delete mode 100644 third_party/rust/encoding_rs/Cargo.toml.orig
|
||||
|
||||
diff --git a/.cargo/config.toml.in b/.cargo/config.toml.in
|
||||
index 8013ae5435dab..cabdee463415f 100644
|
||||
--- a/.cargo/config.toml.in
|
||||
+++ b/.cargo/config.toml.in
|
||||
@@ -55,6 +55,11 @@ git = "https://github.com/hsivonen/any_all_workaround"
|
||||
rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80"
|
||||
replace-with = "vendored-sources"
|
||||
|
||||
+[source."git+https://github.com/hsivonen/encoding_rs?rev=1236d1bc423e6ba35a06485f74a6304db2d703b5"]
|
||||
+git = "https://github.com/hsivonen/encoding_rs"
|
||||
+rev = "1236d1bc423e6ba35a06485f74a6304db2d703b5"
|
||||
+replace-with = "vendored-sources"
|
||||
+
|
||||
[source."git+https://github.com/hsivonen/rust-harfbuzz?rev=9d58a23a98772a197291d04af93f7041b7093d95"]
|
||||
git = "https://github.com/hsivonen/rust-harfbuzz"
|
||||
rev = "9d58a23a98772a197291d04af93f7041b7093d95"
|
||||
diff --git a/Cargo.lock b/Cargo.lock
|
||||
index fea2f95fbb438..63b1f818d7971 100644
|
||||
--- a/Cargo.lock
|
||||
+++ b/Cargo.lock
|
||||
@@ -1914,11 +1914,11 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "encoding_rs"
|
||||
version = "0.8.35"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
|
||||
+source = "git+https://github.com/hsivonen/encoding_rs?rev=1236d1bc423e6ba35a06485f74a6304db2d703b5#1236d1bc423e6ba35a06485f74a6304db2d703b5"
|
||||
dependencies = [
|
||||
"any_all_workaround",
|
||||
"cfg-if",
|
||||
+ "rustversion",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
diff --git a/Cargo.toml b/Cargo.toml
|
||||
index 49c695809f302..2648c32ae57e8 100644
|
||||
--- a/Cargo.toml
|
||||
+++ b/Cargo.toml
|
||||
@@ -287,6 +287,8 @@ harfbuzz-sys = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a
|
||||
harfbuzz = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a23a98772a197291d04af93f7041b7093d95" }
|
||||
# Also vendor `harfbuzz-traits` to keep cargo-vendor happy.
|
||||
harfbuzz-traits = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a23a98772a197291d04af93f7041b7093d95" }
|
||||
+# Make --enable-rust-simd compatible with Rust 1.95
|
||||
+encoding_rs = { git = "https://github.com/hsivonen/encoding_rs", rev = "1236d1bc423e6ba35a06485f74a6304db2d703b5" }
|
||||
|
||||
# objc 0.2.7 + fa7ca43b862861dd1cd000d7ad01e6e0266cda13
|
||||
objc = { git = "https://github.com/glandium/rust-objc", rev = "4de89f5aa9851ceca4d40e7ac1e2759410c04324" }
|
||||
diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml
|
||||
index 85b4037e03bdb..f4567ea6b6f94 100644
|
||||
--- a/supply-chain/audits.toml
|
||||
+++ b/supply-chain/audits.toml
|
||||
@@ -2385,6 +2385,12 @@ who = "Mike Hommey <mh+mozilla@glandium.org>"
|
||||
criteria = "safe-to-deploy"
|
||||
delta = "0.8.31 -> 0.8.32"
|
||||
|
||||
+[[audits.encoding_rs]]
|
||||
+who = "Henri Sivonen <hsivonen@hsivonen.fi>"
|
||||
+criteria = "safe-to-deploy"
|
||||
+delta = "0.8.35 -> 0.8.35@git:1236d1bc423e6ba35a06485f74a6304db2d703b5"
|
||||
+importable = false
|
||||
+
|
||||
[[audits.enum-map]]
|
||||
who = "Kershaw Chang <kershaw@mozilla.com>"
|
||||
criteria = "safe-to-deploy"
|
||||
diff --git a/supply-chain/config.toml b/supply-chain/config.toml
|
||||
index 4cfd83dc2d608..15deefbec0574 100644
|
||||
--- a/supply-chain/config.toml
|
||||
+++ b/supply-chain/config.toml
|
||||
@@ -39,6 +39,10 @@ notes = "This is the upstream code not yet released"
|
||||
audit-as-crates-io = true
|
||||
notes = "This is upstream plus a warning fix from bug 1823866."
|
||||
|
||||
+[policy.encoding_rs]
|
||||
+audit-as-crates-io = true
|
||||
+notes = "This is upstream plus a build fix for bug 2033279."
|
||||
+
|
||||
[policy.firefox-on-glean]
|
||||
audit-as-crates-io = false
|
||||
notes = "The crates.io version of this is just a placeholder to allow public crates to depend on firefox-on-glean."
|
||||
diff --git a/third_party/rust/encoding_rs/.cargo_vcs_info.json b/third_party/rust/encoding_rs/.cargo_vcs_info.json
|
||||
deleted file mode 100644
|
||||
index 6e5d699759e43..0000000000000
|
||||
--- a/third_party/rust/encoding_rs/.cargo_vcs_info.json
|
||||
+++ /dev/null
|
||||
@@ -1,6 +0,0 @@
|
||||
-{
|
||||
- "git": {
|
||||
- "sha1": "2fa58aecf537cc76ff52c0eb3d5e9f8fda466844"
|
||||
- },
|
||||
- "path_in_vcs": ""
|
||||
-}
|
||||
\ No newline at end of file
|
||||
diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml
|
||||
index 2adac351c2edf..0239315bab180 100644
|
||||
--- a/third_party/rust/encoding_rs/Cargo.toml
|
||||
+++ b/third_party/rust/encoding_rs/Cargo.toml
|
||||
@@ -16,6 +16,7 @@ name = "encoding_rs"
|
||||
version = "0.8.35"
|
||||
authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
|
||||
build = false
|
||||
+autolib = false
|
||||
autobins = false
|
||||
autoexamples = false
|
||||
autotests = false
|
||||
@@ -39,33 +40,6 @@ categories = [
|
||||
license = "(Apache-2.0 OR MIT) AND BSD-3-Clause"
|
||||
repository = "https://github.com/hsivonen/encoding_rs"
|
||||
|
||||
-[profile.release]
|
||||
-lto = true
|
||||
-
|
||||
-[lib]
|
||||
-name = "encoding_rs"
|
||||
-path = "src/lib.rs"
|
||||
-
|
||||
-[dependencies.any_all_workaround]
|
||||
-version = "0.1.0"
|
||||
-optional = true
|
||||
-
|
||||
-[dependencies.cfg-if]
|
||||
-version = "1.0"
|
||||
-
|
||||
-[dependencies.serde]
|
||||
-version = "1.0"
|
||||
-optional = true
|
||||
-
|
||||
-[dev-dependencies.bincode]
|
||||
-version = "1.0"
|
||||
-
|
||||
-[dev-dependencies.serde_derive]
|
||||
-version = "1.0"
|
||||
-
|
||||
-[dev-dependencies.serde_json]
|
||||
-version = "1.0"
|
||||
-
|
||||
[features]
|
||||
alloc = []
|
||||
default = ["alloc"]
|
||||
@@ -84,4 +58,34 @@ fast-legacy-encode = [
|
||||
less-slow-big5-hanzi-encode = []
|
||||
less-slow-gb-hanzi-encode = []
|
||||
less-slow-kanji-encode = []
|
||||
-simd-accel = ["any_all_workaround"]
|
||||
+simd-accel = [
|
||||
+ "any_all_workaround",
|
||||
+ "rustversion",
|
||||
+]
|
||||
+
|
||||
+[lib]
|
||||
+name = "encoding_rs"
|
||||
+path = "src/lib.rs"
|
||||
+
|
||||
+[dependencies]
|
||||
+cfg-if = "1.0"
|
||||
+
|
||||
+[dependencies.any_all_workaround]
|
||||
+version = "0.1.0"
|
||||
+optional = true
|
||||
+
|
||||
+[dependencies.rustversion]
|
||||
+version = "1.0.19"
|
||||
+optional = true
|
||||
+
|
||||
+[dependencies.serde]
|
||||
+version = "1.0"
|
||||
+optional = true
|
||||
+
|
||||
+[dev-dependencies]
|
||||
+bincode = "1.0"
|
||||
+serde_derive = "1.0"
|
||||
+serde_json = "1.0"
|
||||
+
|
||||
+[profile.release]
|
||||
+lto = true
|
||||
diff --git a/third_party/rust/encoding_rs/Cargo.toml.orig b/third_party/rust/encoding_rs/Cargo.toml.orig
|
||||
deleted file mode 100644
|
||||
index 0f7639d5f879b..0000000000000
|
||||
--- a/third_party/rust/encoding_rs/Cargo.toml.orig
|
||||
+++ /dev/null
|
||||
@@ -1,45 +0,0 @@
|
||||
-[package]
|
||||
-name = "encoding_rs"
|
||||
-description = "A Gecko-oriented implementation of the Encoding Standard"
|
||||
-version = "0.8.35"
|
||||
-edition = '2018'
|
||||
-authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
|
||||
-license = "(Apache-2.0 OR MIT) AND BSD-3-Clause"
|
||||
-readme = "README.md"
|
||||
-documentation = "https://docs.rs/encoding_rs/"
|
||||
-homepage = "https://docs.rs/encoding_rs/"
|
||||
-repository = "https://github.com/hsivonen/encoding_rs"
|
||||
-keywords = ["encoding", "web", "unicode", "charset"]
|
||||
-categories = ["text-processing", "encoding", "web-programming", "internationalization"]
|
||||
-rust-version = "1.36"
|
||||
-
|
||||
-[features]
|
||||
-default = ["alloc"]
|
||||
-alloc = []
|
||||
-simd-accel = ["any_all_workaround"]
|
||||
-less-slow-kanji-encode = []
|
||||
-less-slow-big5-hanzi-encode = []
|
||||
-less-slow-gb-hanzi-encode = []
|
||||
-fast-hangul-encode = []
|
||||
-fast-hanja-encode = []
|
||||
-fast-kanji-encode = []
|
||||
-fast-gb-hanzi-encode = []
|
||||
-fast-big5-hanzi-encode = []
|
||||
-fast-legacy-encode = ["fast-hangul-encode",
|
||||
- "fast-hanja-encode",
|
||||
- "fast-kanji-encode",
|
||||
- "fast-gb-hanzi-encode",
|
||||
- "fast-big5-hanzi-encode"]
|
||||
-
|
||||
-[dependencies]
|
||||
-cfg-if = "1.0"
|
||||
-serde = { version = "1.0", optional = true }
|
||||
-any_all_workaround = { version = "0.1.0" , optional = true }
|
||||
-
|
||||
-[dev-dependencies]
|
||||
-serde_derive = "1.0"
|
||||
-bincode = "1.0"
|
||||
-serde_json = "1.0"
|
||||
-
|
||||
-[profile.release]
|
||||
-lto = true
|
||||
diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs
|
||||
index 7af7d5e3d69da..16f1a18d7f6ce 100644
|
||||
--- a/third_party/rust/encoding_rs/src/x_user_defined.rs
|
||||
+++ b/third_party/rust/encoding_rs/src/x_user_defined.rs
|
||||
@@ -16,7 +16,8 @@ cfg_if! {
|
||||
use simd_funcs::*;
|
||||
use core::simd::u16x8;
|
||||
use core::simd::cmp::SimdPartialOrd;
|
||||
+ #[rustversion::since(1.95)]
|
||||
use core::simd::Select;
|
||||
|
||||
#[inline(always)]
|
||||
fn shift_upper(unpacked: u16x8) -> u16x8 {
|
||||
@@ -1,14 +0,0 @@
|
||||
Upstream-status: https://github.com/open-eid/DigiDoc4-Client/pull/1398
|
||||
|
||||
diff --git a/client/Application.cpp b/client/Application.cpp
|
||||
index c979020..dac13d9 100644
|
||||
--- a/client/Application.cpp
|
||||
+++ b/client/Application.cpp
|
||||
@@ -307,6 +307,7 @@ Application::Application( int &argc, char **argv )
|
||||
{
|
||||
setApplicationName(QStringLiteral("qdigidoc4"));
|
||||
setApplicationVersion(QStringLiteral(VERSION_STR));
|
||||
+ setDesktopFileName("ee.ria.qdigidoc4");
|
||||
setOrganizationDomain(QStringLiteral("ria.ee"));
|
||||
setOrganizationName(QStringLiteral("RIA"));
|
||||
setWindowIcon(QIcon(QStringLiteral(":/images/Icon.svg")));
|
||||
@@ -1,20 +0,0 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-02-08
|
||||
License: ASL2.0
|
||||
Subject: Remove codex-core circular dev-dependencies.
|
||||
|
||||
codex-core has a dev-dependency on codex-arg0 which in turn depends on
|
||||
codex-core. This causes cargo package to fail when resolving from the
|
||||
vendor directory because codex-arg0 is not yet available at the time
|
||||
codex-core is packaged.
|
||||
|
||||
--- a/codex-rs/core/Cargo.toml
|
||||
+++ b/codex-rs/core/Cargo.toml
|
||||
@@ -144,7 +144,6 @@
|
||||
[dev-dependencies]
|
||||
assert_cmd = { workspace = true }
|
||||
assert_matches = { workspace = true }
|
||||
-codex-arg0 = { workspace = true }
|
||||
codex-otel = { workspace = true, features = [
|
||||
"disable-default-metrics-exporter",
|
||||
] }
|
||||
@@ -1,30 +0,0 @@
|
||||
Author: Danny Milosavljevic <dannym@friendly-machines.com>
|
||||
Date: 2026-02-08
|
||||
License: ASL2.0
|
||||
Subject: Remove [patch.crates-io] and [patch.'ssh://...'] sections.
|
||||
|
||||
The [patch] sections point to git repositories which are unavailable
|
||||
in an offline build. The vendored crossterm, ratatui,
|
||||
tokio-tungstenite and tungstenite forks are provided as cargo-inputs
|
||||
instead.
|
||||
|
||||
--- a/codex-rs/Cargo.toml
|
||||
+++ b/codex-rs/Cargo.toml
|
||||
@@ -423,17 +423,3 @@
|
||||
debug = 1 # Reduce debug symbol size
|
||||
inherits = "test"
|
||||
opt-level = 0
|
||||
-
|
||||
-[patch.crates-io]
|
||||
-# Uncomment to debug local changes.
|
||||
-# ratatui = { path = "../../ratatui" }
|
||||
-crossterm = { git = "https://github.com/nornagon/crossterm", branch = "nornagon/color-query" }
|
||||
-ratatui = { git = "https://github.com/nornagon/ratatui", branch = "nornagon-v0.29.0-patch" }
|
||||
-tokio-tungstenite = { git = "https://github.com/openai-oss-forks/tokio-tungstenite", rev = "132f5b39c862e3a970f731d709608b3e6276d5f6" }
|
||||
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
|
||||
-
|
||||
-# Uncomment to debug local changes.
|
||||
-# rmcp = { path = "../../rust-sdk/crates/rmcp" }
|
||||
-
|
||||
-[patch."ssh://git@github.com/openai-oss-forks/tungstenite-rs.git"]
|
||||
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user