From eeeed009504d56682d9d41fb76baa42a0f8dc12c Mon Sep 17 00:00:00 2001 From: Sven Keidel Date: Sun, 20 Jul 2014 21:12:05 +0200 Subject: [PATCH 1/3] added gpodder package --- pkgs/applications/audio/gpodder/default.nix | 32 +++++++++++++++++++ .../python-modules/mygpoclient/default.nix | 14 ++++++++ pkgs/top-level/all-packages.nix | 4 +++ pkgs/top-level/python-packages.nix | 13 ++++++++ 4 files changed, 63 insertions(+) create mode 100644 pkgs/applications/audio/gpodder/default.nix create mode 100644 pkgs/development/python-modules/mygpoclient/default.nix diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix new file mode 100644 index 00000000000..fb90fe622a9 --- /dev/null +++ b/pkgs/applications/audio/gpodder/default.nix @@ -0,0 +1,32 @@ +{ pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool, + ipodSupport ? true, libgpod, gpodderHome ? "", gpodderDownloadDir ? "" }: + +with pkgs.lib; + +let + inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3; + +in buildPythonPackage rec { + name = "gpodder-3.7.0"; + + src = fetchurl { + url = "http://gpodder.org/src/${name}.tar.gz"; + sha256 = "fa90ef4bdd3fd9eef95404f7f43f70912ae3ab4f8d24078484a2f3e11b14dc47"; + }; + + buildInputs = [ coverage feedparser minimock sqlite3 mygpoclient intltool ]; + + propagatedBuildInputs = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ] + ++ stdenv.lib.optional ipodSupport libgpod; + + postPatch = "sed -ie 's/PYTHONPATH=src/PYTHONPATH=\$(PYTHONPATH):src/' makefile"; + + checkPhase = "make unittest"; + + installPhase = '' + DESTDIR=/ PREFIX=$out make install + wrapProgram $out/bin/gpodder \ + ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \ + ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} + ''; +} diff --git a/pkgs/development/python-modules/mygpoclient/default.nix b/pkgs/development/python-modules/mygpoclient/default.nix new file mode 100644 index 00000000000..4b40a830c1b --- /dev/null +++ b/pkgs/development/python-modules/mygpoclient/default.nix @@ -0,0 +1,14 @@ +{ stdenv, fetchurl, python, buildPythonPackage, pythonPackages }: + +buildPythonPackage rec { + name = "mygpoclient-1.7"; + + src = fetchurl { + url = "https://thp.io/2010/mygpoclient/${name}.tar.gz"; + sha256 = "6a0b7b1fe2b046875456e14eda3e42430e493bf2251a64481cf4fd1a1e21a80e"; + }; + + buildInputs = [ pythonPackages.nose pythonPackages.minimock ]; + + checkPhase = "make test"; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 469186022c9..d96695c8c60 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1165,6 +1165,8 @@ let gource = callPackage ../applications/version-management/gource {}; + gpodder = callPackage ../applications/audio/gpodder { }; + gptfdisk = callPackage ../tools/system/gptfdisk { }; grafana = callPackage ../development/tools/misc/grafana { }; @@ -5737,6 +5739,8 @@ let muparser = callPackage ../development/libraries/muparser { }; + mygpoclient = callPackage ../development/python-modules/mygpoclient { }; + mygui = callPackage ../development/libraries/mygui {}; myguiSvn = callPackage ../development/libraries/mygui/svn.nix {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fccad5c81de..90c2ef61c31 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4305,6 +4305,19 @@ rec { }; }; + minimock = buildPythonPackage rec { + version = "1.2.8"; + name = "minimock-${version}"; + + src = fetchurl { + url = "https://bitbucket.org/jab/minimock/get/${version}.zip"; + sha256 = "c88fa8a7120623f23990a7f086a9657f6ced09025a55e3be8649a30b4945441a"; + }; + + buildInputs = [ nose ]; + + checkPhase = "./test"; + }; mitmproxy = buildPythonPackage rec { baseName = "mitmproxy"; From 1a484c8ba203c70fec3a0306e36e86808b385e5e Mon Sep 17 00:00:00 2001 From: Sven Keidel Date: Mon, 21 Jul 2014 17:58:27 +0200 Subject: [PATCH 2/3] moved wrapper declaration to preFixup --- pkgs/applications/audio/gpodder/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index fb90fe622a9..5f5e551dcea 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -23,8 +23,9 @@ in buildPythonPackage rec { checkPhase = "make unittest"; - installPhase = '' - DESTDIR=/ PREFIX=$out make install + makeFlags = [ "DESTDIR=/" "PREFIX=$out" ]; + + preFixup = '' wrapProgram $out/bin/gpodder \ ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \ ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} From 75b3c9eb95e616ec39794925e8e19409d9dcbdd0 Mon Sep 17 00:00:00 2001 From: Sven Keidel Date: Mon, 21 Jul 2014 18:05:08 +0200 Subject: [PATCH 3/3] Use make install instead of setup.py directly. Using setup.py results in the following error message: Missing file: share/applications/gpodder.desktop If you want to install, use "make install" instead of using setup.py directly. See the README file for more information. --- pkgs/applications/audio/gpodder/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index 5f5e551dcea..19dacf51e5f 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -23,11 +23,12 @@ in buildPythonPackage rec { checkPhase = "make unittest"; - makeFlags = [ "DESTDIR=/" "PREFIX=$out" ]; - preFixup = '' wrapProgram $out/bin/gpodder \ ${optionalString (gpodderHome != "") "--set GPODDER_HOME ${gpodderHome}"} \ ${optionalString (gpodderDownloadDir != "") "--set GPODDER_DOWNLOAD_DIR ${gpodderDownloadDir}"} ''; + + installPhase = "DESTDIR=/ PREFIX=$out make install"; + }