public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/
@ 2019-09-07  8:03 Sergei Trofimovich
  0 siblings, 0 replies; 5+ messages in thread
From: Sergei Trofimovich @ 2019-09-07  8:03 UTC (permalink / raw
  To: gentoo-commits

commit:     7557065fb0a8b03218d6a67eca3771b1ca7382fd
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  7 07:51:52 2019 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Sep  7 08:03:54 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7557065f

sys-apps/nix: bump up to 2.3

Package-Manager: Portage-2.3.75, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 sys-apps/nix/Manifest                     |   1 +
 sys-apps/nix/files/nix-2.3-libpaths.patch |  48 +++++++++++
 sys-apps/nix/nix-2.3.ebuild               | 137 ++++++++++++++++++++++++++++++
 3 files changed, 186 insertions(+)

diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest
index 0cfbb3a69a1..5f5d2661d76 100644
--- a/sys-apps/nix/Manifest
+++ b/sys-apps/nix/Manifest
@@ -1,3 +1,4 @@
 DIST nix-2.0.4.tar.xz 798352 BLAKE2B 0eaf7e507c87e5398ab5967e1f2064a5827038bb84208768aa1c1deadc95e44aab922846b728467e3355d1f25e740590c3d1748ec05dfeae6a171952fd941b77 SHA512 bce3b3a14269d42648a4935770260c36dab25fde3ebcfed730063d1d139603468e1c30acf15eb0cffff617fa36a6b39d4ae31ccfd9cba762f631ecac213fd09a
 DIST nix-2.1.3.tar.xz 816396 BLAKE2B 9627626075841e7f389f5010418fe17569ae69ea07de5ff9a0557df864052cc8b48f2a4dbfe16dffc5dca3fb180f527199f367810899ae9474d00e8fcc00b760 SHA512 d22718d23d8960dac7d07739835caa8183f573b303d77613e77314d873c1fe6da1cb0ed78337fe3219a94675307b23132a62ae7d9aa5354707e58400f403524b
 DIST nix-2.2.2.tar.xz 818408 BLAKE2B f13bf79596d6292bea9897805421b388241d670f2b36bc13882f610901a9bb9aa1dc977d7a7d9314139791f20be38ca85becf5c4e863b22fc0b39503a7a4a079 SHA512 c8b1d5f246c53f13cfa25cba0d0721a2628329c10f67fcccbd9a55279cf475170a105156559d0a62638822a8e972f85e8a58769444d51f94ba15e2af7f90e220
+DIST nix-2.3.tar.xz 844640 BLAKE2B 09707ae6c50c118375cdf2469a3ca19fbd940454bb80b7bccd74824deb3e370107acca99d7bf69bc93a168521a8d4928e3ac73fcfe1eeb53801d8e5f18574096 SHA512 45cb0c195f220a57cef80ad79def5e65b85588a2fc390f9b5e2ac4309698cc3065a23ee4f836913b642348afb1ee625072538bfedb5b26f9626344bbe784b425

diff --git a/sys-apps/nix/files/nix-2.3-libpaths.patch b/sys-apps/nix/files/nix-2.3-libpaths.patch
new file mode 100644
index 00000000000..42931e7e8d5
--- /dev/null
+++ b/sys-apps/nix/files/nix-2.3-libpaths.patch
@@ -0,0 +1,48 @@
+Workaround -L path order by passing local library paths before
+systemwide paths to avoid pulling libnixstore.so from system
+instead of locally-built library.
+
+The patch is not perfect because it passes LDFLAGS after local
+libraries but it makes nix link correctly.
+
+Bug: https://github.com/NixOS/nix/issues/3087
+--- a/mk/libraries.mk
++++ b/mk/libraries.mk
+@@ -91,7 +91,7 @@ define build-library
+     $(1)_PATH := $$(_d)/$$($(1)_NAME).$(SO_EXT)
+ 
+     $$($(1)_PATH): $$($(1)_OBJS) $$(_libs) | $$(_d)/
+-	$$(trace-ld) $(CXX) -o $$(abspath $$@) -shared $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE)) $$($(1)_LDFLAGS_UNINSTALLED)
++	$$(trace-ld) $(CXX) -o $$(abspath $$@) -shared $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE)) $$($(1)_LDFLAGS_UNINSTALLED) $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED)
+ 
+     ifneq ($(OS), Darwin)
+       $(1)_LDFLAGS_USE += -Wl,-rpath,$$(abspath $$(_d))
+@@ -105,7 +105,7 @@ define build-library
+     $$(eval $$(call create-dir, $$($(1)_INSTALL_DIR)))
+ 
+     $$($(1)_INSTALL_PATH): $$($(1)_OBJS) $$(_libs_final) | $(DESTDIR)$$($(1)_INSTALL_DIR)/
+-	$$(trace-ld) $(CXX) -o $$@ -shared $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
++	$$(trace-ld) $(CXX) -o $$@ -shared $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED)) $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED)
+ 
+     $(1)_LDFLAGS_USE_INSTALLED += -L$$(DESTDIR)$$($(1)_INSTALL_DIR) -l$$(patsubst lib%,%,$$(strip $$($(1)_NAME)))
+     ifneq ($(OS), Darwin)
+--- a/mk/programs.mk
++++ b/mk/programs.mk
+@@ -32,7 +32,7 @@ define build-program
+   $$(eval $$(call create-dir, $$(_d)))
+ 
+   $$($(1)_PATH): $$($(1)_OBJS) $$(_libs) | $$(_d)/
+-	$$(trace-ld) $(CXX) -o $$@ $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE))
++	$$(trace-ld) $(CXX) -o $$@ $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE)) $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS)
+ 
+   $(1)_INSTALL_DIR ?= $$(bindir)
+   $(1)_INSTALL_PATH := $$($(1)_INSTALL_DIR)/$(1)
+@@ -46,7 +46,7 @@ define build-program
+     _libs_final := $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_INSTALL_PATH))
+ 
+     $(DESTDIR)$$($(1)_INSTALL_PATH): $$($(1)_OBJS) $$(_libs_final) | $(DESTDIR)$$($(1)_INSTALL_DIR)/
+-	$$(trace-ld) $(CXX) -o $$@ $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
++	$$(trace-ld) $(CXX) -o $$@ $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED)) $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS)
+ 
+   else
+ 

