Merge pull request #329823 from ExpidusOS/fix/pkgsllvm/elfutils
[NixPkgs.git] / pkgs / by-name / sp / spot / package.nix
blob8415da2f07a37ac79526e36ce6886b97a6f4681b
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   rustPlatform,
6   cargo,
7   rustc,
8   alsa-lib,
9   appstream-glib,
10   blueprint-compiler,
11   desktop-file-utils,
12   gettext,
13   glib,
14   gst_all_1,
15   gtk4,
16   libadwaita,
17   libpulseaudio,
18   libhandy,
19   meson,
20   ninja,
21   nix-update-script,
22   openssl,
23   pkg-config,
24   wrapGAppsHook4,
27 stdenv.mkDerivation rec {
28   pname = "spot";
29   version = "0.4.1";
31   src = fetchFromGitHub {
32     owner = "xou816";
33     repo = "spot";
34     rev = version;
35     hash = "sha256-F875e/VZyN8mTfe9lgjtILNxMqn+66XoPCdaEUagHyU=";
36   };
38   cargoDeps = rustPlatform.fetchCargoTarball {
39     inherit src;
40     name = "${pname}-${version}";
41     hash = "sha256-45Rqs2/tSWoyZVjFuygR5SxldjoqpprtOKEnMqJK+p8=";
42   };
44   nativeBuildInputs = [
45     cargo
46     rustc
47     appstream-glib
48     blueprint-compiler
49     desktop-file-utils
50     gettext
51     gtk4 # for gtk-update-icon-cache
52     glib # for glib-compile-schemas
53     meson
54     ninja
55     pkg-config
56     rustPlatform.cargoSetupHook
57     wrapGAppsHook4
58   ];
60   buildInputs = [
61     alsa-lib
62     glib
63     gst_all_1.gst-plugins-base
64     gst_all_1.gstreamer
65     gtk4
66     libadwaita
67     libhandy
68     libpulseaudio
69     openssl
70   ];
72   # https://github.com/xou816/spot/issues/313
73   mesonBuildType = "release";
75   passthru = {
76     updateScript = nix-update-script { };
77   };
79   meta = {
80     description = "Native Spotify client for the GNOME desktop";
81     homepage = "https://github.com/xou816/spot";
82     changelog = "https://github.com/xou816/spot/releases/tag/${src.rev}";
83     license = lib.licenses.mit;
84     maintainers = with lib.maintainers; [ getchoo ];
85     mainProgram = "spot";
86     platforms = lib.platforms.linux;
87   };