diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest index af4a856..45bc0d7 100644 --- a/sys-apps/nix/Manifest +++ b/sys-apps/nix/Manifest @@ -1,3 +1,2 @@ DIST nix-2.24.10.tar.gz 1655147 BLAKE2B 79524973ea6dbace6755ece012144525b01c3cd3d9dfb2d9499a4ab0e3171537e28069a72b05366f2a64ded0bf5f170da03430a5428af64e94a6e793cd97735a SHA512 32322c0a9a2c08da839d3c81b72d75630cde67d20a93ad15a5eb9d7fec545e7e935c0f11b979aca34ccd5004654ebb1436ce60d3a009b205b693bb8057f16733 DIST nix-2.24.9.tar.gz 1653741 BLAKE2B 7e1b830b1115aaa95c4ae172d35e066b5849113cad8c9678b21c778fe9abea774a984e0f02968fd5ffe4b555e6c93aa149fa8c20baba3a7e8488d3845ca5fb76 SHA512 b498e8d20ee40daf3b1bd753d5c56ff6da9f204feecba4044dc9a122c2cecfda6fdbc0a61ec185da157d66e9e515409699bc1a4155b1abe9e243df940d803154 -DIST nix-2.25.0.tar.gz 1733587 BLAKE2B 97d546a54a6cb8decf88a8fc0ad8b9514d23fab7db150d786c1b19b15fd863341c92d4b8cf36b49e9b92b1d45f2b6ce658793e4b421a9e67205037f419ed8d67 SHA512 2f66fcf134f54ea7d5e2524afb66616c3e25a27d66f1b5241b2264bea6a8da922b6fc38cecc02c276b8bd1d3f139b0d4ec94af91da19e0456cb283b485812cef diff --git a/sys-apps/nix/nix-2.25.0.ebuild b/sys-apps/nix/nix-2.25.0.ebuild deleted file mode 100644 index 2d32992..0000000 --- a/sys-apps/nix/nix-2.25.0.ebuild +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools linux-info readme.gentoo-r1 tmpfiles toolchain-funcs - -DESCRIPTION="A purely functional package manager" -HOMEPAGE="https://nixos.org/nix" - -SRC_URI="https://github.com/NixOS/nix/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~amd64" -IUSE="+allocate-build-users +etc-profile +gc doc +sodium" - -BDEPEND=" - doc? ( app-text/mdbook - app-text/mdbook-linkcheck - ) -" -# sys-apps/busybox-nix-sandbox-shell is needed for sandbox mount of /bin/sh -RDEPEND=" - app-arch/brotli - app-arch/bzip2 - app-arch/xz-utils - app-misc/jq - app-text/lowdown-nix - dev-cpp/gtest - dev-db/sqlite - dev-libs/editline:0= - dev-libs/libgit2:0= - amd64? ( dev-libs/libcpuid:0= ) - dev-libs/openssl:0= - >=dev-libs/boost-1.66:0=[context] - net-misc/curl - sys-apps/busybox-nix-sandbox-shell - sys-libs/libseccomp - sys-libs/zlib - gc? ( >=dev-libs/boehm-gc-8.2.6[cxx] ) - doc? ( dev-libs/libxml2 - dev-libs/libxslt - app-text/docbook-xsl-stylesheets - ) - sodium? ( dev-libs/libsodium:0= ) -" -# add users and groups -RDEPEND+=" - acct-group/nixbld - allocate-build-users? ( -" -for i in {1..64}; do - RDEPEND+=" - >=acct-user/nixbld${i}-1 - " -done -RDEPEND+=" - ) -" -DEPEND="${RDEPEND} - dev-cpp/nlohmann_json - dev-cpp/toml11 - >=dev-cpp/rapidcheck-0_pre20231214 - >=sys-devel/bison-2.6 - >=sys-devel/flex-2.5.35 -" - -# Upstream does not bundle .m4 files, extract from upstreams: -# dev-util/pkgconfig: m4/pkg.m4 -# dev-build/autoconf-archive: m4/ax_boost_base.m4, m4/ax_require_defined.m4 -DEPEND+=" - dev-build/autoconf-archive - virtual/pkgconfig -" - -# lix is a drop-in replacement of sys-apps/nix: it installs the same -# binary file names. -RDEPEND+=" - !!sys-apps/lix -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.10-libpaths.patch - "${FILESDIR}"/${PN}-2.16-no-sandbox-fallback.patch - "${FILESDIR}"/${PN}-2.22-no-sandbox-fallback-README.patch -) - -DISABLE_AUTOFORMATTING=yes -DOC_CONTENTS=" Quick start user guide on Gentoo: - -[as root] enable nix-daemon service: - [systemd] # systemctl enable nix-daemon && systemctl start nix-daemon - [openrc] # rc-update add nix-daemon && /etc/init.d/nix-daemon start -[as a user] relogin to get environment and profile update -[as a user] fetch nixpkgs update: - \$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable - \$ 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_pretend() { - # USER_NS is used to run builders in a default setting in linux: - # https://nixos.wiki/wiki/Nix#Sandboxing - local CONFIG_CHECK="~USER_NS" - check_extra_config -} - -src_prepare() { - default - - eautoreconf - # workaround unhandled AC_CONFIG_AUX_DIR in autotools.eclass: - # https://bugs.gentoo.org/927017 - cp config.guess config/config.guess || die - cp config.sub config/config.sub || die - - # rely on users settings - sed 's/GLOBAL_CXXFLAGS += -O3/GLOBAL_CXXFLAGS += /' -i Makefile || die - - # inject our copy of lowdown-nix - export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH:+:}${EPREFIX}/usr/$(get_libdir)/lowdown-nix/lib/pkgconfig" - export PATH="$PATH:${EPREFIX}/usr/$(get_libdir)/lowdown-nix/bin" - - # inject rapidcheck extra includes - export CXXFLAGS="${CXXFLAGS} -I${EPREFIX}/usr/include/rapidcheck/extras/gtest/include" -} - -src_configure() { - CONFIG_SHELL="${BROOT}/bin/bash" econf \ - --localstatedir="${EPREFIX}"/nix/var \ - $(use_enable gc) \ - $(use_enable doc doc-gen) \ - --with-sandbox-shell="${EPREFIX}"/usr/bin/busybox-nix-sandbox-shell - - emake Makefile.config # gets generated late - cat >> Makefile.config <<-EOF - V = 1 - CC = $(tc-getCC) - CXX = $(tc-getCXX) - EOF -} - -src_compile() { - # Upstream does not support building without installation. - # Rely on src_install's DESTDIR=. - : -} - -src_install() { - # TODO: emacs highlighter - default - - readme.gentoo_create_doc - - # TODO: will need a tweak for prefix - - # Follow the steps of 'scripts/install-multi-user.sh:create_directories()' - local dir dirs=( - /nix - /nix/var - /nix/var/log - /nix/var/log/nix - /nix/var/log/nix/drvs - /nix/var/nix{,/db,/gcroots,/profiles,/temproots,/userpool,/daemon-socket} - /nix/var/nix/{gcroots,profiles}/per-user - ) - for dir in "${dirs[@]}"; do - keepdir "${dir}" - fperms 0755 "${dir}" - done - - keepdir /nix/store - fowners root:nixbld /nix/store - fperms 1775 /nix/store - - newinitd "${FILESDIR}"/nix-daemon.initd nix-daemon - - if ! use etc-profile; then - rm "${ED}"/etc/profile.d/nix.sh || die - fi - # nix-daemon.sh should not be used for users' profile. - # Only for daemon itself. - rm "${ED}"/etc/profile.d/nix-daemon.sh || die -} - -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 - tmpfiles_process nix-daemon.conf -}