summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2020-11-29Use substitute servers on the local network.Mathieu Othacehe
* guix/scripts/discover.scm: New file. * Makefile.am (MODULES): Add it. * nix/nix-daemon/guix-daemon.cc (options): Add "discover" option, (parse-opt): parse it, (main): start "guix discover" process when the option is set. * guix/scripts/substitute.scm (%local-substitute-urls): New variable, (substitute-urls): add it. * gnu/services/base.scm (<guix-configuration>): Add "discover?" field, (guix-shepherd-service): honor it. * doc/guix.texi (Invoking guix-daemon): Document "discover" option, (Base Services): ditto.
2020-11-29publish: Add advertising support.Mathieu Othacehe
* guix/scripts/publish.scm (%options): Add "--advertise" option. (show-help): Document it. (service-name): New procedure, (publish-service-type): new variable. (run-publish-server): Add "advertise?" and "port" parameters. Use them to publish the server using Avahi. (guix-publish): Pass the "advertise?" option to "run-publish-server". * gnu/services/base.scm (<guix-publish-configuration>): Add "advertise?" field. (guix-publish-shepherd-service): Honor it.
2020-11-29Add Avahi support.Mathieu Othacehe
* guix/avahi.scm: New file. * Makefile.am (MODULES): Add it. * configure.ac: Add Guile-Avahi dependency. * doc/guix.texi (Requirements): Document it. * gnu/packages/package-management.scm (guix)[native-inputs]: Add "guile-avahi", [propagated-inputs]: ditto. * guix/self.scm (specification->package): Add guile-avahi. (compiled-guix): Ditto.
2020-11-28Merge branch 'staging'Marius Bakke
2020-11-28channels: Expose the default channel in %default-channel.Zhu Zihao
* guix/channels(%default-guix-channel): New variable taken from the inner of %default-channels. (%default-channels): Refactored. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-26Merge branch 'master' into stagingMarius Bakke
2020-11-26deploy: Let key-and-args exceptions through.Ludovic Courtès
Fixes <https://bugs.gnu.org/44825>. Reported by Christopher Lemmer Webber <cwebber@dustycloud.org>. * guix/ui.scm (guard*): Export. * guix/scripts/deploy.scm (deploy-machine*): Use 'guard*' instead of 'guard'. Add '&exception-with-kind-and-args' case.
2020-11-26Merge branch 'master' into stagingMarius Bakke
2020-11-25weather: Fix '--substitute-urls'.zimoun
Fixes <https://bugs.gnu.org/44574>. Reported by Efraim Flashner <efraim@flashner.co.il>. * guix/scripts/weather.scm (guix-weather): Fix when substitute-urls is a list. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-11-23Merge branch 'master' into stagingMarius Bakke
2020-11-23store: Fix ensure-path docstring.Mathieu Othacehe
Suggested by Ludovic Courtès. * guix/store.scm (ensure-path): Fix the docstring.
2020-11-22Merge branch 'master' into stagingMarius Bakke
2020-11-22build-system/cargo: Set gettext environment variable when available.Efraim Flashner
* guix/build/cargo-build-system.scm (configure): When gettext is available in the build environment set the GETTEXT_SYSTEM variable. * gnu/packages/crates-io.scm (rust-gettext-rs-0.5, rust-gettext-rs-0.4, rust-gettext-sys-0.19)[arguments]: Remove phase to help find system gettext.
2020-11-22build-system/cargo: Set libclang environment variable when available.Efraim Flashner
* guix/build/cargo-build-system.scm (configure): When clang is available in the build environment set the LIBCLANG_PATH variable. * gnu/packages/crates-graphics.scm (rust-aom-sys-0.1, uust-dav1d-sys-0.3), * gnu/packages/crates-io.scm (rust-bindgen-0.55, rust-bindgen-0.54, rust-bindgen-0.53, rust-bindgen-0.52, rust-cexpr-0.4, rust-cexpr-0.3, rust-cexpr-0.2, rust-clang-sys-1, rust-clang-sys-0.29, rust-clang-sys-0.26, rust-clang-sys-0.22, rust-clang-sys-0.11, rust-libpijul-0.12, rust-nettle-7, rust-nettle-sys-2, rust-sequoia-openpgp-0.9)[arguments]: Remove phases which set an environment variable to find clang. [inputs]: Rename instances of libclang with clang.
2020-11-22build-system/cargo: Set openssl environment variable when available.Efraim Flashner
* guix/build/cargo-build-system.scm (configure): When openssl is available set the OPENSSL_DIR variable to discover its location. * gnu/packages/crates-io.scm (rust-curl-sys-0.4, rust-libgit2-sys-0.10, rust-libpijul-0.12, rust-libssh2-sys-0.2, rust-native-tls-0.2, rust-openssl-sys-0.9, rust-openssl-0.7, rust-trust-dns-rustls-0.6), * gnu/packages/rust-apps.scm (tokei, exa)[arguments]: Remove redundant setenv for openssl.
2020-11-22scripts: publish: Export procedures.Mathieu Othacehe
* guix/scripts/publish.scm (open-server-socket, run-publish-server): Export those procedures. (%default-gzip-compression): Export it.
2020-11-22guix: store: Add ensure-path.Mathieu Othacehe
* guix/store.scm (ensure-path): New procedure.
2020-11-22linux-initrd: Add special-file->cpio-header*.Danny Milosavljevic
* guix/cpio.scm (special-file->cpio-header*): New public procedure.
2020-11-22linux-initrd: Handle 'block-special and 'char-special cpio headers as well.Danny Milosavljevic
* guix/cpio.scm (make-cpio-header): Handle size correctly for all file types. (mode->type): Add 'block-special, 'char-special.
2020-11-21lint: Add 'check-haskell-stackage' checker.Timothy Sample
* guix/lint.scm (check-haskell-stackage): New procedure. (%network-dependent-checkers): Add 'haskell-stackage' checker. * guix/import/hackage.scm (%hackage-url): New variable. (hackage-source-url, hackage-cabal-url): Use it in place of a hard-coded string. * guix/import/stackage.scm (%stackage-url): Make it a parameter. (stackage-lts-info-fetch): Update accordingly. * tests/lint.scm ("hackage-stackage"): New test.
2020-11-21lint: Add 'patch-headers' checker.Ludovic Courtès
* guix/lint.scm (check-patch-headers): New procedure. (%local-checkers): Add 'patch-headers' checker. * tests/lint.scm ("patch headers: no warnings") ("patch headers: missing comment", "patch headers: empty") ("patch headers: patch not found"): New tests.
2020-11-21transformations: Show '--help-transform' only where applicable.Ludovic Courtès
Fixes <https://bugs.gnu.org/44773>. Reported by Florian Pelz <pelzflorian@pelzflorian.de>. This fixes a regression introduced in 6701f64f7329cdbeda70bcaf38523c9098e5a938. * guix/transformations.scm (%transformation-options): Add "--help-transform". (show-transformation-options-help): Rename to... (show-transformation-options-help/detailed): ... this. (show-transformation-options-help): New public procedure. * guix/scripts/build.scm (show-build-options-help): Remove "--help-transform". (%standard-build-options): Likewise. (show-help): Call 'show-transformation-options-help'. * guix/scripts/environment.scm (show-help): Likewise. * guix/scripts/graph.scm (show-help): Likewise. * guix/scripts/install.scm (show-help): Likewise. * guix/scripts/pack.scm (show-help): Likewise. * guix/scripts/package.scm (show-help): Likewise. * guix/scripts/upgrade.scm (show-help): Likewise.
2020-11-21scripts: lint: Display result of checkers on stdout.Brice Waegeneire
* guix/scripts/lint.scm (emit-warnings): Use 'current-output-port' instead of 'current-error-port'. Signed-off-by: Christopher Baines <mail@cbaines.net>
2020-11-20build-system/cargo: Do not pass --features to Cargo unless specified.Marius Bakke
Fixes <https://bugs.gnu.org/44692>. * guix/build/cargo-build-system.scm (build): Default to the empty list for FEATURES. Check whether the list is empty when building the Cargo arguments.
2020-11-19Merge branch 'master' into stagingMarius Bakke
2020-11-18guix: refresh: Do not use argument jumping with ngettext.Miguel Ángel Arruga Vivas
* guix/scripts/refresh.scm (list-dependents)[lst]: Use ~d for the singular format string, as the argument jumping would trigger an error during en@boldquot.mo generation.
2020-11-17Merge remote-tracking branch 'origin/version-1.2.0' into masterMaxim Cournoyer
Conflicts: gnu/packages/bioinformatics.scm The python-pysam package fixed in master was kept instead of the update done in the version-1.2.0 branch.
2020-11-17guix: system: Make disk-image root file system non-volatile by default.Maxim Cournoyer
And add a new '--volatile' option to have it volatile otherwise. * guix/scripts/system.scm (%options)[volatile-root?]: New boolean option. (%default-options): Set its default value to #f. (show-help): Add help doc. * guix/scripts/system.scm (perform-action): Propagate option... (system-derivation-for-action): ...here. Use it to set the volatile-root? field of the image object passed to SYSTEM-IMAGE. * doc/guix.texi (Invoking guix system): Document it.
2020-11-16pull: Do not suggest running `guix pull --news' on the first run.Florian Pelz
* guix/scripts/pull.scm (display-channel-news-headlines): If there are no news to display, return false instead of <unspecified>.
2020-11-16self: Limit the number of threads used when translating manuals.Ludovic Courtès
* guix/self.scm (translate-texi-manuals)[build](parallel-jobs): New variable. Use it as first argument to 'n-par-for-each'.
2020-11-16utils: Add 'cxx-for-target'.Danny Milosavljevic
* guix/utils.scm (cxx-for-target): New procedure.
2020-11-16publish: Harmonize buffer size values and configuration.Maxim Cournoyer
This change harmonizes the way we configure the buffer sizes and the socket options, so that we don't forget to change it at one place like it happened in commit 5e3d169945935b53325e6b738a307ba286751259. * guix/scripts/publish.scm (%default-buffer-size) (%default-socket-options): New variables. * guix/scripts/publish.scm (configure-socket): New procedure. (compress-nar): Use %default-buffer-size for the buffer size, increased from 128 to 208 KiB. (nar-response-port): Likewise, increased from 64 to 208 KiB. (http-write): Use configure-socket to set socket options. (open-server-socket): Likewise.
2020-11-15Merge branch 'master' into stagingMarius Bakke
2020-11-15archive: Warn about replacing an ACL symlink.Tobias Geerinckx-Rice
* guix/scripts/archive.scm (authorize-key): Warn when %ACL-FILE is a symbolic link and print an additional hint for Guix System users. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-11-14guix: hg-download: Add hg-predicate.Holger Peters
`hg-predicate' acts for mercurial repositories as `git-predicate' acts for git-repositories. * guix/hg-download.scm (hg-predicate): New procedure. Signed-off-by: Christopher Baines <mail@cbaines.net>
2020-11-13guix build: Expose log-url for third parties.John Soo
* guix/scripts/build.scm (log-url): Expose it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-13pack: Expose some bindings for third-party use.John Soo
* guix/scripts/pack.scm (compressor-name, compressor-extension, compressor-command, %compressors, %formats): Export. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-12Merge branch 'version-1.2.0'Ludovic Courtès
2020-11-12lint: patch-file-names: Simplify 'search-patch' error handling.Ludovic Courtès
* guix/lint.scm (check-patch-file-names): Remove 'message-condition?' guard, which is useless since d51bfe242fbe6f3f8f71d723e8fe0c7bbe711ba1. Remove call to 'format' in the 'formatted-message?' case.
2020-11-11Merge branch 'master' into stagingMarius Bakke
2020-11-10publish: Increase TCP buffer size when sending non-cached nars.Ludovic Courtès
This increases throughput tenfold (!) on localhost when downloading large nars without '--cache'. This is a followup to 5e3d169945935b53325e6b738a307ba286751259. Reported by Maxim Cournoyer. * guix/scripts/publish.scm (http-write): In the 'application/x-nix-archive' case, add call to 'setsockopt'.
2020-11-10guix: ocaml: Add package-with-ocaml4.09.Julien Lepiller
* guix/build-system/ocaml.scm (package-with-ocaml4.09) (strip-ocaml4.09-variant): New variables. * gnu/packages/ocaml.scm (ocaml4.09-result, ocaml4.09-csexp) (ocaml4.09-dune-configurator, ocaml4.09-dune): New variables.
2020-11-10ui: Use the right accessor when reporting '&gexp-input-error'.Ludovic Courtès
* guix/ui.scm (call-with-error-handling): In the 'gexp-input-error?' case, use 'gexp-error-invalid-input' as the accessor.
2020-11-09publish: Create files in the cache as #o644.Ludovic Courtès
Reported by Ricardo Wurmus <rekado@elephly.net>. * guix/scripts/publish.scm (compress-nar): Add 'chmod' call to ensure PORT is #o644, in the uncompressed case. (bake-narinfo+nar): Likewise for the narinfo file. * tests/publish.scm ("with cache"): Check permissions on CACHED and NAR.
2020-11-08publish: Create files in the cache as #o644.Ludovic Courtès
Reported by Ricardo Wurmus <rekado@elephly.net>. * guix/scripts/publish.scm (compress-nar): Add 'chmod' call to ensure PORT is #o644, in the uncompressed case. (bake-narinfo+nar): Likewise for the narinfo file. * tests/publish.scm ("with cache"): Check permissions on CACHED and NAR.
2020-11-07Merge branch 'master' into stagingMarius Bakke
Conflicts: gnu/local.mk gnu/packages/gdb.scm gnu/packages/lisp-xyz.scm gnu/packages/web-browsers.scm
2020-11-06ui: Add missing format argument in 'warn-about-load-error'.Ludovic Courtès
* guix/ui.scm (warn-about-load-error): Add missing argument to 'warning'.
2020-11-05pack: Do not include the host (guix config).Ludovic Courtès
* guix/scripts/pack.scm (store-database)[build]: Import a synthetic (guix config).
2020-11-05gexp: Warn when importing (guix config) or (ice-9 …).Ludovic Courtès
While importing those modules from the host system is valid, it is often a mistake that introduces non-reproducibility. This patch prints a warning when that happens. * guix/gexp.scm (gexp-attribute): Add #:validate parameter and honor it. (gexp-modules)[validate-modules]: New procedure. Pass it to 'gexp-attribute'. * tests/gexp.scm ("gexp-modules, warning"): New test.
2020-11-05gexp: Store the source code location in <gexp>.Ludovic Courtès
* guix/gexp.scm (<gexp>)[location]: New field. (gexp-location): New procedure. (write-gexp): Print the location of GEXP. (gexp->derivation): Adjust call to 'make-gexp'. (gexp): Likewise.