bitwig-studio6: init at 6.0 (#503451)

This commit is contained in:
Pol Dellaiera
2026-04-07 12:05:01 +00:00
committed by GitHub
3 changed files with 165 additions and 1 deletions
+7
View File
@@ -7704,6 +7704,13 @@
githubId = 103082;
name = "Ed Brindley";
};
eleina = {
email = "ellie@eleina.dev";
github = "eleinah";
githubId = 129979592;
name = "Eleina Mironia";
keys = [ { fingerprint = "0A86 5F49 90B1 569C B849 5070 2EF4 8A29 49D6 5978"; } ];
};
eleonora = {
email = "leonsch@protonmail.com";
github = "42LoCo42";
+157
View File
@@ -0,0 +1,157 @@
{
alsa-lib,
atk,
autoPatchelfHook,
bubblewrap,
cairo,
dpkg,
fetchurl,
freetype,
gdk-pixbuf,
glib,
gtk3,
harfbuzz,
lcms,
lib,
libglvnd,
libjack2,
libjpeg8,
libnghttp2,
libudev-zero,
libx11,
libxcb,
libxcb-util,
libxcb-wm,
libxcursor,
libxkbcommon,
libxtst,
makeBinaryWrapper,
pango,
pipewire,
stdenv,
vulkan-loader,
wrapGAppsHook3,
writeShellScript,
xcb-imdkit,
zlib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "bitwig-studio6";
version = "6.0";
src = fetchurl {
name = "bitwig-studio-${finalAttrs.version}.deb";
url = "https://www.bitwig.com/dl/Bitwig%20Studio/${finalAttrs.version}/installer_linux";
hash = "sha256-jrCTgaxfeWhfKwLeKLmqTQWS7RVbVnHqJ0InCipmm8k=";
};
strictDeps = true;
nativeBuildInputs = [
autoPatchelfHook
dpkg
makeBinaryWrapper
wrapGAppsHook3
];
buildInputs = [
atk
cairo
freetype
gdk-pixbuf
glib
gtk3
harfbuzz
lcms
libglvnd
(lib.getLib stdenv.cc.cc)
libjack2
libjpeg8
libnghttp2
libudev-zero
libx11
libxcb
libxcb-util
libxcb-wm
libxcursor
libxkbcommon
libxtst
pango
pipewire
vulkan-loader
xcb-imdkit
zlib
alsa-lib
];
dontWrapGApps = true; # we only want $gappsWrapperArgs here
installPhase = ''
runHook preInstall
mkdir "$out"
cp -r usr/share "$out"
cp -r opt/bitwig-studio "$out"/libexec
# Bitwig includes a copy of libxcb-imdkit.
# Removing it will force it to use our version.
rm "$out"/libexec/lib/bitwig-studio/libxcb-imdkit.so.1
runHook postInstall
'';
postFixup =
let
wrapper = writeShellScript "bitwig-studio" ''
set -e
currentDir="$(cd "$(dirname "$0")" && pwd)"
outDir="$(cd "$currentDir/.." && pwd)"
TMPDIR="$(mktemp --directory)"
cp -r "$outDir"/libexec/resources/VampTransforms "$TMPDIR"
chmod -R u+w "$TMPDIR/VampTransforms"
bwrap \
--bind / / \
--bind "$TMPDIR"/VampTransforms "$outDir"/libexec/resources/VampTransforms \
--dev-bind /dev /dev \
"$outDir"/libexec/bitwig-studio \
|| true
rm -rf "$TMPDIR"
'';
in
''
for e in "$out"/libexec/bin/*gtk*; do
if [ -f "$e" ] && [ -x "$e" ]; then
wrapProgram "$e" "''${gappsWrapperArgs[@]}"
fi
done
install -D ${wrapper} "$out"/bin/bitwig-studio
wrapProgram "$out"/bin/bitwig-studio \
--prefix PATH : ${lib.makeBinPath [ bubblewrap ]}
'';
meta = {
description = "Digital audio workstation";
longDescription = ''
Bitwig Studio is a multi-platform music-creation system for
production, performance and DJing, with a focus on flexible
editing tools and a super-fast workflow.
'';
homepage = "https://www.bitwig.com/";
license = lib.licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [
bfortz
eleina
michalrus
mrVanDalo
];
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
mainProgram = "bitwig-studio";
};
})
+1 -1
View File
@@ -9283,7 +9283,7 @@ with pkgs;
bitwig-studio-unwrapped = bitwig-studio5-unwrapped;
};
bitwig-studio = bitwig-studio5;
bitwig-studio = bitwig-studio6;
blucontrol = callPackage ../applications/misc/blucontrol/wrapper.nix {
inherit (haskellPackages) ghcWithPackages;