From a8ed65c73f748c5549317dc5e26ebb4bc2046f4b Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 9 Mar 2025 18:46:28 +0100 Subject: [PATCH 1/2] bristol: fix build with gcc 14 --- pkgs/by-name/br/bristol/package.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/br/bristol/package.nix b/pkgs/by-name/br/bristol/package.nix index 2251225e68d7..dde3bc73155a 100644 --- a/pkgs/by-name/br/bristol/package.nix +++ b/pkgs/by-name/br/bristol/package.nix @@ -33,7 +33,10 @@ stdenv.mkDerivation rec { xorg.xorgproto ]; - patchPhase = "sed -i '41,43d' libbristolaudio/audioEngineJack.c"; # disable alsa/iatomic + postPatch = '' + sed -i '41,43d' libbristolaudio/audioEngineJack.c # disable alsa/iatomic + sed -i '35i void doPitchWheel(Baudio *baudio);' bristol/bristolmemorymoog.c + ''; configurePhase = "./configure --prefix=$out --enable-jack-default-audio --enable-jack-default-midi"; @@ -41,7 +44,7 @@ stdenv.mkDerivation rec { # gcc-10. Otherwise build fails as: # ld: brightonCLI.o:/build/bristol-0.60.11/brighton/brightonCLI.c:139: multiple definition of # `event'; brightonMixerMenu.o:/build/bristol-0.60.11/brighton/brightonMixerMenu.c:1182: first defined here - env.NIX_CFLAGS_COMPILE = "-fcommon"; + env.NIX_CFLAGS_COMPILE = "-fcommon -Wno-implicit-int"; preInstall = '' sed -e "s@\`which bristol\`@$out/bin/bristol@g" -i bin/startBristol From 9de2a61ecd72cb2d2c53ad31366e450699940cac Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 9 Mar 2025 18:52:16 +0100 Subject: [PATCH 2/2] bristol: modernize --- pkgs/by-name/br/bristol/package.nix | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/br/bristol/package.nix b/pkgs/by-name/br/bristol/package.nix index dde3bc73155a..54d9f4670361 100644 --- a/pkgs/by-name/br/bristol/package.nix +++ b/pkgs/by-name/br/bristol/package.nix @@ -5,8 +5,10 @@ alsa-lib, libjack2, pkg-config, + libX11, + libXext, + xorgproto, libpulseaudio, - xorg, copyDesktopItems, makeDesktopItem, }: @@ -17,20 +19,21 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://sourceforge/bristol/${pname}-${version}.tar.gz"; - sha256 = "1fi2m4gmvxdi260821y09lxsimq82yv4k5bbgk3kyc3x1nyhn7vx"; + hash = "sha256-fR8LvQ19MD/HfGuVSbYXCNeoO03AB4GAEbH1XR+pIro="; }; nativeBuildInputs = [ pkg-config copyDesktopItems ]; + buildInputs = [ alsa-lib libjack2 libpulseaudio - xorg.libX11 - xorg.libXext - xorg.xorgproto + libX11 + libXext + xorgproto ]; postPatch = '' @@ -38,7 +41,10 @@ stdenv.mkDerivation rec { sed -i '35i void doPitchWheel(Baudio *baudio);' bristol/bristolmemorymoog.c ''; - configurePhase = "./configure --prefix=$out --enable-jack-default-audio --enable-jack-default-midi"; + configureFlags = [ + "--enable-jack-default-audio" + "--enable-jack-default-midi" + ]; # Workaround build failure on -fno-common toolchains like upstream # gcc-10. Otherwise build fails as: @@ -67,10 +73,10 @@ stdenv.mkDerivation rec { }) ]; - meta = with lib; { + meta = { description = "Range of synthesiser, electric piano and organ emulations"; homepage = "https://bristol.sourceforge.net"; - license = licenses.gpl3; + license = lib.licenses.gpl3; platforms = [ "x86_64-linux" "i686-linux"