~ruther/guix-local

ref: 3263b9b3968a3bbfe4d9d0cf96530ed7d01d3479 guix-local/guix d---------
6879fe23 — Taylan Ulrich Bayirli/Kammer 11 years ago
guix package: Try $LOGNAME in addition to $USER.

Fixes <http://bugs.gnu.org/17946>.

Notoriously, cron jobs may set LOGNAME only and not USER.  See
e.g. crontab(5) under Debian 7 (wheezy).

* guix/scripts/package.scm (%profile-directory)
(guix-package): Also try LOGNAME if USER is unset.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
88371f0d — Ludovic Courtès 11 years ago
guix package: Do the right thing for '-p ~/.guix-profile'.

Fixes <http://bugs.gnu.org/17939>.
Reported by Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>.

* guix/scripts/package.scm (canonicalize-profile): New procedure.
  (%options): Use it for --profile.
* tests/guix-package.sh: Add test.
e3ced65a — Ludovic Courtès 11 years ago
linux-initrd: Use 'call-with-error-handling' when booting.

* guix/build/linux-initrd.scm (canonicalize-device-spec): When label
  resolution fails, call 'error' instead of 'format' + 'start-repl'.
  (boot-system): Wrap most of body in 'call-with-error-handling'.
  Remove 'catch' around 'primitive-load' call.
dccab4df — Ludovic Courtès 11 years ago
linux-initrd: Remove unused local procedure.

* guix/build/linux-initrd.scm (boot-system)[resolve]: Remove.
d266b793 — Ludovic Courtès 11 years ago
linux-initrd: Gracefully handle lack of or invalid ext2 superblocks.

Reported by David Thompson <dthompson2@worcester.edu>.

* guix/build/linux-initrd.scm (read-ext2-superblock): Add
  'superblock-size' variable.  Read with 'get-bytevector-n!' instead of
  'getbytevector-n', and make sure we read exactly SUPERBLOCK-SIZE
  bytes.
71639e1f — Eric Bavier 11 years ago
guix: Add CC0 license.

* guix/licenses.scm (cc0): New variable.
6750877f — Ludovic Courtès 11 years ago
git-download: Support recursive clones.

* guix/git-download.scm (<git-reference>)[recursive?]: New field.
  (git-fetch): Add 'inputs' variable.  Add it to the #:inputs argument
  of 'build-expression->derivation'.  Augment builder with call to
  'set-path-environment-variable', and pass #:recursive? to
  'git-fetch'.
* guix/build/git.scm (git-fetch): Add #:recursive? parameter.  Pass
  --recursive when RECURSIVE? is true, and delete all the '.git' files.
459dd9ea — Ludovic Courtès 11 years ago
system: Add a 'system?' field to user accounts.

* gnu/system/shadow.scm (<user-account>)[system?]: New field.
* gnu/system.scm (user-account->gexp): Add it.
* guix/build/activation.scm (add-user): Add #:system? parameter and
  honor it.
  (activate-users+groups): Handle the 'system?' part of user tuples.
  Pass it to 'add-user'.  Don't create PROFILE-DIR when SYSTEM? is
  true.
* gnu/services/dbus.scm (dbus-service): Add 'system?' field for
  "messagebus" account.
* gnu/services/base.scm (guix-build-accounts): Likewise.
* gnu/services/avahi.scm (avahi-service): Likewise.
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.
b25937e3 — Ludovic Courtès 11 years ago
guix system: Add 'reconfigure' action.

* 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.
f01efec0 — Ludovic Courtès 11 years ago
activation: Preserve /etc/groups upon reboots.

This is a followup to e2fcc23.  The /etc/group file would be cleared
when booting.

* guix/build/activation.scm (activate-users+groups)[touch]: Rewrite so
  it does not wipe out FILE's contents.
c1202fb1 — Ludovic Courtès 11 years ago
guix {system,offload}: Improve reporting of syntax errors.

* guix/scripts/system.scm (read-operating-system) <catch handler>: Add
  case for 'syntax-error'.  Correct message for default case.
* guix/scripts/offload.scm (build-machines) <catch handler>: Add case
  for 'syntax-error'.
* tests/guix-system.sh: New file.
* Makefile.am (SH_TESTS): Add it.
cadf6cb4 — Ludovic Courtès 11 years ago
guix system: Gracefully handle 'install-grub' errors.

* guix/scripts/system.scm (install): Wrap 'install-grub' call in
  'false-if-exception'.  This is a followup to 641f9a2a.
9b9148d8 — Ludovic Courtès 11 years ago
linux-initrd: Allow unionfs to have a large number of open files.

Fixes <http://bugs.gnu.org/17827>.

* guix/build/linux-initrd.scm (mount-root-file-system) [volatile-root?]:
  Pass unionfs '-o max_file=65536'.
f513527a — Ludovic Courtès 11 years ago
Merge branch 'core-updates'
00fe9333 — Ludovic Courtès 11 years ago
substitute-binary: Warn about uninitialized ACL.

* guix/scripts/substitute-binary.scm (guix-substitute-binary): Call
  'check-acl-initialized'.
  (check-acl-initialized): Don't rely on 'equal?' to compare keys.
  Instead, convert keys to strings.
eef4096c — Ludovic Courtès 11 years ago
guix system: 'init' makes sure the target store directory exists.

* guix/scripts/system.scm (install): Before calling 'copy-closure', make
  sure directory (%store-prefix) under TARGET exists.
2eea253f — Ludovic Courtès 11 years ago
substitute-binary: Avoid the term "narinfo" in user messages.

* guix/scripts/substitute-binary.scm (assert-valid-narinfo): Change
  message to avoid the term "narinfo".
7470df5d — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
07254feb — Ludovic Courtès 11 years ago
ui: Avoid circularity with (guix gexp).

Fixes a regression introduced in 56b8210 ("guix build: Allow gexps to be
passed to '-e'.")

* guix/ui.scm (%guix-user-module): Wrap in 'delay'.
  (read/eval): Adjust accordingly.
Next