From c2a1d01a4b4b1a2aa6d6b6b35185ceecfd050d15 Mon Sep 17 00:00:00 2001 From: Dan Callahan Date: Mon, 18 Feb 2019 21:58:30 +0000 Subject: [PATCH] bolt: init at 0.7 --- .../linux/bolt/0001-skip-mkdir.patch | 12 ++++ pkgs/os-specific/linux/bolt/default.nix | 61 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 75 insertions(+) create mode 100644 pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch create mode 100644 pkgs/os-specific/linux/bolt/default.nix diff --git a/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch new file mode 100644 index 00000000000..0853bcea916 --- /dev/null +++ b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch @@ -0,0 +1,12 @@ +diff --git a/scripts/meson-install.sh b/scripts/meson-install.sh +index 859ae81..05a1c58 100644 +--- a/scripts/meson-install.sh ++++ b/scripts/meson-install.sh +@@ -7,5 +7,5 @@ fi + + BOLT_DBDIR=$1 + +-echo "Creating database dir: ${BOLT_DBDIR}" +-mkdir -p "${DESTDIR}/${BOLT_DBDIR}" ++# echo "Creating database dir: ${BOLT_DBDIR}" ++# mkdir -p "${DESTDIR}/${BOLT_DBDIR}" diff --git a/pkgs/os-specific/linux/bolt/default.nix b/pkgs/os-specific/linux/bolt/default.nix new file mode 100644 index 00000000000..f57fb1310c6 --- /dev/null +++ b/pkgs/os-specific/linux/bolt/default.nix @@ -0,0 +1,61 @@ +{ stdenv, meson, ninja, pkgconfig, fetchFromGitLab, + python3, umockdev, gobject-introspection, dbus, + asciidoc, libxml2, libxslt, docbook_xml_dtd_45, docbook_xsl, + glib, systemd, polkit +}: + +stdenv.mkDerivation rec { + pname = "bolt"; + version = "0.7"; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "bolt"; + repo = "bolt"; + rev = "${version}"; + sha256 = "0xn2c31kcjh1j76gq1qrcxwjyjyqnsxygkfrvh3xk07qc92f99xd"; + }; + + nativeBuildInputs = [ + meson ninja pkgconfig + asciidoc libxml2 libxslt docbook_xml_dtd_45 docbook_xsl + ] ++ stdenv.lib.optional (!doCheck) python3; + + buildInputs = [ + glib systemd polkit + ]; + + doCheck = true; + + preCheck = '' + export LD_LIBRARY_PATH=${umockdev.out}/lib/ + ''; + + checkInputs = [ + dbus umockdev gobject-introspection + (python3.withPackages + (p: [ p.pygobject3 p.dbus-python p.python-dbusmock ])) + ]; + + # meson install tries to create /var/lib/boltd + patches = [ ./0001-skip-mkdir.patch ]; + + postPatch = '' + patchShebangs tests/test-integration + ''; + + mesonFlags = [ + "-Dlocalstatedir=/var" + ]; + + PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system"; + PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev"; + + meta = with stdenv.lib; { + description = "Thunderbolt 3 device management daemon"; + homepage = https://gitlab.freedesktop.org/bolt/bolt; + license = licenses.lgpl21Plus; + maintainers = [ maintainers.callahad ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2dd4e5465bd..312b3f5de47 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14314,6 +14314,8 @@ in inherit (python3Packages) bedup; + bolt = callPackage ../os-specific/linux/bolt { }; + bridge-utils = callPackage ../os-specific/linux/bridge-utils { }; busybox = callPackage ../os-specific/linux/busybox { };