nixpkgs/pkgs/applications/audio/gpodder/default.nix

73 lines
2.3 KiB
Nix
Raw Normal View History

2014-07-20 23:12:05 +04:00
{ pkgs, stdenv, fetchurl, python, buildPythonPackage, pythonPackages, mygpoclient, intltool,
2015-05-19 14:37:44 +03:00
ipodSupport ? true, libgpod, gnome3 }:
2014-07-20 23:12:05 +04:00
with pkgs.lib;
let
inherit (pythonPackages) coverage feedparser minimock sqlite3 dbus pygtk eyeD3;
in buildPythonPackage rec {
2015-08-09 13:05:25 +03:00
name = "gpodder-3.8.4";
2014-07-20 23:12:05 +04:00
src = fetchurl {
url = "http://gpodder.org/src/${name}.tar.gz";
2015-08-09 13:05:25 +03:00
sha256 = "0cjpk92qjsws7ddbnq0r2h7vm5019zlpafgbxwsgllmjzkknj6pn";
2014-07-20 23:12:05 +04:00
};
2014-08-07 19:49:16 +04:00
buildInputs = [
coverage feedparser minimock sqlite3 mygpoclient intltool
2015-05-19 14:37:44 +03:00
gnome3.gnome_themes_standard gnome3.defaultIconTheme
2014-11-17 23:00:03 +03:00
gnome3.gsettings_desktop_schemas
2014-08-07 19:49:16 +04:00
];
2014-07-20 23:12:05 +04:00
2014-11-17 23:00:03 +03:00
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
pythonPath = [ feedparser dbus mygpoclient sqlite3 pygtk eyeD3 ]
2014-07-20 23:12:05 +04:00
++ stdenv.lib.optional ipodSupport libgpod;
postPatch = "sed -ie 's/PYTHONPATH=src/PYTHONPATH=\$(PYTHONPATH):src/' makefile";
checkPhase = "make unittest";
2014-07-21 19:58:27 +04:00
preFixup = ''
2014-07-20 23:12:05 +04:00
wrapProgram $out/bin/gpodder \
2014-08-07 19:49:16 +04:00
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
# The `wrapPythonPrograms` script in the postFixup phase breaks gpodder. The
# easiest way to fix this is to call wrapPythonPrograms and then to clean up
# the wrapped file.
postFixup = ''
wrapPythonPrograms
if test -e $out/nix-support/propagated-build-inputs; then
ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages
fi
createBuildInputsPth build-inputs "$buildInputStrings"
for inputsfile in propagated-build-inputs propagated-native-build-inputs; do
if test -e $out/nix-support/$inputsfile; then
createBuildInputsPth $inputsfile "$(cat $out/nix-support/$inputsfile)"
fi
done
sed -i "$out/bin/..gpodder-wrapped-wrapped" -e '{
/import sys; sys.argv/d
}'
2014-07-20 23:12:05 +04:00
'';
installPhase = "DESTDIR=/ PREFIX=$out make install";
meta = {
description = "A podcatcher written in python";
longDescription = ''
gPodder downloads and manages free audio and video content (podcasts)
for you. Listen directly on your computer or on your mobile devices.
'';
homepage = "http://gpodder.org/";
license = stdenv.lib.licenses.gpl3;
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
maintainers = [ stdenv.lib.maintainers.skeidel ];
};
2014-07-20 23:12:05 +04:00
}