From b2a5fa594e66b9d929df11fc7a38e4b367a00a5e Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 20 May 2015 12:57:50 -0400 Subject: [PATCH] install: Omit /, /root, and /var from binary tarball. * gnu/system/install.scm (self-contained-tarball): Pass "./root/.guix-profile", "./var/guix", and "./gnu" to 'tar' command instead of ".". --- gnu/system/install.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 799851c9d7..007bd25ae6 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015 Ludovic Courtès +;;; Copyright © 2015 Mark H Weaver ;;; ;;; This file is part of GNU Guix. ;;; @@ -71,7 +72,14 @@ (define %root "root") (with-directory-excursion %root (zero? (system* "tar" "--xz" "--format=gnu" "--owner=root:0" "--group=root:0" - "-cvf" #$output "."))))) + "-cvf" #$output + ;; Avoid adding /, /var, or /root to the tarball, + ;; so that the ownership and permissions of those + ;; directories will not be overwritten when + ;; extracting the archive. + "./root/.guix-profile" + "./var/guix" + "./gnu"))))) (gexp->derivation "guix-tarball.tar.xz" build #:references-graphs `(("profile" ,profile))