diff --git a/sys-apps/nix/nix-2.3.ebuild b/sys-apps/nix/nix-2.3.ebuild
new file mode 100644
index 00000000000..448e5bbc051
--- /dev/null
+++ b/sys-apps/nix/nix-2.3.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic readme.gentoo-r1 user
+
+DESCRIPTION="A purely functional package manager"
+HOMEPAGE="https://nixos.org/nix"
+
+SRC_URI="http://nixos.org/releases/${PN}/${P}/${P}.tar.xz"
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+etc_profile +gc doc s3 +sodium"
+
+# sys-apps/busybox is needed for sandbox mount of /bin/sh
+RDEPEND="
+	app-arch/brotli
+	app-arch/bzip2
+	app-arch/xz-utils
+	sys-apps/busybox[static]
+	dev-db/sqlite
+	dev-libs/editline:0=
+	dev-libs/openssl:0=
+	>=dev-libs/boost-1.66:0=[context]
+	net-misc/curl
+	sys-libs/libseccomp
+	sys-libs/zlib
+	gc? ( dev-libs/boehm-gc[cxx] )
+	doc? ( dev-libs/libxml2
+		dev-libs/libxslt
+		app-text/docbook-xsl-stylesheets
+	)
+	s3? ( dev-libs/aws-sdk-cpp )
+	sodium? ( dev-libs/libsodium:0= )
+"
+DEPEND="${RDEPEND}
+	>=sys-devel/bison-2.6
+	>=sys-devel/flex-2.5.35
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.0-user-path.patch
+	"${FILESDIR}"/${PN}-2.3-libpaths.patch
+)
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS=" Quick start user guide on Gentoo:
+
+[as root] enable nix-daemon service:
+	[systemd] # systemctl enable nix-daemon
+	[openrc]  # rc-update add nix-daemon
+[as a user] relogin to get environment and profile update
+[as a user] fetch nixpkgs update:
+	\$ nix-channel --update
+[as a user] install nix packages:
+	\$ nix-env -i mc
+[as a user] configure environment:
+	Somewhere in .bash_profile you might want to set
+	LOCALE_ARCHIVE=\$HOME/.nix-profile/lib/locale/locale-archive
+	but please read https://github.com/NixOS/nixpkgs/issues/21820
+
+Next steps:
+	nix package manager user manual: http://nixos.org/nix/manual/
+"
+
+pkg_setup() {
+	enewgroup nixbld
+	for i in {1..10}; do
+		# we list 'nixbld' twice to
+		# both assign a primary group for user
+		# and add a user to /etc/group
+		enewuser nixbld${i} -1 -1 /var/empty nixbld,nixbld
+	done
+}
+
+src_prepare() {
+	default
+
+	eautoreconf
+}
+
+src_configure() {
+	if ! use s3; then
+		# Disable automagic depend: bug #670256
+		export ac_cv_header_aws_s3_S3Client_h=no
+	fi
+	econf \
+		--localstatedir="${EPREFIX}"/nix/var \
+		$(use_enable gc) \
+		--with-sandbox-shell=/bin/busybox
+}
+
+src_compile() {
+	emake V=1
+}
+
+src_install() {
+	# TODO: emacs highlighter
+	default
+
+	readme.gentoo_create_doc
+
+	# here we use an eager variant of something that
+	# is lazily done by nix-daemon and root nix-env
+
+	# TODO: will need a tweak for prefix
+	keepdir             /nix/store
+	fowners root:nixbld /nix/store
+	fperms 1775         /nix/store
+
+	keepdir             /nix/var/nix/channel-cache
+	fperms 0777         /nix/var/nix/channel-cache
+
+	keepdir             /nix/var/nix/profiles/per-user
+	fperms 1777         /nix/var/nix/profiles/per-user
+
+	# 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
+}
+
+pkg_postinst() {
+	if ! use etc_profile; then
+		ewarn "${EROOT}/etc/profile.d/nix.sh was removed (due to USE=-etc_profile)."
+	fi
+
+	readme.gentoo_print_elog
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/
@ 2017-12-21  8:01 Sergei Trofimovich
  0 siblings, 0 replies; 5+ messages in thread
From: Sergei Trofimovich @ 2017-12-21  8:01 UTC (permalink / raw
  To: gentoo-commits

commit:     bc1aa3e62e2a8c024ffefa5f32cd4a233a05bd93
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 21 08:00:41 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Dec 21 08:01:26 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc1aa3e6

sys-apps/nix: drop old

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 sys-apps/nix/Manifest                           |   1 -
 sys-apps/nix/files/nix-1.11.14-glibc-2.26.patch |  16 ---
 sys-apps/nix/nix-1.11.14.ebuild                 | 135 ------------------------
 3 files changed, 152 deletions(-)

diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest
index 216f1c03ae0..6de2c3842c5 100644
--- a/sys-apps/nix/Manifest
+++ b/sys-apps/nix/Manifest
@@ -1,3 +1,2 @@
-DIST nix-1.11.14.tar.xz 632260 BLAKE2B 5ee239aca547a8918c574dbdc6f1276dff1b66f83c89f85c23f242551a6e6784e2bdc4fcfce327395df7628148409ab13954b6eb78710325bc04c370d401ea82 SHA512 48ed17a090a161ad35c8e84652566e527f31586184b8722a5536a6d83eee1e81911b6c4d5f0661f57054db6c47b5d8211f2acf47899fbec72f2c4bf8a5262af5
 DIST nix-1.11.15.tar.xz 632544 BLAKE2B 3624c396c67a7c64e2ba16fd500951e6cf1b6f29f31929793072b5dfcdf1ffe40d5645c58d3967dd82d6c8d0bf6e5e2598a0d8d5fc3f82b22ea279a7854b1aca SHA512 449b3c78b74c776215dfbe9d6d09b96d8c6abf996c69c525073df12d0cffb1a2868890d356fbb52c794e2c6f485018756395625e7b170166f7c6f9e2bdd364d9
 DIST nix-1.11.16.tar.xz 632440 BLAKE2B 0b1966b1445a18616d6ff33e7fa3d1776626872c7cfeb54be4c77b998841db69f1e6aea7638edb21fa67442b953fb1cbaf7752c841d7d21f62dd63885a823834 SHA512 164f728c96fc6609134334e61f674961dfc0f02bd2f5d1d7800d2623fe80d896bfd0b7fba0a723b1bfe23663d4c7cf3e419a7c1992d67e80eb3d6b3bdf60a2a8

diff --git a/sys-apps/nix/files/nix-1.11.14-glibc-2.26.patch b/sys-apps/nix/files/nix-1.11.14-glibc-2.26.patch
deleted file mode 100644
index 44c995e3239..00000000000
--- a/sys-apps/nix/files/nix-1.11.14-glibc-2.26.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-'context' is no more after:
-https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=251287734e89a52da3db682a8241eb6bccc050c9
-
-'ucontext_t' is the new name.
-diff --git a/src/libmain/stack.cc b/src/libmain/stack.cc
-index 41b617d..695aaad 100644
---- a/src/libmain/stack.cc
-+++ b/src/libmain/stack.cc
-@@ -22,5 +22,5 @@ static void sigsegvHandler(int signo, siginfo_t * info, void * ctx)
- #if defined(__x86_64__) && defined(REG_RSP)
--    sp = (char *) ((ucontext *) ctx)->uc_mcontext.gregs[REG_RSP];
-+    sp = (char *) ((ucontext_t *) ctx)->uc_mcontext.gregs[REG_RSP];
- #elif defined(REG_ESP)
--    sp = (char *) ((ucontext *) ctx)->uc_mcontext.gregs[REG_ESP];
-+    sp = (char *) ((ucontext_t *) ctx)->uc_mcontext.gregs[REG_ESP];
- #else

diff --git a/sys-apps/nix/nix-1.11.14.ebuild b/sys-apps/nix/nix-1.11.14.ebuild
deleted file mode 100644
index 55f0dba8e52..00000000000
--- a/sys-apps/nix/nix-1.11.14.ebuild
+++ /dev/null
@@ -1,135 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic readme.gentoo-r1 user
-
-DESCRIPTION="A purely functional package manager"
-HOMEPAGE="https://nixos.org/nix"
-
-SRC_URI="http://nixos.org/releases/${PN}/${P}/${P}.tar.xz"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+etc_profile +gc doc sodium"
-
-RDEPEND="
-	app-arch/bzip2
-	app-arch/xz-utils
-	dev-db/sqlite
-	dev-libs/openssl:0=
-	net-misc/curl
-	sys-libs/libseccomp
-	sys-libs/zlib
-	gc? ( dev-libs/boehm-gc[cxx] )
-	doc? ( dev-libs/libxml2
-		dev-libs/libxslt
-		app-text/docbook-xsl-stylesheets
-	)
-	sodium? ( dev-libs/libsodium )
-	dev-lang/perl:=
-	dev-perl/DBD-SQLite
-	dev-perl/WWW-Curl
-	dev-perl/DBI
-"
-DEPEND="${RDEPEND}
-	>=sys-devel/bison-2.6
-	>=sys-devel/flex-2.5.35
-	virtual/perl-ExtUtils-ParseXS
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.11.6-systemd.patch
-	"${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.14-glibc-2.26.patch
-)
-
-DISABLE_AUTOFORMATTING=yes
-DOC_CONTENTS=" Quick start user guide on Gentoo:
-
-[as root] enable nix-daemon service:
-	[systemd] # systemctl enable nix-daemon
-	[openrc]  # rc-update add nix-daemon
-[as a user] relogin to get environment and profile update
-[as a user] fetch nixpkgs update:
-	\$ nix-channel --update
-[as a user] install nix packages:
-	\$ nix-env -i mc
-[as a user] configure environment:
-	Somewhere in .bash_profile you might want to set
-	LOCALE_ARCHIVE=\$HOME/.nix-profile/lib/locale/locale-archive
-	but please read https://github.com/NixOS/nixpkgs/issues/21820
-
-Next steps:
-	nix package manager user manual: http://nixos.org/nix/manual/
-"
-
-pkg_setup() {
-	enewgroup nixbld
-	for i in {1..10}; do
-		# we list 'nixbld' twice to
-		# both assign a primary group for user
-		# and add a user to /etc/group
-		enewuser nixbld${i} -1 -1 /var/empty nixbld,nixbld
-	done
-}
-
-src_prepare() {
-	default
-
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--localstatedir="${EPREFIX}"/nix/var \
-		$(use_enable gc)
-}
-
-src_compile() {
-	local make_vars=(
-		OPTIMIZE=0 # disable hardcoded -O3
-		V=1 # verbose build
-	)
-	emake "${make_vars[@]}"
-}
-
-src_install() {
-	# TODO: emacs highlighter
-	default
-
-	readme.gentoo_create_doc
-
-	# here we use an eager variant of something that
-	# is lazily done by nix-daemon and root nix-env
-
-	# TODO: will need a tweak for prefix
-	keepdir             /nix/store
-	fowners root:nixbld /nix/store
-	fperms 1775         /nix/store
-
-	keepdir             /nix/var/nix/profiles/per-user
-	fperms 1777         /nix/var/nix/profiles/per-user
-
-	# 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
-}
-
-pkg_postinst() {
-	if ! use etc_profile; then
-		ewarn "${EROOT}etc/profile.d/nix.sh was removed (due to USE=-etc_profile)."
-	fi
-
-	readme.gentoo_print_elog
-}


^ permalink raw reply related	[flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/
@ 2017-07-15 11:29 Sergei Trofimovich
  0 siblings, 0 replies; 5+ messages in thread
From: Sergei Trofimovich @ 2017-07-15 11:29 UTC (permalink / raw
  To: gentoo-commits

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
 }
 


^ permalink raw reply related	[flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/
@ 2017-01-23 21:24 Sergei Trofimovich
  0 siblings, 0 replies; 5+ messages in thread
From: Sergei Trofimovich @ 2017-01-23 21:24 UTC (permalink / raw
  To: gentoo-commits

commit:     fe992f877f5bc3bee3033b693a6f5a8601d423ca
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 23 21:24:03 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Jan 23 21:24:03 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe992f87

sys-apps/nix: respect CFLAGS/CXXFLAGS/LDFLAGS, require boehm-gx[cxx]

Thanks to wiselord on freenode/#haskell-by who
noticed missing boehm-gx[cxx] DEPEND.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 .../nix/files/nix-1.11.6-respect-CXXFLAGS.patch    |   9 ++
 .../nix/files/nix-1.11.6-respect-LDFLAGS.patch     |  36 ++++++
 sys-apps/nix/nix-1.11.6-r2.ebuild                  | 130 +++++++++++++++++++++
 3 files changed, 175 insertions(+)

diff --git a/sys-apps/nix/files/nix-1.11.6-respect-CXXFLAGS.patch b/sys-apps/nix/files/nix-1.11.6-respect-CXXFLAGS.patch
new file mode 100644
index 00000000..091fdca
--- /dev/null
+++ b/sys-apps/nix/files/nix-1.11.6-respect-CXXFLAGS.patch
@@ -0,0 +1,9 @@
+diff --git a/configure.ac b/configure.ac
+index 3a24053..1b99702 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -57,4 +57,2 @@ fi
+ 
+-CFLAGS=
+-CXXFLAGS=
+ AC_PROG_CC

diff --git a/sys-apps/nix/files/nix-1.11.6-respect-LDFLAGS.patch b/sys-apps/nix/files/nix-1.11.6-respect-LDFLAGS.patch
new file mode 100644
index 00000000..12c094e
--- /dev/null
+++ b/sys-apps/nix/files/nix-1.11.6-respect-LDFLAGS.patch
@@ -0,0 +1,36 @@
+diff --git a/Makefile.config.in b/Makefile.config.in
+index f0de4da..c82fbfd 100644
+--- a/Makefile.config.in
++++ b/Makefile.config.in
+@@ -5,2 +5,3 @@ CXX = @CXX@
+ CXXFLAGS = @CXXFLAGS@
++LDFLAGS = @LDFLAGS@
+ HAVE_SODIUM = @HAVE_SODIUM@
+diff --git a/mk/libraries.mk b/mk/libraries.mk
+index 3cd7a53..f7bd015 100644
+--- a/mk/libraries.mk
++++ b/mk/libraries.mk
+@@ -88,3 +88,3 @@ define build-library
+     $$($(1)_PATH): $$($(1)_OBJS) $$(_libs) | $$(_d)/
+-	$$(trace-ld) $(CXX) -o $$(abspath $$@) -shared $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE)) $$($(1)_LDFLAGS_UNINSTALLED)
++	$$(trace-ld) $(CXX) -o $$(abspath $$@) -shared $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE)) $$($(1)_LDFLAGS_UNINSTALLED)
+ 
+@@ -102,3 +102,3 @@ define build-library
+     $$($(1)_INSTALL_PATH): $$($(1)_OBJS) $$(_libs_final) | $(DESTDIR)$$($(1)_INSTALL_DIR)/
+-	$$(trace-ld) $(CXX) -o $$@ -shared $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
++	$$(trace-ld) $(CXX) -o $$@ -shared $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$($(1)_LDFLAGS_PROPAGATED) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
+ 
+diff --git a/mk/programs.mk b/mk/programs.mk
+index 3ac6449..f553ce2 100644
+--- a/mk/programs.mk
++++ b/mk/programs.mk
+@@ -34,3 +34,3 @@ define build-program
+   $$($(1)_PATH): $$($(1)_OBJS) $$(_libs) | $$(_d)/
+-	$$(trace-ld) $(CXX) -o $$@ $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE))
++	$$(trace-ld) $(CXX) -o $$@ $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE))
+ 
+@@ -48,3 +48,3 @@ define build-program
+     $(DESTDIR)$$($(1)_INSTALL_PATH): $$($(1)_OBJS) $$(_libs_final) | $(DESTDIR)$$($(1)_INSTALL_DIR)/
+-	$$(trace-ld) $(CXX) -o $$@ $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
++	$$(trace-ld) $(CXX) -o $$@ $$(LDFLAGS) $$(GLOBAL_LDFLAGS) $$($(1)_OBJS) $$($(1)_LDFLAGS) $$(foreach lib, $$($(1)_LIBS), $$($$(lib)_LDFLAGS_USE_INSTALLED))
+ 

