Merge pull request #330634 from r-ryantm/auto-update/circumflex
[NixPkgs.git] / pkgs / desktops / gnome / core / gnome-remote-desktop / default.nix
blobb4dde2708d64b57f9ec7964eca84e1db5530d95e
1 { stdenv
2 , lib
3 , fetchurl
4 , cairo
5 , meson
6 , ninja
7 , pkg-config
8 , python3
9 , asciidoc
10 , wrapGAppsHook3
11 , glib
12 , libei
13 , libepoxy
14 , libdrm
15 , nv-codec-headers-11
16 , pipewire
17 , systemd
18 , libsecret
19 , libnotify
20 , libopus
21 , libxkbcommon
22 , gdk-pixbuf
23 , freerdp3
24 , fdk_aac
25 , tpm2-tss
26 , fuse3
27 , gnome
28 , polkit
31 stdenv.mkDerivation rec {
32   pname = "gnome-remote-desktop";
33   version = "46.3";
35   src = fetchurl {
36     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
37     hash = "sha256-CMZlbxHUY560lyqJKej1AkJ9weLqAz4CyZK7Gkx315Q=";
38   };
40   nativeBuildInputs = [
41     meson
42     ninja
43     pkg-config
44     python3
45     asciidoc
46     wrapGAppsHook3
47   ];
49   buildInputs = [
50     cairo
51     freerdp3
52     fdk_aac
53     tpm2-tss
54     fuse3
55     gdk-pixbuf # For libnotify
56     glib
57     libei
58     libepoxy
59     libdrm
60     nv-codec-headers-11
61     libnotify
62     libopus
63     libsecret
64     libxkbcommon
65     pipewire
66     systemd
67     polkit # For polkit-gobject
68   ];
70   mesonFlags = [
71     "-Dconf_dir=/etc/gnome-remote-desktop"
72     "-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user"
73     "-Dsystemd_system_unit_dir=${placeholder "out"}/lib/systemd/system"
74     "-Dsystemd_sysusers_dir=${placeholder "out"}/lib/sysusers.d"
75     "-Dsystemd_tmpfiles_dir=${placeholder "out"}/lib/tmpfiles.d"
76     "-Dtests=false" # Too deep of a rabbit hole.
77     # TODO: investigate who should be fixed here.
78     "-Dc_args=-I${freerdp3}/include/winpr3"
79   ];
81   passthru = {
82     updateScript = gnome.updateScript {
83       packageName = pname;
84       attrPath = "gnome.${pname}";
85     };
86   };
88   meta = with lib; {
89     homepage = "https://gitlab.gnome.org/GNOME/gnome-remote-desktop";
90     description = "GNOME Remote Desktop server";
91     mainProgram = "grdctl";
92     maintainers = teams.gnome.members;
93     license = licenses.gpl2Plus;
94     platforms = platforms.linux;
95   };