biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / ashpd-demo / default.nix
blobba844a6250dd777c4e6fc4a27a24c2245e42ad62
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , nix-update-script
5 , cargo
6 , meson
7 , ninja
8 , rustPlatform
9 , rustc
10 , pkg-config
11 , glib
12 , libshumate
13 , gst_all_1
14 , gtk4
15 , libadwaita
16 , llvmPackages
17 , glibc
18 , pipewire
19 , wayland
20 , wrapGAppsHook4
21 , desktop-file-utils
24 stdenv.mkDerivation (finalAttrs: {
25   pname = "ashpd-demo";
26   version = "0.4.1";
28   src = fetchFromGitHub {
29     owner = "bilelmoussaoui";
30     repo = "ashpd";
31     rev = "${finalAttrs.version}-demo";
32     hash = "sha256-fIyJEUcyTcjTbBycjuJb99wALQelMT7Zq6PHKcL2F80=";
33   };
35   cargoDeps = rustPlatform.fetchCargoTarball {
36     src = "${finalAttrs.src}/ashpd-demo";
37     hash = "sha256-ldflCBErM9w3eO2DwWfYTrdO7lowZtqfj7Fft6Crl1w=";
38   };
40   nativeBuildInputs = [
41     meson
42     ninja
43     pkg-config
44     cargo
45     rustPlatform.cargoSetupHook
46     rustc
47     wrapGAppsHook4
48     rustPlatform.bindgenHook
49     desktop-file-utils
50     glib # for glib-compile-schemas
51   ];
53   buildInputs = [
54     glib
55     gtk4
56     gst_all_1.gstreamer
57     gst_all_1.gst-plugins-base
58     libadwaita
59     pipewire
60     wayland
61     libshumate
62   ];
64   postPatch = ''
65     cd ashpd-demo
66   '';
68   meta = with lib; {
69     description = "Tool for playing with XDG desktop portals";
70     mainProgram = "ashpd-demo";
71     homepage = "https://github.com/bilelmoussaoui/ashpd/tree/master/ashpd-demo";
72     license = licenses.mit;
73     maintainers = with maintainers; [ jtojnar ];
74     platforms = platforms.linux;
75   };