lol

uade: Modernise

+29 -27
+29 -27
pkgs/by-name/ua/uade/package.nix
··· 2 2 lib, 3 3 stdenv, 4 4 fetchFromGitLab, 5 + bencodetools, 6 + flac, 7 + lame, 8 + libao, 9 + makeWrapper, 5 10 python3, 6 11 pkg-config, 7 - which, 8 - makeWrapper, 9 - libao, 10 - bencodetools, 11 12 sox, 12 - lame, 13 - flac, 14 13 vorbis-tools, 14 + which, 15 15 }: 16 16 17 - stdenv.mkDerivation rec { 17 + stdenv.mkDerivation (finalAttrs: { 18 18 pname = "uade"; 19 19 version = "3.02"; 20 20 21 21 src = fetchFromGitLab { 22 22 owner = "uade-music-player"; 23 23 repo = "uade"; 24 - rev = "uade-${version}"; 24 + rev = "uade-${finalAttrs.version}"; 25 25 hash = "sha256-skPEXBQwyr326zCmZ2jwGxcBoTt3Y/h2hagDeeqbMpw="; 26 26 }; 27 27 28 28 postPatch = '' 29 29 patchShebangs configure 30 - substituteInPlace configure \ 31 - --replace 'PYTHON_SETUP_ARGS=""' 'PYTHON_SETUP_ARGS="--prefix=$out"' 30 + 32 31 substituteInPlace src/frontends/mod2ogg/mod2ogg2.sh.in \ 33 - --replace '-e stat' '-n stat' \ 34 - --replace '/usr/local' "$out" 32 + --replace-fail '-e stat' '-n stat' \ 33 + --replace-fail '/usr/local' "$out" 34 + 35 35 substituteInPlace python/uade/generate_oscilloscope_view.py \ 36 - --replace "default='uade123'" "default='$out/bin/uade123'" 36 + --replace-fail "default='uade123'" "default='$out/bin/uade123'" 37 + 37 38 # https://gitlab.com/uade-music-player/uade/-/issues/37 38 39 substituteInPlace write_audio/Makefile.in \ 39 - --replace 'g++' '${stdenv.cc.targetPrefix}c++' 40 + --replace-fail 'g++' '${stdenv.cc.targetPrefix}c++' 40 41 ''; 41 42 42 43 nativeBuildInputs = [ 44 + makeWrapper 43 45 pkg-config 44 46 which 45 - makeWrapper 46 47 ]; 47 48 48 49 buildInputs = [ 49 - libao 50 50 bencodetools 51 - sox 51 + flac 52 52 lame 53 - flac 53 + libao 54 + sox 54 55 vorbis-tools 55 56 ]; 56 57 57 58 configureFlags = [ 58 59 "--bencode-tools-prefix=${bencodetools}" 59 - "--with-text-scope" 60 - "--without-write-audio" 60 + (lib.strings.withFeature true "text-scope") 61 + (lib.strings.withFeature false "write-audio") 61 62 ]; 62 63 63 64 enableParallelBuilding = true; ··· 68 69 wrapProgram $out/bin/mod2ogg2.sh \ 69 70 --prefix PATH : $out/bin:${ 70 71 lib.makeBinPath [ 71 - sox 72 - lame 73 72 flac 73 + lame 74 + sox 74 75 vorbis-tools 75 76 ] 76 77 } 78 + 77 79 # This is an old script, don't break expectations by renaming it 78 80 ln -s $out/bin/mod2ogg2{.sh,} 79 81 ''; 80 82 81 - meta = with lib; { 83 + meta = { 82 84 description = "Plays old Amiga tunes through UAE emulation and cloned m68k-assembler Eagleplayer API"; 83 85 homepage = "https://zakalwe.fi/uade/"; 84 86 # It's a mix of licenses. "GPL", Public Domain, "LGPL", GPL2+, BSD, LGPL21+ and source code with unknown licenses. E.g. 85 87 # - hippel-coso player is "[not] under any Open Source certified license" 86 88 # - infogrames player is disassembled from Andi Silvas player, unknown license 87 89 # Let's make it easy and flag the whole package as unfree. 88 - license = licenses.unfree; 89 - maintainers = with maintainers; [ OPNA2608 ]; 90 + license = lib.licenses.unfree; 91 + maintainers = with lib.maintainers; [ OPNA2608 ]; 90 92 mainProgram = "uade123"; 91 - platforms = platforms.unix; 93 + platforms = lib.platforms.unix; 92 94 }; 93 - } 95 + })