Age | Commit message (Collapse) | Author |
|
* guix/build-system/minetest.scm: New module.
* guix/build/minetest-build-system.scm: Likewise.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'minetest-mod-build-system'.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
|
|
* guix/build-system/minify.scm (default-uglify-js): Update uglifyjs package used.
* guix/build/minify-build-system.scm (minify): Use updated uglifyjs command name.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
|
|
* guix/build/pack.scm (tar-base-options) [tar-supports-sort?]: Redirect error
output to void.
|
|
This reverts commit 17a102332a253f0e3b1f511fa7bda2094264a77c.
See <https://github.com/koverstreet/bcachefs/pull/277>.
|
|
This reinstate commit the reverted fed28a9632ba69225151757e44a5d70e9b0652a2,
now rebased on top of conflicting changes.
* guix/build/qt-utils.scm: Remove extraneous newlines.
(variables-for-wrapping): Add comments. Define a file type entry for each
variable definition, and use it to determine if we should look for directories
versus plain files.
<QTWEBENGINEPROCESS_PATH>: New environment variable.
(wrap-all-qt-programs): Remove trailing #t.
|
|
This partially reinstate the reverted
c5fd1b0bd362f8b8578a76a26a65ba5d00d48992.
* guix/build/qt-utils.scm (variables-for-wrapping)[collect-sub-dirs]:
Add 'selectors' parameter and honor it. Change caller to handle selectors.
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
|
Include only those inputs into XDG_DATA_DIRS having
some subdirectory of /share which is typically used by Qt.
* guix/build/qt-utils.scm (variables-for-wrapping): Take the
output directory as an argument for special handling. Check for
subdirectories of /share used by Qt before including inputs in
XDG_DATA_DIRS.
(wrap-qt-program*): Pass the output directory to variables-for-wrapping.
Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
|
|
* guix/build-system/qt.scm (qt-build)[qt-wrap-excluded-inputs]: New argument.
* guix/build/qt-utils.scm (%qt-wrap-excluded-inputs): New variable.
(wrap-qt-program*)[qt-wrap-excluded-inputs]: New argument. Filter excluded
inputs.
(wrap-qt-program)[qt-wrap-excluded-inputs]: New argument.
(wrap-all-qt-programs)[qt-wrap-excluded-inputs]: New argument.
Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
|
|
Prior to this change, wrappers did set the specified environment variables to
a fixed value, overwriting any user settings. This inhibited propagating
e.g. XDG_DATA_DIRS from a profile to the application.
Now user environment variables are prefixed (if the variable defines some
"binary" search path, e.g. QT_PLUGIN_PATH) or suffixed (if the variable
defines some config or data search path, e.g. XDG_DATA_DIRS). The code could
also allow to overwrite, anyhow currently no variable is defined like this.
* guix/build/qt-utils.scm (variables-for-wrapping): For each env-var to
be wrapped, specify whether it should prefix, suffix or overwrite the
user's variable.
|
|
Unify (guix qt-build-system wrap-all-programs) and
(guix qt-utils wrap-qt-program), so both behave the same.
The functions now reside in qt-utils to make them easily available for
packages not using the qt-build-system.
* guix/build/qt-build-system.scm (variables-for-wrapping, wrap-all-programs):
Move from here ...
* guix/build/qt-utils.scm (variables-for-wrapping, wrap-all-qt-programs):
... to here. Base the later on
(wrap-qt-program*): New function, carved out from old wrap-all-programs.
(wrap-qt-program): Base on wrap-qt-program*, change arguments in an
incompatible way.
* gnu/packages/bittorrent.scm (qbittorrent)[arguments]<phases>{wrap-qt}:
Adjust to new interface of wrap-qt-program.
* gnu/packages/finance.scm (electron-cash): Likewise.
* gnu/packages/geo.scm (qgis): Likewise.
* gnu/packages/password-utils.scm (qtpass): Likewise.
* gnu/packages/video.scm (openshot): Likewise.
* gnu/packages/web-browsers.scm (kristall): Likewise.
|
|
XDG_DATA_DIRS."
This reverts commit c5fd1b0bd362f8b8578a76a26a65ba5d00d48992. It will need to
be refactored on top of 2214b7b78d34a0e4d574b743dbeb8457356f6cff.
|
|
This reverts commit 06eb21856f9535ab62d0becc92b4146e0620654e. It will need to
be refactored to fit on top of 2214b7b78d34a0e4d574b743dbeb8457356f6cff.
|
|
This reverts commit fed28a9632ba69225151757e44a5d70e9b0652a2. It will need to
be refactored to fit on top of 2214b7b78d34a0e4d574b743dbeb8457356f6cff.
|
|
* guix/docker.scm (%tar-determinism-options): Move to a new module and rename
to `tar-base-options'. Adjust references accordingly.
* guix/build/pack.scm: New file.
* Makefile.am (MODULES): Register it.
* guix/scripts/pack.scm (self-contained-tarball/builder): Use it.
|
|
Fixes <https://bugs.gnu.org/49223>.
Reported by Domagoj Stolfa <ds815@gmx.com>.
* guix/build/download.scm (tls-wrap): Retry up to 5 times when
'handshake' throws a non-fatal error.
|
|
package.json records two hashes of package.tgz, which change for each
build, resulting in non-reproducible builds.
* guix/build/node-build-system.scm (repack): Add reproducibility options
to tar command.
|
|
Fixes <https://bugs.gnu.org/49102>.
Reported by Mathieu Othacehe <othacehe@gnu.org>
and Tobias Geerinckx-Rice <me@tobias.gr>.
Fixes a regression introduced in
8cef92d0633850d97c1a1d4521812268f56672be, whereby in case of file
collisions, the "wrong" one would take precedence.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths): Perform
a breadth-first traversal. Reverse INPUTS and SEARCH-PATHS in the base
case.
* tests/profiles.scm ("profile-derivation, ordering & collisions"):
New test.
|
|
* guix/build/java-utils.scm (install-from-pom): Fix `find-files` to look
only for jar files.
|
|
* guix/build/maven/pom.scm (fix-pom-dependencies): Actually use the
temporary file that was created.
|
|
* guix/build/maven/pom.scm (fix-pom-dependencies): Also look at local
packages when looking for a package version.
|
|
* guix/build/maven/pom.scm (fix-pom-dependencies): Support fixing
modules that do not exist.
* guix/build/maven-build-system.scm (fix-pom): Fix modules.
|
|
* guix/build/maven/pom.scm (fix-pom-dependencies): Add support for fixing
extension versions.
|
|
* guix/build/maven-build-system (fix-pom): Fix a single pom file without
recursing
(fix-pom-files): Find local packages and all submodules, and fix them
all at once.
(add-local-package): Move to...
* guix/build/maven/pom.scm (add-local-package): ...here.
(pom-and-submodules, pom-local-packages): New procedures.
|
|
* guix/build/maven/pom.scm (pom-version, pom-groupid): Do not use inputs
and local packages information anymore. Adapt file to new arguments.
* guix/build/maven-build-system.scm: Adapt to new arguments.
* guix/build/java-utils.scm: Adapt to new arguments.
|
|
* guix/build/java-utils.scm (generate-pom.xml): New procedure.
* gnu/packages/maven.scm (java-surefire-junit4): Use it.
* gnu/packages/java.scm (java-qdox, java-jsr250, java-jsr305)
(java-aopalliance, java-jboss-el-api-spec)
(java-jboss-interceptors-api-spec): Use it.
(java-qdox-M9): Ensure the generated pom file has the correct version.
|
|
* doc/guix.texi: Fix various typos and reword a sentence.
* gnu/packages/cpp.scm (cpplint)[description]: Fix typo.
* gnu/packages/dns.scm (ldns): Fix typo in comment.
* gnu/packages/games.scm (yamagi-quake2): Fix typo in comment.
* gnu/packages/qt.scm (python-pyqtwebengine): Fix typo in comment.
* gnu/packages/rails.scm (ruby-autoprefixer-rails): Fix typo in comment.
* gnu/packages/syndication.scm (quiterss)[description]: Fix typo.
* gnu/packages/terminals.scm (kmscon): Fix typo in comment.
* gnu/packages/xml.scm (perl-xml-sax-base)[description]: Fix typo.
(python-elementpath)[description]: Fix typo.
* guix/build/asdf-build-system.scm (output-translation): Fix typo in docstring.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
When running:
guix environment --ad-hoc gnome --no-grafts --search-paths
this reduces wall-clock time by ~5%. The number of object cache lookups
goes down from 96K to 89K. (Note that 'gnome' is an interesting example
because it has many propagated inputs, which themselves have propagated
inputs too, which would lead to a long input list and a long manifest in
the 'profile-derivation' gexp.)
* guix/profiles.scm (profile-derivation)[inputs, search-paths]: Remove.
[extra-inputs]: New variable.
[builder]: Adjust call to 'build-profile'.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths): New
procedure.
(build-profile): Remove 'inputs' parameter; make 'manifest' the 2nd
positional parameter and add #:extra-inputs. Call
'manifest-sexp->inputs+search-paths' to obtain 'inputs' and
'search-paths'.
|
|
This patch modifies how the name of the main Common Lisp system is extracted
from the full Guix package name to work around bug#48225 concerning the
'package-name->name+version' function.
Fixes <https://issues.guix.gnu.org/41437>.
* guix/build-system/asdf.scm (asdf-build): Fix 'systems' function.
* guix/build/asdf-build-system.scm (main-system-name): Fix it.
|
|
Normal error reporting was disrupted by the introduction of
Disarchive in commit fbc2a52a32ddc664db8ebab420c2e17b1432c744. In
particular, running 'guix download' would succeed with a partially
downloaded file.
* guix/build/download.scm (disarchive-fetch/any): Return '#f' when
Disarchive cannot be found, the specification cannot be found, or
Disarchive fails due to an error.
|
|
The old comment is no longer adequate, see
<https://lists.gnu.org/archive/html/guix-patches/2021-05/msg00113.html>.
* guix/build/emacs-build-system.scm (%install-dir): Adjust comment to better
reflect usage of this variable.
|
|
With this, Emacs libraries are installed in the ELPA_NAME-VERSION subdirectory
of site-lisp and potential subdirectories should no longer collide.
* guix/build/emacs-build-system.scm (add-source-to-load-path): Rename to...
(expand-load-path): ... this. Also expand lone subdirectories of site-lisp.
(%standard-phases): Adjust accordingly.
(elpa-directory): New variable. Export it publicly for use in other build
systems.
(build, patch-el-files, make-autoloads): Use ELPA name and version to
construct subdirectories of %install-dir.
(install): Install in subdirectory.
|
|
This is a fixed version of 66b14dccdd0d83c875ce3a8d50ceab8b6f0a3ce2,
which was reverted in e74250c3c535b75dd2225a26df51febb7ed94654.
* guix/download.scm (%disarchive-mirrors): New variable.
(%disarchive-mirror-file): New variable.
(built-in-download): Add 'disarchive-mirrors' keyword argument and
pass its value along to the 'builtin:download' derivation.
(url-fetch): Pass '%disarchive-mirror-file' to 'built-in-download'.
* guix/scripts/perform-download.scm (perform-download): Read
Disarchive mirrors from the environment and pass them to
'url-fetch'.
* guix/build/download.scm (disarchive-fetch/any): New procedure.
(url-fetch): Add 'disarchive-mirrors' keyword argument, use it to
make a list of URIs, and use the new procedure to fetch the file if
all other methods fail.
* build-aux/build-self.scm (build-program)[select?]: Exclude '(guix
build download)'.
* guix/self.scm (compiled-guix)[*core-modules*]: Add 'guile-json' to
the list of extensions.
|
|
This reverts commit 66b14dccdd0d83c875ce3a8d50ceab8b6f0a3ce2, which broke
'guix pull'.
|
|
* guix/download.scm (%disarchive-mirrors): New variable.
(%disarchive-mirror-file): New variable.
(built-in-download): Add 'disarchive-mirrors' keyword argument and
pass its value along to the 'builtin:download' derivation.
(url-fetch): Pass '%disarchive-mirror-file' to 'built-in-download'.
* guix/scripts/perform-download.scm (perform-download): Read
Disarchive mirrors from the environment and pass them to
'url-fetch'.
* guix/build/download.scm (disarchive-fetch/any): New procedure.
(url-fetch): Add 'disarchive-mirrors' keyword argument, use it to
make a list of URIs, and use the new procedure to fetch the file if
all other methods fail.
|
|
Partially fixes <https://bugs.gnu.org/33848>.
* guix/build/graft.scm (replace-store-references): Add support for
finding and rewriting UTF-16 and UTF-32 store references.
* tests/grafts.scm: Add tests.
|
|
This is a follow up commit to 06eb21856f, which added QTWEBENGINEPROCESS_PATH
to the list of wrapped variables. Unfortunately it wouldn't be set, as its
value is a plain file rather than a directory, and the code only checked for
directories.
* guix/build/qt-build-system.scm (variables-for-wrapping): Define a file type
entry for each variable definition, and use it to determine if we should look
for directories versus plain files.
|
|
Suggested by Maxim Cournoyer <maxim.cournoyer@gmail.com>.
* guix/build/qt-build-system.scm (variables-for-wrapping): Add
"QTWEBENGINEPROCESS_PATH".
|
|
Fixes <https://bugs.gnu.org/47569>.
Previously the wrapper's XDG_DATA_DIRS would contain any input that had
a /share sub-directory, which is usually all build-time inputs.
* guix/build/qt-build-system.scm (variables-for-wrapping)[collect-sub-dirs]:
Add 'selectors' parameter and honor it. Change caller to handle
selectors. Add selectors for /share.
|
|
* guix/build/node-build-system.scm: Rewrite it.
* guix/build-system/node.scm: Adjust accordingly.
* gnu/packages/node-xyz.scm (node-semver): Likewise.
Co-authored-by: Timothy Sample <samplet@ngyro.com>
|
|
* guix/build/julia-build-system.scm (check): Set option '--depwarn=yes'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
This fixes the failing test add-to-entropy-count in tests/syscalls.scm on
powerpc64le-linux.
* guix/build/syscalls.scm (RNDADDTOENTCNT): When %host-type starts with
"powerpc64le", set this to #x80045201. Otherwise, set it to #x40045201 as
before.
|
|
This makes the clone procedure work correctly and fixes some test failures on
powerpc64le-linux, including tests/containers.scm.
* guix/build/syscalls.scm (clone): Add an entry for ppc64le.
|
|
This is a backport of Guile commit
076276c4f580368b4106316a77752d69c8f1494a.
* guix/build/download.scm (tls-wrap)[read!]: Wrap 'get-bytevector-n!'
call in 'catch' and handle 'error/premature-termination' GnuTLS errors.
|
|
On some systems, the columns in /proc/self/mountinfo look like this:
23 28 0:21 / /proc rw,nosuid,nodev,noexec,relatime shared:11 - proc proc rw
Before this change, the mounts procedure was written with the assumption that
the type and source could always be found in columns 8 and 9, respectively.
However, the proc(5) man page explains that there can be zero or more optional
fields starting at column 7 (e.g., "shared:11" above), so this assumption is
false in some situations.
* guix/build/syscalls.scm (mounts): Update the match pattern to use ellipsis
to match zero or more optional fields followed by a single hyphen. Remove the
trailing ellipsis, since multiple ellipses are not allowed in the same level.
The proc(5) man page indicates that there are no additional columns, so it is
probably OK to match an exact number of columns at the end like this.
|
|
This fixes an issue where two packages share a common dependent.
* guix/build/cargo-build-system.scm (unpack-rust-crates): Only copy rust
crates into the target directory if there isn't one already there with
the same name.
|
|
* guix/build-system/cargo.scm (cargo-build): Add cargo-package-flags,
install-source flags.
* guix/build/cargo-build-system.scm (unpack-rust-crates, package): New
procedures.
(install): Also install crate sources.
(%standard-phases): Add new phases.
* doc/guix.texi (Packaging-guidelines)[Rust Crates]: Adjust to changes
in the cargo-build-system.
|
|
Partly fixes <https://bugs.gnu.org/46967>.
* guix/build/download.scm (tls-wrap)[unbuffered]: New procedure.
Pass the result of 'make-custom-binary-input/output-port' to
'unbuffered'.
|
|
* guix/build/download.scm (tls-wrap)[read!]: Read straight into BV
instead of calling 'get-bytevector-some' and 'unget-bytevector'.
|
|
* guix/build/syscalls.scm (linux?): New variable.
(define-statfs-flags): New macro.
(ST_RDONLY, ST_NOSUID, ST_NODEV, ST_NOEXEC, ST_SYNCHRONOUS)
(ST_MANDLOCK, ST_WRITE, ST_APPEND, ST_IMMUTABLE, ST_NOATIME)
(ST_NODIRATIME, ST_RELATIME): New variables.
(statfs-flags->mount-flags): New procedure.
|
|
* guix/build/syscalls.scm (<mount>): New record type.
(option-string->mount-flags, mount-flags)
(octal-decode, mounts): New procedures.
(mount-points): Rewrite in terms of 'mount'.
* tests/syscalls.scm ("mounts"): New test.
|