summaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
* quirks: Adjust patch to allow traveling back to Dec. 2018.Ludovic Courtès2020-07-24
| | | | | | | | | | | | | Fixes <https://bugs.gnu.org/42519>. This fixes: guix time-machine --commit=897f303d2fa61497a931cf5fcb43349eb5f44c14 a commit dated Dec. 2018. * guix/quirks.scm (%bug-41214-patch)[accesses-guile-2.2-optimization-options?]: Add second 'match' clause.
* import: github: Gracefully handle projects that have disappeared.Ludovic Courtès2020-07-24
| | | | | | | | | Fixes <https://bugs.gnu.org/42509>. Reported by Alexandru-Sergiu Marton <brown121407@posteo.ro>. * guix/import/github.scm (fetch-releases-or-tags): Use 'http-fetch' instead of 'json-fetch', and guard against 404 errors. Upon 404, emit a warning and return the empty vector.
* pack: '-R' applies to propagated inputs too.Ludovic Courtès2020-07-24
| | | | | | | | Fixes <https://bugs.gnu.org/42510>. * guix/scripts/pack.scm (wrapped-manifest-entry): Recurse on 'dependencies' field. * tests/guix-pack-relocatable.sh: Add test.
* guix system: 'reconfigure' disallows downgrades by default.Ludovic Courtès2020-07-23
| | | | | | | | | | | | | | | | This is similar to what 9744cc7b4636fafb772c94adb8f05961b5b39f16 did for 'guix pull'. * guix/scripts/system/reconfigure.scm (ensure-forward-reconfigure) (warn-about-backward-reconfigure, channel-relations) (check-forward-update): New procedures. * guix/scripts/system.scm (perform-action): Add #:validate-reconfigure. Call 'check-forward-update' when ACTION is 'reconfigure. (%options, show-help): Add "--allow-downgrades". (%default-options): Add 'validate-reconfigure' key. (process-action): Pass #:validate-reconfigure to 'perform-action'. * doc/guix.texi (Invoking guix system): Document 'guix system describe' more prominently, and document '--allow-downgrades'.
* git: 'update-cached-checkout' has a new #:check-out? parameter.Ludovic Courtès2020-07-23
| | | | | * guix/git.scm (update-cached-checkout): Add #:check-out? parameter and honor it.
* git: Factorize 'resolve-reference'.Ludovic Courtès2020-07-23
| | | | | * guix/git.scm (resolve-reference): New procedure. (switch-to-ref): Use it.
* git-authenticate: Show fingerprint in missing-key error message.Ludovic Courtès2020-07-21
| | | | | * guix/git-authenticate.scm (commit-signing-key): In the 'missing-key' case, add call to 'openpgp-format-fingerprint'.
* lint: source: Always return a list.Ludovic Courtès2020-07-21
| | | | | | | | | | Fixes a regression introduced in c10526672e515f07c92dc447bbc592808f67238e. Previously we would return *unspecified* for a package whose source is not an origin. * guix/lint.scm (check-source): Add alternate 'if' branch.
* upstream: 'download-tarball' gracefully handles missing signatures.Ludovic Courtès2020-07-21
| | | | | | | | | | This avoids a backtrace with "guix refresh -u rdiff-backup", which has ".asc" signatures instead of ".sig". * guix/upstream.scm (download-tarball): Gracefully handle the case where SIG is false. * guix/gnu-maintenance.scm (latest-savannah-release): Add comment about 'file->signature'.
* gnu-maintenance: Recognize "RC" as denoting a pre-release tarball.Ludovic Courtès2020-07-20
| | | | * guix/gnu-maintenance.scm (%alpha-tarball-rx): Add "RC".
* gnu-maintenance: Handle lists returned by 'origin-uri'.Ludovic Courtès2020-07-20
| | | | | | | | This fixes "guix refresh man-pages", for instance. * guix/gnu-maintenance.scm (latest-savannah-release) (latest-kernel.org-release): Handle the case where 'origin-uri' returns a list.
* gnu-maintenance: Call 'adjusted-upstream-source' only when there's a source.Ludovic Courtès2020-07-20
| | | | | | | | | This is a followup to 59a47fb67853dd28891376fc970699f11c0f972f. * guix/gnu-maintenance.scm (latest-savannah-release): Call 'adjusted-upstream-source' only when 'latest-html-release' returns true. (latest-kernel.org-release): Likewise.
* json: Re-export 'define-json-mapping' from (json) when available.Ludovic Courtès2020-07-20
| | | | | | | | This prepares for the migration to Guile-JSON 4.3.0. * guix/json.scm (define-as-needed): New macro. (define-json-mapping): Use 'define-as-needed' instead of 'define-syntax-rule'.
* gnu-maintenance: 'kernel.org' and 'savannah' updaters rewrite URLs.Ludovic Courtès2020-07-20
| | | | | | | | | This makes sure they return 'mirror://' URLs rather that URLs pointing to the specific mirror they talk to. * guix/gnu-maintenance.scm (url-prefix-rewrite) (adjusted-upstream-source): New procedures. (latest-savannah-release, latest-kernel.org-release): Use it.
* upstream: Use 'warning' instead of 'format'.Ludovic Courtès2020-07-20
| | | | * guix/upstream.scm (update-package-source): Use 'warning' instead of 'format'.
* download: Add Savannah mirror.Ludovic Courtès2020-07-20
| | | | * guix/download.scm (%mirrors): Add nongnu.freemirror.org.
* gnu-maintenance: Add 'savannah' updater.Ludovic Courtès2020-07-20
| | | | | | | * guix/gnu-maintenance.scm (savannah-package?, %savannah-base) (%savannah-updater): New variables. (latest-savannah-release): New procedure. (latest-xorg-release): Fix docstring.
* gnu-maintenance: 'latest-html-release' honors #:file->signature.Ludovic Courtès2020-07-20
| | | | | * guix/gnu-maintenance.scm (latest-html-release): Call FILE->SIGNATURE instead of the in-line ".tar.sign" policy.
* pack: Build the store database under a UTF-8 locale.Ludovic Courtès2020-07-20
| | | | | | | | | | Fixes <https://bugs.gnu.org/42389>. Reported by branjam4@gmail.com. * guix/scripts/pack.scm (store-database)[build]: Add calls to 'setenv' and 'setlocale'. * tests/pack.scm ("self-contained-tarball + localstatedir, UTF-8 file names"): New test.
* pack: 'self-contained-tarball' runs derivation in a UTF-8local.Ludovic Courtès2020-07-20
| | | | | | | | * guix/scripts/pack.scm (self-contained-tarball) [set-utf8-locale]: New variable. [build]: Use it. * tests/pack.scm ("self-contained-tarball"): Use a <profile> record instead of 'profile-derivation'.
* ssh: Speed up RPCs by using #:nodelay.Lars-Dominik Braun2020-07-20
| | | | | | | | | | Partly fixes <https://bugs.gnu.org/41702>. * guix/ssh.scm (open-ssh-session): Enable #:nodelay. * m4/guix.m4 (GUIX_CHECK_GUILE_SSH): Add feature check for this new parameter. * doc/guix.texi (Requirements): Adjust. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* build-system/maven: Make default-maven-plugins a procedure.Christopher Baines2020-07-17
| | | | | | | | | This allows compiling the module without the (gnu packages maven) module being available. * guix/build-system/maven.scm (%default-maven-plugins): Rename to default-maven-plugins, and convert to a procedure. * doc/guix.texi (maven-build-system): Update.
* guix: Add maven-build-system.Julien Lepiller2020-07-17
| | | | | | | * guix/build-system/maven.scm: New file. * guix/build/maven-build-system.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document the maven build system.
* guix: java-utils: Add Maven-related phases.Julien Lepiller2020-07-17
| | | | | | | | | | | * guix/build/maven/java.scm: New file. * guix/build/maven/plugin.scm: New file. * guix/build/maven/pom.scm: New file. * Makefile.am (MODULES): Add them. * guix/build-system/ant.scm (%ant-build-system-modules): Add them to the build side. * guix/build/java-utils.scm (generate-plugin.xml, install-pom-file) (install-from-pom): New procedures.
* ui: 'with-error-handling' does not unwind the stack.Ludovic Courtès2020-07-15
| | | | | | | | | | | | | | | | | | Since a07d5e558b5403dad0a59776b950b6b02169c249, we've been getting useless backtraces upon unhandled errors, like this: Backtrace: 1 (primitive-load "/home/…/bin/guix") In guix/ui.scm: 1953:12 0 (run-guix-command _ . _) guix/ui.scm:1953:12: In procedure run-guix-command: In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #f This change finally gives us real backtraces back. * guix/ui.scm (guard*): New macro. (call-with-error-handling): Use it instead of 'guard'.
* services: Add 'system-provenance' procedure.Ludovic Courtès2020-07-15
| | | | | | | * gnu/services.scm (sexp->channel, system-provenance): New procedures. * guix/scripts/system.scm (sexp->channel): Remove. (display-system-generation): Use 'system-provenance' instead of parsing the "provenance" file right here.
* packages: Ensure bags are insensitive to '%current-system'.Ludovic Courtès2020-07-13
| | | | | | | | | | | | | Fixes <https://bugs.gnu.org/42327>. Reported by Jan Nieuwenhuizen <janneke@gnu.org>. This is a followup to f52fbf7094c9c346d38ad469cc8d92d18387786e. * guix/packages.scm (bag-transitive-inputs, bag-transitive-build-inputs) (bag-transitive-host-inputs, bag-transitive-target-inputs): Parameterize %CURRENT-SYSTEM in addition to %CURRENT-TARGET-SYSTEM. * tests/packages.scm ("package->bag, sensitivity to %current-system"): New test.
* lint: source: Validate URLs of Git references.Ludovic Courtès2020-07-12
| | | | | | | | Until now the 'source' checker would look at URL for 'url-fetch' origins but not for 'git-fetch' origins. * guix/lint.scm (check-source): Add case for 'git-reference?'. * tests/lint.scm ("source, git-reference: 301 -> 200"): New test.
* scripts: Typo in args-fold*.Jan (janneke) Nieuwenhuizen2020-07-12
| | | | | * guix/scripts.scm (args-fold*): Add missing 'args' parameter so that the all parameter names match their value.
* image: Do not set journal_model=WAL for the Hurd.Jan (janneke) Nieuwenhuizen2020-07-11
| | | | | | | | | | | | | | This fixes <https://bugs.gnu.org/42151>. * gnu/system/images/hurd.scm (hurd-initialize-root-partition): Use #:wal-mode #f in call to ... * gnu/build/image.scm (initialize-root-partition): ... this, add #:wal-mode? parameter, pass it to ... (register-closure): ... this, add #:wal-mode? parameter, pass it to ... * guix/store/database.scm (with-database): ... this, add #:wal-mode? parameter, pass it to ... (call-with-database): ... this, add #:wal-mode? parameter; when set to #f, do not set journal_model=WAL.
* Add 'guix git authenticate'.Ludovic Courtès2020-07-11
| | | | | | | | | | | | * guix/scripts/git.scm, guix/scripts/git/authenticate.scm, tests/guix-git-authenticate.sh: New files. * Makefile.am (MODULES): Add the *.scm files. (SH_TESTS): Add 'tests/guix-git-authenticate.sh'. * doc/guix.texi (Channels)[Specifying Channel Authorizations]: Mention 'guix git authenticate'. (Invoking guix git authenticate): New node. * po/guix/POTFILES.in: Add 'guix/scripts/git.scm' and 'guix/scripts/git/authenticate.scm'.
* git: Add 'with-git-error-handling'.Ludovic Courtès2020-07-11
| | | | | | | * guix/scripts/pull.scm (report-git-error, with-git-error-handling): Move to... * guix/git.scm: ... here. * guix/scripts/time-machine.scm: Adjust accordingly.
* git-authenticate: Factorize 'authenticate-repository'.Ludovic Courtès2020-07-11
| | | | | | | * guix/git-authenticate.scm (repository-cache-key) (verify-introductory-commit, authenticate-repository): New procedures. * guix/channels.scm (verify-introductory-commit): Remove. (authenticate-channel): Rewrite in terms of 'authenticate-repository'.
* download-nar: Hide colliding 'dump-port*' binding.Ludovic Courtès2020-07-10
| | | | | * guix/build/download-nar.scm: Hide 'dump-port*' from (guix serialization).
* cve: Fix typos in <cve> accessor.Ludovic Courtès2020-07-10
| | | | | * guix/cve.scm (<cve>)[references]: Rename accessor to 'cve-references' and fix adjust exported name accordingly.
* git-download: Don't verify X.509 certificate of SWH.Ludovic Courtès2020-07-10
| | | | | | | | | Fixes <https://bugs.gnu.org/42286>. Regression introduced with the switch to Guile 3.0 in commit b6bee63bed4f013064c0d902e7c8b83ed7514ade. * guix/git-download.scm (git-fetch): Parameterize %VERIFY-SWH-CERTIFICATE.
* swh: Allow callers to disable X.509 certificate verification.Ludovic Courtès2020-07-10
| | | | | | | | | | | * guix/swh.scm (%verify-swh-certificate?): New parameter. (http-get*, http-post*): New procedures. (request-rate-limit-reached?): Use 'http-post*' instead of 'http-post'. (update-rate-limit-reset-time!): Likewise. (request-cooking): Likewise. (call): Method defaults to 'http-get*' instead of 'http-get'. Pass #:verify-certificate? to METHOD. (vault-fetch): Likewise.
* maint: Remove traces of "berlin.guixsd.org".Ludovic Courtès2020-07-10
| | | | | | | | | | | | | | The guixsd.org domain is no longer advertised since before in 1.0.0 release in May 2019. * etc/substitutes/berlin.guixsd.org.pub: Rename to... * etc/substitutes/berlin.guix.gnu.org.pub: ... this. * etc/substitutes/ci.guix.gnu.org.pub, etc/substitutes/ci.guix.info.pub: Adjust accordingly. * gnu/services/base.scm (%default-authorized-guix-keys): Likewise. * guix/build/download-nar.scm (urls-for-item): Likewise. * guix/self.scm (miscellaneous-files): Likewise. * Makefile.am (dist_pkgdata_DATA): Likewise.
* weather: Print 0.0% correctly.Arun Isaac2020-07-05
| | | | | * guix/scripts/weather.scm (report-server-coverage): Report 0% coverage as 0.0%, not as .0%.
* import: pypi: Handle 'null instead of #nil.Arun Isaac2020-07-05
| | | | | * guix/import/pypi.scm (non-empty-string-or-false): guile-json now returns 'null instead of #nil for null JSON values. Handle it.
* discovery: Fix typo.Arun Isaac2020-07-05
| | | | | | * guix/discovery.scm (fold-module-public-variables*): In the docstring, replace (PROC MODULE SYMBOL VARIABLE) with (PROC MODULE SYMBOL VARIABLE RESULT).
* download: Replace misconfigured Apache mirror.Tobias Geerinckx-Rice2020-07-05
| | | | | | | | E.g. <http://apache.belnet.be/jakarta/oro/jakarta-oro-2.0.8.tar.gz> redirects to a bogus 200 HTML page. * guix/download.scm (%mirrors): Replace apache.belnet.be with ftp.nluug.nl.
* combinators: Fix typo.Arun Isaac2020-07-05
| | | | * guix/combinators.scm (fold2): Replace "a two lists" with "two lists".
* import: Do not assume that 'package-source' returns an origin.Ludovic Courtès2020-07-03
| | | | | | | * guix/gnu-maintenance.scm (gnu-package?): Check whether 'package-source' returns an origin. * guix/import/github.scm (updated-github-url): Likewise. * guix/import/launchpad.scm (updated-launchpad-url): Likewise.
* upstream: Define 'url-predicate' and use it.Ludovic Courtès2020-07-03
| | | | | | | | | | | | | | | * guix/upstream.scm (url-predicate): New procedure. (url-prefix-predicate): Define in terms of 'url-predicate'. * guix/import/cpan.scm (cpan-package?): Use 'url-predicate'. * guix/import/cran.scm (cran-package?) (bioconductor-package?) (bioconductor-data-package?) (bioconductor-experiment-package?): Likewise. * guix/import/crate.scm (crate-package?): Likewise. * guix/import/elpa.scm (package-from-gnu.org?): Likewise. * guix/import/hackage.scm (hackage-package?): Likewise. * guix/import/pypi.scm (pypi-package?): Likewise. * guix/import/gem.scm (gem-package?): Use 'url-prefix-predicate'.
* lint: Do not assume that a package's source is an origin.Ludovic Courtès2020-07-03
| | | | | | * guix/lint.scm (check-source-file-name): Ensure ORIGIN is an origin. (check-patch-file-names)[patches]: Likewise. (check-source): Likewise.
* guix system: "describe" displays multiboot info.Jan (janneke) Nieuwenhuizen2020-07-03
| | | | | * guix/scripts/system.scm (display-system-generation): Display multiboot-modules commands if set.
* Revert "ui: Use package-description-string."Ludovic Courtès2020-07-02
| | | | | | | | | | This reverts commit bd03e99f66be1a038e3a8aeb502f5153fd05cc67. Reported by Ekaitz Zarraga <ekaitz@elenq.tech> at <https://lists.gnu.org/archive/html/guix-devel/2020-06/msg00338.html>. That commit broke would prevent "description: " from being taken into account by the 'texi->plain-text' paragraph filling code.
* channels: Dependencies listed in '.guix-channel' can have an introduction.Ludovic Courtès2020-07-01
| | | | | | | | | | | Suggested by Ricardo Wurmus and Simon Tournier. * guix/channels.scm (sexp->channel-introduction): New procedure. (read-channel-metadata): Use it. (profile-channels)[sexp->channel-introduction]: Remove. * tests/channels.scm ("latest-channel-instances, authenticate dependency"): New test. * doc/guix.texi (Channels)[Declaring Channel Dependencies]: Augment example.
* services: provenance: Save channel introductions.Ludovic Courtès2020-07-01
| | | | | | | | * gnu/services.scm (channel->code): Include CHANNEL's introduction, if any, unless CHANNEL is the singleton %DEFAULT-CHANNELS. (channel->sexp): Add comment. * guix/scripts/system.scm (sexp->channel): Change pattern to allow for extensibility.