diff options
author | Mark H Weaver <mhw@netris.org> | 2015-07-19 18:12:34 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2015-07-19 18:12:34 -0400 |
commit | 1b4e48d498a96d478baa1aae7d9c7ecdbd817d6f (patch) | |
tree | 4b650999e49a6f4d3dd116fab3f9ee8222247e07 /gnu/system | |
parent | aa27987f71cb8afa698ede551e20b1248f160113 (diff) | |
parent | 50c7a1e297bff0935674b4f30e854a8889becfdd (diff) |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/system')
-rw-r--r-- | gnu/system/file-systems.scm | 47 | ||||
-rw-r--r-- | gnu/system/install.scm | 6 | ||||
-rw-r--r-- | gnu/system/shadow.scm | 2 | ||||
-rw-r--r-- | gnu/system/vm.scm | 3 |
4 files changed, 36 insertions, 22 deletions
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index ece8fb41e6..003eb443d1 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -37,6 +37,7 @@ file-system-options file-system-check? file-system-create-mount-point? + file-system-dependencies file-system->spec string->uuid @@ -97,7 +98,10 @@ (check? file-system-check? ; Boolean (default #t)) (create-mount-point? file-system-create-mount-point? ; Boolean - (default #f))) + (default #f)) + (dependencies file-system-dependencies ; list of strings (mount + ; points depended on) + (default '()))) (define-inlinable (file-system-needed-for-boot? fs) "Return true if FS has the 'needed-for-boot?' flag set, or if it's the root @@ -153,8 +157,10 @@ UUID representation." ((_ str) (string? (syntax->datum #'str)) ;; A literal string: do the conversion at expansion time. - (with-syntax ((bv (string->uuid (syntax->datum #'str)))) - #''bv)) + (let ((bv (string->uuid (syntax->datum #'str)))) + (unless bv + (syntax-violation 'uuid "invalid UUID" s)) + (datum->syntax #'str bv))) ((_ str) #'(string->uuid str))))) @@ -231,21 +237,26 @@ UUID representation." (flags '(read-only bind-mount)))) (define %control-groups - (cons (file-system - (device "cgroup") - (mount-point "/sys/fs/cgroup") - (type "tmpfs") - (check? #f)) - (map (lambda (subsystem) - (file-system - (device "cgroup") - (mount-point (string-append "/sys/fs/cgroup/" subsystem)) - (type "cgroup") - (check? #f) - (options subsystem) - (create-mount-point? #t))) - '("cpuset" "cpu" "cpuacct" "memory" "devices" "freezer" - "blkio" "perf_event" "hugetlb")))) + (let ((parent (file-system + (device "cgroup") + (mount-point "/sys/fs/cgroup") + (type "tmpfs") + (check? #f)))) + (cons parent + (map (lambda (subsystem) + (file-system + (device "cgroup") + (mount-point (string-append "/sys/fs/cgroup/" subsystem)) + (type "cgroup") + (check? #f) + (options subsystem) + (create-mount-point? #t) + + ;; This must be mounted after, and unmounted before the + ;; parent directory. + (dependencies (list parent)))) + '("cpuset" "cpu" "cpuacct" "memory" "devices" "freezer" + "blkio" "perf_event" "hugetlb"))))) (define %base-file-systems ;; List of basic file systems to be mounted. Note that /proc and /sys are diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 359d1265e5..e7e5d4ae9d 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -75,6 +75,7 @@ under /root/.guix-profile where GUIX is installed." (with-directory-excursion %root (zero? (system* "tar" "--xz" "--format=gnu" "--owner=root:0" "--group=root:0" + "--mtime=@0" ;for files in /var/guix "--check-links" "-cvf" #$output ;; Avoid adding / and /var to the tarball, @@ -273,8 +274,9 @@ You have been warned. Thanks for being so brave. (guix-service #:authorize-hydra-key? #t) ;; Start udev so that useful device nodes are available. - ;; Use device-mapper rules for cryptsetup & co. - (udev-service #:rules (list lvm2)) + ;; Use device-mapper rules for cryptsetup & co; enable the CRDA for + ;; regulations-compliant WiFi access. + (udev-service #:rules (list lvm2 crda)) ;; Add the 'cow-store' service, which users have to start manually ;; since it takes the installation directory as an argument. diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index ae6229229b..f033109614 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -156,7 +156,7 @@ fi # Adjust the prompt depending on whether we're in 'guix environment'. if [ -n \"$GUIX_ENVIRONMENT\" ] then - export PS1='\\u@\\h \\w\\ [env]$ ' + export PS1='\\u@\\h \\w [env]\\$ ' else export PS1='\\u@\\h \\w\\$ ' fi diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 2520493e2e..b293009127 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -493,7 +493,8 @@ exec " #$qemu "/bin/" #$(qemu-command (%current-system)) #~(" -kernel " #$(operating-system-kernel os) "/bzImage \ -initrd " #$os-drv "/initrd \ -append \"" #$(if graphic? "" "console=ttyS0 ") - "--system=" #$os-drv " --load=" #$os-drv "/boot --root=/dev/vda1\" ")) + "--system=" #$os-drv " --load=" #$os-drv "/boot --root=/dev/vda1 " + (string-join (list #+@(operating-system-kernel-arguments os))) "\" ")) #$(common-qemu-options image (map file-system-mapping-source (cons %store-mapping mappings))) |