Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/nix/
Date: Mon, 17 Apr 2017 17:38:08
Message-Id: 1492450672.7238318a7995790e1885780508527caff8125eda.slyfox@gentoo
1 commit: 7238318a7995790e1885780508527caff8125eda
2 Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
3 AuthorDate: Mon Apr 17 17:23:10 2017 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Mon Apr 17 17:37:52 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7238318a
7
8 sys-apps/nix: bump up to 1.11.8
9
10 Package-Manager: Portage-2.3.5, Repoman-2.3.2
11
12 sys-apps/nix/Manifest | 1 +
13 sys-apps/nix/nix-1.11.8.ebuild | 129 +++++++++++++++++++++++++++++++++++++++++
14 2 files changed, 130 insertions(+)
15
16 diff --git a/sys-apps/nix/Manifest b/sys-apps/nix/Manifest
17 index 19f29d8ec52..6808aa2c57a 100644
18 --- a/sys-apps/nix/Manifest
19 +++ b/sys-apps/nix/Manifest
20 @@ -1 +1,2 @@
21 DIST nix-1.11.6.tar.xz 621796 SHA256 e729d55a9276756108a56bc1cbe2e182ee2e4be2b59b1c77d5f0e3edd879b2a3 SHA512 a2d9eed52d6791e0649e3e456c8751ab3055573def110ffbf9645d2106313adf6c3868c0ecd69e5ba95c7a742c6fb92f69722adf7381584f7c2c4efe4b400d65 WHIRLPOOL 262ce049d9cf616aaa4d5bd612accee827f04b684d1ee36b3b63bfc2004fb9d1f19e1455196183fc259b81913d318acb519fa79271b4915369780efb8f02200b
22 +DIST nix-1.11.8.tar.xz 622744 SHA256 69e0f398affec2a14c47b46fec712906429c85312d5483be43e4c34da4f63f67 SHA512 4a5031625ab459c2fe99c7b4deb51f7c256d3ac04fde1b7a571880d9aa05716cd9269a6e4f2cf108fa187cfc84524a29fa7efa4881892fba757deba16f912048 WHIRLPOOL cacc9f3557d1051b97045bbf80be92272fbec84b34d0609195495a1d71976e8ca5e57337254b88ee37aab4dcd0511045b9b2f0a8c9b746e0997f450b3f436c9c
23
24 diff --git a/sys-apps/nix/nix-1.11.8.ebuild b/sys-apps/nix/nix-1.11.8.ebuild
25 new file mode 100644
26 index 00000000000..448c3372ce5
27 --- /dev/null
28 +++ b/sys-apps/nix/nix-1.11.8.ebuild
29 @@ -0,0 +1,129 @@
30 +# Copyright 1999-2017 Gentoo Foundation
31 +# Distributed under the terms of the GNU General Public License v2
32 +
33 +EAPI=6
34 +
35 +inherit autotools flag-o-matic readme.gentoo-r1 user
36 +
37 +DESCRIPTION="A purely functional package manager"
38 +HOMEPAGE="https://nixos.org/nix"
39 +
40 +SRC_URI="http://nixos.org/releases/${PN}/${P}/${P}.tar.xz"
41 +LICENSE="LGPL-2.1"
42 +SLOT="0"
43 +KEYWORDS="~amd64 ~x86"
44 +IUSE="+etc_profile +gc doc sodium"
45 +
46 +RDEPEND="
47 + app-arch/bzip2
48 + app-arch/xz-utils
49 + dev-db/sqlite
50 + dev-libs/openssl:0=
51 + net-misc/curl
52 + sys-libs/zlib
53 + gc? ( dev-libs/boehm-gc[cxx] )
54 + doc? ( dev-libs/libxml2
55 + dev-libs/libxslt
56 + app-text/docbook-xsl-stylesheets
57 + )
58 + sodium? ( dev-libs/libsodium )
59 + dev-lang/perl:=
60 + dev-perl/DBD-SQLite
61 + dev-perl/WWW-Curl
62 + dev-perl/DBI
63 +"
64 +DEPEND="${RDEPEND}
65 + >=sys-devel/bison-2.6
66 + >=sys-devel/flex-2.5.35
67 + virtual/perl-ExtUtils-ParseXS
68 +"
69 +
70 +PATCHES=(
71 + "${FILESDIR}"/${PN}-1.11.6-systemd.patch
72 + "${FILESDIR}"/${PN}-1.11.6-per-user.patch
73 + "${FILESDIR}"/${PN}-1.11.6-respect-CXXFLAGS.patch
74 + "${FILESDIR}"/${PN}-1.11.6-respect-LDFLAGS.patch
75 +)
76 +
77 +DISABLE_AUTOFORMATTING=yes
78 +DOC_CONTENTS=" Quick start user guide on Gentoo:
79 +
80 +[as root] enable nix-daemon service:
81 + [systemd] # systemctl enable nix-daemon
82 + [openrc] # rc-update add nix-daemon
83 +[as an user] relogin to get environment and profile update
84 +[as an user] fetch nixpkgs update:
85 + \$ nix-channel --update
86 +[as an user] install nix packages:
87 + \$ nix-env -i mc
88 +[as an user] configure environment:
89 + Somewhere in .bash_profile you might want to set
90 + LOCALE_ARCHIVE=\$HOME/.nix-profile/lib/locale/locale-archive
91 + but please read https://github.com/NixOS/nixpkgs/issues/21820
92 +
93 +Next steps:
94 + nix package manager user manual: http://nixos.org/nix/manual/
95 +"
96 +
97 +pkg_setup() {
98 + enewgroup nixbld
99 + for i in {1..10}; do
100 + # we list 'nixbld' twice to
101 + # both assign a primary group for user
102 + # and add an user to /etc/group
103 + enewuser nixbld${i} -1 -1 /var/empty nixbld,nixbld
104 + done
105 +}
106 +
107 +src_prepare() {
108 + default
109 +
110 + eautoreconf
111 +}
112 +
113 +src_configure() {
114 + econf \
115 + --localstatedir="${EPREFIX}"/nix/var \
116 + $(use_enable gc)
117 +}
118 +
119 +src_compile() {
120 + local make_vars=(
121 + OPTIMIZE=0 # disable hardcoded -O3
122 + V=1 # verbose build
123 + )
124 + emake "${make_vars[@]}"
125 +}
126 +
127 +src_install() {
128 + # TODO: emacs highlighter
129 + default
130 +
131 + readme.gentoo_create_doc
132 +
133 + # here we an eager variant of something that
134 + # is lazily done by nix-daemo and root nix-env
135 +
136 + # TODO: will need a tweak for prefix
137 + keepdir /nix/store
138 + fowners root:nixbld /nix/store
139 + fperms 1775 /nix/store
140 +
141 + keepdir /nix/var/nix/profiles/per-user
142 + fperms 1777 /nix/var/nix/profiles/per-user
143 +
144 + doenvd "${FILESDIR}"/60nix-remote-daemon
145 + newinitd "${FILESDIR}"/nix-daemon.initd nix-daemon
146 +
147 + if ! use etc_profile; then
148 + rm "${ED}"/etc/profile.d/nix.sh || die
149 + fi
150 +}
151 +
152 +pkg_postinst() {
153 + if ! use etc_profile; then
154 + ewarn "${EROOT}etc/profile.d/nix.sh was removed (due to USE=-etc_profile)."
155 + fi
156 +
157 + readme.gentoo_print_elog
158 +}