diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix index 1e59e8f1d65..8958ce45741 100644 --- a/pkgs/development/libraries/gpgme/default.nix +++ b/pkgs/development/libraries/gpgme/default.nix @@ -1,10 +1,18 @@ { stdenv, fetchurl, fetchpatch, libgpgerror, gnupg, pkgconfig, glib, pth, libassuan -, qtbase ? null }: +, file, which +, autoreconfHook +# git can apparently be removed when setting some envvar +, git +, texinfo5 +, qtbase ? null +, withPython ? false, swig2 ? null, python ? null +}: let inherit (stdenv) lib system; in stdenv.mkDerivation rec { - name = "gpgme-1.10.0"; + name = "gpgme-${version}"; + version = "1.10.0"; src = fetchurl { url = "mirror://gnupg/gpgme/${name}.tar.bz2"; @@ -18,11 +26,17 @@ stdenv.mkDerivation rec { [ libgpgerror glib libassuan pth ] ++ lib.optional (qtbase != null) qtbase; - nativeBuildInputs = [ pkgconfig gnupg ]; + nativeBuildInputs = [ file pkgconfig gnupg autoreconfHook git texinfo5 ] + ++ lib.optionals withPython [ python swig2 which ]; + + postPatch ='' + substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file + ''; configureFlags = [ "--enable-fixed-path=${gnupg}/bin" - ]; + "--with-libgpg-error-prefix=${libgpgerror.dev}" + ] ++ lib.optional withPython "--enable-languages=python"; NIX_CFLAGS_COMPILE = # qgpgme uses Q_ASSERT which retains build inputs at runtime unless @@ -45,3 +59,4 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ fuuzetsu primeos ]; }; } + diff --git a/pkgs/development/python-modules/alot/default.nix b/pkgs/development/python-modules/alot/default.nix index 67cd7eafd12..7c704c9dc55 100644 --- a/pkgs/development/python-modules/alot/default.nix +++ b/pkgs/development/python-modules/alot/default.nix @@ -1,17 +1,22 @@ -{ stdenv, buildPythonPackage, fetchFromGitHub, isPy3k -, notmuch, urwid, urwidtrees, twisted, python_magic, configobj, pygpgme, mock, file, gpgme}: +{ stdenv, lib, buildPythonPackage, fetchFromGitHub, isPy3k +, notmuch, urwid, urwidtrees, twisted, python_magic, configobj, pygpgme, mock, file, gpgme +, service-identity, gpg +, gnupg ? null, sphinx, awk ? null, procps ? null, future ? null +, withManpage ? false }: + buildPythonPackage rec { - version = "0.5.1"; pname = "alot"; + version = "0.7"; + outputs = [ "out" ] ++ lib.optional withManpage "man"; disabled = isPy3k; src = fetchFromGitHub { owner = "pazz"; - repo = pname; - rev = "version"; - sha256 = "0ipkhc5wllfq78lg47aiq4qih0yjq8ad9xkrbgc88xk8pk9166i8"; + repo = "alot"; + rev = "${version}"; + sha256 = "1y932smng7qx7ybmqw4qh75b0lv9imfs5ak9fd0qhysij8kpmdhi"; }; postPatch = '' @@ -20,6 +25,8 @@ buildPythonPackage rec { "themes_dir = string(default='$out/share/themes')" ''; + nativeBuildInputs = lib.optional withManpage sphinx; + propagatedBuildInputs = [ notmuch urwid @@ -27,21 +34,32 @@ buildPythonPackage rec { twisted python_magic configobj - pygpgme - mock + service-identity file + gpg ]; - postInstall = '' - mkdir -p $out/share + # some twisted tests need the network (test_env_set... ) + doCheck = false; + postBuild = lib.optionalString withManpage "make -C docs man"; + + checkInputs = [ awk future mock gnupg procps ]; + + postInstall = lib.optionalString withManpage '' + mkdir -p $out/man + cp -r docs/build/man $out/man + '' + + '' + mkdir -p $out/share/applications cp -r extra/themes $out/share - wrapProgram $out/bin/alot \ - --prefix LD_LIBRARY_PATH : '${stdenv.lib.makeLibraryPath [ notmuch file gpgme ]}' + + sed "s,/usr/bin,$out/bin,g" extra/alot.desktop > $out/share/applications/alot.desktop ''; meta = with stdenv.lib; { homepage = https://github.com/pazz/alot; description = "Terminal MUA using notmuch mail"; + license = licenses.gpl3; platforms = platforms.linux; maintainers = with maintainers; [ garbas ]; };