1{
2 stdenv,
3 lib,
4 fetchFromGitLab,
5 gitUpdater,
6 doxygen,
7 glib,
8 libaccounts-glib,
9 pkg-config,
10 qmake,
11 qtbase,
12 wrapQtAppsHook,
13}:
14
15stdenv.mkDerivation (finalAttrs: {
16 pname = "accounts-qt";
17 version = "1.17";
18
19 # pinned to fork with Qt6 support
20 src = fetchFromGitLab {
21 owner = "accounts-sso";
22 repo = "libaccounts-qt";
23 rev = "refs/tags/VERSION_${finalAttrs.version}";
24 hash = "sha256-mPZgD4r7vlUP6wklvZVknGqTXZBckSOtNzK7p6e2qSA=";
25 };
26
27 propagatedBuildInputs = [
28 glib
29 libaccounts-glib
30 ];
31 buildInputs = [ qtbase ];
32 nativeBuildInputs = [
33 doxygen
34 pkg-config
35 qmake
36 wrapQtAppsHook
37 ];
38
39 # remove forbidden references to /build
40 preFixup = ''
41 patchelf --shrink-rpath --allowed-rpath-prefixes "$NIX_STORE" "$out"/bin/*
42 '';
43
44 passthru.updateScript = gitUpdater {
45 rev-prefix = "VERSION_";
46 };
47
48 meta = with lib; {
49 description = "Qt library for accessing the online accounts database";
50 mainProgram = "accountstest";
51 homepage = "https://gitlab.com/accounts-sso/libaccounts-qt";
52 license = licenses.lgpl21;
53 platforms = platforms.linux;
54 };
55})