diff --git a/pkgs/os-specific/linux/firmware/fwupd/default.nix b/pkgs/os-specific/linux/firmware/fwupd/default.nix index 4c88e9c6807..5e109f9f46e 100644 --- a/pkgs/os-specific/linux/firmware/fwupd/default.nix +++ b/pkgs/os-specific/linux/firmware/fwupd/default.nix @@ -15,7 +15,8 @@ let version = "0.8.1"; in polkit gcab appstream-glib gusb sqlite libarchive libsoup docbook2x libxslt libelf libsmbios fwupdate libyaml valgrind ]; - patchPhase = '' + patches = [ ./localstatedir-check-perms.patch ]; + postPatch = '' sed -i -e \ 's|/usr/bin/gpgme-config|${gpgme.dev}/bin/gpgme-config|' -e \ 's|/usr/bin/gpg-error-config|${libgpgerror.dev}/bin/gpg-error-config|' \ @@ -27,6 +28,7 @@ let version = "0.8.1"; in configureFlags = [ "--with-systemdunitdir=$(out)/lib/systemd/system" "--with-udevrulesdir=$(out)/lib/udev/rules.d" + "--localstatedir=/var" ]; enableParallelBuilding = true; meta = diff --git a/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch b/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch new file mode 100644 index 00000000000..0c1429d4f2e --- /dev/null +++ b/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch @@ -0,0 +1,12 @@ +diff -Naur fwupd-0.8.1-orig/src/Makefile.in fwupd-0.8.1/src/Makefile.in +--- fwupd-0.8.1-orig/src/Makefile.in 2017-02-24 02:59:23.000000000 -0500 ++++ fwupd-0.8.1/src/Makefile.in 2017-02-27 15:06:56.218901891 -0500 +@@ -1639,7 +1639,7 @@ + $(srcdir)/fwupd.gresource.xml + + install-data-hook: +- if test -w $(DESTDIR)$(prefix)/; then \ ++ if test -w $$(dirname $(DESTDIR)$(localstatedir)/); then \ + mkdir -p $(DESTDIR)$(localstatedir)/lib/fwupd; \ + chmod 0755 $(DESTDIR)$(localstatedir)/lib/fwupd; \ + mkdir -p $(DESTDIR)$(localstatedir)/cache/app-info/xmls; \