diff --git a/pkgs/applications/audio/gtklick/default.nix b/pkgs/applications/audio/gtklick/default.nix new file mode 100644 index 000000000000..b11e1ac0fa79 --- /dev/null +++ b/pkgs/applications/audio/gtklick/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, pythonPackages, gettext, klick}: + +pythonPackages.buildPythonPackage rec { + name = "gtklick-${version}"; + namePrefix = ""; + version = "0.6.4"; + + src = fetchurl { + url = "http://das.nasophon.de/download/${name}.tar.gz"; + sha256 = "7799d884126ccc818678aed79d58057f8cf3528e9f1be771c3fa5b694d9d0137"; + }; + + pythonPath = with pythonPackages; [ + pyliblo + pyGtkGlade + ]; + + buildInputs = [ gettext ]; + + propagatedBuildInputs = [ klick ]; + + # wrapPythonPrograms breaks gtklick in the postFixup phase. + # To fix it, apply wrapPythonPrograms and then clean up the wrapped file. + postFixup = '' + wrapPythonPrograms + + sed -i "/import sys; sys.argv\[0\] = 'gtklick'/d" $out/bin/.gtklick-wrapped + ''; + + meta = { + homepage = "http://das.nasophon.de/gtklick/"; + description = "Simple metronome with an easy-to-use GTK interface"; + license = stdenv.lib.licenses.gpl2Plus; + }; +} diff --git a/pkgs/applications/audio/klick/default.nix b/pkgs/applications/audio/klick/default.nix new file mode 100644 index 000000000000..20ac0f1aba66 --- /dev/null +++ b/pkgs/applications/audio/klick/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, scons, pkgconfig +, libsamplerate, libsndfile, liblo, libjack2, boost }: + +stdenv.mkDerivation rec { + name = "klick-${version}"; + version = "0.12.2"; + + src = fetchurl { + url = "http://das.nasophon.de/download/${name}.tar.gz"; + sha256 = "1289533c0849b1b66463bf27f7ce5f71736b655cfb7672ef884c7e6eb957ac42"; + }; + + buildInputs = [ scons pkgconfig libsamplerate libsndfile liblo libjack2 boost ]; + + buildPhase = '' + mkdir -p $out + scons PREFIX=$out + ''; + + installPhase = "scons install"; + + meta = { + homepage = "http://das.nasophon.de/klick/"; + description = "Advanced command-line metronome for JACK"; + license = stdenv.lib.licenses.gpl2Plus; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9474f0556e9d..274233f97b98 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1789,6 +1789,8 @@ let gtkdatabox = callPackage ../development/libraries/gtkdatabox {}; + gtklick = callPackage ../applications/audio/gtklick {}; + gtdialog = callPackage ../development/libraries/gtdialog {}; gtkgnutella = callPackage ../tools/networking/p2p/gtk-gnutella { }; @@ -2031,6 +2033,8 @@ let kismet = callPackage ../applications/networking/sniffers/kismet { }; + klick = callPackage ../applications/audio/klick { }; + knockknock = callPackage ../tools/security/knockknock { }; kpcli = callPackage ../tools/security/kpcli { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7818d8e9d515..474ea6a8a05f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15944,6 +15944,25 @@ in modules // { }; }); + pyliblo = buildPythonPackage rec { + name = "pyliblo-${version}"; + version = "0.9.2"; + + disabled = isPyPy; + + src = pkgs.fetchurl { + url = "http://das.nasophon.de/download/${name}.tar.gz"; + sha256 = "382ee7360aa00aeebf1b955eef65f8491366657a626254574c647521b36e0eb0"; + }; + + propagatedBuildInputs = with self ; [ pkgs.liblo ]; + + meta = { + homepage = http://das.nasophon.de/pyliblo/; + description = "Python wrapper for the liblo OSC library"; + license = licenses.lgpl21; + }; + }; pymacs = buildPythonPackage rec { version = "0.25";