Age | Commit message (Expand) | Author |
2014-11-10 | doc: Mention 'guix environment' in "Features"; add index entries....* doc/guix.texi (Features): Add paragraph about 'guix environment'.
(Build Systems): Add @cindex.
(Invoking guix environment): Ditto.
| Ludovic Courtès |
2014-11-10 | doc: Add "GRUB Configuration"....* doc/guix.texi (operating-system Reference): Add xref to "GRUB
Configuration".
(GRUB Configuration): New node.
| Ludovic Courtès |
2014-11-10 | doc: Avoid @indentedblock, which is not supported by Texinfo 4....Reported by Mark H Weaver.
* doc/guix.texi (Security Updates): Use @quotation instead of
@indentedblock; the latter is not supported by Texinfo 4.
| Ludovic Courtès |
2014-11-09 | gexp: Add #:module-path parameter to 'gexp->derivation'....* guix/gexp.scm (gexp->derivation): Add #:module-path parameter, and
pass it to 'imported-modules' and 'compiled-modules'.
* doc/guix.texi (G-Expressions): Adjust accordingly.
| Ludovic Courtès |
2014-11-08 | vm: The 'run-vm' scripts now passes its arguments to QEMU....* gnu/system/vm.scm (system-qemu-image/shared-store-script): Add "$@" at
the end of the script.
(common-qemu-options): Remove trailing newline.
* doc/guix.texi (Invoking guix system): Document it.
| Ludovic Courtès |
2014-11-08 | vm: Fix 'vm --full-boot' to produce a sufficient disk image....* gnu/system/vm.scm (system-qemu-image/shared-store): Add
#:disk-image-size and #:full-boot? parameters and honor them. Pass
'#:copy-inputs? full-boot?', and change #:inputs argument.
* guix/scripts/system.scm (system-derivation-for-action): Pass
#:disk-image-size to 'system-qemu-image/shared-store'.
* doc/guix.texi (Invoking guix system): Mention use of '--image-size' in
conjunction with '--full-boot'.
| Ludovic Courtès |
2014-11-08 | vm: Support 'guix system vm --full-boot'....* gnu/system/vm.scm (system-qemu-image/shared-store-script): Add
#:full-boot? parameter and honor it.
* guix/scripts/system.scm (system-derivation-for-action): Likewise.
(perform-action): Likewise.
(show-help): Document '--full-boot'.
(%options): Add '--full-boot'.
(guix-system): Add #:full-boot? argument in call to 'perform-action'.
* doc/guix.texi (Invoking guix system): Document it.
| Ludovic Courtès |
2014-11-08 | doc: Emphasize the availability of two user interfaces....* doc/guix.texi (Package Management): Add a word about the two user
interfaces.
| Ludovic Courtès |
2014-11-07 | emacs: Add 'guix-prettify'....* emacs/guix-prettify.el: New file.
* emacs.am (ELFILES): Add it.
* doc/emacs.texi (Emacs Prettify): New node.
* doc/guix.texi (Features): Mention it.
| Alex Kost |
2014-11-07 | services: xorg: Allow users to specify a list of resolutions....* gnu/services/xorg.scm (xorg-start-command): Add #:resolutions
parameter and 'screen-section' procedure. Use it.
* doc/guix.texi (X Window): Adjust accordingly.
| Ludovic Courtès |
2014-11-07 | services: xorg: Allow users to specify the drivers to use....* gnu/services/xorg.scm (xorg-start-command): Add #:drivers parameter.
Add 'device-section' procedure, and use it in 'xserver.conf'.
* doc/guix.texi (X Window): Document it.
| Ludovic Courtès |
2014-11-05 | services: Add NTP service....* gnu/services/networking.scm (ntp-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
| Ludovic Courtès |
2014-11-02 | packages: Implement grafts....Thanks to Mark H. Weaver <mhw@netris.org> for insightful discussions
and suggestions.
* guix/packages.scm (<package>)[graft]: New field.
(patch-and-repack): Invoke 'package-derivation' with #:graft? #f.
(package-source-derivation): Likewise. Do not use (%guile-for-build)
in call to 'patch-and-repack', and we could end up using a grafted
Guile.
(expand-input): Likewise, also for 'package-cross-derivation' call.
(package->bag): Add #:graft? parameter. Honor it. Use 'strip-append'
instead of 'package-full-name'.
(input-graft, input-cross-graft, bag-grafts, package-grafts): New
procedures.
(package-derivation, package-cross-derivation): Add #:graft? parameter
and honor it.
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Add
recursive call on 'graft'.
* guix/build-system/gnu.scm (package-with-explicit-inputs,
package-with-extra-configure-variable, static-package): Likewise.
(gnu-build): Use the ungrafted Guile to avoid full rebuilds.
(gnu-cross-build): Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/ruby.scm (ruby-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* tests/packages.scm ("package-derivation, direct graft",
"package-cross-derivation, direct graft", "package-grafts,
indirect grafts", "package-grafts, indirect grafts, cross",
"package-grafts, indirect grafts, propagated inputs",
"package-derivation, indirect grafts"): New tests.
("bag->derivation", "bag->derivation, cross-compilation"): Wrap in
'parameterize'.
* doc/guix.texi (Security Updates): New node.
(Invoking guix build): Document --no-graft.
| Ludovic Courtès |
2014-10-27 | doc: Add a note about optional GnuTLS dependency....* README (Requirements): add a note about 'guix download''s GnuTLS dependency.
* doc/guix.texi (Requirements): Likewise.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Ian Denhardt |
2014-10-27 | doc: Add cross-reference to the gnutls-guile manual....* doc/guix.texi (Invoking guix download): Add cross-reference to the
gnutls-guile manual.
| Ludovic Courtès |
2014-10-16 | guix lint: add the --checkers option....* guix/scripts/lint.scm: add the "--checkers" option.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/guix-lint.sh: New file
* Makefile.am (SCM_TESTS): Add it.
| Cyril Roelandt |
2014-10-12 | guix package: Add '--switch-generation' option....* guix/scripts/package.scm (switch-to-generation): New procedure.
(switch-to-previous-generation): Use it.
(guix-package): Adjust for '--switch-generation' option.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.
| Alex Kost |
2014-10-10 | scripts: Add 'environment' command....* guix/scripts/environment.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi ("Invoking guix environment"): New node.
| David Thompson |
2014-10-10 | doc: Add 'operating-system' reference....* doc/guix.texi (Using the Configuration System): Add xref to
"operating-system Reference".
(operating-system Reference): New section.
(Networking Services): Add xref to it.
| Ludovic Courtès |
2014-10-10 | doc: Use @deftp for 'build-machine'....* doc/guix.texi (Daemon Offload Setup): Use @deftp for 'build-machine'.
| Ludovic Courtès |
2014-10-09 | daemon: Add '--substitute-urls' option....* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_SUBSTITUTE_URLS): New macro.
(GUIX_OPT_NO_BUILD_HOOK, GUIX_OPT_GC_KEEP_OUTPUTS,
GUIX_OPT_GC_KEEP_DERIVATIONS): Renumber.
(options): Add '--substitute-urls'.
(parse_opt): Honor it.
(main): Add 'settings.set' call for the default "substitute-urls"
value.
* guix/scripts/substitute-binary.scm (daemon-options,
find-daemon-option): New procedures.
(%cache-url): Define based on the "substitute-urls" daemon option.
* doc/guix.texi (Invoking guix-daemon): Document '--substitute-urls'.
(Substitutes): Mention it.
| Ludovic Courtès |
2014-10-08 | monads: Add 'mbegin'....* guix/monads.scm (mbegin): New macro.
* tests/monads.scm ("mbegin"): New test.
* doc/guix.texi (The Store Monad): Document it.
| Ludovic Courtès |
2014-10-08 | doc: Document 'glib-or-gtk-build-system'....* doc/guix.texi (Build System): Document 'glib-or-gtk-build-system'.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Federico Beffa |
2014-10-07 | services: Add '%facebook-host-aliases'....* gnu/services/networking.scm (%facebook-host-aliases): New variable.
* doc/guix.texi (Networking Services): Document it.
| Ludovic Courtès |
2014-10-06 | doc: Mention optional dependency on Guile-JSON....* README (Requirements): Add Guile-JSON.
* doc/guix.texi (Requirements): Likewise.
| Ludovic Courtès |
2014-10-05 | build-system: Introduce "bags" as an intermediate representation....* guix/build-system.scm (<build-system>)[build, cross-build]: Remove.
[lower]: New field.
(<bag>): New record type.
(make-bag): New procedure.
* guix/packages.scm (bag-transitive-inputs, bag-transitive-build-inputs,
bag-transitive-host-inputs, bag-transitive-target-inputs,
package->bag): New procedures.
(package-derivation): Use it; use the bag, apply its build procedure,
etc.
(package-cross-derivation): Likewise.
* gnu/packages/bootstrap.scm (raw-build, make-raw-bag): New procedure.
(%bootstrap-guile): Use them.
* guix/build-system/trivial.scm (lower): New procedure.
(trivial-build, trivial-cross-build): Remove 'source' parameter. Pass
INPUTS as is.
(trivial-build-system): Adjust accordingly.
* guix/build-system/gnu.scm (%store, inputs-search-paths,
standard-search-paths, expand-inputs, standard-inputs): Remove.
(gnu-lower): New procedure.
(gnu-build): Remove 'source' and #:implicit-inputs? parameters.
Remove 'implicit-inputs' and 'implicit-search-paths' variables. Get
the source from INPUT-DRVS.
(gnu-cross-build): Likewise.
(standard-cross-packages): Remove call to 'standard-packages'.
(standard-cross-inputs, standard-cross-search-paths): Remove.
(gnu-build-system): Remove 'build' and 'cross-build'; add 'lower'.
* guix/build-system/cmake.scm (lower): New procedure.
(cmake-build): Remove 'source' and #:cmake parameters. Use INPUTS and
SEARCH-PATHS as is. Get the source from INPUTS.
* guix/build-system/perl.scm: Likewise.
* guix/build-system/python.scm: Likewise.
* guix/build-system/ruby.scm: Likewise.
* gnu/packages/cross-base.scm (cross-gcc): Change "cross-linux-headers"
to "linux-headers".
(cross-libc)[xlinux-headers]: Pass #:implicit-cross-inputs? #f.
Likewise. In 'propagated-inputs', change "cross-linux-headers" to
"linux-headers".
* guix/git-download.scm (git-fetch): Use 'standard-packages' instead of
'standard-inputs'.
* tests/builders.scm ("gnu-build-system"): Remove use of
'build-system-builder'.
("gnu-build"): Remove 'source' and #:implicit-inputs? arguments to
'gnu-build'.
* tests/packages.scm ("search paths"): Adjust to new build system API.
("package-cross-derivation, no cross builder"): Likewise.
* doc/guix.texi (Build Systems): Add paragraph on bags.
| Ludovic Courtès |
2014-10-04 | build-system/cmake: Add #:build-type parameter, default to "RelWithDebInfo"....* guix/build-system/cmake.scm (cmake-build): Add #:build-type. Pass it
in BUILDER.
* guix/build/cmake-build-system.scm (configure): Add #:build-type
parameter and honor it.
* doc/guix.texi (Build Systems): Document #:configure-flags and
#:build-type for CMake.
| Ludovic Courtès |
2014-10-03 | ui: Recognize the same size units as Coreutils....* guix/ui.scm (size->number): Add a bunch of large units. Recognize
one-letter unit names. Change "KB" to "kB".
* tests/ui.scm ("size->number, 1T"): New test.
* doc/guix.texi (Invoking guix gc): Add cross-reference to "Block size"
in the Coreutils manual.
(Invoking guix system): Likewise.
| Ludovic Courtès |
2014-09-28 | build: Add ruby build system....* guix/build-system/ruby.scm: New file.
* guix/build/ruby-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document ruby-build-system.
| David Thompson |
2014-09-28 | doc: Use 'define-public' in example package recipe....* doc/guix.texi (Defining Packages): Use 'define-public' instead of
'define'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Ian Denhardt |
2014-09-24 | Introduce the 'GUIX_PACKAGE_PATH' environment variable....* gnu/packages.scm (%package-module-path): Honor $GUIX_PACKAGE_PATH.
* test-env.in: Unset 'GUIX_PACKAGE_PATH'.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Package Modules): Document it.
| Ludovic Courtès |
2014-09-24 | guix build: Add -L/--load-path as a common option....* guix/scripts/build.scm (show-build-options-help): Document -L.
(%standard-build-options): Add -L/--load-path.
* tests/guix-package.sh: Test it.
| Ludovic Courtès |
2014-09-23 | services: Add 'bitlbee-service'....* gnu/services/networking.scm (bitlbee-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
| Ludovic Courtès |
2014-09-22 | linux-initrd: Adjust VM code and doc to new 'base-initrd' signature....This fixes regressions introduced in de1c158 ("system: Add support for
boot-time mapped devices.").
* doc/guix.texi (Initial RAM Disk): Adjust example with custom use of
'base-initrd'. Document #:mapped-devices parameter of 'base-initrd'.
* gnu/system/vm.scm (system-disk-image, system-qemu-image,
virtualized-operating-system): Adjust call to 'base-initrd' to new
signature.
| Ludovic Courtès |
2014-09-18 | doc: Remove a couple of limitations....* doc/guix.texi (System Installation): Remove encrypted disks and swap
from the limitations.
| Ludovic Courtès |
2014-09-18 | doc: Document mapped devices....* doc/guix.texi (Mapped Devices): New subsection.
| Ludovic Courtès |
2014-09-14 | services: Add 'dhcp-client-service'....* gnu/services/networking.scm (dhcp-client-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
| Ludovic Courtès |
2014-09-14 | doc: Mention audio, video, and cdrom groups more prominently....* doc/guix.texi (User Accounts): Add the "audio", "video", and "cdrom"
groups in the example.
| Ludovic Courtès |
2014-09-08 | linux-initrd: Store Linux modules in a normal store directory....* gnu/system/linux-initrd.scm (expression->initrd): Remove #:linux and
#:linux-modules parameters. Remove call to
'float-linux-module-directory'.
(base-initrd): Add call to 'float-linux-module-directory'. Use it in
#:linux-modules argument in the gexp. Remove #:linux and
#:linux-modules arguments to 'expression->initrd'.
* gnu/build/linux-initrd.scm (build-initrd): Remove
#:linux-module-directory parameter. Don't create 'modules'
sub-directory.
* gnu/build/linux-boot.scm (boot-system): Mentin that LINUX-MODULES is a
list of absolute file names. Don't prepend "/modules/" to
LINUX-MODULES.
* doc/guix.texi (Initial RAM Disk): Adjust accordingly.
| Ludovic Courtès |
2014-09-08 | linux-initrd: Remove #:to-copy argument of 'expression->initrd'....* gnu/system/linux-initrd.scm (expression->initrd): Remove #:to-copy
parameter. Remove 'graph-files', and adjust #:references-graphs
arguments to just list INIT.
(base-initrd): Remove #:to-copy argument.
* doc/guix.texi (Initial RAM Disk): Adjust accordingly.
| Ludovic Courtès |
2014-09-06 | gexp: Allow use of high-level objects in #:references-graphs....* guix/gexp.scm (lower-reference-graphs): New procedure.
(gexp->derivation)[graphs-file-names]: New procedure.
Use 'lower-reference-graphs', and augment #:inputs argument as a
function of #:references-graphs.
* doc/guix.texi (G-Expressions): Adjust 'gexp->derivation' documentation
accordingly.
* tests/gexp.scm ("gexp->derivation, store copy"): Remove reference to
TWO in BUILD-DRV. Use TWO directly in #:references-graphs argument.
("gexp->derivation #:references-graphs"): New test.
* gnu/system/vm.scm (qemu-image): Remove variable 'graph'; use INPUTS as
the #:references-graphs argument to
'expression->derivation-in-linux-vm'.
| Ludovic Courtès |
2014-09-03 | Add Emacs user interface....* configure.ac (emacsuidir): New variable.
(AC_CONFIG_FILES): Add 'emacs/guix-init.el', 'emacs/guix-helper.scm'.
* Makefile.am: Include 'emacs.am'.
* emacs.am: New file.
* doc/emacs.texi: New file.
* doc/guix.texi: Include 'emacs.texi'.
* emacs/guix-backend.el: New file.
* emacs/guix-base.el: New file.
* emacs/guix-helper.scm.in: New file.
* emacs/guix-history.el: New file.
* emacs/guix-info.el: New file.
* emacs/guix-init.el.in: New file.
* emacs/guix-list.el: New file.
* emacs/guix-main.scm: New file.
* emacs/guix-utils.el: New file.
* emacs/guix.el: New file.
| Alex Kost |
2014-09-03 | scripts: add guix lint...* guix/scripts/lint.scm: New file. Defines a 'lint' tool for Guix packages.
* tests/lint.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* po/guix/Makevars: Update appropriately.
* po/guix/POTFILES.in: Update appropriately.
* doc/guix.texi: Document "guix lint".
| Cyril Roelandt |
2014-09-01 | doc: Clarify system installation and configuration details....Reported by leth on #guix.
* doc/guix.texi (System Installation): Suggest running 'reboot' instead
of 'umount /mnt'.
(Initial RAM Disk): Add xref to SRFI-26.
| Ludovic Courtès |
2014-08-31 | daemon: Rename '--disable-store-optimization' to '--disable-deduplication'....* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_DISABLE_STORE_OPTIMIZATION):
Rename to...
(GUIX_OPT_DISABLE_DEDUPLICATION): ... this. Adjust user accordingly.
(options): Add "disable-deduplication". Make
"disable-store-optimization" a hidden alias.
* doc/guix.texi (Invoking guix-daemon): Adjust to new option name. Add
index entry. Improve description.
| Ludovic Courtès |
2014-08-28 | doc: %final-inputs is now in (gnu packages commencement)....* doc/guix.texi (Bootstrapping): Adjust the text to reflect that
'%final-inputs' is now in (gnu packages commencement).
| Mark H Weaver |
2014-08-18 | gexp: Add 'ungexp-native' and 'ungexp-native-splicing'....* guix/gexp.scm (<gexp>)[natives]: New field.
(write-gexp): Use both 'gexp-references' and
'gexp-native-references'.
(gexp->derivation): Use both 'gexp-inputs' and 'gexp-native-inputs',
and append them.
(gexp-inputs): Add 'references' parameter and honor it.
(gexp-native-inputs): New procedure.
(gexp->sexp)[reference->sexp]: Add 'native?' parameter and honor it.
Use it, and use 'gexp-native-references'.
(gexp)[collect-native-escapes]: New procedure.
[escape->ref]: Handle 'ungexp-native' and 'ungexp-native-splicing'.
[substitute-ungexp, substitute-ungexp-splicing]: New procedures.
[substitute-references]: Use them, and handle 'ungexp-native' and
'ungexp-native-splicing'.
Adjust generated 'make-gexp' call to provide both normal references
and native references.
[read-ungexp]: Support 'ungexp-native' and
'ungexp-native-splicing'.
Add reader extension for #+.
* tests/gexp.scm (gexp-native-inputs): New procedure.
(gexp->sexp*): Add 'target' parameter.
("ungexp + ungexp-native",
"input list + ungexp-native",
"input list splicing + ungexp-native-splicing",
"gexp->derivation, ungexp-native",
"gexp->derivation, ungexp + ungexp-native"): New tests.
("sugar"): Add tests for #+ and #+@.
* doc/guix.texi (G-Expressions): Document 'ungexp-native' et al.
| Ludovic Courtès |
2014-08-17 | gexp: Add #:target parameter to 'gexp->derivation'....* guix/gexp.scm (lower-inputs): Add #:system and #:target. Use
'package->cross-derivation' when TARGET is true. Honor SYSTEM.
(gexp->derivation): Add #:target argument. Pass SYSTEM and TARGET to
'lower-inputs' and 'gexp->sexp'.
(gexp->sexp): Add #:system and #:target. Pass them in recursive call
and to 'package-file'.
* tests/gexp.scm (gexp->sexp*): Add 'system' and 'target' parameters.
("gexp->derivation, cross-compilation"): New test.
| Ludovic Courtès |
2014-08-17 | monads: Add 'package->cross-derivation' and #:target for 'package-file'....* guix/monads.scm (package-file): Add #:target keyword parameter and
honor it.
(package->cross-derivation): New procedure.
* tests/monads.scm ("package-file + package->cross-derivation"): New test.
* doc/guix.texi (The Store Monad): Update 'package-file' documentation.
Add 'package->cross-derivation'.
| Ludovic Courtès |
2014-08-15 | Add (guix monad-repl)....* guix/monad-repl.scm: New file.
* guix.scm: Add it.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (The Store Monad): Document it.
| Ludovic Courtès |