{ pkgs, ... }: let mixingStation = pkgs.stdenv.mkDerivation rec { pname = "mixing-station"; version = "3.1.4"; src = pkgs.fetchurl { url = "https://mixingstation.app/backend/api/web/download/update/mixing-station-pc/release"; sha256 = "sha256-8d+rGfcOMz8ZoaTy4wd9SEExyc/IaUDysf1WC8xyTC0="; }; nativeBuildInputs = [ pkgs.unzip pkgs.makeWrapper ]; buildInputs = with pkgs; [ libGL libx11 libxext libxcursor libxrandr libxxf86vm libxi libpulseaudio ]; unpackPhase = '' unzip $src ''; installPhase = '' mkdir -p $out/bin mkdir -p $out/share/mixing-station cp -r * $out/share/mixing-station/ makeWrapper ${pkgs.openjdk21}/bin/java $out/bin/mixing-station \ --add-flags "-jar $out/share/mixing-station/mixing-station-desktop.jar" \ --prefix LD_LIBRARY_PATH : ${pkgs.lib.makeLibraryPath buildInputs} mkdir -p $out/share/applications cat > $out/share/applications/mixing-station.desktop << EOF [Desktop Entry] Name=Mixing Station Exec=$out/bin/mixing-station Icon=audio-mixer Type=Application Categories=AudioVideo;Audio; Comment=Remote control for digital mixers EOF ''; meta = with pkgs.lib; { description = "Remote control for digital mixers"; homepage = "https://mixingstation.app/"; license = licenses.unfree; platforms = platforms.linux; }; }; in { environment.systemPackages = [ mixingStation ]; }