summaryrefslogtreecommitdiff
path: root/guix/scripts
Commit message (Collapse)AuthorAge
* substitute: Validate substitute URLs.Ludovic Courtès2017-05-02
| | | | | | | | Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com> at <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00548.html>. * guix/scripts/substitute.scm (validate-uri): New procedure. (guix-substitute): Use it.
* publish: Use a larger zlib buffer for compression with '--cache'.Ludovic Courtès2017-05-02
| | | | | * guix/scripts/publish.scm (bake-narinfo+nar): Pass #:buffer-size to 'call-with-gzip-output-port'.
* publish: Produce a "FileSize" narinfo field when possible.Ludovic Courtès2017-05-01
| | | | | | | | | | * guix/scripts/publish.scm (narinfo-string): Add #:file-size parameter. Produce a "FileSize" field when COMPRESSION is eq? to '%no-compression' or when FILE-SIZE is true. (bake-narinfo+nar): Pass #:file-size. * tests/publish.scm ("/*.narinfo") ("/*.narinfo with properly encoded '+' sign") ("with cache"): Check for "FileSize".
* refresh: Report packages using the "@" syntax.Ludovic Courtès2017-05-01
| | | | | | * guix/scripts/refresh.scm (list-dependents)[full-name]: New procedure. Use 'full-name' instead of 'package-full-name'. * doc/guix.texi (Invoking guix refresh): Adjust example accordingly.
* ssh: Move 'open-ssh-session' to (guix ssh).Ludovic Courtès2017-04-21
| | | | | | * guix/scripts/copy.scm (%compression, open-ssh-session): Move to... * guix/ssh.scm: ... here. Use '&message' conditions instead of calling 'leave'.
* offload: Avoid using '_' as a 'match' pattern.Ludovic Courtès2017-04-21
| | | | | * guix/scripts/offload.scm (host-key->type+key, machine-load) (process-request, guix-offload): Do not use '_' as a 'match' pattern.
* publish: Add a handler for / and /index.html.Ludovic Courtès2017-04-19
| | | | | | | | Suggested by Quiliro <quiliro@riseup.net> in <https://bugs.gnu.org/26567>. * guix/scripts/publish.scm (render-home-page): New procedure. (make-request-handler): Handle it.
* publish: Remove expired cache entries when '--ttl' is used.Ludovic Courtès2017-04-18
| | | | | | | | * guix/scripts/publish.scm (narinfo-files): New procedure. (render-narinfo/cached)[delete-file]: New procedure. Add call to 'maybe-remove-expired-cache-entries'. * doc/guix.texi (Invoking guix publish): Document the interation between --cache and --ttl.
* Add (guix cache) and use it in (guix scripts substitute).Ludovic Courtès2017-04-18
| | | | | | | | | | | | | | | * guix/cache.scm, tests/cache.scm: New files. * Makefile.am (MODULES, SCM_TESTS): Add them. * guix/scripts/substitute.scm (obsolete?): Remove. (remove-expired-cached-narinfos): Rename to... (cached-narinfo-expiration-time): ... this. Remove the removal part and only keep the expiration time part. (narinfo-cache-directories): Add optional 'directory' parameter and honor it. (maybe-remove-expired-cached-narinfo): Remove. (cached-narinfo-files): New procedure. (guix-substitute): Use 'maybe-remove-expired-cache-entries' instead of 'maybe-remove-expired-cached-narinfo'.
* publish: Add '--cache' and '--workers'.Ludovic Courtès2017-04-18
| | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/26201>. Reported by <dian_cecht@zoho.com>. These options allow nars to be "baked" off-line and cached instead of being compressed on the fly. As a side-effect, this allows us to provide a 'Content-Length' header for nars. * guix/scripts/publish.scm (show-help, %options): Add '--cache' and '--workers'. (%default-options): Add 'workers'. (nar-cache-file, narinfo-cache-file, run-single-baker): New procedures. (single-baker): New macro. (render-narinfo/cached, bake-narinfo+nar) (render-nar/cached): New procedures. (make-request-handler): Add #:cache and #:pool parameters and honor them. (run-publish-server): Likewise. (guix-publish): Honor '--cache' and '--workers'. * tests/publish.scm ("with cache"): New test. * doc/guix.texi (Invoking guix publish): Document it.
* publish: Use 'sendfile' when possible.Ludovic Courtès2017-04-18
| | | | | | * guix/scripts/publish.scm (http-write): In the 'application/octet-stream' case, use 'sendfile' when OUTPUT is a file port.
* publish: Introduce 'actual-compression'.Ludovic Courtès2017-04-18
| | | | | * guix/scripts/publish.scm (actual-compression): New procedure. (narinfo-string): Use it.
* scripts: system: Rename --no-grub option to --no-bootloader.Mathieu Othacehe2017-04-17
| | | | | | | * guix/scripts/system.scm (%options, show-help): Adjust accordingly. Keep "--no-grub" for compatibility reasons, but do not mention it in the help. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* lint: Avoid non-literal format strings.Ludovic Courtès2017-04-16
| | | | | | | | | | | Reported by Mathieu Othacehe <m.othacehe@gmail.com> at <http://bugs.gnu.org/26498>. * guix/scripts/lint.scm (warn-if-package-has-input): Rename to... (package-input-intersection): ... this. Remove 'linted' and 'message' parameters. Return a list of inputs. (check-inputs-should-be-native): Adjust accordingly. (check-inputs-should-not-be-an-input-at-all): Likewise.
* services: 'service-parameters' becomes 'service-value'.Ludovic Courtès2017-04-16
| | | | | | | | | * gnu/services.scm (<service>)[parameters]: Rename to... [value]: ... this. Change calls to 'service-parameters' to 'service-value'. * gnu/system.scm, gnu/tests/base.scm, guix/scripts/system.scm, tests/services.scm: Likewise. * doc/guix.texi (Service Reference): Adjust accordingly.
* system: Make grub use <menu-entry> instead of <boot-parameters> again.Danny Milosavljevic2017-04-15
| | | | | | | | * gnu/system/grub.scm: Remove boot-parameters->menu-entry. (grub-configuration): Don't use boot-parameters->menu-entry. * gnu/system.scm (operating-system-bootcfg): Use menu-entry. * guix/scripts/system.scm (reinstall-grub): Use profile-grub-entries. (perform-action): Use profile-grub-entries.
* scripts: system: Introduce profile-boot-parameters.Danny Milosavljevic2017-04-15
| | | | | | | | * guix/scripts/system.scm (profile-boot-parameters): New variable. (reinstall-grub): Use profile-boot-parameters. (perform-action): Use profile-boot-parameters. Follow-up to 2e58e05bb68d4b747882cfa2b460b132d456f54a.
* scripts: system: Rename grub? and install-grub? to bootloader? and ↵Mathieu Othacehe2017-04-15
| | | | | | | | | install-bootloader?. * guix/scripts/system.scm (perform-action): Rename grub? to bootloader, (%options): rename install-grub? to install-bootloader?, (%default-options): ditto, (process-action): reindent and rename grub? to bootloader?.
* system: Rename operating-system-grub.cfg to operating-system-bootcfg.Mathieu Othacehe2017-04-15
| | | | | | | | | | | * gnu/system.scm (operating-system-grub.cfg): Rename to... (operating-system-bootcfg): ... this. * gnu/system/vm.scm (system-disk-image): Use operating-system-bootcfg. (system-qemu-image): Use operating-system-bootcfg. (system-qemu-image/shared-store): Use operating-system-bootcfg. * guix/scripts/system.scm (perform-action): Use operating-system-bootcfg. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* scripts: system: Back out operating-system-bootcfg change.Danny Milosavljevic2017-04-15
| | | | | | | Follow-up to 475e2ce211ac05a814c1f1bc2b9648baa17ad369. * guix/scripts/system.scm (perform-action): Back out operating-system-bootcfg change.
* scripts: system: Move save-load-path-excursion and ↵Danny Milosavljevic2017-04-15
| | | | | | | | | | save-environment-excursion macros to the top. * guix/scripts/system.scm (save-load-path-excursion, save-environment-excursion): Move definitions to the top of the file. It allows to use them in the whole file. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* scripts: system: Move save-load-path-excursion and ↵Mathieu Othacehe2017-04-15
| | | | | | | | | | save-environment-excursion macros to the top. * guix/scripts/system.scm (save-load-path-excursion, save-environment-excursion): Move definitions to the top of the file. It allows to use them in the whole file. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* pack: Add '--expression'.Ludovic Courtès2017-04-07
| | | | | | | * guix/scripts/pack.scm (%options, show-help): Add '--expression'. (guix-pack)[maybe-package-argument]: New procedure. Use it, and remove variable 'specs'. * doc/guix.texi (Invoking guix pack): Document '--expression'.
* size: Avoid '_' as a pattern variable in 'match'.Ludovic Courtès2017-04-07
| | | | | * guix/scripts/size.scm (display-profile, profile->page-map): Don't use '_' as a 'match' pattern variable.
* system: Support the --root option in 'guix system'.Chris Marusich2017-04-06
| | | | | | | | | | | | | Fixes <https://bugs.gnu.org/26271>. * guix/scripts/system.scm (perform-action): Add #:gc-root parameter and honor it. (show-help): Document the --root option. (%options): Add 'root'. (process-action): Pass 'root' option to perform-action as #:gc-root. * doc/guix.texi (Invoking guix system): Document '--root'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* build: Add and export procedure 'register-root*'.Chris Marusich2017-04-06
| | | | | | * guix/scripts/build.scm (register-root*): Add and export it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* environment: Deal with single-entry search paths.Ludovic Courtès2017-04-05
| | | | | | | This is a followup to fcd75bdbfa99d14363b905afbf914eec20e69df8. * guix/scripts/environment.scm (create-environment): Check whether SEPARATOR is #f.
* build: Export register-root procedure.Chris Marusich2017-04-05
| | | | | | * guix/scripts/build.scm: Export register-root procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* Merge branch 'core-updates'Ludovic Courtès2017-04-03
|\
| * Merge branch 'master' into core-updatesMarius Bakke2017-03-30
| |\ | | | | | | | | | Most conflicts are from 6fd52309b8f52c9bb59fccffac53e029ce94b698.
| * \ Merge branch 'master' into core-updatesLeo Famulari2017-03-27
| |\ \
| * \ \ Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner2017-03-23
| |\ \ \
| * \ \ \ Merge branch 'master' into core-updatesMark H Weaver2017-03-19
| |\ \ \ \
| * \ \ \ \ Merge branch 'master' into core-updatesMarius Bakke2017-03-15
| |\ \ \ \ \
| * \ \ \ \ \ Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner2017-03-13
| |\ \ \ \ \ \
| * \ \ \ \ \ \ Merge branch 'master' into core-updatesLudovic Courtès2017-03-09
| |\ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner2017-02-20
| |\ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ Merge branch 'master' into core-updatesLudovic Courtès2017-02-10
| |\ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ Merge branch 'master' into core-updatesLeo Famulari2017-02-02
| |\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ Merge branch 'master' into core-updatesLeo Famulari2017-01-25
| |\ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ Merge branch 'master' into core-updatesLudovic Courtès2017-01-23
| |\ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | guix package: Honor the order of profiles when -p appears multiple times.Ludovic Courtès2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/package.scm (process-query): Reverse the order of PROFILES. * tests/guix-package-net.sh: Test it with '--search-paths'.
* | | | | | | | | | | | | | guix: Compress and decompress xz archives in parallel.Efraim Flashner2017-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/pack.scm (%compressors): Add flag '-T0' when calling "xz". * guix/utils.scm (decompressed-port, compressed-port, compressed-output-port): Same.
* | | | | | | | | | | | | | substitute: Send ‘User-Agent’ header.Tobias Geerinckx-Rice2017-03-31
| |_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/substitute.scm (narinfo-request): Pass ‘User-Agent’ #:headers to ‘build-request’.
* | | | | | | | | | | | | import cran: Print package stream in the expected order.Ricardo Wurmus2017-03-28
| |_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/import/cran.scm (guix-import-cran): Reverse list of packages.
* | | | | | | | | | | | ui: Support Texinfo markup in package synopses.Alex Kost2017-03-27
| |_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/ui.scm (package-field-string): New procedure. (package-description-string): Use it. (package-synopsis-string): New procedure. (package->recutils): Use it. * guix/scripts/lint.scm (check-synopsis-style)[check-texinfo-markup]: New procedure. Use it in checks. * tests/lint.scm: Test it. * gnu/packages/perl.scm (perl-try-tiny)[synopsis]: Adjust for the Texinfo markup.
* | | | | | | | | | | publish: Add '--nar-path'.Ludovic Courtès2017-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/publish.scm (show-help, %options): Add '--nar-path'. (%default-options): Add 'nar-path'. (guix-publish): Honor it.
* | | | | | | | | | | publish: Make the nar URL prefix a parameter.Ludovic Courtès2017-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/publish.scm (narinfo-string): Add #:nar-path and honor it. (render-narinfo): Likewise. (make-request-handler): Likewise. (run-publish-server): Likewise. * tests/publish.scm ("custom nar path"): New test.
* | | | | | | | | | | publish: Add '--public-key' and '--private-key'.Ludovic Courtès2017-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/publish.scm (show-help, %options): Add --public-key and --private-key. * doc/guix.texi (Invoking guix publish): Document it.
* | | | | | | | | | | publish: The public and private keys are now SRFI-39 parameters.Ludovic Courtès2017-03-22
| |_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/publish.scm (%default-options): Add 'public-key-file' and 'private-key-file'. (lazy-read-file-sexp): Remove. (%private-key, %public-key): Turn into SRFI-39 parameters. (signed-string, render-narinfo): Adjust accordingly. (guix-publish): Honor 'public-key-file' and 'private-key-file' from OPTS. Use 'parameterize'. * guix/pk-crypto.scm (read-file-sexp): New procedure. * tests/publish.scm: Initialize '%public-key' and '%private-key'.