Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 75 lines 1.4 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 nix-update-script, 6 meson, 7 ninja, 8 pkg-config, 9 vala, 10 wrapGAppsHook4, 11 elementary-gtk-theme, 12 elementary-icon-theme, 13 glib, 14 granite7, 15 gst_all_1, 16 gtk4, 17 libadwaita, 18}: 19 20stdenv.mkDerivation rec { 21 pname = "elementary-music"; 22 version = "8.0.0"; 23 24 src = fetchFromGitHub { 25 owner = "elementary"; 26 repo = "music"; 27 rev = version; 28 sha256 = "sha256-pqOAeHTFWSoJqXE9UCUkVIy5T7EoYsieJ4PMU1oX9ko="; 29 }; 30 31 nativeBuildInputs = [ 32 meson 33 ninja 34 pkg-config 35 vala 36 wrapGAppsHook4 37 ]; 38 39 buildInputs = [ 40 elementary-icon-theme 41 glib 42 granite7 43 gtk4 44 libadwaita 45 ] 46 ++ (with gst_all_1; [ 47 gst-plugins-bad 48 gst-plugins-base 49 gst-plugins-good 50 gst-plugins-ugly 51 gstreamer 52 ]); 53 54 preFixup = '' 55 gappsWrapperArgs+=( 56 # The GTK theme is hardcoded. 57 --prefix XDG_DATA_DIRS : "${elementary-gtk-theme}/share" 58 # The icon theme is hardcoded. 59 --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS" 60 ) 61 ''; 62 63 passthru = { 64 updateScript = nix-update-script { }; 65 }; 66 67 meta = with lib; { 68 description = "Music player and library designed for elementary OS"; 69 homepage = "https://github.com/elementary/music"; 70 license = licenses.gpl3Plus; 71 platforms = platforms.linux; 72 teams = [ teams.pantheon ]; 73 mainProgram = "io.elementary.music"; 74 }; 75}