mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-18 15:56:50 +01:00
fwupd: 1.1.2 -> 1.2.1
Add cairo dep and others checked for in fwupd's meson.build. Cairo at least is required.
This commit is contained in:
parent
a6f7842008
commit
1b5de09e7f
3 changed files with 179 additions and 86 deletions
|
@ -0,0 +1,169 @@
|
|||
From 2fe9625cc6dec10531482a3947ef75009eb21489 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Tojnar <jtojnar@gmail.com>
|
||||
Date: Tue, 30 Oct 2018 22:26:30 +0100
|
||||
Subject: [PATCH] build: Add option for installation sysconfdir
|
||||
|
||||
On NixOS, sysconfdir is read-only by default, and packages are not supposed to
|
||||
install files there. Instead, NixOS has a concept of modules that declaratively
|
||||
describe the system configuration.
|
||||
|
||||
We still want to install the config files and certificates to fwupd prefix,
|
||||
so that the modules can use them as they see fit, but at the same time, we
|
||||
cannot set sysconfdir=${prefix}/etc because the daemon needs to read the
|
||||
configuration from the directory created by the module.
|
||||
|
||||
With autotools, we could easily solve this by passing a the sysconfdir inside
|
||||
prefix only to `make install`, but Meson does not support anything like that.
|
||||
Until we manage to convince Meson to support install flags, we need to create
|
||||
our own install flag.
|
||||
---
|
||||
data/meson.build | 4 ++--
|
||||
data/pki/meson.build | 8 ++++----
|
||||
data/remotes.d/meson.build | 6 +++---
|
||||
meson.build | 6 ++++++
|
||||
meson_options.txt | 1 +
|
||||
plugins/redfish/meson.build | 2 +-
|
||||
plugins/uefi/meson.build | 2 +-
|
||||
7 files changed, 18 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index 8dd2ac9ad..d4ad1cbc1 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -9,7 +9,7 @@ if get_option('tests') and get_option('daemon')
|
||||
endif
|
||||
|
||||
install_data(['daemon.conf'],
|
||||
- install_dir : join_paths(sysconfdir, 'fwupd')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'fwupd')
|
||||
)
|
||||
|
||||
install_data(['org.freedesktop.fwupd.metainfo.xml'],
|
||||
@@ -17,7 +17,7 @@ install_data(['org.freedesktop.fwupd.metainfo.xml'],
|
||||
)
|
||||
|
||||
install_data(['org.freedesktop.fwupd.conf'],
|
||||
- install_dir : join_paths(sysconfdir, 'dbus-1', 'system.d')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'dbus-1', 'system.d')
|
||||
)
|
||||
|
||||
install_data(['metadata.xml'],
|
||||
diff --git a/data/pki/meson.build b/data/pki/meson.build
|
||||
index eefcc9142..dc801fa18 100644
|
||||
--- a/data/pki/meson.build
|
||||
+++ b/data/pki/meson.build
|
||||
@@ -4,14 +4,14 @@ if get_option('gpg')
|
||||
'GPG-KEY-Linux-Foundation-Firmware',
|
||||
'GPG-KEY-Linux-Vendor-Firmware-Service',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd')
|
||||
)
|
||||
|
||||
install_data([
|
||||
'GPG-KEY-Linux-Foundation-Metadata',
|
||||
'GPG-KEY-Linux-Vendor-Firmware-Service',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata')
|
||||
)
|
||||
endif
|
||||
|
||||
@@ -19,12 +19,12 @@ if get_option('pkcs7')
|
||||
install_data([
|
||||
'LVFS-CA.pem',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd')
|
||||
)
|
||||
install_data([
|
||||
'LVFS-CA.pem',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata')
|
||||
)
|
||||
endif
|
||||
|
||||
diff --git a/data/remotes.d/meson.build b/data/remotes.d/meson.build
|
||||
index 824291fc5..d0599a00a 100644
|
||||
--- a/data/remotes.d/meson.build
|
||||
+++ b/data/remotes.d/meson.build
|
||||
@@ -3,7 +3,7 @@ if get_option('daemon') and get_option('lvfs')
|
||||
'lvfs.conf',
|
||||
'lvfs-testing.conf',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'fwupd', 'remotes.d')
|
||||
+ install_dir : join_paths(sysconfdir_install, 'fwupd', 'remotes.d')
|
||||
)
|
||||
i18n.merge_file(
|
||||
input: 'lvfs.metainfo.xml',
|
||||
@@ -37,12 +37,12 @@ configure_file(
|
||||
output : 'fwupd.conf',
|
||||
configuration : con2,
|
||||
install: true,
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
|
||||
+ install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
|
||||
)
|
||||
configure_file(
|
||||
input : 'vendor.conf',
|
||||
output : 'vendor.conf',
|
||||
configuration : con2,
|
||||
install: true,
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
|
||||
+ install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
|
||||
)
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 737841f1a..23bd7a2e3 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -144,6 +144,12 @@ localstatedir = join_paths(prefix, get_option('localstatedir'))
|
||||
mandir = join_paths(prefix, get_option('mandir'))
|
||||
localedir = join_paths(prefix, get_option('localedir'))
|
||||
|
||||
+if get_option('sysconfdir_install') != ''
|
||||
+ sysconfdir_install = join_paths(prefix, get_option('sysconfdir_install'))
|
||||
+else
|
||||
+ sysconfdir_install = sysconfdir
|
||||
+endif
|
||||
+
|
||||
gio = dependency('gio-2.0', version : '>= 2.45.8')
|
||||
if gio.version().version_compare ('>= 2.55.0')
|
||||
conf.set('HAVE_GIO_2_55_0', '1')
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 23ef8cdb8..db8f93b6c 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -17,6 +17,7 @@ option('plugin_uefi', type : 'boolean', value : true, description : 'enable UEFI
|
||||
option('plugin_nvme', type : 'boolean', value : true, description : 'enable NVMe support')
|
||||
option('systemd', type : 'boolean', value : true, description : 'enable systemd support')
|
||||
option('systemdunitdir', type: 'string', value: '', description: 'Directory for systemd units')
|
||||
+option('sysconfdir_install', type: 'string', value: '', description: 'sysconfdir to use during installation')
|
||||
option('tests', type : 'boolean', value : true, description : 'enable tests')
|
||||
option('udevdir', type: 'string', value: '', description: 'Directory for udev rules')
|
||||
option('efi-cc', type : 'string', value : 'gcc', description : 'the compiler to use for EFI modules')
|
||||
diff --git a/plugins/redfish/meson.build b/plugins/redfish/meson.build
|
||||
index 288f614e4..90cfe6484 100644
|
||||
--- a/plugins/redfish/meson.build
|
||||
+++ b/plugins/redfish/meson.build
|
||||
@@ -22,7 +22,7 @@ shared_module('fu_plugin_redfish',
|
||||
)
|
||||
|
||||
install_data(['redfish.conf'],
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd')
|
||||
+ install_dir: join_paths(sysconfdir_install, 'fwupd')
|
||||
)
|
||||
|
||||
if get_option('tests')
|
||||
diff --git a/plugins/uefi/meson.build b/plugins/uefi/meson.build
|
||||
index c037e1b30..a0e8cd3e6 100644
|
||||
--- a/plugins/uefi/meson.build
|
||||
+++ b/plugins/uefi/meson.build
|
||||
@@ -69,7 +69,7 @@ executable(
|
||||
)
|
||||
|
||||
install_data(['uefi.conf'],
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd')
|
||||
+ install_dir: join_paths(sysconfdir_install, 'fwupd')
|
||||
)
|
||||
|
||||
if get_option('tests')
|
|
@ -1,13 +1,14 @@
|
|||
{ stdenv, fetchurl, gtk-doc, pkgconfig, gobject-introspection, intltool
|
||||
, libgudev, polkit, appstream-glib, gusb, sqlite, libarchive, glib-networking
|
||||
, libgudev, polkit, libxmlb, gusb, sqlite, libarchive, glib-networking
|
||||
, libsoup, help2man, gpgme, libxslt, elfutils, libsmbios, efivar, glibcLocales
|
||||
, gnu-efi, libyaml, valgrind, meson, libuuid, colord, docbook_xml_dtd_43, docbook_xsl
|
||||
, ninja, gcab, gnutls, python3, wrapGAppsHook, json-glib, bash-completion
|
||||
, shared-mime-info, umockdev, vala, makeFontsConf, freefont_ttf
|
||||
, cairo, freetype, fontconfig, pango
|
||||
}:
|
||||
let
|
||||
# Updating? Keep $out/etc synchronized with passthru.filesInstalledToEtc
|
||||
version = "1.1.2";
|
||||
version = "1.2.1";
|
||||
python = python3.withPackages (p: with p; [ pygobject3 pycairo pillow ]);
|
||||
installedTestsPython = python3.withPackages (p: with p; [ pygobject3 requests ]);
|
||||
|
||||
|
@ -18,7 +19,7 @@ in stdenv.mkDerivation {
|
|||
name = "fwupd-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz";
|
||||
sha256 = "1qhg8h1dv9k3i0429j0wl37rpxfbahggfd1j8s7a4cw83k42cgfs";
|
||||
sha256 = "126b3lsh4gkyajsqm2c8l6wqr4dd7m26krz2527khmlps0lxdhg1";
|
||||
};
|
||||
|
||||
outputs = [ "out" "lib" "dev" "devdoc" "man" "installedTests" ];
|
||||
|
@ -28,15 +29,16 @@ in stdenv.mkDerivation {
|
|||
valgrind gcab docbook_xml_dtd_43 docbook_xsl help2man libxslt python wrapGAppsHook vala
|
||||
];
|
||||
buildInputs = [
|
||||
polkit appstream-glib gusb sqlite libarchive libsoup elfutils libsmbios gnu-efi libyaml
|
||||
polkit libxmlb gusb sqlite libarchive libsoup elfutils libsmbios gnu-efi libyaml
|
||||
libgudev colord gpgme libuuid gnutls glib-networking efivar json-glib umockdev
|
||||
bash-completion
|
||||
bash-completion cairo freetype fontconfig pango
|
||||
];
|
||||
|
||||
LC_ALL = "en_US.UTF-8"; # For po/make-images
|
||||
|
||||
patches = [
|
||||
./fix-paths.patch
|
||||
./add-option-for-installation-sysconfdir.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -63,6 +65,8 @@ in stdenv.mkDerivation {
|
|||
"-Defi-ldsdir=${gnu-efi}/lib"
|
||||
"-Defi-includedir=${gnu-efi}/include/efi"
|
||||
"--localstatedir=/var"
|
||||
"--sysconfdir=/etc"
|
||||
"-Dsysconfdir_install=${placeholder "out"}/etc"
|
||||
];
|
||||
|
||||
# TODO: We need to be able to override the directory flags from meson setup hook
|
||||
|
@ -100,7 +104,7 @@ in stdenv.mkDerivation {
|
|||
"fwupd/remotes.d/lvfs.conf"
|
||||
"fwupd/remotes.d/vendor.conf"
|
||||
"pki/fwupd/GPG-KEY-Hughski-Limited"
|
||||
"pki/fwupd/GPG-KEY-Linux-Foundation-Metadata"
|
||||
"pki/fwupd/GPG-KEY-Linux-Foundation-Firmware"
|
||||
"pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service"
|
||||
"pki/fwupd/LVFS-CA.pem"
|
||||
"pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata"
|
||||
|
|
|
@ -4,86 +4,6 @@
|
|||
-install_data('README.md',
|
||||
- install_dir : join_paths(localstatedir, 'lib', 'fwupd', 'builder')
|
||||
-)
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -8,16 +8,12 @@
|
||||
subdir('installed-tests')
|
||||
endif
|
||||
|
||||
-install_data(['daemon.conf'],
|
||||
- install_dir : join_paths(sysconfdir, 'fwupd')
|
||||
-)
|
||||
-
|
||||
install_data(['org.freedesktop.fwupd.metainfo.xml'],
|
||||
install_dir: join_paths(datadir, 'metainfo')
|
||||
)
|
||||
|
||||
install_data(['org.freedesktop.fwupd.conf'],
|
||||
- install_dir : join_paths(sysconfdir, 'dbus-1', 'system.d')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'dbus-1', 'system.d')
|
||||
)
|
||||
|
||||
install_data(['metadata.xml'],
|
||||
--- a/data/pki/meson.build
|
||||
+++ b/data/pki/meson.build
|
||||
@@ -4,14 +4,14 @@
|
||||
'GPG-KEY-Linux-Foundation-Firmware',
|
||||
'GPG-KEY-Linux-Vendor-Firmware-Service',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'pki', 'fwupd')
|
||||
)
|
||||
|
||||
install_data([
|
||||
'GPG-KEY-Linux-Foundation-Metadata',
|
||||
'GPG-KEY-Linux-Vendor-Firmware-Service',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'pki', 'fwupd-metadata')
|
||||
)
|
||||
endif
|
||||
|
||||
@@ -19,12 +19,12 @@
|
||||
install_data([
|
||||
'LVFS-CA.pem',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'pki', 'fwupd')
|
||||
)
|
||||
install_data([
|
||||
'LVFS-CA.pem',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'pki', 'fwupd-metadata')
|
||||
)
|
||||
endif
|
||||
|
||||
--- a/data/remotes.d/meson.build
|
||||
+++ b/data/remotes.d/meson.build
|
||||
@@ -3,7 +3,7 @@
|
||||
'lvfs.conf',
|
||||
'lvfs-testing.conf',
|
||||
],
|
||||
- install_dir : join_paths(sysconfdir, 'fwupd', 'remotes.d')
|
||||
+ install_dir : join_paths(get_option('prefix'), 'etc', 'fwupd', 'remotes.d')
|
||||
)
|
||||
i18n.merge_file(
|
||||
input: 'lvfs.metainfo.xml',
|
||||
@@ -37,12 +37,12 @@
|
||||
output : 'fwupd.conf',
|
||||
configuration : con2,
|
||||
install: true,
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
|
||||
+ install_dir: join_paths(get_option('prefix'), 'etc', 'fwupd', 'remotes.d'),
|
||||
)
|
||||
configure_file(
|
||||
input : 'vendor.conf',
|
||||
output : 'vendor.conf',
|
||||
configuration : con2,
|
||||
install: true,
|
||||
- install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
|
||||
+ install_dir: join_paths(get_option('prefix'), 'etc', 'fwupd', 'remotes.d'),
|
||||
)
|
||||
--- a/meson_post_install.sh
|
||||
+++ b/meson_post_install.sh
|
||||
@@ -11,6 +11,4 @@
|
||||
|
|
Loading…
Reference in a new issue