summaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
...
* guix/upstream: Let changed-inputs support the new input lists.Ricardo Wurmus2022-01-05
| | | | | * guix/upstream.scm (changed-inputs): Add match clauses for new-style input lists.
* guix hash: Allow '--exclude-vcs' option using 'git' serializer.zimoun2022-01-04
| | | | | | | | * guix/scripts/hash.scm (git-hash): Use '#:select?' with 'git-hash-directory'. * tests/guix-hash.sh: Adjust accordingly. Signed-off-by: Timothy Sample <samplet@ngyro.com>
* offload: Do not read ~/.ssh/config.Ludovic Courtès2022-01-03
| | | | | | | Fixes <https://issues.guix.gnu.org/39366>. Reported by zimoun <zimon.toutoune@gmail.com>. * guix/scripts/offload.scm (open-ssh-session): Pass #:config.
* transformations: Add '--tune'.Ludovic Courtès2022-01-01
| | | | | | | | | | | | | * guix/transformations.scm (tuning-compiler) (tuned-package, tunable-package?, package-tuning) (transform-package-tuning) (build-system-with-tuning-compiler): New procedures. (%transformations): Add 'tune'. (%transformation-options): Add "--tune". * tests/transformations.scm ("options->transformation, tune") ("options->transformations, tune, wrong micro-architecture"): New tests. * doc/guix.texi (Package Transformation Options): Document '--tune'.
* Add (guix cpu).Ludovic Courtès2022-01-01
| | | | | * guix/cpu.scm: New file. * Makefile.am (MODULES): Add it.
* ui: It's 2022!Leo Famulari2022-01-01
| | | | | | Happy new year! * guix/ui.scm (show-version-and-exit): Change the year to 2022.
* utils: Fix URL in comment.Tobias Geerinckx-Rice2021-12-30
| | | | * guix/utils.scm (target-x86-32?): Fix Wikipedia URL.
* substitute: Document the limited UI.Tobias Geerinckx-Rice2021-12-29
| | | | * guix/scripts/substitute.scm (show-help): Accept exactly one OPTION.
* channels: Add 'branch' to 'channel->code' output.Brice Waegeneire2021-12-25
| | | | * guix/channels.scm (channel->code): Add 'branch' to output.
* build-system/go: Add pre-built standard library as implicit input.Sarah Morgensen2021-12-24
| | | | | | | | * gnu/packages/golang.scm (make-go-std): New procedure. * guix/build-system/go.scm (make-go-std): New procedure. (lower): Use it. Add pre-built standard library to inputs. Signed-off-by: Leo Famulari <leo@famulari.name>
* build-system/go: Initialize build cache from input packages.Sarah Morgensen2021-12-24
| | | | | | | | | * guix/build/go-build-system.com (setup-go-environment): Set GOCACHE to a location within the build directory. Union "/var/cache/go/build" input directories to initialize the cache. Generate "trim.txt" within the cache, with the current time. Signed-off-by: Leo Famulari <leo@famulari.name>
* build-system/go: Add #:substitutable? argument.Sarah Morgensen2021-12-24
| | | | | | | * guix/build-system/go.scm (go-build): Add 'substitutable?' argument. (go-cross-build): Likewise. Signed-off-by: Leo Famulari <leo@famulari.name>
* tests: git: Avoid ambiguous module import.Leo Famulari2021-12-23
| | | | | | | | | | Fixes this warning: WARNING: (guix tests git): `reset' imported from both (git) and (ice-9 control) This is a followup to commit 07145c8a8cef3860a6c522d81e387bd0485c83ce. * guix/tests/git.scm: Only import LET/EC from (ice-9 control).
* tests: gnupg: Factor out and export KEY-FINGERPRINT-VECTOR.Attila Lendvai2021-12-23
| | | | | | | * guix/tests/gnupg.scm (key-fingerprint-vector): New procedure. Export it. (key-fingerprint): Use it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* tests: Smarten up git repository testing framework.Attila Lendvai2021-12-23
| | | | | | | | | * guix/tests/git.scm (with-git-repository): New macro, exported. It can be used repeatedly inside a WITH-TEMPORARY-GIT-REPOSITORY. (populate-git-repository): Extend the DSL with (ADD "some-noise"), (RESET "[commit hash]"), (CHECKOUT "branch" ORPHAN). Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* self: Add guile-lzma as a dependency.Timothy Sample2021-12-23
| | | | | | | | | | This is a follow-up to 35ce3e5de6d39d4959ecae31e8f8ce2bbb645e0a, fixing Disarchive recovery when the download script is run from a 'guix pull' profile. * guix/self.scm (specification->package): Add "guile-lzma". (compiled-guix): Add GUILE-LZMA to DEPENDENCIES in the #:dependencies argument to 'guix-command'.
* scripts: system: Add a missing module.Mathieu Othacehe2021-12-23
| | | | * guix/scripts/system.scm: Add a missing module.
* scripts: system: Use the disk-image size argument for VM generation.Mathieu Othacehe2021-12-23
| | | | | * guix/scripts/system.scm (system-derivation-for-action): Use the given image-size unconditionnaly when calling system-qemu-image/shared-store-script.
* scripts: system: Pass the volatile field to VM generation.Mathieu Othacehe2021-12-23
| | | | | | | | * guix/scripts/system.scm (system-derivation-for-action): Add new volatile? argument and pass it to system-qemu-image/shared-store-script. (perform-action): Add new volatile? argument and pass it to system-derivation-for-action. (process-action): Pass the volatile? argument to perform-action.
* scripts: system: Deprecate the docker-image command.Mathieu Othacehe2021-12-23
| | | | | | | * guix/scripts/system.scm (system-derivation-for-action): Use the image API to generate the docker images and deprecate the docker-image command. (process-action): Ditto. * doc/guix.texi (Invoking guix system): Adapt it.
* packages: Avoid #:re-export-and-replace to allow upgrades from 1.2.0.Ludovic Courtès2021-12-22
| | | | | | | | | | | Fixes <https://issues.guix.gnu.org/52694>. Reported by Carl Dong <contact@carldong.me>. Use of #:re-export-and-replace would prevent upgrades from 1.2.0, whose 'source-module-closure' procedure did not recognize #:re-export-and-replace. * guix/packages.scm: Remove #:re-export-and-replace and add top-level call to 'module-re-export!'
* tests: Move keys into ./tests/keys/ and add a third ed25519 key.Attila Lendvai2021-12-22
| | | | | | | | | | | | | | | The third key will be used in an upcoming commit. Rename public keys to .pub. * guix/tests/gnupg.scm (%ed25519-3-public-key-file): New variable. (%ed25519-3-secret-key-file): New variable. (%ed25519-2-public-key-file): Renamed from %ed25519bis-public-key-file. (%ed25519-2-secret-key-file): Renamed from %ed25519bis-secret-key-file. * tests/keys/ed25519-3.key: New file. * tests/keys/ed25519-3.sec: New file. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* combinators: Add 'define-compile-time-procedure'.Ludovic Courtès2021-12-20
| | | | | * guix/combinators.scm (procedure-call-location): New syntax parameter. (define-compile-time-procedure): New macro.
* build-system/meson: Define build variables when cross-compiling.Ludovic Courtès2021-12-20
| | | | | | | | | Fixes <https://issues.guix.gnu.org/52574>. Reported by L p R n d n <guix@lprndn.info>. * guix/build-system/meson.scm (meson-cross-build)[builder]: Define '%build-host-inputs', '%build-target-inputs', '%build-inputs', and '%outputs'.
* ci: Restrict substitute search to guix jobset.Andrew Whatson2021-12-19
| | | | | | | * guix/ci.scm (latest-builds): Add jobset keyword. (find-latest-commit-with-substitutes): Pass jobset "guix". Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* style: Gracefully handle errors such as EACCES when opening files.Ludovic Courtès2021-12-18
| | | | | * guix/scripts/style.scm (guix-style): Wrap body in 'with-error-handling'.
* style: Refer to source files by absolute file names.Ludovic Courtès2021-12-18
| | | | | | | | | Previously, "guix style PACKAGE" would end up modifying a file looked up under the current directory since the location associated with PACKAGE is usually a relative file name. * guix/scripts/style.scm (absolute-location): New procedure. (simplify-package-inputs): Use it.
* import: elpa: Support ‘upstream-name’ property.Xinglu Chen2021-12-18
| | | | | | | | | * guix/import/elpa.scm: (guix-package->elpa-name): New procedure. (latest-release): Use it. * tests/elpa.scm ("guix-package->elpa-name: without 'upstream-name' property") ("guix-package->elpa-name: with 'upstream-name' property"): Test it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* lint: Adjust patch file length check.Vagrant Cascadian2021-12-17
| | | | | | | | | | | With the switch to "ustar" format in commit bdf5c16ac052af2ca9d5c3acc4acbc08fd9fdbea, the maximum file length has increased. * guix/lint.scm (check-patch-file-names): Adjust margin used to check for patch file lengths. Increase allowable patch file length appropriate to new tar format. Extend warning to explain that long files may break 'make dist'. * tests/lint.scm: Update tests accordingly.
* guix hash: Add git serializer.zimoun2021-12-17
| | | | | | | | | * guix/scripts/hash.scm (git-hash): New procedure. (%options): Use it. * tests/guix-hash.sh: Test it. * doc/guix.texi: Update. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* guix hash: Add 'serializer' option.zimoun2021-12-17
| | | | | | | | | | | | | * guix/scripts/hash.scm (%options): Deprecate 'recursive', add 'serializer'. (%default-options): Add 'serializer'. (nar-hash): New procedure. (default-hash): New procedure. (guix-hash)[file-hash]: Use them. (show-help): Adjust. * tests/guix-hash.scm: Adjust. * doc/guix.texi: Update. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* guix hash: Support several files.zimoun2021-12-17
| | | | | | | | | | * guix/scripts/hash.scm (guix-hash): Allow several files. [file-hash]: Catch system-error. [formatted-hash]: New procedure. * tests/guix-hash.sh: Add test. * doc/guix.texi (Invoking guix hash): Mention "one or more files". Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* import: Beautify descriptions when appropriate.Xinglu Chen2021-12-17
| | | | | | | | | | | * guix/import/elpa.scm (elpa-package->sexp) * guix/import/gnu.scm (gnu-package->sexp) * guix/import/hackage.scm (hackage-module->sexp) * guix/import/minetest.scm (make-minetest-sexp) * guix/import/opam.scm (opam->guix-package) * guix/import/pypi.scm (make-pypi-sexp): Beautify descriptions. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* import: utils: Wrap lines in description.Xinglu Chen2021-12-17
| | | | | | | * guix/import/utils.scm (beautify-description): Use ‘fill-paragraph’; add optional ‘length’ argument. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* lint: 'kdoctools' is typically used only while building.Leo Famulari2021-12-16
| | | | * guix/lint.scm (check-inputs-should-be-native): Add kdoctools.
* offload: Autoload Guile-SSH.Ludovic Courtès2021-12-15
| | | | | | | | | | | | | This halves the number of syscalls made by "guix offload" during startup and delays loading of Guile-SSH until there are actually machines to offload to. * guix/scripts/offload.scm: Remove unused module imports. Autoload many modules. (check-ssh-zlib-support): New procedure. (process-request): Call it when accepting. (guix-offload): Remove 'zlib-support?' check, now moved to 'check-ssh-zlib-support'.
* offload: Delay call to 'read-derivation-from-file'.Ludovic Courtès2021-12-15
| | | | | | | | | This significantly reduces the amount of work done by "guix offload" when there's no machine to offload to. * guix/scripts/offload.scm (process-request): Add call to 'read-derivation-from-file', moved from... (guix-offload): ... here.
* build-system/linux-module: Wrap with build variables.Tobias Geerinckx-Rice2021-12-15
| | | | | | | | * guix/build-system/linux-module.scm (linux-module-build): Wrap the builder gexp WITH-BUILD-VARIABLES to restore %build-inputs after commit 7d873f194ca69d6096d28d7a224ab78e83e34fe1 removed all old certainties. Reported by lfam in #guix.
* build-system: emacs: Do not rely on input labels in the 'build' phase.Maxim Cournoyer2021-12-14
| | | | | | | | This commit repairs the Emacs build system for packages using the new label-less "guix style". Tested with emacs-libgit. * guix/build/emacs-build-system.scm (build): Use search-input-file to locate emacs.
* guix: Fix typo in last commit.Nicolas Goaziou2021-12-14
| | | | * guix/build/emacs-build-system.scm (make-autoloads): Fix typo.
* guix: Do not assume "emacs" label in make-autoloads.Nicolas Goaziou2021-12-14
| | | | | * guix/build/emacs-build-system.scm (make-autoloads): Look for "emacs" executable independently on the label.
* packages: 'modify-inputs' preserves and introduces input labels if needed.Ludovic Courtès2021-12-13
| | | | | | | | | | | | | | | Fixes a bug whereby, in an expression like this: (modify-inputs lst (delete ...) (prepend ...)) the 'delete' clause would have no effect because 'prepend' would pass it a label-less input list. * guix/packages.scm (inputs-sans-labels): Remove. (modify-inputs): In the 'prepend' and 'append' cases, preserve/add input labels instead of removing them.
* Merge branch 'master' into core-updates-frozenLudovic Courtès2021-12-13
|\
| * progress: Rate limit drawing in the progress-reporter/bar.Christopher Baines2021-12-12
| | | | | | | | | | | | | | | | This helps smooth the output in cases where the bar is updated very quickly, for example in guix weather where it's computing derivations. * guix/progress.scm (progress-reporter/bar): Wrap the drawing code with the rate-limited procedure.
| * narinfo: Do not repeat slash when building nar URLs.Ludovic Courtès2021-12-12
| | | | | | | | | | * guix/narinfo.scm (narinfo-maker): When one of URLS is relative, do not repeat trailing slash if it's already present in CACHE-URL.
| * substitutes: Build correct narinfo URLs for cache URLs without trailing slash.Ludovic Courtès2021-12-12
| | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://issues.guix.gnu.org/51441>. Reported by Z572 <873216071@qq.com> and Peng Mei Yu <pengmeiyu@riseup.net>. Previously, passing '--substitute-urls=https://mirror.sjtu.edu.cn/guix', without a trailing slash, would fail due to incorrectly constructed narinfo URLs. Users would have to explicitly add a trailing slash. * guix/substitutes.scm (narinfo-request): Ensure BASE has a trailing slash.
| * challenge: Store item contents are returned in canonical order.Ludovic Courtès2021-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the 'delete-duplicates' call in 'differing-files' to have the intended effect. Before that, a "guix challenge" invocation with three builds of a store item, two of which are identical, would lead 'differing-files' to not print anything, as in this example: $ ./pre-inst-env guix challenge python-numpy /gnu/store/…-python-numpy-1.17.3 contents differ: local hash: 07var0wn8fywxchldz5pjqpnlavrlbc8s81aqwsqyi0i7qlh6ka7 https://ci.guix.gnu.org/nar/lzip/…-python-numpy-1.17.3: 07var0wn8fywxchldz5pjqpnlavrlbc8s81aqwsqyi0i7qlh6ka7 https://bordeaux.guix.gnu.org/nar/lzip/…-python-numpy-1.17.3: 0cbl3q19bshb6ddz8xkcrjzkcmillsqii4z852ybzixyp7rg40qa 1 store items were analyzed: - 0 (0.0%) were identical - 1 (100.0%) differed - 0 (0.0%) were inconclusive With this change, 'differing-files' prints additional info as intended: differing file: /lib/python3.8/site-packages/numpy/distutils/fcompiler/__pycache__/vast.cpython-38.pyc * guix/scripts/challenge.scm (archive-contents): Add tail call to 'reverse'. (store-item-contents): Rewrite to use 'scandir' and recursive calls instead of 'file-system-fold'.
| * challenge: Use SRFI-71 instead of SRFI-11.Ludovic Courtès2021-12-12
| | | | | | | | * guix/scripts/challenge.scm (port-sha256*, call-with-nar): Use SRFI-71.
* | Merge remote-tracking branch 'signed/master' into core-updatesMathieu Othacehe2021-12-10
|\|
| * environment: Suggestion code gracefully handles empty "/bin" directories.Ludovic Courtès2021-12-10
| | | | | | | | | | * guix/scripts/environment.scm (suggest-command-name): Handle the case where 'scandir' returns #f.