summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2024-03-09Merge remote-tracking branch 'origin/master' into core-updatesJosselin Poiret
Change-Id: If336ce5529031f7d45dd78b173d897b4ca2d6ab0
2024-03-09scripts: import: elpa: Unquote-splice package sexp contents.Carlo Zancanaro
* guix/scripts/import/elpa.scm (guix-import-elpa): Unquote-splice the contents of the package sexp so the matched package definition is returned unchanged. Change-Id: Iaaa7e72390c73c6d6671811fe9ac284d599b44c6 Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2024-03-09import/cran: Add one more invalid package.Ricardo Wurmus
* guix/import/cran.scm (invalid-packages): Add "use_c17". Change-Id: Ie3b6455d4eff97811057cd82dca460367a4583e5
2024-03-09guix: cpu: Update aarch64 CPUs.Efraim Flashner
* guix/cpu.scm (cpu->gcc-architecture): Update list of CPUs from the list in gcc. Change-Id: Ifcd26c143fc9e3aaa0c5514e1dac4908d2780255
2024-03-09guix: cpu: Autodetect the x86-64-v4 microarchitecture.Efraim Flashner
* guix/cpu.scm (gcc-architecture->micro-architecture-level): Sort gcc-architectures which have AVX512F support into x86-64-v4. Change-Id: I8af0ceb692eefec7433e1fd5149379244da799c4
2024-03-09guix: cpu: Update x86_64 CPUs.Efraim Flashner
* guix/cpu.scm (cpu->gcc-architecture): Add graniterapids-d, pantherlake, clearwaterforest, arrowlake-s, yongfeng. Remove grandridge. Update CPU flags for searching to match architecture. (gcc-architecture->micro-architecture-level): Adjust listed architectures and sort in order used above. Change-Id: I186ab6e396e36c34f7c61827e02f637716993141
2024-03-09gnu: perl6-tap-harness: Update to 0.3.5.Paul A. Patience
* gnu/packages/perl6.scm (perl6-tap-harness): Update to 0.3.5. [source]: Update URL. Reindent. [arguments]: Replace obsolete prove6 script with manual Raku invocation in 'check' phase. [home-page]: Update. [synopsis]: Replace mention of Perl with Raku. * gnu/packages/rakudo-build-system.scm (check): Replace obsolete prove6 script with manual Raku invocation. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2024-03-09gnu: rakudo: Update to 2022.04.Paul A. Patience
* gnu/packages/perl6.scm (rakudo): Update to 2022.04. [source]: Add snippet to delete bundled 3rdparty directory. [arguments]: Add 'remove-calls-to-git', 'fix-paths' and 'disable-failing-tests' phases. Remove 'patch-source-date' phase. Adjust files in 'patch-more-shebangs' phase and sort them. Remove redundant './' from 'configure' phase. Replace Perl extensions and paths with Raku equivalents in 'install-dist-tool' phase. [native-inputs]: Add nqp-configure. [synopsis, description]: Replace mentions of Perl with Raku. * guix/build/rakudo-build-system.scm (install): Replace Perl extension with Raku extension. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2024-03-09build-system/guile: Install .scm files first.Tomas Volf
Until now the .go files were generated first, and only after that the .scm files were installed into the target location. That led to a lot of messages about `source file ... newer than compiled' if the custom 'check phase tried to load the compiled files. Swapping the order of the actions resolves the issue allowing the tests to be written without lot of noise in the build log. For final artifacts it was not a problem, since daemon resets the timestamps. * guix/build/guile-build-system.scm (build): Install .scm before producing .go. Change-Id: I3428d144fcbaa6c904ee662193c3bca82589e344 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09build-system/guile: Fix indentation.Tomas Volf
The inner (let) was on the same level as the outer one, which was confusing. * guix/build/guile-build-system.scm (build): Fix indentation. Change-Id: I701b61747c270b185eac9377b066748baa2b3d20 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09build-system/guile: Fix typo in documentation string.Tomas Volf
* guix/build/guile-build-system.scm (install-documentation): Fix typo in documentation string. Change-Id: I8940591fcbf8222c8f8365dabbac0e8300cad84c Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09Merge branch 'rust-team'Efraim Flashner
Change-Id: Iee31c5de29c357c822f60df4fa8ce758779eb349
2024-03-09import: Do not return package name with json importer.Herman Rimm
* guix/import/json.scm (json->code): Do not return package names after package expressions. * doc/package-hello.json: Fix comma errors and use valid greeter URL. Change-Id: Id71924e72f690a9bda5fbfdb65a443029adfd158 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09import: Discard args after --version and --help.Herman Rimm
* guix/scripts/import.scm (guix-import): Discard args. Change-Id: Icce5cd0daf9011f7ddde7904113b31b547f063ef Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09import: Insert packages into modules alphabetically.Herman Rimm
* guix/scripts/import.scm (guix-import): Add 'insert' option. (import-as-definitions): Add procedure. * doc/guix.texi (Invoking guix import): Describe 'insert' option. Change-Id: Id87ea707123630e12bcb6788599acac6895b26c4 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09utils: Add find-definition-insertion-location procedure.Herman Rimm
* guix/utils.scm (find-definition-insertion-location): Add and export procedure. * tests/utils.scm ("find-definition-insertion-location"): Add test. Change-Id: Ie17e1b4a94790f58518ce121411a38d357f49feb Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09utils: Add insert-expression procedure.Herman Rimm
* guix/utils.scm (define-module): Use (guix read-print) and export (insert-expression). (insert-expression): Add procedure. * tests/utils.scm ("insert-expression"): Add test. Change-Id: I971a43a78aa6ecaaef33c1a7a0db4b287eb85036 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-09import: Wrap package expressions with define-public.Herman Rimm
* guix/scripts/import.scm (guix-import): Wrap package expressions. Change-Id: Ic4d986a4706a692b2fecd6fded8ac72ab6311687 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-20refresh: Import %final-inputs from (gnu packages base).Maxim Cournoyer
* guix/scripts/refresh.scm: Import %final-inputs from (gnu packages base). Change-Id: Ida99a88fd3305a7971ab7951a15ee5ffde5ddb56
2024-02-20build: cargo: Add support for x86_64-linux-gnux32.Efraim Flashner
* guix/build/cargo-build-system.scm (configure): Add entry for x86_64-linux-gnux32 in CARGO_BUILD_TARGET. Change-Id: Iae363d4e7962af1ebd4f2ed0f4276663b2245580
2024-02-20syscalls: ‘processes’ really omits kernel threads.Ludovic Courtès
Fixes a bug whereby ‘processes’ would include kernel threads, thereby leading the ‘stop’ method of ‘user-processes’ to wait indefinitely for a kernel thread. Code taken from the Shepherd. Fixes <https://issues.guix.gnu.org/68800>. * guix/build/syscalls.scm (kernel?): Remove. (linux-process-flags, linux-kernel-thread?, pseudo-process?): New procedures. (PF_KTHREAD): New variable. (processes): Use ‘pseudo-process?’ instead of ‘kernel?’. Reported-by: Tomas Volf <~@wolfsden.cz> Change-Id: I8c439cdaf868a8f899de7fe500ce8bf10e5fc290
2024-02-20import/cran: Use downstream name when using specifications.Ricardo Wurmus
Reported by Alexander Blume at <https://github.com/BIMSBbioinfo/guix.install/issues/4>. * guix/import/cran.scm (format-inputs): Use UPSTREAM-INPUT-DOWNSTREAM-NAME when %INPUT-STYLE is set to 'SPECIFICATION. Change-Id: I2f0963af197896aafd613b253d8712e41a716e52
2024-02-19upstream: update-package-inputs: Sort extra inputs.Ricardo Wurmus
Ensure that extra inputs end up in the correct order. * guix/upstream.scm (update-package-inputs)[filtered-inputs]: Sort new list of inputs. Change-Id: Ia5fddd8103a33c79426995057fcce61c2e9e5a72
2024-02-12gnu: disarchive: Update to 0.6.0.Timothy Sample
* gnu/packages/backup.scm (disarchive): Update to 0.6.0; add 'guile-bzip2' as an input. * gnu/packages/package-management.scm (guix): Add 'guile-bzip2' as an input to enable bzip2 support when using Disarchive. * guix/self.scm (%packages): Add 'guile-bzip2'. (compiled-guix): Include 'guile-bzip2' as a dependency when building the 'guix' command. * etc/disarchive-manifest.scm (tarball-origin?): Include bzip2 tarballs. Co-authored-by: Ludovic Courtès <ludovic.courtes@inria.fr> Change-Id: I4da479054f6bef225f5ea979c091152f8a9e51d5
2024-02-12swh: Fix docstring of ‘lookup-directory’.Ludovic Courtès
* guix/swh.scm (lookup-directory): Fix docstring. Change-Id: Ia1fd9b2bc9184364cebbd30ee84c9fdea4ba897c
2024-02-12git-download: Download from SWH by nar hash when possible.Ludovic Courtès
* guix/build/git.scm (git-fetch-with-fallback): Add #:hash and #:hash-algorithm. Try ‘swh-download-directory-by-nar-hash’ before ‘swh-download’ when #:hash is provided. * guix/git-download.scm (git-fetch/in-band*): Pass #:hash and #:hash-algorithm to ‘git-fetch-with-fallback’. * guix/scripts/perform-download.scm (perform-git-download): Likewise. Change-Id: Ic875a7022fd78c9fac32e92ad4f8ce4d81646ec5
2024-02-12lint: archival: Check with ‘lookup-directory-by-nar-hash’.Ludovic Courtès
While this method is new and nar-sha256 ExtIDs are currently available only for new visits, it is fundamentally more reliable than the other methods, which is why it comes first. * guix/lint.scm (check-archival)[lookup-by-nar-hash]: New procedure. Call ‘lookup-by-nar-hash’ before the other lookup methods. * tests/lint.scm ("archival: content available") ("archival: content unavailable but disarchive available") ("archival: missing revision") ("archival: revision available"): Add a 404 response corresponding to the ‘lookup-external-id’ request. * tests/lint.scm ("archival: nar-sha256 extid available"): New test. Change-Id: I4a81d6e022a3b72e6484726549d7fbae627f8e73
2024-02-12swh: Add ‘swh-download-directory-by-nar-hash’.Ludovic Courtès
This allows us to take advantage of content addressing by giving SWH the expected nar hash. * guix/swh.scm (swh-download-directory-by-nar-hash): New procedure. Change-Id: I0494ee15a3cde390a22552de7c2246e0314ba7b5
2024-02-12swh: Add bindings for the “ExtID” API.Ludovic Courtès
This interface was deployed at archive.softwareheritage.org a few days ago. Our main use case will be looking up directories by “nar-sha256” hashes. * guix/swh.scm (<external-id>): New JSON-mapped record type. (lookup-external-id, lookup-directory-by-nar-hash): New procedures. * tests/swh.scm (%external-id): New variable. ("lookup-directory-by-nar-hash"): New test. Change-Id: Ib671c7798aeb6f8132ac78f2b06b9285da8e7bd5
2024-02-12swh: ‘vault-fetch’ follows redirects.Ludovic Courtès
Today, URLs like https://archive.softwareheritage.org/api/1/vault/flat/swh:1:dir:84a8b34591712c0a90bab0af604188bcd1fe3153/raw/ redirect to https://swhvaultstorage.blob.core.windows.net/…. This change fixes ‘vault-fetch’ to follow these. Fixes <https://issues.guix.gnu.org/69058>. * guix/swh.scm (http-get/follow): New procedure. (vault-fetch): Use it instead of ‘http-get*’. Change-Id: Id6b9585a9ce6699a2274b99c9a6d4edda1018b02
2024-02-12git authenticate: Gracefully handle invalid fingerprints.Ludovic Courtès
Previously the command would crash when passed an invalid fingerprint on the command line. * guix/scripts/git/authenticate.scm (guix-git-authenticate) [openpgp-fingerprint*]: New procedure. Use it instead of ‘openpgp-fingerprint’. Change-Id: I99e0549781382f36a684a84449b603e00b53778d
2024-02-10build-system: perl: Accept Gexps for #:module-build-flags.Christopher Baines
Matching the change in 2d40e6f7ab04ec367a9a7fc1af3daa507fb60d3c otherwise the cross build derivations are broken, as was the case for emacs-pde. * guix/build-system/perl.scm (perl-cross-build) [module-build-flags]: Accept gexps. Change-Id: I2dc85bc50bc077581e3abfc5baaedc6487118192
2024-01-31Merge remote-tracking branch 'origin/master' into core-updatesMaxim Cournoyer
Resolved conflicts in: gnu/packages/astronomy.scm gnu/packages/axoloti.scm gnu/packages/games.scm gnu/packages/guile-xyz.scm gnu/packages/mail.scm gnu/packages/photo.scm gnu/packages/sphinx.scm gnu/packages/tls.scm gnu/packages/web-browsers.scm Change-Id: I726fb6139d70ccead1b0f59afc72ccc523a1217d
2024-01-31channels: ‘latest-channel-instances’ traverses user-provided channels first.Ludovic Courtès
Previously, ‘latest-channel-instances’ would perform a depth-first traversal of channels. Since dependencies specified in ‘.guix-channel’ are usually less specific that those provided by the user, this would lead to the use of instances corresponding to those less specific specs, which in turn might declare dependencies that do not exist for the more specific instances. This commit changes ‘latest-channel-instances’ to perform a breadth-first traversal, thereby giving user-supplied channels higher precedence over dependencies found via ‘.guix-channel’. Fixes <https://issues.guix.gnu.org/68822>. * guix/channels.scm (latest-channel-instances)[ignore?]: Remove. [instance-name, same-named?, more-specific?]: New procedures. Rewrite as a breadth-first traversal using a regular loop. * tests/channels.scm ("latest-channel-instances reads dependencies from most-specific instance"): New test. Change-Id: Iba518145cfd209f04293a56246dbfee3b714650b
2024-01-25ui: Default to “C.UTF-8” locale instead of “en_US.utf8”.Ludovic Courtès
This is a followup to 1cebc334a77030c0c94955981652f4df7608c9e3. * guix/ui.scm (install-locale): Default to “C.UTF-8”. Change-Id: Icc92bfe0d75c415eb11a9af207824544ed75e084
2024-01-25grafts: Use C.UTF-8 and remove dependency on ‘glibc-utf8-locales’.Ludovic Courtès
This is a followup to 1cebc334a77030c0c94955981652f4df7608c9e3. * guix/grafts.scm (graft-derivation/shallow)[glibc-locales]: Remove. [build]: Leave ‘GUIX_LOCPATH’ unset. Use “C.UTF-8” instead of “en_US.utf8”. Reported-by: Janneke Nieuwenhuizen <janneke@gnu.org> Change-Id: I59bc90130c6711a1a89068fbf697f9bd2ba2b5f1
2024-01-25git-download: Use C.UTF-8 and remove dependency on ‘glibc-utf8-locales’.Ludovic Courtès
This is a followup to 1cebc334a77030c0c94955981652f4df7608c9e3. * guix/git-download.scm (git-fetch/in-band*)[glibc-locales]: Remove. [build]: Leave ‘GUIX_LOCPATH’ unset. Use “C.UTF-8” instead of “en_US.utf8”. Change-Id: I268361c04dd2d6154d97836b1f41ff06ffd278eb
2024-01-24scripts: describe: Support 'channels-sans-intro' format for local checkouts.Sergey Trofimov
* guix/scripts/describe.scm (%display-checkout-info): Support 'channels-sans-intro' format. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-01-24weather: Add ‘-e’.Ludovic Courtès
* guix/scripts/weather.scm (show-help, %options): Add ‘-e’. (guix-weather): Handle it. * doc/guix.texi (Invoking guix weather): Document it. Change-Id: I6dc97ec2b8226b57be33247b05a34c23b573a64f
2024-01-22guix: download: Add support for git repositories.Romain GARBAGE
* guix/scripts/download.scm (git-download-to-store*): Add new variable. (copy-recursively-without-dot-git): New variable. (git-download-to-file): Add new variable. (show-help): Add 'git', 'commit', 'branch' and 'recursive'options help message. (%default-options): Add default value for 'git-reference' and 'recursive' options. (%options): Add 'git', 'commit', 'branch' and 'recursive' command line options. (guix-download) [hash]: Compute hash with 'file-hash*' instead of 'port-hash' from (gcrypt hash) module. This allows us to compute hashes for directories. * doc/guix.texi (Invoking guix-download): Add @item entries for `git', `commit', `branch' and `recursive' options. Add a paragraph in the introduction. * tests/guix-download.sh: New tests. Move variables and trap definition to the top of the file. Change-Id: Ic2c428dca4cfcb0d4714ed361a4c46609339140a Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-01-22import/cran: Set HOME when ExperimentHub is among the inputs.Ricardo Wurmus
* guix/import/cran.scm (phases-for-inputs): Add 'set-HOME phase when ExperimentHub is among inputs. Change-Id: Ie3a2443934704eed8694a76a651b806209722421
2024-01-22import/cran: Also update annotation and experiment packages.Ricardo Wurmus
* guix/import/cran.scm (latest-bioconductor-release): Determine package type and pass it to LATEST-BIOCONDUCTOR-PACKAGE-VERSION and BIOCONDUCTOR-URI. (%bioconductor-updater): Compose all bioconductor predicates. Change-Id: Icef3ae05e28ed0f2796d9abf90e51821d2dfcc4c
2024-01-22guix: Add ork1-elf platform.Jean-Pierre De Jesus DIAZ
* doc/guix.texi: Document or1k-elf platform. * guix/platforms/or1k.scm (or1k-elf): New variable. * Makefile.am (MODULES): Add guix/platforms/or1k.scm. Change-Id: I3f71a0fa97f1ebd2bbdbf6cd00a93b477a123648
2024-01-21build-systems: cmake: Add support for #:allowed-references.Maxim Cournoyer
Also actually honor #:disallowed-references when cross-compiling. * guix/build-system/cmake.scm (cmake-build): Add #:allowed-references keyword, and pass it to gexp->derivation. (cmake-cross-build): Likewise. Also pass disallowed-references to gexp->derivation which had apparently been forgotten. Change-Id: I1e9861295359b090bd5407c5f76afddf890e36bf
2024-01-21guix: build-system: qt: Support #:disallowed-references.Maxime Devos
* guix/build-system/qt.scm (qt-build): Support #:allowed-references and #:disallowed-references. (qt-cross-build): Likewise. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: Ia2c36152bc3500a4e73b204b0a006f3bb9405d58
2024-01-21build-system: pyproject: Add allowed/disallowed keyword arguments.Maxim Cournoyer
* gnu/build-system/pyproject.scm (pyproject-build) Add ALLOWED-REFERENCES and DISALLOWED-REFERENCES keywords. Change-Id: I404cbd8409332705b023c7a3b0b8fafbfaefe28b
2024-01-21build-system: python: Add allowed/disallowed keyword arguments.Maxime Devos
* gnu/build-system/python.scm (python-build) Add ALLOWED-REFERENCES and DISALLOWED-REFERENCES keywords. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: I80bfe8e23b8475a8ca277cddd4275f1e757db8c3
2024-01-21guix: build: Expand `copy-recursively'.Romain GARBAGE
* guix/build/utils.scm (copy-recursively): Add `select?' key. Change-Id: Icfe226164bb88dfede58ae24c15a98db9b696c3b Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-01-21packages: Silence tar's support for --sort check output.Maxim Cournoyer
* guix/packages.scm (patch-and-repack) <tar-supports-sort?>: Invoke with 'invoke/quiet', catching any message condition. Change-Id: I1feee605f77bfe633d22901a3250e4c530fee6a6
2024-01-21build/cargo-build-system: Support 16k page sizes on aarch64.Roman Scherer
* guix/build/cargo-build-system.scm (configure): Support 16k page sizes on aarch64. Change-Id: I523c192159908483577301da246d75d16b694bc8 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>