~ruther/guix-local

ref: 0c21d92b1cb0f7fa2b2d43cae1d84d32ccfc1393 guix-local/gnu/system/linux-initrd.scm -rw-r--r-- 10.9 KiB
0c21d92b — Ludovic Courtès 12 years ago
linux-initrd: Rewrite using gexps.

* gnu/system/linux-initrd.scm (expression->initrd): Rename 'inputs'
  parameter to 'to-copy'.  Remove 'files-to-copy'.  Rewrite 'builder' as
  a gexp, and use 'gexp->derivation'.
  (qemu-initrd): Adjust accordingly.
1c96c1bb — Ludovic Courtès 12 years ago
linux-initrd: Mount / as a unionfs when asking for a volatile root.

* guix/build/linux-initrd.scm (make-essential-device-nodes): Make
  /dev/fuse.
  (boot-system): Add #:unionfs parameter.  Invoke UNIONFS instead of
  copying files over when VOLATILE-ROOT? is true.
* gnu/system/linux-initrd.scm (expression->initrd): Add #:inputs
  parameter.
  [files-to-copy]: New procedure.
  [builder]: Add 'to-copy' parameter; honor it.
  (qemu-initrd)[linux-modules]: Add 'fuse.ko' when VOLATILE-ROOT?.
  Pass UNIONFS-FUSE/STATIC as #:inputs; change builder to pass #:unionfs
  to 'boot-system'.
4d9a80ba — Ludovic Courtès 12 years ago
gnu: linux-initrd: Default initrd has no network mounts.

* gnu/system/linux-initrd.scm (gnu-system-initrd): Add #:mounts
  argument.
b2bfa32d — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates

Conflicts:
	gnu-system.am
44ddf33e — Ludovic Courtès 12 years ago
gnu: linux-initrd: Allow the root file system to be volatile.

* gnu/system/linux-initrd.scm (qemu-initrd): Add 'volatile-root?'
  parameter.
* guix/build/linux-initrd.scm (boot-system): Likewise.  Honor it.
4919d684 — Ludovic Courtès 12 years ago
gnu: linux-initrd: Recognize 9p file systems.

* gnu/system/linux-initrd.scm (qemu-initrd)[virtio-9p-modules]: New
  variable.
  [linux-modules]: Append VIRTIO-9P-MODULES when a 9p file system is in
  MOUNTS.
* guix/build/linux-initrd.scm (mount-qemu-9p): New procedure.
  (boot-system): Recognize '9p' in MOUNTS, and use 'mount-qemu-9p'.
217b862f — Ludovic Courtès 12 years ago
gnu: linux-initrd: Match kernel module file names exactly.

* gnu/system/linux-initrd.scm (expression->initrd)[string->regexp]: New
  procedure.  Use it in the call to 'find-files'.
d4254711 — Ludovic Courtès 12 years ago
gnu: linux-initrd: Factorize boot code.

* guix/build/linux-initrd.scm (boot-system): New procedure.
* gnu/system/linux-initrd.scm (qemu-initrd): Add keyword parameters
  'guile-modules-in-chroot?' and 'mounts'.  Change builder to simply
  call 'boot-system'.
  (gnu-system-initrd): Change to a simple call to 'qemu-initrd'.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Call
  'qemu-initrd' with #:guile-modules-in-chroot?.
735c6dd7 — Ludovic Courtès 12 years ago
gnu: Lower initrd makers from packages to monadic procedures.

* gnu/packages/linux-initrd.scm: Remove.
* gnu/system/linux-initrd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/system.scm (<operating-system>): Change default 'initrd' value
  to (gnu-system-initrd).
  (operating-system-derivation): Bind 'operating-system-initrd'.  Pass
  'menu-entry' an initrd file name instead of a package.
* gnu/system/grub.scm (grub-configuration-file): Expect 'initrd' to be
  file name.
b0dd47a8 — Ludovic Courtès 12 years ago
gnu: qemu-initrd: Adjust to allow booting with a non-empty /root.

* gnu/packages/linux-initrd.scm (qemu-initrd): Use 'mkdir-p' instead of
  'mkdir' for /root/xchg and /root/{share,lib}.  When TO-LOAD is a
  symlink, resolve it.
  (gnu-system-initrd): Fix typo in message.
ff8061b5 — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates
dfb52abb — Ludovic Courtès 12 years ago
Remove weirdnesses caused by 'letrec*' behavior of record field initializers.

* gnu/packages/bootstrap.scm (package-from-tarball): Remove '*' from
  parameter names.  Adjust accordingly.
* gnu/packages/linux-initrd.scm (expression->initrd): Use 'name'
  directly, removing the 'name*' alias.
* gnu/packages/linux.scm (linux-libre-headers, linux-libre): Rename
  'version*' to 'version'.
fbd1c3e9 — Ludovic Courtès 12 years ago
gnu: linux-initrd: Mount /tmp as a tmpfs.

* gnu/packages/linux-initrd.scm (gnu-system-initrd): Make sure /root/tmp
  exists; mount it as a tmpfs.
5608847c — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates
e0ba5fe5 — Ludovic Courtès 12 years ago
gnu: linux-initrd: Fix typo.

* gnu/packages/linux-initrd.scm (gnu-system-initrd): Add missing
  argument to 'format' call.
8ce3104e — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates
1b89a66e — Ludovic Courtès 12 years ago
gnu: vm: First stab at building a populated QEMU image.

* gnu/packages/linux-initrd.scm (gnu-system-initrd): New variable.
* gnu/system/vm.scm (qemu-image): Add #:linux-arguments parameter.
  [input->name+derivation]: Add case for 'store-path?' items.
  Remove LOADER from `inputs'.
7c1d8146 — Ludovic Courtès 12 years ago
gnu: vm: 'qemu-image' populates /dev on the target root file system.

* gnu/system/vm.scm (qemu-image): Use (guix build linux-initrd).  Remove
  'mknod' calls; use 'make-essential-device-nodes' to populate /dev on
  the target image.
* gnu/packages/linux-initrd.scm (qemu-initrd): When /root/dev exists,
  don't call 'make-essential-device-nodes'.
d91712ee — Ludovic Courtès 12 years ago
gnu: linux-initrd: Factorize device node creation.

* guix/build/linux-initrd.scm (make-essential-device-nodes): New
  procedure.
* gnu/packages/linux-initrd.scm (qemu-initrd): Use it.
b48d21b2 — Ludovic Courtès 12 years ago
gnu: linux-initrd: Make device nodes for QEMU's hard disk.

* gnu/packages/linux-initrd.scm (qemu-initrd): Make /dev/vda*.
Next