commit:     49ad8d2c53d2f21f4867e147b6ad97cbcb706c79
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 15 11:27:59 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Jul 15 11:29:17 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49ad8d2c

sys-apps/nix: added missing gcroots directory, bug #622658

Fixed two bugs here:
- added missing /nix/var/nix/gcroots/per-user directory
- fixed /etc/profile.d/nix-daemon.sh to use 'stat -c', not 'stat -f'

Reported-by: Toralf Förster
Bug: https://bugs.gentoo.org/622658
Package-Manager: Portage-2.3.6, Repoman-2.3.2

 sys-apps/nix/files/nix-1.11.12-etc-fixes.patch     | 24 ++++++++++++++++++++++
 .../{nix-1.11.12.ebuild => nix-1.11.12-r1.ebuild}  |  7 ++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/sys-apps/nix/files/nix-1.11.12-etc-fixes.patch 
b/sys-apps/nix/files/nix-1.11.12-etc-fixes.patch
new file mode 100644
index 00000000000..1973133e22b
--- /dev/null
+++ b/sys-apps/nix/files/nix-1.11.12-etc-fixes.patch
@@ -0,0 +1,24 @@
+GNU coreutils has '-c' option for formatted output, not -f.
+Don't spam stderr when directory gets created.
+diff --git a/scripts/nix-profile-daemon.sh.in 
b/scripts/nix-profile-daemon.sh.in
+index 7f46cc6..386f607 100644
+--- a/scripts/nix-profile-daemon.sh.in
++++ b/scripts/nix-profile-daemon.sh.in
+@@ -15,3 +15,3 @@ export NIX_PROFILES="@localstatedir@/nix/profiles/default 
$HOME/.nix-profile"
+ mkdir -m 0755 -p $NIX_USER_PROFILE_DIR
+-if test "$(stat -f '%u' $NIX_USER_PROFILE_DIR)" != "$(id -u)"; then
++if test "$(stat -c '%u' $NIX_USER_PROFILE_DIR)" != "$(id -u)"; then
+     echo "WARNING: bad ownership on $NIX_USER_PROFILE_DIR" >&2
+@@ -37,3 +37,3 @@ if test -w $HOME; then
+   mkdir -m 0755 -p $NIX_USER_GCROOTS_DIR
+-  if test "$(stat -f '%u' $NIX_USER_GCROOTS_DIR)" != "$(id -u)"; then
++  if test "$(stat -c '%u' $NIX_USER_GCROOTS_DIR)" != "$(id -u)"; then
+       echo "WARNING: bad ownership on $NIX_USER_GCROOTS_DIR" >&2
+diff --git a/scripts/nix-profile.sh.in b/scripts/nix-profile.sh.in
+index 4f09b55..e93ef42 100644
+--- a/scripts/nix-profile.sh.in
++++ b/scripts/nix-profile.sh.in
+@@ -5,3 +5,2 @@ if [ -n "$HOME" ]; then
+     if ! [ -L "$NIX_LINK" ]; then
+-        echo "creating $NIX_LINK" >&2
+         _NIX_DEF_LINK=@localstatedir@/nix/profiles/per-user/$USER/profile

diff --git a/sys-apps/nix/nix-1.11.12.ebuild 
b/sys-apps/nix/nix-1.11.12-r1.ebuild
similarity index 91%
rename from sys-apps/nix/nix-1.11.12.ebuild
rename to sys-apps/nix/nix-1.11.12-r1.ebuild
index f8b026b00b9..61cf9a2de1c 100644
--- a/sys-apps/nix/nix-1.11.12.ebuild
+++ b/sys-apps/nix/nix-1.11.12-r1.ebuild
@@ -44,6 +44,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-1.11.6-per-user.patch
        "${FILESDIR}"/${PN}-1.11.6-respect-CXXFLAGS.patch
        "${FILESDIR}"/${PN}-1.11.6-respect-LDFLAGS.patch
+       "${FILESDIR}"/${PN}-1.11.12-etc-fixes.patch
 )
 
 DISABLE_AUTOFORMATTING=yes
@@ -113,11 +114,15 @@ src_install() {
        keepdir             /nix/var/nix/profiles/per-user
        fperms 1777         /nix/var/nix/profiles/per-user
 
-       doenvd "${FILESDIR}"/60nix-remote-daemon
+       # setup directories nix-daemon: /etc/profile.d/nix-daemon.sh
+       keepdir             /nix/var/nix/gcroots/per-user
+       fperms 1777         /nix/var/nix/gcroots/per-user
+
        newinitd "${FILESDIR}"/nix-daemon.initd nix-daemon
 
        if ! use etc_profile; then
                rm "${ED}"/etc/profile.d/nix.sh || die
+               rm "${ED}"/etc/profile.d/nix-daemon.sh || die
        fi
 }
 

Reply via email to