nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

64 lines
1.4 KiB
Nix

{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, lxqt-build-tools
, qtx11extras
, qttools
, qtsvg
, libqtxdg
, polkit-qt
, kwindowsystem
, xorg
, gitUpdater
}:
mkDerivation rec {
pname = "liblxqt";
version = "1.4.0";
src = fetchFromGitHub {
owner = "lxqt";
repo = pname;
rev = version;
hash = "sha256-daD4okYc4J2nRrO6423W0IUK9173zcepCvvMtx7Vho4=";
};
nativeBuildInputs = [
cmake
lxqt-build-tools
qttools
];
buildInputs = [
qtx11extras
qtsvg
polkit-qt
kwindowsystem
libqtxdg
xorg.libXScrnSaver
];
# convert name of wrapped binary, e.g. .lxqt-whatever-wrapped to the original name, e.g. lxqt-whatever so binaries can find their resources
patches = [ ./fix-application-path.patch ];
postPatch = ''
# https://github.com/NixOS/nixpkgs/issues/119766
substituteInPlace lxqtbacklight/linux_backend/driver/libbacklight_backend.c \
--replace "pkexec lxqt-backlight_backend" "pkexec $out/bin/lxqt-backlight_backend"
sed -i "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" CMakeLists.txt
'';
passthru.updateScript = gitUpdater { };
meta = with lib; {
description = "Core utility library for all LXQt components";
mainProgram = "lxqt-backlight_backend";
homepage = "https://github.com/lxqt/liblxqt";
license = licenses.lgpl21Plus;
platforms = platforms.linux;
maintainers = teams.lxqt.members;
};
}