From 71e016523e684563e3d3aa04971109580f8e3154 Mon Sep 17 00:00:00 2001 From: EEva Date: Thu, 29 Jul 2021 23:59:09 +0300 Subject: [PATCH] Add decentsampler --- pkgs/decentsampler/default.nix | 53 ++++++++++++++++++++++++++++++++++ pkgs/default.nix | 2 ++ 2 files changed, 55 insertions(+) create mode 100644 pkgs/decentsampler/default.nix diff --git a/pkgs/decentsampler/default.nix b/pkgs/decentsampler/default.nix new file mode 100644 index 0000000..8d9da0d --- /dev/null +++ b/pkgs/decentsampler/default.nix @@ -0,0 +1,53 @@ +{ stdenv, lib +, fetchurl +, autoPatchelfHook +, alsaLib +, freetype +, glibc +, requireFile +}: + +stdenv.mkDerivation rec { + name = "decentsampler-${version}"; + + version = "1.1.1"; + + src = requireFile rec { + name = "Decent_Sampler-${version}-Linux-x86_64.tar.gz"; + sha256 = "0l1msk6d9x74scq82yv4nj282aw57mgzv2wj4kknzh08xnj5a1gh"; + message = '' + Get ${name}, (linux version) from + https://www.decentsamples.com/product/decent-sampler-plugin/ + + And import it using: + nix-prefetch-url file:///${name} + ''; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + buildInputs = [ + alsaLib + freetype + glibc + ]; + + sourceRoot = "."; + + installPhase = '' + ls -la + mkdir -p $out/lib/vst2 $out/lib/vst3 + install -m755 -D Decent_Sampler-${version}-Linux-x86_64/DecentSampler.so \ + $out/lib/vst2/ + install -m755 -D Decent_Sampler-${version}-Linux-x86_64/DecentSampler.vst3/Contents/x86_64-linux/DecentSampler.so \ + $out/lib/vst3/ + ''; + + meta = with lib; { + homepage = "https://www.decentsamples.com/product/decent-sampler-plugin/"; + description = "A FREE sampling plugin that allows you to play samples in the Decent Sampler format"; + platforms = platforms.linux; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 080d3e9..f5d5aa4 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -45,6 +45,8 @@ self: super: squeezer = super.callPackage ./squeezer {}; + decentsampler = super.callPackage ./decentsampler {}; + # Originally from Mats Rauhala ®2018 copy = super.writeScriptBin "copy" '' function clean() {