~ruther/guix-local

ref: ca2eebbd99e8f4d2ebbcf700960d03818d4fbf8f guix-local/gnu/build/install.scm -rw-r--r-- 6.3 KiB
c4a1b6c2 — Ludovic Courtès 11 years ago
Merge branch 'master' into 'core-updates'.
6412e58a — Ludovic Courtès 11 years ago
system: Don't make /boot/grub/grub.cfg a symlink to the store.

This would not work when /boot is a separate partition, as reported by
Nikita Karetnikov <nikita@karetnikov.org> in <http://bugs.gnu.org/19220>.
This fixes a regression introduced in 39d1f82.

* gnu/build/install.scm (install-grub): Copy GRUB.CFG instead of
  symlinking it, as was the case before 39d1f82.
* gnu/build/vm.scm (register-grub.cfg-root): Add 'grub.cfg' parameter.
  Make it a permanent GC root instead of an indirect GC root.
  (initialize-hard-disk): Adjust accordingly.
* guix/scripts/system.scm (install-grub*): Replace use of
  'add-indirect-root' by the addition of a permanent GC root in
  %GC-ROOTS-DIRECTORY.
39d1f82b — Ludovic Courtès 11 years ago
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.
66ea98e3 — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates

Conflicts:
	gnu/packages/image.scm
ee248b6a — Ludovic Courtès 11 years ago
activation: Make the /bin/sh symlink at activation time.

* gnu/build/install.scm (directives): Remove "/bin/sh".
* gnu/build/activation.scm (activate-/bin/sh): New procedure.
* gnu/system.scm (operating-system-activation-script): Use it.
a4888e2e — Ludovic Courtès 11 years ago
install: Gracefully handle corner cases with 'guix system init foo /'.

* gnu/build/install.scm (evaluate-populate-directive): Wrap body in
  "catch 'system-error", and report clear errors.  In the symlink case,
  retry up EEXIST.
  (populate-root-file-system): Remove /var/guix/profiles/system-1-link
  before attempting to create it.
e759c0a3 — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates
66c2703f — Ludovic Courtès 11 years ago
install: Set the store's permission to #o1775.

Fixes <http://bugs.gnu.org/18053>.
Reported by Mark H Weaver <mhw@netris.org>.

* guix/build/install.scm (directives): Add mode #o1775 for STORE.
3485716f — Ludovic Courtès 11 years ago
install: Make /var/db and /mnt.

* guix/build/install.scm (directives): Add /var/db and /mnt.
f2c403ea — Ludovic Courtès 11 years ago
system: Install /var/guix/profiles/system-1-link on new systems.

* guix/build/install.scm (directives): Add /var/guix/profiles/system.
  (populate-root-file-system): Add 'system' parameter.  Create
  /var/guix/profiles/system-1-link.
* guix/scripts/system.scm (install): Pass OS-DIR to
  'populate-root-file-system'.
* guix/build/vm.scm (initialize-root-partition): Add #:system-directory
  parameter, and pass it to 'populate-root-file-system'.
  (initialize-hard-disk): Add #:system-directory parameter, and pass it
  to 'initialize-root-partition'.
* gnu/system/vm.scm (qemu-image): Add #:os-derivation parameter and pass
  it to 'initialize-hard-disk'.
  (system-disk-image, system-qemu-image,
  system-qemu-image/shared-store): Pass #:os-derivation to 'qemu-image.
872c69d0 — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
e97c5be9 — Ludovic Courtès 11 years ago
services: Use a fixed GID for the build group and use that for the store.

This partly reverts commit 185f669 ("services: Make sure the store's
group is the build group.")

* gnu/services/base.scm (guix-service)[activate]: Remove 'chown' call.
  Add 'id' field to 'user-group' form.
* guix/build/install.scm (directives): Set the store's GID to 30000.
185f6691 — Ludovic Courtès 11 years ago
services: Make sure the store's group is the build group.

* gnu/services/base.scm (guix-service)[activate]: New variable.  Add
  'chown' call for (%store-prefix).  Set the 'activate' field to
  ACTIVATE.
* guix/build/install.scm (directives): Add comment about STORE's group.
af018f5e — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
4b2615e1 — Ludovic Courtès 11 years ago
services: nscd: Provide an 'activate' script to make /var/run/nscd.

* 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.
517830cc — Ludovic Courtès 11 years ago
system: Always create /var/empty.

* guix/build/install.scm (directives): Add /var/empty.
641f9a2a — Ludovic Courtès 12 years ago
vm: Modularize build-side code.

* guix/build/install.scm (install-grub): Call 'error' if 'system*'
  returns non-zero.
* guix/build/vm.scm (initialize-partition-table): Make 'partition-size'
  a positional parameter.  Call 'error' when 'system*' returns
  non-zero'.
  (format-partition, initialize-root-partition): New procedures.
  (initialize-hard-disk): Use them.
6ffd11f1 — Ludovic Courtès 12 years ago
system: Prevent grub.cfg from being GC'd.

* guix/build/install.scm (install-grub): Use 'copy-file' instead of
  'symlink' for GRUB.CFG.
15d29987 — Ludovic Courtès 12 years ago
vm: Avoid resetting timestamps twice.

* guix/build/vm.scm (initialize-hard-disk): Don't call
  'reset-timestamps' when REGISTER-CLOSURES? is true.
* guix/build/install.scm (register-closure): Mention timestamps in
  docstring.
b4140694 — Ludovic Courtès 12 years ago
system: Make /run/current-system at activation time.

* gnu/system.scm (etc-directory): Change default value of #:profile.
  Change contents of SHELLS.  Use /run/current-system/profile/{s,}bin in
  BASHRC.
  (operating-system-boot-script)[%modules]: Add (guix build
  linux-initrd).  Add call to 'activate-current-system' in gexp.
  (operating-system-initrd-file, operating-system-grub.cfg): New
  procedures.
  (operating-system-derivation): Don't build grub.cfg here and remove it
  from the file union.
* gnu/system/vm.scm (qemu-image): Remove #:populate.
  (operating-system-build-gid, operating-system-default-contents):
  Remove.
  (system-qemu-image): Remove call to
  'operating-system-default-contents'.  Use 'operating-system-grub.cfg'
  to get grub.cfg.  Add GRUB.CFG to #:inputs.
  (system-qemu-image/shared-store): Likewise, but don't add GRUB.CFG to
  #:inputs.
  (system-qemu-image/shared-store-script): Pass --system kernel option.
* guix/build/activation.scm (%booted-system, %current-system): New
  variables.
  (boot-time-system, activate-current-system): New procedures.
* guix/build/install.scm (evaluate-populate-directive): Add case
  for ('directory name uid gid mode).
  (directives, populate-root-file-system): New procedures.
* guix/build/vm.scm (initialize-hard-disk): Replace calls to
  'evaluate-populate-directive' by a call to
  'populate-root-file-system'.
* gnu/services/dmd.scm (dmd-configuration-file): Use
  /run/current-system/profile/bin.
* gnu/services/xorg.scm (slim-service): Likewise.
Next