Age | Commit message (Expand) | Author |
2014-12-06 | guix: scripts: Parse $GUIX_BUILD_OPTIONS separately.•••Appending to "raw" args broke optional parameters in 'guix package -I'
and 'guix package -A', and possibly other places. Therefore, switch to
parsing each set of options on its own and append resulting alists
together afterwards.
* guix/scripts/archive.scm (parse-options-from): Rename from
(parse-options) and add explicit argument. New form of (parse-options)
using its old algorithm via -from function.
* guix/scripts/build.scm: Ditto.
* guix/scripts/environment.scm: Ditto.
* guix/scripts/package.scm: Ditto.
* guix/scripts/system.scm: Ditto.
* tests/guix-package.sh: Add test.
* doc/guix.texi (Invoking guix build): Make it clear that the options
are parsed independently.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| nebuli |
2014-12-04 | system: Make /boot/grub/grub.cfg an indirect GC root.•••Fixes <http://bugs.gnu.org/19160>.
* guix/scripts/system.scm (install-grub*): Make /boot/grub/grub.cfg an
indirect GC root.
* gnu/build/install.scm (install-grub): Make TARGET a symlink.
* gnu/build/vm.scm (register-grub.cfg-root): New procedure.
(initialize-hard-disk): Use it.
| Ludovic Courtès |
2014-12-04 | guix system: Factorize 'grub-install' error handling, and use more 'mbegin'.•••* guix/scripts/system.scm (install-grub*): New procedure.
(install): Use it, and use 'mwhen?'.
(perform-action) <reconfigure>: Likewise.
| Ludovic Courtès |
2014-12-02 | build: emacs-utils: Add 'emacs-generate-autoloads'.•••* guix/build/emacs-utils.scm (emacs-generate-autoloads): New procedure.
| Alex Kost |
2014-12-02 | packages: Use the target's system Guile when downloading patches.•••* guix/packages.scm (patch-and-repack)[patch-inputs]: Pass SYSTEM in
'package-source-derivation' call.
| Ludovic Courtès |
2014-12-02 | derivations: Export 'derivation-builder'.•••* guix/derivations.scm: Export 'derivation-builder'.
| Ludovic Courtès |
2014-12-02 | monads: Add 'lift0'.•••* guix/monads.scm (lift0): New variable.
| Ludovic Courtès |
2014-12-02 | monads: Add 'mwhen' and 'munless'.•••* guix/monads.scm (mbegin): Add special '%current-monad' syntactic
keyword.
(mwhen, munless): New macros.
| Ludovic Courtès |
2014-12-02 | guix system: Use 'mbegin' for 'install'.•••* guix/scripts/system.scm (install): Use 'mbegin'. Lift FORMAT and
POPULATE-ROOT-FILE-SYSTEM, and use the result.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Allow specific outputs to be excluded from wrapping.•••* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and honor it.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and pass it in BUILDER.
* doc/guix.texi (Build Systems): Mention it.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Correctly handle multiple-output packages.•••* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Move body
to 'handle-output' inner procedure, and parametrize it by output name
and directory. Call it for each element of OUTPUTS.
(compile-glib-schemas): Likewise.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Use 'for-each' and 'cut' as appropriate.•••* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Use
'for-each' instead of 'map' in for-effect contexts. Use 'cut' instead
of 'lambda' when appropriate.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Clean up whitespace.•••* guix/build/glib-or-gtk-build-system.scm: M-x whitespace-cleanup.
| Ludovic Courtès |
2014-12-01 | build-system/gnu: Add 'compress-documentation' phase.•••* guix/build/gnu-build-system.scm (compress-documentation): New
procedure.
(%standard-phases): Add it.
| Ludovic Courtès |
2014-12-01 | utils: Add 'symbolic-link?'.•••* guix/build/utils.scm (symbolic-link?): New procedure.
| Ludovic Courtès |
2014-12-01 | build-system/gnu: Add 'validate-documentation-location' phase.•••* guix/build/gnu-build-system.scm (validate-documentation-location): New
procedure.
(%standard-phases): Add it.
| Ludovic Courtès |
2014-11-30 | guix: scripts: Add GUIX_BUILD_OPTIONS environment handling.•••* doc/guix.texi (Invoking guix build): Mention 'GUIX_BUILD_OPTIONS'.
* guix/scripts/archive.scm: (append args (environment-build-options)).
* guix/scripts/build.scm: Ditto.
* guix/scripts/environment.scm: Ditto.
* guix/scripts/package.scm: Ditto.
* guix/scripts/system.scm: Ditto.
* guix/ui.scm (environment-build-options): New function.
* guix/utils.scm (arguments-from-environment-variable): New function.
* tests/guix-build.sh: Add tests.
* test-env.in: Unset GUIX_BUILD_OPTIONS.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| nebuli |
2014-11-29 | gnu-maintenance: Support .zip files.•••Reported by Andreas Enge <andreas@enge.fr>.
* guix/gnu-maintenance.scm (sans-extension): Add case for ".zip".
(%tarball-rx): Extend to handle .zip extension.
| Ludovic Courtès |
2014-11-28 | Add (guix elf).•••* guix/elf.scm: New file. Taken from Guile 'master', commit 3f826e3.
* Makefile.am (MODULES): Add it.
* THANKS: Thank Andy, who wrote this module.
| Ludovic Courtès |
2014-11-28 | substitute-binary: Change "unresponsive" to "slow".•••* guix/scripts/substitute-binary.scm (fetch): Change "unresponsive" to
"somewhat slow". I'm being told that the former is often
misunderstood as "broken".
| Ludovic Courtès |
2014-11-26 | Update gnupg mirrors.•••* guix/download.scm (%mirrors): Update mirror list for gnupg.
| Andreas Enge |
2014-11-26 | utils: Improve docstring of 'substitute*' & co.•••* guix/build/utils.scm (substitute): Clarify first sentence of
docstring and add warning to the docstring about using '$' to match
an end of line.
(substitute*): Add warning to the docstring about using '$' to match
an end of line.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Taylan Ulrich Bayırlı/Kammer |
2014-11-25 | guix build: Add '--max-jobs' option.•••Suggested by Deck Pickard <deck.r.pickard@gmail.com>.
* guix/scripts/build.scm (show-build-options-help): Document
--max-jobs.
(set-build-options-from-command-line): Pass #:max-build-jobs.
(%standard-build-options): Add --max-jobs.
* doc/guix.texi (Invoking guix-daemon): Document the meaning of
'--max-jobs 0'.
(Invoking guix build): Document --max-jobs, with a reference to
"Invoking guix-daemon'.
| Ludovic Courtès |
2014-11-25 | licenses: Add MPL 1.1.•••* guix/licenses.scm (mpl1.1): New variable.
| Ludovic Courtès |
2014-11-25 | import: gnu: Write the hash in nix-base32 format.•••* guix/import/gnu.scm (gnu-package->sexp): Use
'bytevector->nix-base32-string', not 'bytevector->base32-string'.
| Ludovic Courtès |
2014-11-24 | build-system/gnu: Gracefully handle dangling symlinks in the 'strip' phase.•••* guix/build/gnu-build-system.scm (strip): Check whether 'file-exists?'
before calling 'elf-file?' and 'ar-file?'. This should fix build
failures in the presence of dangling symlinks, as in
<http://hydra.gnu.org/build/167521/nixlog/1/raw>.
| Ludovic Courtès |
2014-11-23 | store: default to serial "scheduler"•••* guix/store.scm (set-build-options): exchange default argument values
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| nebuli |
2014-11-23 | utils: 'elf-file?' and 'ar-file?' return #f for directories.•••This avoids uncaught exceptions when the 'strip' phase would call these
procedures on symlinks to directories, such as 'lib/terminfo' in
ncurses (see <http://hydra.gnu.org/build/167310/nixlog/1/tail-reload>.)
* guix/build/utils.scm (file-header-match): Catch 'system-error', and
return #f upon EISDIR.
| Ludovic Courtès |
2014-11-22 | utils: Turn 'parallel-job-count' into a parameter.•••* guix/build/utils.scm (parallel-job-count): Turn into a SRFI-39 parameter.
| Ludovic Courtès |
2014-11-22 | build-system/gnu: Strip 'ar' archives as well.•••* guix/build/gnu-build-system.scm (strip): Also strip when (ar-file?
PATH) is true.
| Ludovic Courtès |
2014-11-22 | utils: Factorize magic bytes detection.•••* guix/build/utils.scm (file-header-match): New procedure.
(%elf-magic-bytes): New variable.
(elf-file?, ar-file?): Define using 'file-header-match'.
| Ludovic Courtès |
2014-11-22 | utils: Add 'ar-file?'.•••* guix/build/utils.scm (%ar-magic-bytes): New variable.
(ar-file?): New procedure.
| Ludovic Courtès |
2014-11-22 | build-system/gnu: Strip only ELF files.•••Suggested by Mark H Weaver <mhw@netris.org>
at <http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00395.html>.
* guix/build/gnu-build-system.scm (strip)[strip-dir]: Strip only
when (elf-file? PATH) is true.
| Ludovic Courtès |
2014-11-22 | utils: Add 'elf-file?'.•••* guix/build/utils.scm (elf-file?): New procedure.
| Ludovic Courtès |
2014-11-22 | utils: Export 'parallel-job-count'.•••* guix/build/utils.scm (parallel-job-count): New procedure.
* guix/build/gnu-build-system.scm (%parallel-job-count): Remove.
(build, check): Use 'parallel-job-count' instead.
| Ludovic Courtès |
2014-11-21 | guix system: Add '--share' and '--expose' options for 'vm'.•••* guix/scripts/system.scm (system-derivation-for-action): Add #:mappings
parameter. Pass it to 'system-qemu-image/shared-store-script'.
(perform-action): Likewise.
(show-help): Document --share and --expose.
(specification->file-system-mapping): New procedure.
(%options): Add --share and --expose.
(guix-system): Pass #:mapping to 'perform-action'.
* doc/guix.texi (Invoking guix system): Document it.
| Ludovic Courtès |
2014-11-19 | lint: Fix typos in checker descriptions.•••* guix/scripts/lint.scm (%checkers): "file names" (two words), and
"synopses" (plural).
| Ludovic Courtès |
2014-11-19 | lint: Use localized checker descriptions.•••* guix/scripts/lint.scm (list-checkers-and-exit): Wrap
'lint-checker-description' call in (_ ...).
| Ludovic Courtès |
2014-11-19 | lint: Correctly internationalize warning messages.•••* guix/scripts/lint.scm (emit-warning): Remove '_' call for format
string.
(check-description-style, check-inputs-should-be-native,
check-synopsis-style, check-patches, check-gnu-synopsis+description):
Wrap message in (_ ...).
| Ludovic Courtès |
2014-11-19 | lint: Change checker names to be symbols.•••* guix/scripts/lint.scm (%checkers): Change 'name' fields to be
symbols.
(%options): Adjust "-c" option handler accordingly.
| Ludovic Courtès |
2014-11-19 | lint: Fold 'sync-descriptions' script as 'gnu-description' lint checker.•••* build-aux/sync-descriptions.scm: Remove. Move payload to...
* guix/scripts/lint.scm: ... here.
(escape-quotes, official-gnu-packages*,
check-gnu-synopsis+description): New procedures.
(%checkers): Add 'gnu-descriptions'.
* Makefile.am (EXTRA_DIST): Remove build-aux/sync-descriptions.scm.
(sync-descriptions): Use 'guix lint'.
| Ludovic Courtès |
2014-11-19 | licenses: Add the Clarified Artistic License.•••* guix/licenses.scm (clarified-artistic): New variable.
| Ludovic Courtès |
2014-11-14 | syscalls: Update /etc/mtab, not /etc/fstab.•••* guix/build/syscalls.scm (remove-from-mtab): Replace "fstab" with
"mtab".
| Ludovic Courtès |
2014-11-13 | substitute-binary: Be slightly less verbose when downloading.•••* guix/scripts/substitute-binary.scm (guix-substitute-binary)<"--substitute">:
Be slightly less verbose.
| Ludovic Courtès |
2014-11-13 | derivations: Clarify message produced by 'graft-derivation'.•••* guix/derivations.scm (graft-derivation): Use the term "grafting" in
the build message.
| Ludovic Courtès |
2014-11-11 | guix system: Decorate GRUB entries of old generations with date and number.•••* guix/scripts/system.scm (seconds->string): New procedure.
(previous-grub-entries)[system->grub-entry]: Add 'number' and 'time'
parameters. Adjust call accordingly.
| Ludovic Courtès |
2014-11-11 | import: Add GNU importer.•••Suggested by Karl Berry <karl@gnu.org>
and Andreas Enge <andreas@enge.fr>.
* guix/import/gnu.scm, guix/scripts/import/gnu.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/scripts/import.scm (importers): Add "gnu".
* guix/gnu-maintenance.scm (gnu-release-archive-types): New procedure.
(download-tarball): Export.
| Ludovic Courtès |
2014-11-11 | gnu-maintenance: Introduce <gnu-release> data type.•••* guix/gnu-maintenance.scm (<gnu-release>): New record type.
(release-file): Rename to...
(release-file?): ... this. Return a Boolean.
(tarball->version, coalesce-releases): New procedures.
(releases): Call 'coalesce-releases' on RESULT. Return <gnu-release>
objects instead of pairs.
(latest-release): Likewise.
(package-update-path): Adjust accordingly.
* gnu/packages.scm (check-package-freshness): Adjust accordingly.
| Ludovic Courtès |
2014-11-10 | syscalls: Add 'mount-points'.•••* guix/build/syscalls.scm (mount-points): New procedure.
* tests/syscalls.scm ("mount-points"): New test.
| Ludovic Courtès |
2014-11-10 | licenses: Add 'silofl1.1'.•••* guix/licenses.scm (silofl1.1): New variable.
| Alex Kost |