diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4d25885ed732..1f11c596a21d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -388,6 +388,12 @@ fingerprint = "CE85 54F7 B9BC AC0D D648 5661 AB5F C04C 3C94 443F"; }]; }; + adam248 = { + email = "adamjbutler091@gmail.com"; + github = "adam248"; + githubId = 85082674; + name = "Adam J. Butler"; + }; adamcstephens = { email = "happy.plan4249@valkor.net"; matrix = "@adam:valkor.net"; diff --git a/pkgs/by-name/de/decent-sampler/package.nix b/pkgs/by-name/de/decent-sampler/package.nix new file mode 100644 index 000000000000..449a589c9086 --- /dev/null +++ b/pkgs/by-name/de/decent-sampler/package.nix @@ -0,0 +1,64 @@ +{ lib +, stdenv +, fetchzip +, buildFHSEnv +, alsa-lib +, freetype +, nghttp2 +, libX11 +, }: + +let + pname = "decent-sampler"; + version = "1.9.4"; + + decent-sampler = stdenv.mkDerivation { + inherit pname version; + + src = fetchzip { + # dropbox link: https://www.dropbox.com/sh/dwyry6xpy5uut07/AABBJ84bjTTSQWzXGG5TOQpfa\ + + url = "https://archive.org/download/decent-sampler-linux-static-download-mirror/Decent_Sampler-${version}-Linux-Static-x86_64.tar.gz"; + hash = "sha256-lTp/mukCwLNyeTcBT68eqa7aD0o11Bylbd93A5VCILU="; + }; + + installPhase = '' + runHook preInstall + + install -Dm755 DecentSampler $out/bin/decent-sampler + + runHook postInstall + ''; + }; + +in + +buildFHSEnv { + inherit pname version; + + targetPkgs = pkgs: [ + alsa-lib + decent-sampler + freetype + nghttp2 + libX11 + ]; + + runScript = "decent-sampler"; + + meta = with lib; { + description = "An audio sample player"; + longDescription = '' + Decent Sampler is an audio sample player. + Allowing you to play sample libraries in the DecentSampler format + (files with extensions: dspreset and dslibrary). + ''; + mainProgram = "decent-sampler"; + homepage = "https://www.decentsamples.com/product/decent-sampler-plugin/"; + # It claims to be free but we currently cannot find any license + # that it is released under. + license = licenses.unfree; + platforms = [ "x86_64-linux" ]; + maintainers = with maintainers; [ adam248 ]; + }; +}