summaryrefslogtreecommitdiff
path: root/sys-apps/nix
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-09-08 01:07:24 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-09-08 01:07:24 +0100
commite3cf2c86fca1750343c1885311f857f185ee4f2d (patch)
treed9d1fbc20509d4c90f57fb2d9e1459bc8034c831 /sys-apps/nix
parentf1af93971b7490792d8541bc790e0d8c6d787059 (diff)
gentoo resync : 08.09.2019
Diffstat (limited to 'sys-apps/nix')
-rw-r--r--sys-apps/nix/Manifest7
-rw-r--r--sys-apps/nix/files/nix-2.3-libpaths.patch48
-rw-r--r--sys-apps/nix/nix-2.0.4.ebuild143
-rw-r--r--sys-apps/nix/nix-2.3.ebuild (renamed from sys-apps/nix/nix-2.1.3.ebuild)17
4 files changed, 57 insertions, 158 deletions
diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest
index 1b9317bba54e..4148b7163ff4 100644
--- a/sys-apps/nix/Manifest
+++ b/sys-apps/nix/Manifest
@@ -3,11 +3,10 @@ AUX nix-1.11.6-respect-LDFLAGS.patch 2332 BLAKE2B 83382d89c3ca40404460629f42dcdf
AUX nix-1.11.6-systemd.patch 394 BLAKE2B 144b5e2c4f55077bb0c722ff71bf0a587f20858c27fe4a3bb9cd44bec159a30122382b7fff3b998478aaa4f93519247708926a6369f9ac2fa1a3d43cc5808a38 SHA512 2c5a701815e1c3091c5568b01d6709a9a227c18967a7c0eff7676f741c87f5082a49842427022991656cac079734741820bb8a895679a65cce657a29df86ddcd
AUX nix-2.0-user-path.patch 390 BLAKE2B 08118fb6664ffe96bccd68596e7aa26fe895a9285d1dabdfe06cfa55c8ab578160f940537cc9ed7ba7ef408d167f23cc914127313bed992baac747f49a9dd054 SHA512 3eab6ae522767bd8c1f2adf6a00544f7fecb698dedff68835a880a7ac533dd4e188661a955f111769525828d761612c49669a36ccf25f16bab6d325313da3232
AUX nix-2.0.4-bdwgc-8.patch 421 BLAKE2B 2aafeee37b282d890dfd54dc958f708bb09e86d50904ea71be9b02b88d05075076f4406d77c0b566b67ecc98c53a445726eb0f14834e7cebabf21544ff194e8f SHA512 04166538207f644b1ceb552b58742dcfa36ed759792a1e5f5d6c2acb31c089b88e406ce1a063288a00988cffb6790fe000cfa00ddd6aaf5d48d515893e41676f
+AUX nix-2.3-libpaths.patch 2856 BLAKE2B 06f6dba50811e353908e5faad56671e433c88a8054a4f0056c6b24930bfc7747baf8f138db64c8da0a0e73847568277238801f0a13436f38ca78e3037092fc82 SHA512 aac5f322f6a0565e4d38c272e51c49a31b9388b9ac29ee3aae509630e8fc1c7f02a726bc60a1d3c8400768b84f93088cc59d88f2cec79ae86814dba501bc72b7
AUX nix-daemon.initd 369 BLAKE2B bae15823ecd559733ebc8bd6f88314d93dccdf586dafe785ae58ed46949d1329c9bb7da93dc2918e2c0ccd3aacb50e3fdb380c019c85fb09f86575d9c80ce116 SHA512 e5a05a9f5efb179ebf3a98e58435a571e87716166a351045be4cbd19423e426cf11ed9b2eb2df6222d00e43e5d38fbed5da579820f776031e3c70de0206f980d
-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
-EBUILD nix-2.0.4.ebuild 3330 BLAKE2B 908f86afd6e5518fa58f03bb7a6c787d2c9b5710cffe347f82f4a312b0f9ac5f208eb4826c81bf4d166ee660c808456225ec7a03657075ca695822df5d4ef524 SHA512 be8d0e99571543417654f11c0ff89c2b4f6747c561b15933a825242737bd9f90424ae4b2258396114db43c98b712caec5a0aa269b754d8ec14d270a1ada7355d
-EBUILD nix-2.1.3.ebuild 3324 BLAKE2B fb61e26380f4a82b2c3348da2f1966c9344a50e2f65a14a26f7fc83b416493b9fb0654f5f05227e59a2ee12a858c86bcda363fc6de7463f9b4cf18dfaabb7deb SHA512 b2f9f661ad54549b79a87f5e7e42311df968db4dabfda174a59c695730f2bbd4d6dc85f85793a9addd66e5f2af698e4286d0bac67d540f0ea2bf2217ed693943
+DIST nix-2.3.tar.xz 844640 BLAKE2B 09707ae6c50c118375cdf2469a3ca19fbd940454bb80b7bccd74824deb3e370107acca99d7bf69bc93a168521a8d4928e3ac73fcfe1eeb53801d8e5f18574096 SHA512 45cb0c195f220a57cef80ad79def5e65b85588a2fc390f9b5e2ac4309698cc3065a23ee4f836913b642348afb1ee625072538bfedb5b26f9626344bbe784b425
EBUILD nix-2.2.2.ebuild 3429 BLAKE2B 5baa491aa719f201fdfaa224497638c971a8aa6e079b35dd3e680d54c6592bc769130b2512a6323d5978a12b78713bef2d7af3df0612d05f540a43796ff12ff3 SHA512 16d6ccff8a8b2b4fec9dd78ec47e7dc44f39370d4e775410ee785a173e07b7ea96ab8fc599dd040355fd8adbbfa6eb6c6a6bc0f5c818e47bbbd4c2f02a26af0f
+EBUILD nix-2.3.ebuild 3231 BLAKE2B 7ea190d2b2d4888a61dcdb3221daea659fe90196e8cc29b3d715b55da6519481eec78db9b4b8005e87c2edba5852844c09f48deeeb7d7794379f19df37a78966 SHA512 8f4c6c1d4911db1a0f661f83f74625494ef7fe360c5df096205ebc7b0efdf78cb123af58cc375df24837f1d39687500126ed262d5002e988163b3699d4243d04
MISC metadata.xml 681 BLAKE2B 53ec9e4c35af4d73756dabebcc9d0423c3708c24e085d35ec589334971d2b76b40408793b5202d625043fe3bd23399a457b7cae4eea665156e2ba3c0d60fc292 SHA512 b473a72e96cc53eeca793b60acd627ebafb918a05fc328126d3a3f32fe8f09d95ebd4643c17f27a69ac64c0b3bee87f6c0818b0316ab2e5e7158999adc8e8a94
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 000000000000..42931e7e8d5f
--- /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.0.4.ebuild b/sys-apps/nix/nix-2.0.4.ebuild
deleted file mode 100644
index 26192138b600..000000000000
--- a/sys-apps/nix/nix-2.0.4.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# 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 s3 +sodium"
-
-RDEPEND="
- app-arch/brotli
- 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
- )
- 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}-1.11.6-systemd.patch
- "${FILESDIR}"/${PN}-1.11.6-respect-CXXFLAGS.patch
- "${FILESDIR}"/${PN}-1.11.6-respect-LDFLAGS.patch
- "${FILESDIR}"/${PN}-2.0-user-path.patch
- "${FILESDIR}"/${PN}-2.0.4-bdwgc-8.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() {
- local econf_args=()
-
- 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) \
- "${args[@]}"
-}
-
-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/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
-}
diff --git a/sys-apps/nix/nix-2.1.3.ebuild b/sys-apps/nix/nix-2.3.ebuild
index d6e2b56ec29c..448e5bbc051e 100644
--- a/sys-apps/nix/nix-2.1.3.ebuild
+++ b/sys-apps/nix/nix-2.3.ebuild
@@ -14,11 +14,14 @@ 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
@@ -38,10 +41,8 @@ DEPEND="${RDEPEND}
"
PATCHES=(
- "${FILESDIR}"/${PN}-1.11.6-systemd.patch
- "${FILESDIR}"/${PN}-1.11.6-respect-CXXFLAGS.patch
- "${FILESDIR}"/${PN}-1.11.6-respect-LDFLAGS.patch
"${FILESDIR}"/${PN}-2.0-user-path.patch
+ "${FILESDIR}"/${PN}-2.3-libpaths.patch
)
DISABLE_AUTOFORMATTING=yes
@@ -81,8 +82,6 @@ src_prepare() {
}
src_configure() {
- local econf_args=()
-
if ! use s3; then
# Disable automagic depend: bug #670256
export ac_cv_header_aws_s3_S3Client_h=no
@@ -90,15 +89,11 @@ src_configure() {
econf \
--localstatedir="${EPREFIX}"/nix/var \
$(use_enable gc) \
- "${args[@]}"
+ --with-sandbox-shell=/bin/busybox
}
src_compile() {
- local make_vars=(
- OPTIMIZE=0 # disable hardcoded -O3
- V=1 # verbose build
- )
- emake "${make_vars[@]}"
+ emake V=1
}
src_install() {