nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix

squishyball: port to ncurses-6.3

Without the change build on `ncurses-6.3` fails as:

mincurses.c: In function 'setup_term_customize':
mincurses.c:345:20: error: 'TERMINAL' {aka 'struct term'} has no member named 'Nttyb'
345 | term = cur_term->Nttyb;
| ^~

While at it update homepage from svn repository to gitlab one.

+21 -9
+21 -9
pkgs/applications/audio/squishyball/default.nix
··· 1 - { lib, stdenv, autoreconfHook, fetchsvn, flac, libao, libvorbis, ncurses 1 + { lib, stdenv, autoreconfHook, fetchFromGitLab, fetchpatch, flac, libao, libvorbis, ncurses 2 2 , opusfile, pkg-config 3 3 }: 4 4 5 5 stdenv.mkDerivation rec { 6 - name = "squishyball-${rev}"; 7 - rev = "19580"; 6 + pname = "squishyball"; 7 + version = "unstable-2020-11-23"; 8 8 9 - src = fetchsvn { 10 - url = "https://svn.xiph.org/trunk/squishyball"; 11 - rev = rev; 12 - sha256 = "013vq52q9z6kpg9iyc2jnb3m2gihcjblvwpg4yj4wy1q2c05pzqp"; 9 + src = fetchFromGitLab { 10 + domain = "gitlab.xiph.org"; 11 + owner = "xiph"; 12 + repo = "squishyball"; 13 + rev = "27590fe6bac545e2dd3eacf048edbd969682263a"; 14 + sha256 = "07zs8wx1ahf3q505fk9b6cgzlkhnayfsscch46yy9s1wgxgphj7s"; 13 15 }; 14 16 15 17 nativeBuildInputs = [ autoreconfHook pkg-config ]; 16 18 17 19 buildInputs = [ flac libao libvorbis ncurses opusfile ]; 18 20 19 - patches = [ ./gnu-screen.patch ]; 21 + patches = [ 22 + ./gnu-screen.patch 23 + 24 + # Patch pending upstream inclusion for ncurses-6.3 support: 25 + # https://gitlab.xiph.org/xiph/squishyball/-/issues/1 26 + (fetchpatch { 27 + name = "ncurses-6.3.patch"; 28 + url = "https://gitlab.xiph.org/xiph/squishyball/uploads/5609ceaf85ebb6dc297c0efe61b9a1b7/0001-mincurses.c-use-ncurses-API-to-enter-raw-mode-ncurse.patch"; 29 + sha256 = "06llp7cd77f4vvhz8qdld551dnlpjxf98j7rmp3i1x1kng4f0iy3"; 30 + }) 31 + ]; 20 32 21 33 postInstall = '' 22 34 # Why doesn’t this happen automagically? ··· 52 40 comparisons of groups of up to ten samples; this is the default 53 41 mode of operation. 54 42 ''; 55 - homepage = "https://svn.xiph.org/trunk/squishyball"; 43 + homepage = "https://gitlab.xiph.org/xiph/squishyball"; 56 44 license = licenses.gpl2Plus; 57 45 maintainers = with maintainers; [ michalrus ]; 58 46 platforms = platforms.linux;