diff --git a/sys-apps/nix/nix-1.11.6-r2.ebuild b/sys-apps/nix/nix-1.11.6-r2.ebuild
new file mode 100644
index 00000000..c9c976b
--- /dev/null
+++ b/sys-apps/nix/nix-1.11.6-r2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit autotools flag-o-matic readme.gentoo-r1 user
+
+DESCRIPTION="A purely functional package manager"
+HOMEPAGE="https://nixos.org/nix"
+
+SRC_URI="http://nixos.org/releases/${PN}/${P}/${P}.tar.xz"
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+etc_profile +gc doc sodium"
+
+RDEPEND="
+	app-arch/bzip2
+	app-arch/xz-utils
+	dev-db/sqlite
+	dev-libs/openssl:0=
+	net-misc/curl
+	sys-libs/zlib
+	gc? ( dev-libs/boehm-gc[cxx] )
+	doc? ( dev-libs/libxml2
+		dev-libs/libxslt
+		app-text/docbook-xsl-stylesheets
+	)
+	sodium? ( dev-libs/libsodium )
+	dev-lang/perl:=
+	dev-perl/DBD-SQLite
+	dev-perl/WWW-Curl
+	dev-perl/DBI
+"
+DEPEND="${RDEPEND}
+	>=sys-devel/bison-2.6
+	>=sys-devel/flex-2.5.35
+	virtual/perl-ExtUtils-ParseXS
+"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-systemd.patch
+	"${FILESDIR}"/${P}-per-user.patch
+	"${FILESDIR}"/${P}-respect-CXXFLAGS.patch
+	"${FILESDIR}"/${P}-respect-LDFLAGS.patch
+)
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS=" Quick start user guide on Gentoo:
+
+[as root] enable nix-daemon service:
+	[systemd] # systemctl enable nix-daemon
+	[openrc]  # rc-update add nix-daemon
+[as an user] relogin to get environment and profile update
+[as an user] fetch nixpkgs update:
+	\$ nix-channel --update
+[as an user] install nix packages:
+	\$ nix-env -i mc
+[as an user] configure environment:
+	Somewhere in .bash_profile you might want to set
+	LOCALE_ARCHIVE=\$HOME/.nix-profile/lib/locale/locale-archive
+	but please read https://github.com/NixOS/nixpkgs/issues/21820
+
+Next steps:
+	nix package manager user manual: http://nixos.org/nix/manual/
+"
+
+pkg_setup() {
+	enewgroup nixbld 30000
+	for i in {1..10}; do
+		# we list 'nixbld' twice to
+		# both assign a primary group for user
+		# and add an user to /etc/group
+		enewuser nixbld${i} $((30000 +$i)) -1 /var/empty nixbld,nixbld
+	done
+}
+
+src_prepare() {
+	default
+
+	eautoreconf
+}
+
+src_configure() {
+	econf \
+		--localstatedir="${EPREFIX}"/nix/var \
+		$(use_enable gc)
+}
+
+src_compile() {
+	local make_vars=(
+		OPTIMIZE=0 # disable hardcoded -O3
+		V=1 # verbose build
+	)
+	emake "${make_vars[@]}"
+}
+
+src_install() {
+	# TODO: emacs highlighter
+	default
+
+	readme.gentoo_create_doc
+
+	# here we an eager variant of something that
+	# is lazily done by  nix-daemo and root nix-env
+
+	# TODO: will need a tweak for prefix
+	keepdir             /nix/store
+	fowners root:nixbld /nix/store
+	fperms 1775         /nix/store
+
+	keepdir             /nix/var/nix/profiles/per-user
+	fperms 1777         /nix/var/nix/profiles/per-user
+
+	doenvd "${FILESDIR}"/60nix-remote-daemon
+	newinitd "${FILESDIR}"/nix-daemon.initd nix-daemon
+
+	if ! use etc_profile; then
+		rm "${ED}"/etc/profile.d/nix.sh || die
+	fi
+}
+
+pkg_postinst() {
+	if ! use etc_profile; then
+		ewarn "${EROOT}etc/profile.d/nix.sh was removed (due to USE=-etc_profile)."
+	fi
+
+	readme.gentoo_print_elog
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/
@ 2017-01-17 11:37 Sergei Trofimovich
  0 siblings, 0 replies; 5+ messages in thread
From: Sergei Trofimovich @ 2017-01-17 11:37 UTC (permalink / raw
  To: gentoo-commits

commit:     ed44e589ea8f02bfaec53fa41c61c60e2e3785a9
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 17 11:37:12 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Jan 17 11:37:30 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed44e589

sys-apps/nix: new package, The Purely Functional Package Manager

Nix is a source-based package manager with strong support for
binary packages. It uses multiple tricks to make package
source dependencies robust:

- nix installs every package into it's own --prefix=.
  Example: /nix/store/xsqz79bzclgrgnnlffp3qa0g4wnbcrp1-firefox-50.1.0
- nix builds packages with PATH (and similar) only including explicitly
  listed depends. This eliminates automagic dependency.
- nix tracks full environment where package was built.
  Once environment changes new package needs to be built.

That's how you install firefox just for your current user:

    $ nix-env -iA nixpkgs.firefox

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 sys-apps/nix/Manifest                        |   1 +
 sys-apps/nix/files/60nix-remote-daemon       |   1 +
 sys-apps/nix/files/nix-1.11.6-per-user.patch |  11 +++
 sys-apps/nix/files/nix-1.11.6-systemd.patch  |  10 +++
 sys-apps/nix/files/nix-daemon.initd          |  16 ++++
 sys-apps/nix/metadata.xml                    |  17 ++++
 sys-apps/nix/nix-1.11.6-r1.ebuild            | 114 +++++++++++++++++++++++++++
 7 files changed, 170 insertions(+)

diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest
new file mode 100644
index 00000000..19f29d8
--- /dev/null
+++ b/sys-apps/nix/Manifest
@@ -0,0 +1 @@
+DIST nix-1.11.6.tar.xz 621796 SHA256 e729d55a9276756108a56bc1cbe2e182ee2e4be2b59b1c77d5f0e3edd879b2a3 SHA512 a2d9eed52d6791e0649e3e456c8751ab3055573def110ffbf9645d2106313adf6c3868c0ecd69e5ba95c7a742c6fb92f69722adf7381584f7c2c4efe4b400d65 WHIRLPOOL 262ce049d9cf616aaa4d5bd612accee827f04b684d1ee36b3b63bfc2004fb9d1f19e1455196183fc259b81913d318acb519fa79271b4915369780efb8f02200b

diff --git a/sys-apps/nix/files/60nix-remote-daemon b/sys-apps/nix/files/60nix-remote-daemon
new file mode 100644
index 00000000..626058a
--- /dev/null
+++ b/sys-apps/nix/files/60nix-remote-daemon
@@ -0,0 +1 @@
+NIX_REMOTE="daemon"

diff --git a/sys-apps/nix/files/nix-1.11.6-per-user.patch b/sys-apps/nix/files/nix-1.11.6-per-user.patch
new file mode 100644
index 00000000..9cea685
--- /dev/null
+++ b/sys-apps/nix/files/nix-1.11.6-per-user.patch
@@ -0,0 +1,11 @@
+By default created symlink poins to a directory not accessible by user.
+Make a symlink the same way NixOS does symlinking.
+diff --git a/scripts/nix-profile.sh.in b/scripts/nix-profile.sh.in
+index 672d1f0..e3b0978 100644
+--- a/scripts/nix-profile.sh.in
++++ b/scripts/nix-profile.sh.in
+@@ -6,3 +6,3 @@ if [ -n "$HOME" ]; then
+         echo "creating $NIX_LINK" >&2
+-        _NIX_DEF_LINK=@localstatedir@/nix/profiles/default
++        _NIX_DEF_LINK=@localstatedir@/nix/profiles/per-user/$USER/profile
+         @coreutils@/ln -s "$_NIX_DEF_LINK" "$NIX_LINK"

diff --git a/sys-apps/nix/files/nix-1.11.6-systemd.patch b/sys-apps/nix/files/nix-1.11.6-systemd.patch
new file mode 100644
index 00000000..f890ee6
--- /dev/null
+++ b/sys-apps/nix/files/nix-1.11.6-systemd.patch
@@ -0,0 +1,10 @@
+Make 'nix-daemon' a goof unit for 'systemctl enable nix-daemon.service'.
+diff --git a/misc/systemd/nix-daemon.service.in b/misc/systemd/nix-daemon.service.in
+index 5fc04a3..2565520 100644
+--- a/misc/systemd/nix-daemon.service.in
++++ b/misc/systemd/nix-daemon.service.in
+@@ -9 +9,4 @@ ExecStart=@@bindir@/nix-daemon nix-daemon --daemon
+ KillMode=process
++
++[Install]
++WantedBy=multi-user.target

diff --git a/sys-apps/nix/files/nix-daemon.initd b/sys-apps/nix/files/nix-daemon.initd
new file mode 100644
index 00000000..1a384bd
--- /dev/null
+++ b/sys-apps/nix/files/nix-daemon.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+start() {
+	ebegin "Starting ${SVCNAME}"
+	start-stop-daemon --start --quiet --background --exec /usr/bin/nix-daemon
+	eend ${?}
+}
+
+stop() {
+	ebegin "Stopping ${SVCNAME}"
+	start-stop-daemon --stop --quiet --exec /usr/bin/nix-daemon
+	eend ${?}
+}

diff --git a/sys-apps/nix/metadata.xml b/sys-apps/nix/metadata.xml
new file mode 100644
index 00000000..3317f9f
--- /dev/null
+++ b/sys-apps/nix/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>slyfox@gentoo.org</email>
+		<name>Sergei Trofimovich</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>haskell@gentoo.org</email>
+		<name>Gentoo Haskell</name>
+	</maintainer>
+	<use>
+		<flag name="etc_profile">Install /etc/profile.d/ entry to inject nix support for all users.</flag>
+		<flag name="gc">Enable garbage collection in the Nix expression evaluator (use <pkg>dev-libs/boehm-gc</pkg>).</flag>
+		<flag name="sodium">Use <pkg>dev-libs/libsodium</pkg> for cryptography</flag>
+	</use>
+</pkgmetadata>

diff --git a/sys-apps/nix/nix-1.11.6-r1.ebuild b/sys-apps/nix/nix-1.11.6-r1.ebuild
new file mode 100644
index 00000000..4553ec6
--- /dev/null
+++ b/sys-apps/nix/nix-1.11.6-r1.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit readme.gentoo-r1 user
+
+DESCRIPTION="A purely functional package manager"
+HOMEPAGE="https://nixos.org/nix"
+
+SRC_URI="http://nixos.org/releases/${PN}/${P}/${P}.tar.xz"
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+etc_profile +gc doc sodium"
+
+RDEPEND="
+	app-arch/bzip2
+	app-arch/xz-utils
+	dev-db/sqlite
+	dev-libs/openssl:0=
+	net-misc/curl
+	sys-libs/zlib
+	gc? ( dev-libs/boehm-gc )
+	doc? ( dev-libs/libxml2
+		dev-libs/libxslt
+		app-text/docbook-xsl-stylesheets
+	)
+	sodium? ( dev-libs/libsodium )
+	dev-lang/perl:=
+	dev-perl/DBD-SQLite
+	dev-perl/WWW-Curl
+	dev-perl/DBI
+"
+DEPEND="${RDEPEND}
+	>=sys-devel/bison-2.6
+	>=sys-devel/flex-2.5.35
+	virtual/perl-ExtUtils-ParseXS
+"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-systemd.patch
+	"${FILESDIR}"/${P}-per-user.patch
+)
+
+DISABLE_AUTOFORMATTING=yes
+DOC_CONTENTS=" Quick start user guide on Gentoo:
+
+[as root] enable nix-daemon service:
+	[systemd] # systemctl enable nix-daemon
+	[openrc]  # rc-update add nix-daemon
+[as an user] relogin to get environment and profile update
+[as an user] fetch nixpkgs update:
+	\$ nix-channel --update
+[as an user] install nix packages:
+	\$ nix-env -i mc
+[as an user] configure environment:
+	Somewhere in .bash_profile you might want to set
+	LOCALE_ARCHIVE=\$HOME/.nix-profile/lib/locale/locale-archive
+	but please read https://github.com/NixOS/nixpkgs/issues/21820
+
+Next steps:
+	nix package manager user manual: http://nixos.org/nix/manual/
+"
+
+pkg_setup() {
+	enewgroup nixbld 30000
+	for i in {1..10}; do
+		# we list 'nixbld' twice to
+		# both assign a primary group for user
+		# and add an user to /etc/group
+		enewuser nixbld${i} $((30000 +$i)) -1 /var/empty nixbld,nixbld
+	done
+}
+
+src_configure() {
+	econf \
+		--localstatedir="${EPREFIX}"/nix/var \
+		$(use_enable gc)
+}
+
+src_install() {
+	# TODO: emacs highlighter
+	default
+
+	readme.gentoo_create_doc
+
+	# here we an eager variant of something that
+	# is lazily done by  nix-daemo and root nix-env
+
+	# TODO: will need a tweak for prefix
+	keepdir             /nix/store
+	fowners root:nixbld /nix/store
+	fperms 1775         /nix/store
+
+	keepdir             /nix/var/nix/profiles/per-user
+	fperms 1777         /nix/var/nix/profiles/per-user
+
+	doenvd "${FILESDIR}"/60nix-remote-daemon
+	newinitd "${FILESDIR}"/nix-daemon.initd nix-daemon
+
+	if ! use etc_profile; then
+		rm "${ED}"/etc/profile.d/nix.sh || die
+	fi
+}
+
+pkg_postinst() {
+	if ! use etc_profile; then
+		ewarn "${EROOT}etc/profile.d/nix.sh was removed (due to USE=-etc_profile)."
+	fi
+
+	readme.gentoo_print_elog
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-09-07  8:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-07  8:03 [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/files/, sys-apps/nix/ Sergei Trofimovich
  -- strict thread matches above, loose matches on Subject: below --
2017-12-21  8:01 Sergei Trofimovich
2017-07-15 11:29 Sergei Trofimovich
2017-01-23 21:24 Sergei Trofimovich
2017-01-17 11:37 Sergei Trofimovich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox