Skip to content
Snippets Groups Projects
  1. May 08, 2014
  2. May 03, 2014
  3. May 02, 2014
    • Ludovic Courtès's avatar
      system: Add first-class file system declarations. · 83bcd0b8
      Ludovic Courtès authored
      * gnu/system.scm (<operating-system>)[initrd]: Default to
        'qemu-initrd'.
        (<file-system>): New record type.
        (operating-system-root-file-system): New procedure.
        (operating-system-derivation): Take the device name for GRUB from
        'operating-system-root-file-system'.  Pass the
        'operating-system-initrd' procedure the list of boot file systems.
      * gnu/system/linux-initrd.scm (file-system->spec): New procedure.
        (qemu-initrd): Add 'file-systems' parameter, and remove #:mounts
        parameter.
        [file-system-type-predicate]: New procedure.
        [linux-modules]: Use it.
        Adjust #:mounts argument in 'boot-system' call.
        (gnu-system-initrd): Remove.
      * gnu/system/vm.scm (%linux-vm-file-systems): New variable.
        (expression->derivation-in-linux-vm): Adjust call to 'qemu-initrd'.
        (virtualized-operating-system): New procedure.
        (system-qemu-image/shared-store-script)[initrd]: Remove.  Use
        'virtualized-operating-system'.  Get the 'initrd' file from OS-DRV.
      * guix/build/linux-initrd.scm (mount-qemu-smb-share, mount-qemu-9p):
        Remove.
        (MS_RDONLY, MS_BIND): New global variables.
        (bind-mount): Remove local 'MS_BIND' definition.
        (mount-root-file-system): New procedure, with code formerly in
        'boot-system'.
        (mount-file-system): New procedure.
        (boot-system): Add #:root-fs-type parameter.  Remove 'MS_RDONLY' local
        variable.  Use 'mount-root-file-system' and 'mount-file-system'.
      * doc/guix.texi (Using the Configuration System): Add 'file-system'
        declaration.
      83bcd0b8
  4. Apr 28, 2014
    • Ludovic Courtès's avatar
      monads: Hide 'derivation-expression' and 'lower-inputs'. · ada3df03
      Ludovic Courtès authored
      * guix/monads.scm: Unexport 'lower-inputs' and 'derivation-expression'.
        (text-file*): Add comment about the switch to 'gexp->derivation'.
        (lower-inputs): Add comment about its doom.
        (derivation-expression): Likewise.
      * guix/gexp.scm (lower-inputs*): Rename to...
        (lower-inputs): ... this.  Update callers.
      * tests/monads.scm (derivation-expression): New procedure.
      * doc/guix.texi (The Store Monad): Use 'gexp->derivation' instead of
        'derivation-expression'.  Remove documentation of
        'derivation-expression'.
      * guix/ui.scm (read/eval): Use THE-ROOT-MODULE so that macros are
        properly expanded.
      * tests/guix-build.sh: Use 'gexp->derivation' instead of
        'derivation-expression'.monads: Hide 'derivation-expression' and 'lower-inputs'.
      ada3df03
    • Ludovic Courtès's avatar
      services: Rewrite using gexps. · b5f4e686
      Ludovic Courtès authored
      * gnu/services.scm (<service>)[inputs]: Remove.
      * gnu/system.scm (links): Remove.
        (etc-directory): Add PASSWD and SHADOW to #:inputs.
        (operating-system-boot-script): Pass ETC to 'dmd-configuration-file'.
        (operating-system-derivation): Remove EXTRAS from the union.
      * gnu/system/linux.scm (pam-service->configuration): Rewrite in terms of
        'gexp->derivation'.  Compute the contents on the build side.  Expect
        'arguments' to contain a list of gexps.
        (pam-services->directory): Rewrite in terms of 'gexp->derivation'.
        (unix-pam-service): Change 'arguments' to a list of one gexp.
      * gnu/system/shadow.scm (<user-account>)[inputs]: Remove.
        [shell]: Change default value to a gexp.
        (passwd-file): Rewrite in terms of 'gexp->derivation'.  Compute
        contents on the build side.
      * gnu/services/base.scm (host-name-service, mingetty-service,
        nscd-service, syslog-service, guix-service): Change 'start' and 'stop'
        to gexps; remove 'inputs' field.
        (guix-build-accounts): Change 'shell' field to a gexp.
      * gnu/services/networking.scm (static-networking-service): Change
        'start' and 'stop' to gexps; remove 'inputs' field.
      * gnu/services/xorg.scm (slim-service): Likewise.
      * gnu/services/dmd.scm (dmd-configuration-file): Expect ETC to be a
        derivation.  Change 'config' to a gexp.  Use 'gexp->file' instead of
        'text-file'.
      * doc/guix.texi (Defining Services): Update nscd example with gexps, and
        without 'inputs'.  Add xref to "G-Expressions".
      b5f4e686
    • Ludovic Courtès's avatar
      Add (guix gexp). · 21b679f6
      Ludovic Courtès authored
      * guix/gexp.scm: New file.
      * tests/gexp.scm: New file.
      * Makefile.am (MODULES): Add guix/gexp.scm.
        (SCM_TESTS): Add tests/gexp.scm.
      * doc/guix.texi (Derivations): Add #:inputs in 'derivation' example.
        Mark 'build-expression->derivation' as deprecated, refer to
        "G-Expressions".  Remove paragraph about code strata.
        (G-Expressions): New node.
      21b679f6
  5. Apr 09, 2014
  6. Apr 08, 2014
  7. Apr 05, 2014
    • Ludovic Courtès's avatar
      doc: Add "Build Systems" section. · 7458bd0a
      Ludovic Courtès authored
      * doc/guix.texi (Defining Packages): Add 'arguments' field in the
        example; update 'synopsis' and 'description'.  Remove most of the
        description of 'build-system', and instead reference to the "Build
        Systems" node.  Briefly describe 'arguments' field, and remove more
        elaborate description.  Add cross-reference to "Packaging Guidelines".
        (Build Systems): New node.
        (Packaging Guidelines): Mention '--log-file'.
      7458bd0a
  8. Apr 03, 2014
  9. Mar 31, 2014
  10. Mar 30, 2014
    • Ludovic Courtès's avatar
      doc: Document substitutes. · c4202d60
      Ludovic Courtès authored
      * doc/guix.texi (Invoking guix-daemon): Add cross-reference to
        "Substitutes".
        (Features): Remove footnote about unauthenticated substitutes.  Link
        to "Substitutes".
        (Substitutes): New node.
        (Invoking guix build): Link to "Substitutes".
        (Packaging Guidelines): Likewise.
      c4202d60
  11. Mar 13, 2014
  12. Mar 11, 2014
    • Ludovic Courtès's avatar
      guix build: Add '--with-source'. · 7f3673f2
      Ludovic Courtès authored
      * guix/scripts/build.scm (package-with-source): New procedure.
        (show-help): Add '--with-source'.
        (%options): Likewise.
        (options->derivations): Call 'options/with-source' and
        'options/resolve-packages'.
        (options/resolve-packages, options/with-source): New procedures.
      * doc/guix.texi (Invoking guix build): Document '--with-source'.
      7f3673f2
  13. Mar 10, 2014
  14. Mar 09, 2014
  15. Mar 07, 2014
    • Ludovic Courtès's avatar
      doc: Explain what's special about the (gnu packages ...) name space. · e7f34eb0
      Ludovic Courtès authored
      * doc/guix.texi (Invoking guix package): Explain where packages are
        searched for and link to "Package Modules".
        (Defining Packages) <example>: Use 'define-module' clause instead of
        'use-modules'.  Explain why and link to "Package Modules".
        (Invoking guix build): Explain where packages aer searched for and
        link to "Package Modules".
        (Package Modules): Explain that (gnu packages ...) is scanned.
      e7f34eb0
  16. Mar 02, 2014
    • Ludovic Courtès's avatar
      doc: Factorize documentation of common build options. · 70ee5642
      Ludovic Courtès authored
      * doc/guix.texi (Invoking guix package): Remove documentation for
        --dry-run, --fallback, --no-substitutes, and --max-silent-time.  Add a
        cross-ref to "Invoking guix build".
        (Invoking guix archive): Add "common build options" as the cross-ref
        topic for "Invoking guix build".
        (Invoking guix build): Move common build options separately.  Add a
        paragraph to explain.
      70ee5642
  17. Feb 21, 2014
    • Ludovic Courtès's avatar
      derivations: Remove unused 'derivation' parameter. · 2096ef47
      Ludovic Courtès authored
      * guix/derivations.scm (derivation): Remove unused #:hash-mode parameter.
      * doc/guix.texi (Derivations): Adjust accordingly.
      2096ef47
    • Ludovic Courtès's avatar
      doc: More on what's special about the archive format. · 0dbd88db
      Ludovic Courtès authored
      * doc/guix.texi (Invoking guix archive): Expound on what sets the Nar
        format apart.
      0dbd88db
    • Ludovic Courtès's avatar
      derivations: Add support for recursive fixed-output derivations. · 36bbbbd1
      Ludovic Courtès authored
      * guix/derivations.scm (<derivation-output>): Add 'recursive?' field.
        Adjust 'make-derivation-output' callers.
        (%read-derivation) <fixed-output>: When HASH-ALGO starts with 'r:',
        set the 'recursive?' field and drop 'r:' from the hash algo name.
        (write-derivation)[write-output]: Write the algo as 'r:HASH-ALGO' when
        the RECURSIVE? field is set.
        (derivation-hash) <fixed-output>: Prepend "r:" when RECURSIVE? is set.
        (fixed-output-path): New procedure.
        (derivation): Add #:recursive? parameter.  Use 'fixed-output-path' to
        compute the output file name of a fixed output derivation.
        (build-expression->derivation): Add #:recursive? parameter.  Pass it
        to 'derivation'.
      * tests/derivations.scm ("fixed-output derivation, recursive",
        "build-expression->derivation produces recursive fixed-output",
        "build-expression->derivation uses recursive fixed-output"): New
        tests.
      * doc/guix.texi (Derivations): Document #:recursive? for 'derivation'.
        Add #:recursive? for 'build-expression->derivation'.
      36bbbbd1
    • Ludovic Courtès's avatar
      guix hash: Add '--recursive'. · 3140f2df
      Ludovic Courtès authored
      * guix/scripts/hash.scm (show-help): Add --recursive.
        (%options): Likewise.
        (guix-hash)[file-hash]: New procedure.  Honor --recursive.
        Use it.
      * guix/nar.scm (write-file): Add missing field to the &nar-error
        condition raised upon unsupported file type; change its message to be
        more descriptive.
      * tests/guix-hash.sh: Add tests with -r.
      * doc/guix.texi (Invoking guix hash): Document --recursive.
      3140f2df
  18. Feb 19, 2014
    • Ludovic Courtès's avatar
      gnu: Define '%base-services'. · 8b198abe
      Ludovic Courtès authored
      * gnu/services/base.scm (%base-services): New variable.
      * gnu/system.scm (<operating-system>)[services]: Change the default
        value to %BASE-SERVICES.
      * doc/guix.texi (Using the Configuration System): Change
        '%standard-services' to '%base-services'.
      8b198abe
    • Ludovic Courtès's avatar
      gnu: Introduce the (gnu services ...) modules. · db4fdc04
      Ludovic Courtès authored
      * gnu/system/dmd.scm: Remove file.  Move contents to...
      * gnu/services.scm, gnu/services/base.scm, gnu/services/dmd.scm,
        gnu/services/networking.scm, gnu/services/xorg.scm: ... here.  New
        files.
      * gnu/system.scm, gnu/system/vm.scm: Adjust accordingly.
      * guix/scripts/system.scm (%user-module): Likewise.
      * doc/guix.texi (Using the Configuration System): Likewise.
        (Defining Services): Likewise.
      db4fdc04
  19. Feb 18, 2014
    • Ludovic Courtès's avatar
      Add 'guix system'. · 523e4896
      Ludovic Courtès authored
      * guix/scripts/system.scm: New file.
      * Makefile.am (MODULES): Add it.
      * po/POTFILES.in: Likewise.
      * doc/guix.texi (Using the Configuration System): Link to "Invoking guix
        system".
        (Invoking guix system): New node.
      523e4896
  20. Feb 06, 2014
    • Ludovic Courtès's avatar
      daemon: Add '--gc-keep-outputs' and '--gc-keep-derivations'. · 6e37066e
      Ludovic Courtès authored
      * nix/nix-daemon/guix-daemon.cc (GUIX_OPT_GC_KEEP_OUTPUTS,
        GUIX_OPT_GC_KEEP_DERIVATIONS): New macros.
        (options): Add 'gc-keep-outputs' and 'gc-keep-derivations'.
        (string_to_bool): New function.
        (parse_opt): Honor GUIX_OPT_GC_KEEP_DERIVATIONS and
        GUIX_OPT_GC_KEEP_OUTPUTS.
      * doc/guix.texi (Invoking guix-daemon): Document --gc-keep-outputs and
        --gc-keep-derivations.
      6e37066e
  21. Feb 03, 2014
    • Ludovic Courtès's avatar
      monads: Add 'text-file*'. · 45adbd62
      Ludovic Courtès authored
      * guix/monads.scm (text-file*): New procedure.
      * tests/monads.scm ("text-file*"): New test.
      * doc/guix.texi (The Store Monad): Change example since the previous one
        would erroneously fail to retain a reference to Coreutils.  Document
        'text-file*'.
      45adbd62
  22. Jan 25, 2014
    • Ludovic Courtès's avatar
      derivations: Add #:local-build? parameter for derivations. · 1909431c
      Ludovic Courtès authored
      * guix/derivations.scm (derivation): Add #:local-build? parameter and
        honor it.
        (build-expression->derivation): Likewise.
      * doc/guix.texi (Derivations): Update documentation of these
        procedures.
      1909431c
    • Ludovic Courtès's avatar
      doc: More about offloading. · 4ec2e92d
      Ludovic Courtès authored
      * doc/guix.texi (Daemon Offload Setup): Start with "When desired".  Say
        more on what can go in 'machines.scm', and mention Guile-Avahi.
        (Invoking guix-daemon): Document '--no-build-hook'.
        (Invoking guix build): Add xref to "Daemon Offload Setup".
      4ec2e92d
  23. Jan 23, 2014
    • Ludovic Courtès's avatar
      Add 'guix offload' as a daemon build hook. · 49e6291a
      Ludovic Courtès authored
      * nix/nix-daemon/guix-daemon.cc (GUIX_OPT_NO_BUILD_HOOK): New macro.
        (options): Add '--no-build-hook'.
        (parse_opt): Handle it.
        (main)[HAVE_DAEMON_OFFLOAD_HOOK]: Set 'useBuildHook' by default.
        Set $NIX_BUILD_HOOK to our offload hook unless otherwise specified.
        [!HAVE_DAEMON_OFFLOAD_HOOK]: Clear 'useBuildHook'.
      * pre-inst-env.in: Set and export NIX_BUILD_HOOK.
      * nix/scripts/offload.in, guix/scripts/offload.scm: New files.
      * guix/ui.scm (show-guix-help)[internal?]: Add "offload".
      * config-daemon.ac: Call 'GUIX_CHECK_UNBUFFERED_CBIP'.
        Instantiate 'nix/scripts/offload'.  Set 'BUILD_DAEMON_OFFLOAD'
        conditional, and optionally define 'HAVE_DEAMON_OFFLOAD_HOOK' cpp
        macro.
      * daemon.am (nodist_pkglibexec_SCRIPTS)[BUILD_DAEMON_OFFLOAD]: Add it.
      * Makefile.am (MODULES)[BUILD_DAEMON_OFFLOAD]: Add
        'guix/scripts/offload.scm'.
        (EXTRA_DIST)[!BUILD_DAEMON_OFFLOAD]: Likewise.
      * m4/guix.m4 (GUIX_CHECK_UNBUFFERED_CBIP): New macro.
      * doc/guix.texi (Setting Up the Daemon): Move most of the body to...
        (Build Environment Setup): ... this.  New subsection.
        (Daemon Offload Setup): New subsection.
      49e6291a
  24. Jan 18, 2014
    • Ludovic Courtès's avatar
      doc: List what's in the chroot. · 6dc99317
      Ludovic Courtès authored
      * doc/guix.texi (Setting Up the Daemon): List what's in the chroot.
      6dc99317
    • Ludovic Courtès's avatar
      Update 'nix-upstream' sub-module; adjust build system, doc, and substituter. · d43eb499
      Ludovic Courtès authored
      * nix-upstream: Update sub-module.
      * daemon.am (libutil_a_SOURCES): Add affinity.cc.
        (libutil_headers): Add affinity.hh.
        (libexec_PROGRAMS, nix_setuid_helper_SOURCES,
        nix_setuid_helper_CPPFLAGS, nix_setuid_helper_LDADD): Remove.
      * doc/guix.texi (Setting Up the Daemon): Remove paragraph about
        'nix-setuid-helper'.
      * guix/scripts/substitute-binary.scm (guix-substitute-binary): Exit 0 when
        %CACHE-URL has an HTTP scheme and looking up its host fails.
        Always print a newline to stdout when starting.
      d43eb499
  25. Jan 17, 2014
  26. Jan 14, 2014
  27. Jan 06, 2014
    • Ludovic Courtès's avatar
      archive: Add '--missing'. · 87236aed
      Ludovic Courtès authored
      * guix/scripts/archive.scm (show-help, %options): Add '--missing'.
        (guix-archive)[lines]: New procedure.
        Use it to honor '--missing'.
      * tests/guix-archive.sh: Add tests.
      * doc/guix.texi (Invoking guix archive): Document '--missing'.
      87236aed
  28. Jan 05, 2014
    • Ludovic Courtès's avatar
      guix build: Add '--no-build-hook'. · 425b0bfc
      Ludovic Courtès authored
      * guix/scripts/build.scm (%default-options): Add 'build-hook?' pair.
        (show-help, %options): Add --no-build-hook.
        (guix-build): Pass the 'build-hook?' value to 'set-build-options'.
      * doc/guix.texi (Invoking guix build): Document '--no-build-hook'.
      425b0bfc
  29. Dec 30, 2013
    • Ludovic Courtès's avatar
      archive: Add '--authorize'. · f82cc5fd
      Ludovic Courtès authored
      * guix/scripts/archive.scm (authorize-key): New procedure.
        (guix-archive): Call it when OPTS contains 'authorize-key'.
      * tests/guix-archive.sh: Add test with invalid public key.
      * guix/pki.scm: Export '%acl-file'.
      * doc/guix.texi (Invoking guix archive): Make it clear that '--import'
        works only with authorized keys.  Document '--authorize'.
      f82cc5fd
    • Ludovic Courtès's avatar
      archive: Add '--generate-key'. · 554f26ec
      Ludovic Courtès authored
      * guix/pk-crypto.scm (error-source, error-string): New procedures.
      * guix/pki.scm (%private-key-file): New variable.
      * guix/scripts/archive.scm (show-help): Document '--generate-key'.
        (%options): Add "generate-key".
        (generate-key-pair): New procedure.
        (guix-archive): Call 'generate-key' when OPTS contains a
        'generate-key' pair.
      * doc/guix.texi (Setting Up the Daemon): Suggest generating a key pair.
        (Invoking guix archive): Document '--generate-key'.
      554f26ec
    • Ludovic Courtès's avatar
      doc: Invoke 'useradd' with '--system'. · 4d1a2b50
      Ludovic Courtès authored
      Reported by Kete <kete@ninthfloor.org>.
      Fixes <http://bugs.gnu.org/16289>.
      
      * doc/guix.texi (Setting Up the Daemon): Add '--system' to the 'useradd'
        command line.  Suggested by Kete <kete@ninthfloor.org>.
      4d1a2b50
Loading