72b0a45ab5
[ci skip]
83 lines
2.7 KiB
Bash
83 lines
2.7 KiB
Bash
# Template file for 'nix'
|
|
pkgname=nix
|
|
version=2.2.2
|
|
revision=4
|
|
build_style=gnu-configure
|
|
# Use /nix/var as suggested by the official Manual.
|
|
configure_args="--localstatedir=/nix/var --with-sandbox-shell=/bin/sh"
|
|
hostmakedepends="autoconf automake curl libtool pkg-config flex"
|
|
makedepends="boost-devel brotli-devel bzip2-devel gc-devel libcurl-devel
|
|
liblzma-devel libressl-devel libsodium-devel pkg-config sqlite-devel
|
|
libseccomp-devel editline-devel"
|
|
depends="curl xz"
|
|
short_desc="Purely functional package manager"
|
|
maintainer="Orphaned <orphan@voidlinux.org>"
|
|
license="LGPL-2.1-or-later"
|
|
homepage="https://nixos.org/nix/"
|
|
changelog="https://nixos.org/releases/${pkgname}/${pkgname}-${version}/manual/#sec-relnotes"
|
|
distfiles="https://nixos.org/releases/${pkgname}/${pkgname}-${version}/${pkgname}-${version}.tar.xz"
|
|
checksum=f80a1b4f9837a8d33209f0b7769d5038335459ff4303eccf3e9217a9eca8594c
|
|
|
|
# Default configuration file.
|
|
conf_files="/etc/nix/nix.conf"
|
|
# Create required build users/groups.
|
|
system_groups="nixbld"
|
|
for f in {1..9}; do
|
|
system_accounts+=" nixbld${f}"
|
|
eval export nixbld\${f}_pgroup="nixbld"
|
|
eval export nixbld\${f}_groups="nixbld"
|
|
done
|
|
# Create required run-time directories.
|
|
make_dirs="
|
|
/nix/var/log/nix/drvs 0755 root root
|
|
/nix/var/nix/profiles 0755 root root
|
|
/nix/var/nix/profiles/per-user 1777 root root
|
|
/nix/var/nix/gcroots/per-user 1777 root root
|
|
/nix/var/nix/temproots 0755 root root
|
|
/nix/var/nix/gcroots 0755 root root
|
|
/nix/var/nix/manifests 0755 root root
|
|
/nix/var/nix/userpool 0755 root root
|
|
/nix/var/nix/db 0755 root root
|
|
/nix/store 1775 root nixbld"
|
|
|
|
case "${XBPS_TARGET_MACHINE}" in
|
|
armv[56]*)
|
|
broken="Not supported upstream (for now at least)";
|
|
;;
|
|
esac
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
ppc64*) ;;
|
|
armv6*|ppc*) _need_libatomic=yes;;
|
|
esac
|
|
|
|
if [ -n "$_need_libatomic" ] ;then
|
|
makedepends+=" libatomic-devel"
|
|
fi
|
|
|
|
pre_configure() {
|
|
if [ -n "$_need_libatomic" ]; then
|
|
echo "libexpr_LDFLAGS += -latomic" >> src/libexpr/local.mk
|
|
echo "libutil_LDFLAGS += -latomic" >> src/libutil/local.mk
|
|
echo "libstore_LDFLAGS += -latomic" >> src/libstore/local.mk
|
|
fi
|
|
sed -i '/^CFLAGS=/d;/^CXXFLAGS=/d' configure
|
|
echo "GLOBAL_LDFLAGS += $LDFLAGS" >>mk/lib.mk
|
|
autoreconf -fi
|
|
}
|
|
|
|
post_install() {
|
|
vmkdir etc/nix
|
|
# Remove unused stuff.
|
|
rm -rf ${DESTDIR}/usr/include ${DESTDIR}/nix ${DESTDIR}/etc/init
|
|
rm -rf ${DESTDIR}/usr/lib/systemd ${DESTDIR}/usr/lib/pkgconfig
|
|
# Let users interact with the nix-daemon by default.
|
|
vmkdir etc/profile.d
|
|
echo 'export NIX_REMOTE=daemon' > "${DESTDIR}"/etc/profile.d/nix-daemon.sh
|
|
# Setup build users.
|
|
echo 'build-users-group = nixbld' > "${DESTDIR}"/etc/nix/nix.conf
|
|
# Install our profile.d/nix for multi-user by default.
|
|
vinstall "${FILESDIR}"/nix.sh 644 etc/profile.d
|
|
# runit service
|
|
vsv nix-daemon
|
|
}
|