Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 84 lines 1.6 kB view raw
1{ 2 lib, 3 fetchFromGitHub, 4 rustPlatform, 5 pkg-config, 6 mpv-unwrapped, 7 ffmpeg, 8 libadwaita, 9 gst_all_1, 10 openssl, 11 libepoxy, 12 wrapGAppsHook4, 13 nix-update-script, 14 stdenv, 15 meson, 16 ninja, 17 rustc, 18 cargo, 19 dbus, 20 desktop-file-utils, 21 versionCheckHook, 22}: 23stdenv.mkDerivation rec { 24 pname = "tsukimi"; 25 version = "0.21.0"; 26 27 src = fetchFromGitHub { 28 owner = "tsukinaha"; 29 repo = "tsukimi"; 30 tag = "v${version}"; 31 hash = "sha256-FmxNOMYHoQK//v4ZGvJ6vIHKYgMfQm7LTwQV9iEFo0A="; 32 }; 33 34 cargoDeps = rustPlatform.fetchCargoVendor { 35 inherit src; 36 hash = "sha256-iH7vCZhCN2/gu2EC+YG/LUL9N/HMMnj7qHqXUdrlAh8="; 37 }; 38 39 nativeBuildInputs = [ 40 pkg-config 41 wrapGAppsHook4 42 meson 43 ninja 44 rustPlatform.cargoSetupHook 45 rustc 46 cargo 47 desktop-file-utils 48 ]; 49 50 buildInputs = [ 51 mpv-unwrapped 52 ffmpeg 53 libadwaita 54 openssl 55 libepoxy 56 dbus 57 ] 58 ++ (with gst_all_1; [ 59 gstreamer 60 gst-plugins-base 61 gst-plugins-good 62 gst-plugins-bad 63 gst-plugins-ugly 64 gst-libav 65 ]); 66 67 nativeInstallCheckInputs = [ versionCheckHook ]; 68 versionCheckProgramArg = "--version"; 69 doInstallCheck = true; 70 71 passthru.updateScript = nix-update-script { }; 72 73 meta = { 74 description = "Simple third-party Emby client, featured with GTK4-RS, MPV and GStreamer"; 75 homepage = "https://github.com/tsukinaha/tsukimi"; 76 license = lib.licenses.gpl3Plus; 77 maintainers = with lib.maintainers; [ 78 merrkry 79 aleksana 80 ]; 81 mainProgram = "tsukimi"; 82 platforms = lib.platforms.linux; 83 }; 84}