From 440cd0232deb237fc8d8f59c3e98c2e6ff23bc04 Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sat, 14 Oct 2023 11:15:31 +0200 Subject: [PATCH 1/2] lomiri.hfd-service: init at 0.2.0 --- pkgs/desktops/lomiri/default.nix | 1 + .../lomiri/services/hfd-service/default.nix | 68 +++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 pkgs/desktops/lomiri/services/hfd-service/default.nix diff --git a/pkgs/desktops/lomiri/default.nix b/pkgs/desktops/lomiri/default.nix index bcaa19ab27df..2de3a7c9d409 100644 --- a/pkgs/desktops/lomiri/default.nix +++ b/pkgs/desktops/lomiri/default.nix @@ -20,6 +20,7 @@ let #### Services biometryd = callPackage ./services/biometryd { }; + hfd-service = callPackage ./services/hfd-service { }; }; in lib.makeScope libsForQt5.newScope packages diff --git a/pkgs/desktops/lomiri/services/hfd-service/default.nix b/pkgs/desktops/lomiri/services/hfd-service/default.nix new file mode 100644 index 000000000000..b0ff7f68cdf0 --- /dev/null +++ b/pkgs/desktops/lomiri/services/hfd-service/default.nix @@ -0,0 +1,68 @@ +{ stdenv +, lib +, fetchFromGitLab +, gitUpdater +, cmake +, cmake-extras +, deviceinfo +, libgbinder +, libglibutil +, pkg-config +, qtbase +, qtdeclarative +, qtfeedback +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "hfd-service"; + version = "0.2.0"; + + src = fetchFromGitLab { + owner = "ubports"; + repo = "development/core/hfd-service"; + rev = finalAttrs.version; + hash = "sha256-F1MLYcCYe2GAPNO3UuONM4/j9AnV+V2YgePBn2QY5zM="; + }; + + postPatch = '' + substituteInPlace qt/feedback-plugin/CMakeLists.txt \ + --replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/plugins" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtPluginPrefix}" + + # Queries pkg-config via pkg_get_variable, can't override prefix + substituteInPlace init/CMakeLists.txt \ + --replace "\''${SYSTEMD_SYSTEM_DIR}" "$out/lib/systemd/system" + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + cmake-extras + deviceinfo + libgbinder + libglibutil + qtbase + qtdeclarative + qtfeedback + ]; + + cmakeFlags = [ + "-DENABLE_LIBHYBRIS=OFF" + ]; + + dontWrapQtApps = true; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "DBus-activated service that manages human feedback devices such as LEDs and vibrators on mobile devices"; + homepage = "https://gitlab.com/ubports/development/core/hfd-service"; + license = licenses.lgpl3Only; + maintainers = teams.lomiri.members; + platforms = platforms.linux; + }; +}) From a8a5758da5b1609aa628b3c7e9aea547a586e703 Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sun, 3 Dec 2023 01:26:35 +0100 Subject: [PATCH 2/2] lomiri.hfd-service: 0.2.0 -> 0.2.1 --- pkgs/desktops/lomiri/services/hfd-service/default.nix | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/lomiri/services/hfd-service/default.nix b/pkgs/desktops/lomiri/services/hfd-service/default.nix index b0ff7f68cdf0..cffedb0af623 100644 --- a/pkgs/desktops/lomiri/services/hfd-service/default.nix +++ b/pkgs/desktops/lomiri/services/hfd-service/default.nix @@ -2,6 +2,7 @@ , lib , fetchFromGitLab , gitUpdater +, accountsservice , cmake , cmake-extras , deviceinfo @@ -15,13 +16,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "hfd-service"; - version = "0.2.0"; + version = "0.2.1"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/hfd-service"; rev = finalAttrs.version; - hash = "sha256-F1MLYcCYe2GAPNO3UuONM4/j9AnV+V2YgePBn2QY5zM="; + hash = "sha256-KcHwLTSdo86YCteUsPndoxmLf23SOEhROc5cJQ8GS1Q="; }; postPatch = '' @@ -31,6 +32,11 @@ stdenv.mkDerivation (finalAttrs: { # Queries pkg-config via pkg_get_variable, can't override prefix substituteInPlace init/CMakeLists.txt \ --replace "\''${SYSTEMD_SYSTEM_DIR}" "$out/lib/systemd/system" + substituteInPlace CMakeLists.txt \ + --replace 'pkg_get_variable(AS_INTERFACES_DIR accountsservice interfacesdir)' 'set(AS_INTERFACES_DIR "''${CMAKE_INSTALL_DATADIR}/accountsservice/interfaces")' \ + --replace 'DESTINATION ''${DBUS_INTERFACES_DIR}' 'DESTINATION ${placeholder "out"}/''${DBUS_INTERFACES_DIR}' + substituteInPlace src/CMakeLists.txt \ + --replace "\''${DBUS_INTERFACES_DIR}/org.freedesktop.Accounts.xml" '${accountsservice}/share/dbus-1/interfaces/org.freedesktop.Accounts.xml' ''; strictDeps = true; @@ -41,6 +47,7 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ + accountsservice cmake-extras deviceinfo libgbinder