diff options
Diffstat (limited to 'sys-apps/nix')
-rw-r--r-- | sys-apps/nix/Manifest | 7 | ||||
-rw-r--r-- | sys-apps/nix/files/nix-2.3-libpaths.patch | 48 | ||||
-rw-r--r-- | sys-apps/nix/nix-2.0.4.ebuild | 143 | ||||
-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() { |