Age | Commit message (Collapse) | Author |
|
Fixes <http://bugs.gnu.org/18061>.
Reported by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/dmd.scm (dmd-configuration-file)[config]: Import (guix
build utils).
* gnu/system/install.scm (make-cow-store, cow-store-service): New
procedures.
(installation-services): Use it.
(%backing-directory): New variable.
* doc/guix.texi (System Installation): Add the 'deco start cow-store
/mnt' phase.
|
|
* gnu/system/file-systems.scm (%shared-memory-file-system): New
variable.
(%base-file-systems): Add it.
* doc/guix.texi (File Systems): Document it.
|
|
* guix/build/linux-initrd.scm (MS_NOSUID, MS_NODEV, MS_NOEXEC): New
variables.
(mount-flags->bit-mask): New procedure.
(mount-file-system)[flags->bit-mask]: Remove.
Use 'mount-flags->bit-mask' instead.
In /etc/mtab, use the empty string when OPTIONS is false.
* gnu/services/base.scm (file-system-service): Add #:flags parameter and
honor it.
* gnu/system.scm (other-file-system-services): Pass FLAGS to
'file-system-service'.
|
|
* doc/guix.texi (Function Index): Rename to...
(Programming Index): ... this. Merge the type, variable, and function
indices.
|
|
Fixes <http://bugs.gnu.org/18081>.
* gnu/system/file-systems.scm (%devtmpfs-file-system): Add
'needed-for-boot?' field.
(%tty-gid, %pseudo-terminal-file-system): New variables.
(%base-file-systems): Add %PSEUDO-TERMINAL-FILE-SYSTEM.
* gnu/services/base.scm (udev-service): Remove dependency on
'file-system-/dev'.
* gnu/system/shadow.scm (%base-groups): Add 'id' field for group 'tty'.
* guix/build/linux-initrd.scm (boot-system): Remove 'mount' call for
/dev/pts.
* doc/guix.texi (File Systems): Add %pseudo-terminal-file-system.
|
|
* gnu/system/file-systems.scm (<file-system>)[create-mount-point?]: New
field.
* gnu/services/base.scm (file-system-service): Add #:create-mount-point?
parameter and honor it.
* gnu/system.scm (other-file-system-services): Update
'file-system-service' call accordingly.
* doc/guix.texi (File Systems): Document it.
|
|
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/base.scm (udev-service)[requirement]: Add
'file-system-/dev'.
* gnu/system/file-systems.scm (%devtmpfs-file-system,
%base-file-systems): New variables.
* gnu/system/install.scm (installation-services)[file-systems]: Use
%base-file-systems.
* build-aux/hydra/demo-os.scm (file-systems): Likewise.
* doc/guix.texi (System Installation): Show %BASE-FILE-SYSTEMS in the
example.
(Using the Configuration System): Likewise.
(File Systems): Document %base-file-systems, %devtmpfs-file-system,
%binary-format-file-system, and %fuse-control-file-system.
|
|
* doc/guix.texi (System Installation): s/are/is/.
|
|
* doc/guix.texi: Update the documentation.
* guix/scripts/package.scm: Add a "show" option.
* tests/guix-package.sh: Add a test for the "show" option.
|
|
* doc/guix.texi (Invoking guix refresh): Show example output of the
command.
|
|
* guix/packages.scm (package-direct-inputs): New procedure.
* gnu/packages.scm (vhash-refq, package-direct-dependents)
(package-transitive-dependents, package-covering-dependents): New procedures.
* guix/scripts/refresh.scm (%options, show-help, guix-refresh): Add
--list-dependent option.
* doc/guix.texi (Invoking guix refresh): Document '--list-dependent' option.
|
|
* doc/guix.texi (Using the Configuration System): 'gid' -> 'group'
in user-account example.
(Initial RAM Disk): 'base-init' -> 'base-initrd'.
|
|
* doc/guix.texi (Setuid Programs): New node.
|
|
* doc/guix.texi (Initial RAM Disk): New node.
* gnu/system/linux-initrd.scm (expression->initrd): Adjust docstring.
|
|
* doc/guix.texi (Limitations): New subsection.
|
|
* doc/guix.texi (GNU Distribution): Move "System Configuration" right
after "System Installation".
|
|
* doc/guix.texi (Installation): Add cross-ref to "System Installation".
(System Installation): New section.
(System Configuration): Remove disclaimer.
|
|
* doc/guix.texi (Defining Services): Remove listing of service
procedures; add xref to "Services".
|
|
* gnu/services/base.scm (guix-service): Add #:use-substitutes? and
#:extra-options parameters, and honor them.
* doc/guix.texi (Base Services): Adjust accordingly.
|
|
* gnu/services/networking.scm (tor-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
* build-aux/hydra/demo-os.scm: Use it. Add TOR and TORSOCKS to
'packages'.
|
|
* doc/guix.texi (Using the Configuration System): Remove details about
'%base-services', and link to "Services".
(Services): Add introductory text.
(Base Services, Networking Services, X Window): New nodes.
|
|
* guix/scripts/system.scm (switch-to-system): Add #:system parameter;
pass it to 'run-with-store'.
(%options): Add '--system'.
(guix-system): Pass the 'system' option to 'run-with-store',
'package-derivation', and 'switch-to-system' calls.
* doc/guix.texi (Invoking guix system): Document '--system' and
'--image-size'.
|
|
* doc/guix.texi (File Systems): Fix typo.
(User Accounts): Populate.
|
|
* doc/guix.texi (Using the Configuration System): Change 'guix system
boot' to 'guix system reconfigure'.
(File Systems, User Accounts, Services): New nodes.
|
|
* doc/guix.texi (Using the Configuration System): Make the intro more
user-oriented. Change example to return an operating system. Fix
typos. Mention mandatory/optional fields.
|
|
* guix/scripts/system.scm (%system-profile): New variable.
(switch-to-system, previous-grub-entries): New procedures.
(unless-file-not-found): New macro.
(show-help): Add 'reconfigure'.
(guix-system): Handle it.
* gnu/system.scm: Export 'operating-system-activation-script'.
* doc/guix.texi (Invoking guix system): Document it.
|
|
* doc/guix.texi (Invoking guix system): Add note about KVM support.
|
|
* guix/ui.scm (%guix-user-module): New variable.
(read/eval): Pass it as the second argument to 'eval'.
* guix/scripts/build.scm (options/resolve-packages): Add case for
'gexp?'.
* tests/guix-build.sh: Add tests.
* doc/guix.texi (Invoking guix build): Document '-e gexp'.
guxi build: Allow gexps to be passed to '-e'.
* guix/ui.scm (%guix-user-module): New variable.
(read/eval): Pass it as the second argument to 'eval'.
* guix/scripts/build.scm (options/resolve-packages): Add case for
'gexp?'.
* tests/guix-build.sh: Add tests.
* doc/guix.texi (Invoking guix build): Document '-e gexp'.
|
|
* doc/guix.texi (Programming Interface): Add a sentence on "derivation".
|
|
* guix/derivations.scm (build-expression->derivation): Add
#:allowed-references and pass it to 'derivation.
* doc/guix.texi (Derivations): Adjust accordingly.
|
|
* gnu/system.scm (<operating-system>)[packages]: Change default value to
%BASE-PACKAGES.
(%base-packages): New variable.
* gnu/system/install.scm (installation-os): Use it when defining the
'packages' field.
* doc/guix.texi (Using the Configuration System): Use %BASE-PACKAGES in
example. Remove now unneeded module imports. Explain this.
|
|
* guix/derivations.scm (derivation): Add #:allowed-references
parameter.
[user+system-env-vars]: Honor it.
* tests/derivations.scm ("derivation #:allowed-references, ok",
"derivation #:allowed-references, not allowed",
"derivation #:allowed-references, self allowed",
"derivation #:allowed-references, self not allowed"): New tests.
* doc/guix.texi (Derivations): Document #:allowed-references.
|
|
* guix/build/linux-initrd.scm (%ext2-endianness, %ext2-sblock-magic,
%ext2-sblock-creator-os, %ext2-sblock-uuid, %ext2-sblock-volume-name):
New macros.
(read-ext2-superblock, ext2-superblock-uuid,
ext2-superblock-volume-name, disk-partitions,
partition-label-predicate, find-partition-by-label,
canonicalize-device-spec): New procedures.
(mount-file-system): Use 'canonicalize-device-spec' on SOURCE.
(boot-system): Likewise for ROOT.
* doc/guix.texi (Using the Configuration System): Adjust 'file-system'
declaration accordingly.
|
|
* doc/guix.texi (Package Naming): Mention underscores, and give SDL_net
as an example.
|
|
* gnu/services/base.scm (nscd-service): Add 'activate' field.
* guix/build/install.scm (directives): Remove /var/run/nscd; add
/var/run.
* doc/guix.texi (Defining Services): Add 'activate' field in example.
Document it.
|
|
* guix/scripts/system.scm (show-help): Add 'disk-image'.
(guix-system)[parse-options]: Support 'disk-image' action.
[option-arguments]: Likewise.
Handle the 'disk-image' action.
* doc/guix.texi (Invoking guix system): Document 'disk-image'.
|
|
* gnu.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/hydra/demo-os.scm: Use (gnu) and strip import list
accordingly.
* doc/guix.texi (Using the Configuration System): Adjust example
accordingly.
|
|
* doc/guix.texi (Using the Configuration System): Add 'bootloader'
field.
|
|
* guix/scripts/system.scm (install): Add #:grub?, #:grub.cfg, and
#:device parameters; honor them.
(show-help): Document '--no-grub'.
(%options): Add '--no-grub'.
(%default-options): Add 'install-grub?'.
(guix-system): Honor 'install-grub?' option from OPTS. Adjust
'install' call accordingly.
* doc/guix.texi (Invoking guix system): Document '--no-grub'.
|
|
* guix/scripts/system.scm (install): New procedure.
(guix-system)[parse-option]: Remove check for extraneous arguments.
[match-pair, option-arguments]: New procedures.
Use 'option-arguments'. Honor 'init'.
(show-help): Document 'init'.
* doc/guix.texi (Invoking guix system): Document 'init'.
|
|
* guix/scripts/system.scm (show-help): Document 'build' action.
(guix-system): Honor 'build' action.
* doc/guix.texi (Invoking guix system): Add 'build' action.
|
|
* doc/guix.texi (Installing Debugging Files): Add @cindex. Remove
unneeded '-i' in example. Mention source code an 'directory'. Link
to "Build Systems" instead of "Defining Packages".
|
|
* doc/guix.texi (Invoking guix package): Add LGPLv3 example.
|
|
* doc/guix.texi (Perl modules): New section explaining the naming of perl
modules.
|
|
* doc/guix.texi (G-Expressions): Mention Oleg's work on "staging" in
footnote.
|
|
* doc/guix.texi (G-Expressions): Show coreutils version number in store
file name. Add xref to "Derivations", in documentation of
'gexp->derivation'. Fix typo.
|
|
* 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.
|
|
* 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'.
|
|
* 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".
|
|
* 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.
|