summary refs log tree commit diff
path: root/pkgs/applications/audio/sonata/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/audio/sonata/default.nix')
-rw-r--r--pkgs/applications/audio/sonata/default.nix73
1 files changed, 73 insertions, 0 deletions
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
new file mode 100644
index 00000000000..74ce6a2c15f
--- /dev/null
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -0,0 +1,73 @@
+{ pkgs, stdenv, fetchFromGitHub, pkgconfig, intltool, wrapGAppsHook,
+  python, buildPythonPackage, isPy3k,
+  gnome3, gtk3, gobjectIntrospection,
+  dbus, pygobject3, mpd2 }:
+
+with pkgs.lib;
+
+buildPythonPackage rec {
+  name = "sonata-${version}";
+  version = "1.7b1";
+  namePrefix = "";
+
+  src = fetchFromGitHub {
+    owner = "multani";
+    repo = "sonata";
+    rev = "v${version}";
+    sha256 = "1npbxlrg6k154qybfd250nq2p96kxdsdkj9wwnp93gljnii3g8wh";
+  };
+
+  disabled = !isPy3k;
+
+  buildInputs = [
+    pkgconfig intltool wrapGAppsHook
+    gnome3.gnome_themes_standard gnome3.defaultIconTheme
+    gnome3.gsettings_desktop_schemas
+  ];
+
+  postPatch = ''
+    # Remove "Local MPD" tab which is not suitable for NixOS.
+    sed -i '/localmpd/d' sonata/consts.py
+  '';
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+
+  propagatedBuildInputs = [
+    gobjectIntrospection gtk3 pygobject3
+  ];
+
+  # The optional tagpy dependency (for editing metadata) is not yet
+  # included because it's difficult to build.
+  pythonPath = [ dbus pygobject3 mpd2 ];
+
+  meta = {
+    description = "An elegant client for the Music Player Daemon";
+    longDescription = ''
+      Sonata is an elegant client for the Music Player Daemon.
+
+      Written in Python and using the GTK+ 3 widget set, its features
+      include:
+
+       - Expanded and collapsed views
+       - Automatic remote and local album art
+       - Library browsing by folders, or by genre/artist/album
+       - User-configurable columns
+       - Automatic fetching of lyrics
+       - Playlist and stream support
+       - Support for editing song tags (not in NixOS version)
+       - Drag and drop to copy files
+       - Popup notification
+       - Library and playlist searching, filter as you type
+       - Audioscrobbler (last.fm) 1.2 support
+       - Multiple MPD profiles
+       - Keyboard friendly
+       - Support for multimedia keys
+       - Commandline control
+       - Available in 24 languages
+    '';
+    homepage = "http://www.nongnu.org/sonata/";
+    license = stdenv.lib.licenses.gpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.rvl ];
+  };
+}