summary refs log tree commit diff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-04-13 01:25:28 -0400
committerMark H Weaver <mhw@netris.org>2015-04-13 01:25:28 -0400
commit1ca8ff285ba0f055fbaf314d8a23fadc25839135 (patch)
tree365145d3f9e5f5009845c5fd9696c5083d734134 /gnu/system.scm
parent14fe9488f487e63f965b7ba103a95a38ba236569 (diff)
parent4c9050c63d707222730fc6112415f4324e0c7c37 (diff)
downloadguix-1ca8ff285ba0f055fbaf314d8a23fadc25839135.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm18
1 files changed, 18 insertions, 0 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index ece61adb2b..6cf12df604 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -680,6 +681,9 @@ etc."
                     (activate-firmware
                      (string-append #$firmware "/lib/firmware"))
 
+                    ;; Let users debug their own processes!
+                    (activate-ptrace-attach)
+
                     ;; Run the services' activation snippets.
                     ;; TODO: Use 'load-compiled'.
                     (for-each primitive-load '#$actions)
@@ -695,6 +699,20 @@ we're running in the final root."
                        (dmd-conf (dmd-configuration-file services)))
     (gexp->file "boot"
                 #~(begin
+                    (use-modules (guix build utils))
+
+                    ;; Clean out /tmp and /var/run.
+                    ;;
+                    ;; XXX This needs to happen before service activations, so
+                    ;; it has to be here, but this also implicitly assumes
+                    ;; that /tmp and /var/run are on the root partition.
+                    (false-if-exception (delete-file-recursively "/tmp"))
+                    (false-if-exception (delete-file-recursively "/var/run"))
+                    (false-if-exception (mkdir "/tmp"))
+                    (false-if-exception (chmod "/tmp" #o1777))
+                    (false-if-exception (mkdir "/var/run"))
+                    (false-if-exception (chmod "/var/run" #o755))
+
                     ;; Activate the system.
                     ;; TODO: Use 'load-compiled'.
                     (primitive-load #$activate)