fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1{
2 lib,
3 stdenv,
4 fetchFromGitLab,
5 fetchpatch,
6 fftw,
7 liblo,
8 libsndfile,
9 makeDesktopItem,
10 portaudio,
11 qmake,
12 qtbase,
13 wrapQtAppsHook,
14}:
15
16stdenv.mkDerivation rec {
17 pname = "samplebrain";
18 version = "0.18.5";
19
20 src = fetchFromGitLab {
21 owner = "then-try-this";
22 repo = "samplebrain";
23 rev = "v${version}_release";
24 hash = "sha256-/pMHmwly5Dar7w/ZawvR3cWQHw385GQv/Wsl1E2w5p4=";
25 };
26
27 patches = [
28 # Fixes build with recent liblo, see https://gitlab.com/then-try-this/samplebrain/-/merge_requests/16
29 (fetchpatch {
30 url = "https://gitlab.com/then-try-this/samplebrain/-/commit/032fd7c03931d1ca2d5c3d5e29901569aa2b2a86.patch";
31 hash = "sha256-aaZJh/vx8fOqrJTuFzQ9+1mXvDQQXLy1k/2SwkMkVk4=";
32 })
33 ];
34
35 nativeBuildInputs = [
36 qmake
37 wrapQtAppsHook
38 ];
39
40 buildInputs = [
41 fftw
42 liblo
43 libsndfile
44 portaudio
45 qtbase
46 ];
47
48 desktopItem = makeDesktopItem {
49 type = "Application";
50 desktopName = pname;
51 name = pname;
52 comment = "A sample masher designed by Aphex Twin";
53 exec = pname;
54 icon = pname;
55 categories = [ "Audio" ];
56 };
57
58 installPhase = ''
59 mkdir -p $out/bin
60 cp samplebrain $out/bin
61 install -m 444 -D desktop/samplebrain.svg $out/share/icons/hicolor/scalable/apps/samplebrain.svg
62 '';
63
64 meta = {
65 description = "Custom sample mashing app";
66 mainProgram = "samplebrain";
67 homepage = "https://thentrythis.org/projects/samplebrain";
68 changelog = "https://gitlab.com/then-try-this/samplebrain/-/releases/v${version}_release";
69 maintainers = with lib.maintainers; [ mitchmindtree ];
70 license = lib.licenses.gpl2;
71 platforms = lib.platforms.linux;
72 };
73}