138 lines
3 KiB
Nix
138 lines
3 KiB
Nix
|
{ lib
|
||
|
, stdenv
|
||
|
, fetchFromGitHub
|
||
|
, avahi
|
||
|
, bluez
|
||
|
, boost
|
||
|
, curl
|
||
|
, eigen
|
||
|
, faust
|
||
|
, fftw
|
||
|
, gettext
|
||
|
, glib
|
||
|
, glib-networking
|
||
|
, glibmm
|
||
|
, adwaita-icon-theme
|
||
|
, gsettings-desktop-schemas
|
||
|
, gtk3
|
||
|
, gtkmm3
|
||
|
, hicolor-icon-theme
|
||
|
, intltool
|
||
|
, ladspaH
|
||
|
, libjack2
|
||
|
, libsndfile
|
||
|
, lilv
|
||
|
, lrdf
|
||
|
, lv2
|
||
|
, pkg-config
|
||
|
, python3
|
||
|
, sassc
|
||
|
, serd
|
||
|
, sord
|
||
|
, sratom
|
||
|
, wafHook
|
||
|
, wrapGAppsHook3
|
||
|
, zita-convolver
|
||
|
, zita-resampler
|
||
|
, optimizationSupport ? false # Enable support for native CPU extensions
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
inherit (lib) optional;
|
||
|
in
|
||
|
|
||
|
stdenv.mkDerivation (finalAttrs: {
|
||
|
pname = "guitarix";
|
||
|
version = "0.46.0";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "brummer10";
|
||
|
repo = "guitarix";
|
||
|
rev = "V${finalAttrs.version}";
|
||
|
fetchSubmodules = true;
|
||
|
hash = "sha256-AftC6fQEDzG/3C/83YbK/++bRgP7vPD0E2X6KEWpowc=";
|
||
|
};
|
||
|
|
||
|
sourceRoot = "${finalAttrs.src.name}/trunk";
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
gettext
|
||
|
hicolor-icon-theme
|
||
|
intltool
|
||
|
pkg-config
|
||
|
python3
|
||
|
wafHook
|
||
|
wrapGAppsHook3
|
||
|
];
|
||
|
|
||
|
buildInputs = [
|
||
|
avahi
|
||
|
bluez
|
||
|
boost
|
||
|
curl
|
||
|
eigen
|
||
|
faust
|
||
|
fftw
|
||
|
glib
|
||
|
glib-networking.out
|
||
|
glibmm
|
||
|
adwaita-icon-theme
|
||
|
gsettings-desktop-schemas
|
||
|
gtk3
|
||
|
gtkmm3
|
||
|
ladspaH
|
||
|
libjack2
|
||
|
libsndfile
|
||
|
lilv
|
||
|
lrdf
|
||
|
lv2
|
||
|
sassc
|
||
|
serd
|
||
|
sord
|
||
|
sratom
|
||
|
zita-convolver
|
||
|
zita-resampler
|
||
|
];
|
||
|
|
||
|
wafConfigureFlags = [
|
||
|
"--no-font-cache-update"
|
||
|
"--shared-lib"
|
||
|
"--no-desktop-update"
|
||
|
"--enable-nls"
|
||
|
"--install-roboto-font"
|
||
|
] ++ optional optimizationSupport "--optimization";
|
||
|
|
||
|
env.NIX_CFLAGS_COMPILE = toString [ "-fpermissive" ];
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "Virtual guitar amplifier for Linux running with JACK";
|
||
|
mainProgram = "guitarix";
|
||
|
longDescription = ''
|
||
|
guitarix is a virtual guitar amplifier for Linux running with
|
||
|
JACK (Jack Audio Connection Kit). It is free as in speech and
|
||
|
free as in beer. Its free sourcecode allows to build it for
|
||
|
other UNIX-like systems also, namely for BSD and for MacOSX.
|
||
|
|
||
|
It takes the signal from your guitar as any real amp would do:
|
||
|
as a mono-signal from your sound card. Your tone is processed by
|
||
|
a main amp and a rack-section. Both can be routed separately and
|
||
|
deliver a processed stereo-signal via JACK. You may fill the
|
||
|
rack with effects from more than 25 built-in modules spanning
|
||
|
from a simple noise-gate to brain-slashing modulation-fx like
|
||
|
flanger, phaser or auto-wah. Your signal is processed with
|
||
|
minimum latency. On any properly set-up Linux-system you do not
|
||
|
need to wait for more than 10 milli-seconds for your playing to
|
||
|
be delivered, processed by guitarix.
|
||
|
|
||
|
guitarix offers the range of sounds you would expect from a
|
||
|
full-featured universal guitar-amp. You can get crisp
|
||
|
clean-sounds, nice overdrive, fat distortion and a diversity of
|
||
|
crazy sounds never heard before.
|
||
|
'';
|
||
|
homepage = "https://github.com/brummer10/guitarix";
|
||
|
license = licenses.gpl3Plus;
|
||
|
maintainers = with maintainers; [ astsmtl lord-valen ];
|
||
|
platforms = platforms.linux;
|
||
|
};
|
||
|
})
|