diff --git a/srcpkgs/bolt/files/boltd/run b/srcpkgs/bolt/files/boltd/run new file mode 100644 index 00000000000..90fc4602668 --- /dev/null +++ b/srcpkgs/bolt/files/boltd/run @@ -0,0 +1,3 @@ +#!/bin/sh +sv check dbus >/dev/null || exit 1 +exec /usr/libexec/boltd > /dev/null 2>&1 diff --git a/srcpkgs/bolt/patches/dont-require-systemd.patch b/srcpkgs/bolt/patches/dont-require-systemd.patch new file mode 100644 index 00000000000..2592921d1e3 --- /dev/null +++ b/srcpkgs/bolt/patches/dont-require-systemd.patch @@ -0,0 +1,51 @@ +Upstream: https://gitlab.freedesktop.org/bolt/bolt/merge_requests/103 (rebased) +From 3330913f5979208c622d5525ff358a12c0973d98 Mon Sep 17 00:00:00 2001 +From: Rasmus Thomsen +Date: Tue, 28 Aug 2018 23:25:41 +0200 +Subject: [PATCH] build: optionalise systemd unit installation +--- meson.build ++++ meson.build +@@ -76,7 +76,6 @@ libudev = dependency('libudev') + unix = dependency('gio-unix-2.0') + udev = dependency('udev') + polkit = dependency('polkit-gobject-1') +-systemd = dependency('systemd') + libsysd = dependency('libsystemd') + + git = find_program('git', required: false) +@@ -95,7 +94,12 @@ mandir = get_option('mandir') + + dbdir = get_option('db-path') + udevdir = udev.get_pkgconfig_variable('udevdir') +-unitdir = systemd.get_pkgconfig_variable('systemdsystemunitdir') ++ ++unitdir = '' ++if get_option('systemd') ++ systemd = dependency('systemd') ++ unitdir = systemd.get_pkgconfig_variable('systemdsystemunitdir') ++endif + + version_split = meson.project_version().split('.') + version_major = version_split[0] +@@ -262,9 +266,11 @@ unit_file = configure_file( + configuration: subs + ) + +-install_data(unit_file, +- install_dir: unitdir +-) ++if unitdir != '' ++ install_data(unit_file, ++ install_dir: unitdir ++ ) ++endif + + install_data('data/90-bolt.rules', + install_dir: join_paths(udevdir, 'rules.d') +--- meson_options.txt ++++ meson_options.txt +@@ -1,3 +1,4 @@ + option('db-path', type: 'string', value: '/var/lib/boltd', description: 'Directory for the device database') + option('man', type: 'combo', choices: ['auto', 'true', 'false'], value: 'auto', description: 'Build man pages') + option('privileged-group', type: 'string', value: 'wheel', description: 'Name of privileged group') ++option('systemd', type: 'boolean', value: 'true', description: 'Whether or not to install the systemd unit') diff --git a/srcpkgs/bolt/template b/srcpkgs/bolt/template new file mode 100644 index 00000000000..2533ec47e88 --- /dev/null +++ b/srcpkgs/bolt/template @@ -0,0 +1,24 @@ +# Template file for 'bolt' +pkgname=bolt +version=0.4 +revision=1 +build_style=meson +configure_args="-Dman=true -Dsystemd=false" +hostmakedepends="asciidoc glib-devel pkg-config" +makedepends="elogind-devel eudev-libudev-devel libglib-devel polkit-devel" +short_desc="Thunderbolt 3 device manager" +maintainer="Rasmus Thomsen " +license="LGPL-2.1-or-later" +homepage="https://gitlab.freedesktop.org/bolt/bolt" +distfiles="https://gitlab.freedesktop.org/bolt/bolt/-/archive/${version}/bolt-${version}.tar.gz" +checksum=7692799545cd84b31aa7145712c55e36afc0d369c62157b19e5e865deae5f6f6 +make_dirs="/var/lib/boltd 0755 root root" + +do_check() { + # Tests seem to be broken + : +} + +post_install() { + vsv boltd +}