Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / misc / tuba / default.nix
blob6af6ef09dfcfe549e4f278823ff54fe81968a4cc
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , vala
5 , meson
6 , ninja
7 , python3
8 , pkg-config
9 , wrapGAppsHook4
10 , desktop-file-utils
11 , gtk4
12 , libadwaita
13 , json-glib
14 , glib
15 , glib-networking
16 , gobject-introspection
17 , gtksourceview5
18 , libxml2
19 , libgee
20 , libsoup_3
21 , libsecret
22 , libwebp
23 , libspelling
24 , gst_all_1
25 , nix-update-script
28 stdenv.mkDerivation rec {
29   pname = "tuba";
30   version = "0.4.1";
31   src = fetchFromGitHub {
32     owner = "GeopJr";
33     repo = "Tuba";
34     rev = "v${version}";
35     hash = "sha256-1XbgsdIcnlXJtNEzDgEfHVJHF9naz3HplCPc2cKFUWw=";
36   };
38   nativeBuildInputs = [
39     meson
40     ninja
41     pkg-config
42     vala
43     python3
44     wrapGAppsHook4
45     desktop-file-utils
46     gobject-introspection
47   ];
49   buildInputs = [
50     glib
51     glib-networking
52     gtksourceview5
53     json-glib
54     libxml2
55     libgee
56     libsoup_3
57     gtk4
58     libadwaita
59     libsecret
60     libwebp
61     libspelling
62   ] ++ (with gst_all_1; [
63     gstreamer
64     gst-libav
65     gst-plugins-base
66     (gst-plugins-good.override { gtkSupport = true; })
67     gst-plugins-bad
68   ]);
70   passthru = {
71     updateScript = nix-update-script { };
72   };
74   meta = with lib; {
75     description = "Browse the Fediverse";
76     homepage = "https://tuba.geopjr.dev/";
77     mainProgram = "dev.geopjr.Tuba";
78     license = licenses.gpl3Only;
79     changelog = "https://github.com/GeopJr/Tuba/releases/tag/v${version}";
80     maintainers = with maintainers; [ chuangzhu aleksana ];
81   };