nixos-config/packages/u-he/twangstrom.nix

53 lines
1.4 KiB
Nix
Raw Normal View History

2024-11-30 18:39:02 -05:00
{ stdenv, pkgs, fetchurl, lib, autoPatchelfHook, makeWrapper, ... }:
2024-12-01 15:31:55 -05:00
stdenv.mkDerivation rec {
2024-11-30 18:39:02 -05:00
pname = "u-he twangstrom";
version = "latest";
2024-12-01 15:31:55 -05:00
2024-11-30 18:39:02 -05:00
src = fetchurl {
url = "https://dl.u-he.com/releases/Twangstrom_102_16742_Linux.tar.xz";
sha256 = "sha256-SFPY+R+gQstDXe+gLaoIuCUckBoYwWZygXSMwytcpnc=";
};
2024-12-01 15:31:55 -05:00
2024-11-30 18:39:02 -05:00
nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
2024-12-01 15:31:55 -05:00
2024-11-30 18:39:02 -05:00
buildInputs = with pkgs; [
freetype
fontconfig
alsa-lib
pipewire
stdenv.cc.cc.lib
cairo
xorg.libxcb
xorg.xcbutilkeysyms
xorg.xcbutil
2024-12-01 15:31:55 -05:00
gtk3
glibc
batik
2024-11-30 18:39:02 -05:00
];
installPhase = ''
2024-12-01 15:31:55 -05:00
mkdir -p $out/lib/vst3 $out/share $out/lib/vst3/Twangstrom.64.vst3/Contents/Resources/Documentation $out/lib/vst3/Twangstrom.64.vst3/Contents/x86_64-linux
cp -r Twangstrom/Twangstrom.64.so $out/lib/vst3/Twangstrom.64.vst3/Contents/x86_64-linux/
cp -r Twangstrom/*.pdf $out/lib/vst3/Twangstrom.64.vst3/Contents/Resources/Documentation/
'';
2024-11-30 18:39:02 -05:00
2024-12-01 15:31:55 -05:00
# cp -r Twangstrom $out/share/
2024-11-30 18:39:02 -05:00
2024-12-01 15:31:55 -05:00
postFixup = ''
for file in \
$out/lib/vst3/Twangstrom.64.vst3/Contents/x86_64-linux/Twangstrom.64.so
do
patchelf --set-rpath "${lib.makeLibraryPath buildInputs}" $file
done
2024-11-30 18:39:02 -05:00
'';
meta = with lib; {
homepage = "https://u-he.com/products/twangstrom/";
2024-12-01 15:31:55 -05:00
description = "u-he twangstrom. To complete the installation, manually symlink the data dirs from ~/.nix-profile/share/Twangstrom/ into ~/.u-he/Twangstrom/";
2024-11-30 18:39:02 -05:00
platforms = platforms.linux;
};
}