commit: 344016efa69a2964f1b37677cda0ee1e6d4d22a6 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> AuthorDate: Mon Jun 12 20:59:00 2017 +0000 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> CommitDate: Mon Jun 12 21:23:43 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=344016ef
sys-apps/nix: bump up to 1.11.10 Package-Manager: Portage-2.3.6, Repoman-2.3.2 sys-apps/nix/Manifest | 1 + sys-apps/nix/nix-1.11.10.ebuild | 130 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 131 insertions(+) diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest index 21321f65d23..d5e73ae5793 100644 --- a/sys-apps/nix/Manifest +++ b/sys-apps/nix/Manifest @@ -1 +1,2 @@ +DIST nix-1.11.10.tar.xz 624972 SHA256 b29a458c2b803bcc07d8b58cd016ca6ad0788a73ca74edaeaebc588961322467 SHA512 dae5293092f80a723ade12317a7c86a286e4ec19ea4422010b24fbfd9b68d6d3ddbce1af6efe34869dae98a02697afca0bad66c7363c09e54a3da02534a45f14 WHIRLPOOL 375becabfb1ef4d779a173fc1c3dc6f1df3a08d7abb4c4320cfa33bf993e458700462ac7f721f5677cc91bf01c09ebea9c6b7a0d86859fcbb627f565e4e46d70 DIST nix-1.11.9.tar.xz 623020 SHA256 0e943e277f37843f9196b0293cc31d828613ad7a328ee77cd5be01935dc6e7e1 SHA512 1e557d61261f958f7fa94510e88c8d34c8ed7b237427a036cdc461aceff4eb34b8e0cdd859fa14c2e392f9094a489bfc663e3043df8bd22651aa42f809caba97 WHIRLPOOL 1bd56f99da5f7ea427c3afc0170f37aa4ffcb58d8f2c3fc4915e08c95f67745a4b7a0943116c1beae2f67155806c7a5c56deadaeaed7ff3ab17d7c59235df580 diff --git a/sys-apps/nix/nix-1.11.10.ebuild b/sys-apps/nix/nix-1.11.10.ebuild new file mode 100644 index 00000000000..f8b026b00b9 --- /dev/null +++ b/sys-apps/nix/nix-1.11.10.ebuild @@ -0,0 +1,130 @@ +# 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 +) + +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 + + 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 +}