Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 77 lines 1.9 kB view raw
1{ 2 lib, 3 buildDotnetModule, 4 dotnetCorePackages, 5 fetchFromGitHub, 6 pkg-config, 7 blueprint-compiler, 8 glib, 9 gtk4, 10 libadwaita, 11 wrapGAppsHook4, 12 appstream-glib, 13 desktop-file-utils, 14 cava, 15 libGL, 16}: 17 18buildDotnetModule rec { 19 pname = "cavalier"; 20 version = "2024.1.0"; 21 22 src = fetchFromGitHub { 23 owner = "NickvisionApps"; 24 repo = "Cavalier"; 25 tag = version; 26 hash = "sha256-SFhEKtYrlnkbLMnxU4Uf4jnFsw0MJHstgZgLLnGC2d8="; 27 }; 28 29 dotnet-sdk = dotnetCorePackages.sdk_8_0; 30 dotnet-runtime = dotnetCorePackages.runtime_8_0; 31 32 projectFile = "NickvisionCavalier.GNOME/NickvisionCavalier.GNOME.csproj"; 33 nugetDeps = ./deps.json; 34 executables = "NickvisionCavalier.GNOME"; 35 36 nativeBuildInputs = [ 37 pkg-config 38 blueprint-compiler 39 wrapGAppsHook4 40 appstream-glib 41 desktop-file-utils 42 ]; 43 44 buildInputs = [ 45 glib 46 gtk4 47 libadwaita 48 ]; 49 50 runtimeDeps = [ 51 glib 52 gtk4 53 libadwaita 54 libGL 55 ]; 56 57 postInstall = '' 58 substituteInPlace NickvisionCavalier.Shared/Linux/org.nickvision.cavalier.desktop.in \ 59 --replace-fail '@EXEC@' "NickvisionCavalier.GNOME" 60 install -Dm444 NickvisionCavalier.Shared/Linux/org.nickvision.cavalier.desktop.in -T $out/share/applications/org.nickvision.cavalier.desktop 61 install -Dm444 NickvisionCavalier.Shared/Resources/org.nickvision.cavalier.svg -t $out/share/icons/hicolor/scalable/apps/ 62 install -Dm444 NickvisionCavalier.Shared/Resources/org.nickvision.cavalier-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/ 63 ''; 64 65 makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ cava ]}" ]; 66 67 passthru.updateScript = ./update.sh; 68 69 meta = { 70 description = "Visualize audio with CAVA"; 71 homepage = "https://github.com/NickvisionApps/Cavalier"; 72 mainProgram = "NickvisionCavalier.GNOME"; 73 license = lib.licenses.mit; 74 platforms = lib.platforms.linux; 75 maintainers = with lib.maintainers; [ zendo ]; 76 }; 77}