chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / al / albert / package.nix
blob3e9196aa8df0bee9b76248e75871bfd5cf5390c6
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   qt6,
6   cmake,
7   libqalculate,
8   muparser,
9   libarchive,
10   python3Packages,
11   nix-update-script,
12   pkg-config,
15 stdenv.mkDerivation (finalAttrs: {
16   pname = "albert";
17   version = "0.26.4";
19   src = fetchFromGitHub {
20     owner = "albertlauncher";
21     repo = "albert";
22     rev = "v${finalAttrs.version}";
23     hash = "sha256-MEpBZV1Fxoq24eT1hgyrp33qcaLqmQ+aAP974Yn8d2g=";
24     fetchSubmodules = true;
25   };
27   nativeBuildInputs = [
28     cmake
29     pkg-config
30     qt6.wrapQtAppsHook
31   ];
33   buildInputs =
34     [
35       libqalculate
36       libarchive
37       muparser
38       qt6.qtbase
39       qt6.qtscxml
40       qt6.qtsvg
41       qt6.qtdeclarative
42       qt6.qtwayland
43       qt6.qt5compat
44       qt6.qttools
45     ]
46     ++ (with python3Packages; [
47       python
48       pybind11
49     ]);
51   postPatch = ''
52     find -type f -name CMakeLists.txt -exec sed -i {} -e '/INSTALL_RPATH/d' \;
54     substituteInPlace src/app/qtpluginprovider.cpp \
55       --replace-fail "QStringList install_paths;" "QStringList install_paths;${"\n"}install_paths << QFileInfo(\"$out/lib\").canonicalFilePath();"
56   '';
58   postFixup = ''
59     for i in $out/{bin/.albert-wrapped,lib/albert/plugins/*.so}; do
60       patchelf $i --add-rpath $out/lib/albert
61     done
62   '';
64   passthru = {
65     updateScript = nix-update-script { };
66   };
68   meta = {
69     description = "Fast and flexible keyboard launcher";
70     longDescription = ''
71       Albert is a desktop agnostic launcher. Its goals are usability and beauty,
72       performance and extensibility. It is written in C++ and based on the Qt
73       framework.
74     '';
75     homepage = "https://albertlauncher.github.io";
76     changelog = "https://github.com/albertlauncher/albert/blob/${finalAttrs.src.rev}/CHANGELOG.md";
77     # See: https://github.com/NixOS/nixpkgs/issues/279226
78     license = lib.licenses.unfree;
79     maintainers = with lib.maintainers; [
80       ericsagnes
81       synthetica
82       eljamm
83     ];
84     mainProgram = "albert";
85     platforms = lib.platforms.linux;
86   };