summaryrefslogtreecommitdiff
path: root/pcr/guix
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-07-30 01:32:21 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-07-31 16:29:05 +0200
commitc0a17aeaf4685ae208876d70e14040722841e429 (patch)
tree7ba2ae9f01ea1c7d2b47fb32e304ae67db9e66d6 /pcr/guix
parente56504a1bb038fd9b97a4b28f38f1bd2c5ed5d32 (diff)
downloadabslibre-c0a17aeaf4685ae208876d70e14040722841e429.tar.gz
abslibre-c0a17aeaf4685ae208876d70e14040722841e429.tar.bz2
abslibre-c0a17aeaf4685ae208876d70e14040722841e429.zip
pcr: guix: update to 1.1.0
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Diffstat (limited to 'pcr/guix')
-rw-r--r--pcr/guix/PKGBUILD161
1 files changed, 49 insertions, 112 deletions
diff --git a/pcr/guix/PKGBUILD b/pcr/guix/PKGBUILD
index 531634a69..cf004247a 100644
--- a/pcr/guix/PKGBUILD
+++ b/pcr/guix/PKGBUILD
@@ -2,15 +2,30 @@
# Modified from guix-git 20130119 PKGBUILD
# parabola changes and rationale:
-# no changes.
+# - Kept sysvinit service files as Parabola also supports OpenRC
+# - Disabled tests. We have:
+# FAIL: tests/build-utils.scm
+# FAIL: tests/challenge.scm
+# FAIL: tests/containers.scm
+#
+# The build also fails if you don't have enough RAM. Using -j2 with 4 GiB of
+# RAM made it fail the following error:
+# [ 69%] GUILEC gnu/packages/crates-io.go
+# mmap(PROT_NONE) failed
+# /bin/sh: line 7: 3174 Aborted (core dumped) \
+# XDG_CACHE_HOME=/nowhere host=i686-pc-linux-gnu srcdir="." \
+# ./pre-inst-env /usr/bin/guile -L "." -L "." --no-auto-compile -s \
+# "."/build-aux/compile-all.scm [lot of .scm]
+# So to workaround that you can disable the -j by using:
+# MAKEFLAGS="" ./build_x86_64.sh pcr/guix
# In order to verify the PGP signature of the source archive, you may need to
# use this command to download the needed public key:
# gpg --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
pkgname=guix
-pkgver=0.15.0
-pkgrel=1
+pkgver=1.1.0
+pkgrel=2
pkgdesc="A purely functional package manager for the GNU system"
arch=('x86_64' 'i686' 'armv7h')
url="https://www.gnu.org/software/guix/"
@@ -19,115 +34,63 @@ options=('!strip')
makedepends=(
'bash-completion'
'fish'
- 'guile-json'
+ 'guile-json3'
'guile-ssh>=0.10.2'
- 'help2man')
+ 'help2man'
+ 'po4a')
depends=(
- 'guile>=2.0.9'
+ 'guile>=2.2.4'
+ 'guile-gcrypt'
'guile-git-lib'
'guile-sqlite3'
'sqlite>=3.6.19'
'bzip2'
'gnutls'
'libgcrypt'
+ 'lzlib'
'zlib')
optdepends=(
'bash-completion: to enable bash programmable completion'
- 'guile-json: to import packages from cpan, gem, pypi'
+ 'guile-json3: to import packages from cpan, gem, pypi'
'guile-ssh: to offload builds to other machines')
source=(
- "https://alpha.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig}
- "aarch64-linux-20170217-guile-2.0.14.tar.xz::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/aarch64-linux/20170217/guile-2.0.14.tar.xz"
- "aarch64-linux-20170217-guile-2.0.14.tar.xz.sig::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/aarch64-linux/20170217/guile-2.0.14.tar.xz.sig"
- "armhf-linux-20150101-guile-2.0.11.tar.xz::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/armhf-linux/20150101/guile-2.0.11.tar.xz"
- "armhf-linux-20150101-guile-2.0.11.tar.xz.sig::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/armhf-linux/20150101/guile-2.0.11.tar.xz.sig"
- "i686-linux-20131110-guile-2.0.9.tar.xz::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/i686-linux/20131110/guile-2.0.9.tar.xz"
-# "i686-linux-20131110-guile-2.0.9.tar.xz.sig::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/i686-linux/20131110/guile-2.0.9.tar.xz.sig"
- "mips64el-linux-20131110-guile-2.0.9.tar.xz::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/mips64el-linux/20131110/guile-2.0.9.tar.xz"
-# "mips64el-linux-20131110-guile-2.0.9.tar.xz.sig::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/mips64el-linux/20131110/guile-2.0.9.tar.xz.sig"
- "x86_64-linux-20131110-guile-2.0.9.tar.xz::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/x86_64-linux/20131110/guile-2.0.9.tar.xz"
-# "x86_64-linux-20131110-guile-2.0.9.tar.xz.sig::https://alpha.gnu.org/gnu/${pkgname}/bootstrap/x86_64-linux/20131110/guile-2.0.9.tar.xz.sig"
-)
+ "https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig})
install="${pkgname}.install"
-sha1sums=(
- 'b971e19b539f3f27f675bc1d7cfc126065a7d61c'
- '1284dfdebc290c7d02921b0251ce2347a9263bb9'
- 'SKIP'
- 'SKIP'
- 'SKIP'
- 'SKIP'
- 'SKIP'
-# 'SKIP'
- 'SKIP'
-# 'SKIP'
- 'SKIP'
-# 'SKIP'
-)
sha256sums=(
- 'SKIP'
- 'SKIP'
- '3939909f24dcb955621aa7f81ecde6844bea8a083969c2d275c55699af123ebe'
- 'bfceb1a0cb92c9182e5bc2bfe9e728078df0f5f86e6580820ead845d7f11f3c5'
- 'e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6'
- '4ceb3b490e2eed1631ec204d68ebf2a91806f6d1c438fc3a8d744b3f0351633d'
- 'b757cd46bf13ecac83fb8e955fb50096ac2d17bb610ca8eb816f29302a00a846'
-# '5c710ad8efa927711347cb585ceec25d99c3b3065955060275076be55f46f228'
- '994680f0001346864aa2c2cc5110f380ee7518dcd701c614291682b8e948f73b'
-# 'd22c325e7d64b805679cc449b8865f7ac7629b83c71a6ae9812541408bac1952'
- '037b103522a2d0d7d69c7ffd8de683dfe5bb4b59c1fafd70b4ffd397fd2f57f0'
-# '50ec32f47dd659583d7ee633b8d6d4180b413c3680b1628ab6346241ac2c2b46'
-)
+ '5c59106ff4ac497c6097686834b0c914109cf5e44eb6b94ebce818923043640f'
+ '0416a733ba9b4410897d744a24388a43ba11bd8c427c7d08e649c8875119333d')
validpgpkeys=('3CE464558A84FDC69DB40CFB090B11993D9AEBB5')
-noextract=(
- 'aarch64-linux-20170217-guile-2.0.14.tar.xz'
- 'armhf-linux-20150101-guile-2.0.11.tar.xz'
- 'i686-linux-20131110-guile-2.0.9.tar.xz'
- 'mips64el-linux-20131110-guile-2.0.9.tar.xz'
- 'x86_64-linux-20131110-guile-2.0.9.tar.xz')
-_noextract_dest_map=(
- 'gnu/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz'
- 'gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz'
- 'gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz'
- 'gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz'
- 'gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz')
-
-prepare() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- for index in $(seq 0 $((${#noextract[@]} - 1))); do
- cp "${srcdir}/${noextract[${index}]}" "${_noextract_dest_map[${index}]}"
- done
-}
build() {
local bash_completion_dir="$(pkg-config --variable=completionsdir bash-completion)"
local fish_completion_dir="$(pkg-config --variable=completionsdir fish)"
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sbindir=/usr/bin --sysconfdir=/etc \
- --libexecdir="/usr/lib/${pkgname}" --localstatedir=/var \
+ --libexecdir=/usr/lib --localstatedir=/var \
--with-bash-completion-dir="${bash_completion_dir}" \
--with-fish-completion-dir="${fish_completion_dir}" \
- --disable-rpath
+ --disable-rpath \
+ ac_cv_guix_test_root="$(pwd)/t"
make
}
-check() {
- # FIXME: There are too many failed tests and upstream developers haven't
- # made any response. All tests are temporarily skipped for now.
- # https://debbugs.gnu.org/32098
- return 0
-
- cd "${srcdir}/${pkgname}-${pkgver}"
- # Check whether the current working directory is too long
- local cwd_str="$(pwd)"
- local cwd_len="${#cwd_str}"
- if [ "${cwd_len}" -gt 46 ]; then
- error "${cwd_str} is too long."
- error "The working directory cannot be longer than 46 bytes."
- false
- fi
- # Make sure we have a valid shell accepting -c option
- SHELL=/bin/sh make check || true # noncritical test failure on arm
-}
+# check() {
+# cd "${srcdir}/${pkgname}-${pkgver}"
+# # Check whether the current working directory is too long
+# local cwd_str="$(pwd)"
+# local cwd_len="${#cwd_str}"
+# # The test tests/gexp.scm fails when the path is longer than 29 bytes
+# # because of the length limit on the shebang line. Since we have increased
+# # the limit by 7 by renaming test-tmp to t with ac_cv_guix_test_root cache
+# # variable, the limit we use here is 36 bytes.
+# if [ "${cwd_len}" -gt 36 ]; then
+# error "${cwd_str} is too long."
+# error "The working directory cannot be longer than 36 bytes."
+# false
+# fi
+# # Make sure we have a valid shell accepting -c option
+# SHELL=/bin/sh make check
+# }
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -144,7 +107,7 @@ package() {
mv "${guix_daemon_default}" "${guix_daemon_upstream}"
mv "${guix_publish_default}" "${guix_publish_upstream}"
# Generate default systemd service files from upstream ones by fixing paths
- local guix_profile_root="/var/guix/profiles/per-user/root/guix-profile"
+ local guix_profile_root="/var/guix/profiles/per-user/root/current-guix"
sed -e "s|^ExecStart=${guix_profile_root}/bin|ExecStart=/usr/bin|" \
-e "s|^Description=\(.*\)|Description=\1 (default)|" \
-e "/^Environment=/d" "${guix_daemon_upstream}" \
@@ -170,31 +133,5 @@ package() {
eval 'options=()'
cd "${pkgdir}/usr/bin"
tidy_strip
- cd "${pkgdir}/usr/lib/guix"
- tidy_strip
eval 'options=("!strip")'
- # Make sure bootstrap binaries are not modified
- cd "${pkgdir}/usr/share/guile/site/2.2/gnu/packages/bootstrap"
- cat << EOF | sha256sum -c
-e3bf6ffe357eebcc28221ffdbb5b00b4ed1237cb101aba4b1b8119b08c732387 aarch64-linux/bash
-444c2af9fefd11d4fc20ee9281fa2c46cbe3cfb3df89cc30bcd50d20cdb6d6c0 aarch64-linux/mkdir
-05273f978a072269193e3a09371c23d6d149f6d807f8e413a4f79aa5a1bb6f25 aarch64-linux/tar
-48e9baa8a6c2527a5b4ecb8f0ac87767e2b055979256acab2a3dbff4f6171637 aarch64-linux/xz
-2ad82bb9ee6e77eaff284222e1d43a2829b5a1e2bcf158b08564a26da48e0045 armhf-linux/bash
-a19e386b31ebc8a46b5f934c11bca86e28f8aa997272a5fcd052b52d5019f790 armhf-linux/mkdir
-da56be0b332fac3880b151abe60c1eeb2649cd192379b18658b1d872f7aa53e8 armhf-linux/tar
-6507d04d55210e3a8cdc2e5758d79a4b0da3cb53bb142f60a78788af7b915ab1 armhf-linux/xz
-ed059a9ae964d538605c923c4e73128bd5ca912994709b3fe2d71d061751e8c5 i686-linux/bash
-b369264bda7bbb98d1acf0bf53ebc9077e82f48b190f3956fa23cb73d6e99f92 i686-linux/mkdir
-9f7e79e52aa369fc9ed69359e503d4f8179117842df8261fc0cae5629cc896cb i686-linux/tar
-d23173dfe66c41e1c8d8eef905d14d1f39aaa52c9d70621f366c275e9139b415 i686-linux/xz
-213cfb8794ffdf4a71cb321a89987ee61704edcec5d1203912575f0a626a239c mips64el-linux/bash
-d436070fde044366d72d7e59d8d12b1ba72b32d7b0f13e409b61118bdc8254c8 mips64el-linux/mkdir
-d27fcb52f9b4a42fafdae3164fffd200f52e04d142574dcf06212dbf7701cbb8 mips64el-linux/tar
-107eac7523b0148d18f461d81bec9d0db6154d6c61e4caf3a4cdb43a9a6afb3c mips64el-linux/xz
-265d2f633a5ab35747fc4836b5e3ca32bf56ad44cc24f3bd358f1ff6cf0779a5 x86_64-linux/bash
-50689abdf2d5374e17ea8c51801f04f7590ad604af33a12a940cc11d137a4a2f x86_64-linux/mkdir
-16440b4495a2ff9c6aa50c05a8c9066e1004a5990b75aa891f08cdf8753c8689 x86_64-linux/tar
-930ad7e88ca0b2275dc459b24aea912fadd5b7c9e95be06788d4b61efc7ef470 x86_64-linux/xz
-EOF
}