aboutsummaryrefslogtreecommitdiffstats
path: root/guix
diff options
context:
space:
mode:
Diffstat (limited to 'guix')
-rw-r--r--guix/guix/guix-1.4.0-tests-gremlin.patch20
-rw-r--r--guix/guix/guix.spec35
2 files changed, 47 insertions, 8 deletions
diff --git a/guix/guix/guix-1.4.0-tests-gremlin.patch b/guix/guix/guix-1.4.0-tests-gremlin.patch
new file mode 100644
index 0000000..b1ea04d
--- /dev/null
+++ b/guix/guix/guix-1.4.0-tests-gremlin.patch
@@ -0,0 +1,20 @@
+diff --git a/tests/gremlin.scm b/tests/gremlin.scm
+index 3dbb8d3643..280b1d8819 100644
+--- a/tests/gremlin.scm
++++ b/tests/gremlin.scm
+@@ -136,6 +136,7 @@ (define ground-truth
+ (with-directory-excursion directory
+ (call-with-output-file "t.c"
+ (lambda (port)
++ (display "#include <stdio.h>\n" port)
+ (display "int main () { puts(\"hello\"); }" port)))
+ (invoke c-compiler "t.c"
+ "-Wl,--enable-new-dtags" "-Wl,-rpath=/foo" "-Wl,-rpath=/bar")
+@@ -164,6 +165,7 @@ (define ground-truth
+ (with-directory-excursion directory
+ (call-with-output-file "t.c"
+ (lambda (port)
++ (display "#include <stdio.h>\n" port)
+ (display "int main () { puts(\"hello\"); }" port)))
+
+ (invoke c-compiler "t.c"
diff --git a/guix/guix/guix.spec b/guix/guix/guix.spec
index a9593dd..9ec4d94 100644
--- a/guix/guix/guix.spec
+++ b/guix/guix/guix.spec
@@ -6,7 +6,7 @@
Name: guix
Version: 1.4.0
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: A purely functional package manager for the GNU system
License: GPLv3+
@@ -16,6 +16,9 @@ Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
# Fix tests/guix-home.sh when Guix is not installed.
Patch0: guix-1.4.0-tests-guix-home.patch
+# Fix tests/gremlin.scm for GCC 14.
+Patch1: guix-1.4.0-tests-gremlin.patch
+
%global guix_user guixbuild
%global guix_group guixbuild
%global guile_source_dir %{_datadir}/guile/site/3.0
@@ -67,17 +70,14 @@ Requires: disarchive
Requires: gzip, bzip2, xz
Requires: selinux-policy
-Requires: %{_bindir}/dot
-Requires: %{_libdir}/libgcrypt.so
-Requires(post): /usr/sbin/useradd
-Requires(post): /usr/sbin/usermod
-Requires(post): /usr/sbin/groupadd
-Requires(post): /usr/sbin/groupmod
-Requires(post): /usr/bin/gpasswd
+Requires: graphviz
+Requires(post): shadow-utils
Requires(post): libselinux-utils, policycoreutils
Requires(post): info
Requires(preun): info
+Provides: %{_libexecdir}/guix/guile
+
%{?systemd_requires}
Recommends: guile-ssh >= 0.13.0
@@ -130,6 +130,18 @@ if [ "${cwd_len}" -gt 36 ]; then
echo 'The working directory cannot be longer than 36 bytes.'
exit 1
fi
+# Mounting proc in mock causes errors:
+# "mount ~S on ~S: ~A"
+# + ("none"
+# + "/tmp/guix-directory.XXXXXX/proc"
+# + "Operation not permitted")
+# + (1))
+if [ "$(id -un)" = mockbuild ]; then
+ sed -i \
+ -e 's|tests/containers\.scm||g' \
+ -e 's|tests/guix-environment-container\.sh||' \
+ Makefile
+fi
# Running tests in parallel causes errors:
# In procedure copy-file: Permission denied:
# "/builddir/build/BUILD/guix-1.4.0/gnu/packages/bootstrap/i686-linux/bash"
@@ -488,6 +500,13 @@ fi
%changelog
+* Sat Nov 02 2024 Ting-Wei Lan <lantw44@gmail.com> - 1.4.0-4
+- Fix tests with GCC 14 for Fedora 40 and later
+- Drop dependency on libgcrypt.so because it has been handled by guile-gcrypt
+- Convert path dependencies to packages for Fedora 40 DNF conditional file lists
+- Provide interpreter paths explicitly for Fedora 40 DNF conditional file lists
+- Skip container tests in mock because Fedora 38 broke them
+
* Wed Apr 19 2023 Ting-Wei Lan <lantw44@gmail.com> - 1.4.0-3
- Rebuilt for Fedora 38 and 39