alot: 0.5.1 to 0.7.0

- added gnupg to checkInputs
- generate manpage (optional)
- move alot.desktop file to $out/share/applications
- disabled tests as they need the network (dependency on twisted)

Thanks to Sarah Brofeldt, Ben Mcginnes for their help (and other) and
to FRidh for the repeated careful reviews.
This commit is contained in:
Matthieu Coudron 2018-03-07 08:57:40 +09:00
parent 97d56e94fa
commit d9292429e7
2 changed files with 49 additions and 16 deletions

View File

@ -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 ];
};
}

View File

@ -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 ];
};