summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-01-25 20:52:05 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-01-30 08:58:09 -0500
commitde2729bd962616c86c4a3c1c29a1eb9cfd7ab199 (patch)
tree38b7f0047f276b908c9f5b7ecab47f75cb4608d4
parent0ec8c973446cbe0e263da2f5ddfabb048da9290e (diff)
downloadguix-de2729bd962616c86c4a3c1c29a1eb9cfd7ab199.tar.gz
gnu: rpm: Set localstatedir to /var.
* gnu/packages/package-management.scm (rpm) [configure-flags]: Add
--localstatedir=/var.
[phases] {patch-build-system}: New phase.
-rw-r--r--gnu/packages/package-management.scm13
1 files changed, 11 insertions, 2 deletions
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 85c1c3a9fa..820c9bb468 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -842,13 +842,22 @@ features of Stow with some extensions.")
     (outputs '("out" "debug"))
     (build-system gnu-build-system)
     (arguments
-     '(#:configure-flags '("--enable-python")
+     '(#:configure-flags '("--enable-python"
+                           ;; The RPM database must be writable.
+                           "--localstatedir=/var")
        #:phases (modify-phases %standard-phases
                   (add-after 'unpack 'fix-lua-check
                     (lambda _
                       (substitute* "configure"
                         (("lua >= ?.?")
-                         "lua-5.3 >= 5.3")))))))
+                         "lua-5.3 >= 5.3"))))
+                  (add-after 'unpack 'patch-build-system
+                    (lambda _
+                      ;; The build system attempts to create /var in the build
+                      ;; chroot, and fails.
+                      (substitute* "Makefile.in"
+                        ((".*MKDIR_P) \\$\\(DESTDIR)\\$\\(localstatedir.*")
+                         "")))))))
     (native-inputs
      (list pkg-config
            python))