nixpkgs/pkgs/applications/misc/khal/default.nix
Guillaume Girol 33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00

105 lines
2.2 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, glibcLocales
, installShellFiles
, python3
}:
python3.pkgs.buildPythonApplication rec {
pname = "khal";
version = "0.10.5";
src = fetchFromGitHub {
owner = "pimutils";
repo = pname;
rev = "v${version}";
hash = "sha256-FneJmoAOb7WjSgluCwlspf27IU3MsQZFKryL9OSSsUw=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeBuildInputs = [
glibcLocales
installShellFiles
] ++ (with python3.pkgs; [
setuptools-scm
sphinx
sphinxcontrib_newsfeed
]);
propagatedBuildInputs = with python3.pkgs;[
atomicwrites
click
click-log
configobj
freezegun
icalendar
lxml
pkginfo
pkgs.vdirsyncer
python-dateutil
pytz
pyxdg
requests-toolbelt
tzlocal
urwid
];
nativeCheckInputs = with python3.pkgs;[
freezegun
hypothesis
packaging
pytestCheckHook
vdirsyncer
];
patches = [
# Tests working with latest pytz version, https://github.com/pimutils/khal/pull/1183
(fetchpatch {
name = "support-later-pytz.patch";
url = "https://github.com/pimutils/khal/commit/53eb8a7426d5c09478c78d809c4df4391438e246.patch";
sha256 = "sha256-drGtvJlQ3qFUdeukRWCFycPSZGWG/FSRqnbwJzFKITc=";
excludes = [
"CHANGELOG.rst"
];
})
];
postInstall = ''
# shell completions
installShellCompletion --cmd khal \
--bash <(_KHAL_COMPLETE=bash_source $out/bin/khal) \
--zsh <(_KHAL_COMPLETE=zsh_source $out/bin/khal) \
--fish <(_KHAL_COMPLETE=fish_source $out/bin/khal)
# man page
PATH="${python3.withPackages (ps: with ps; [ sphinx sphinxcontrib_newsfeed ])}/bin:$PATH" \
make -C doc man
installManPage doc/build/man/khal.1
# .desktop file
install -Dm755 misc/khal.desktop -t $out/share/applications
'';
doCheck = !stdenv.isAarch64;
LC_ALL = "en_US.UTF-8";
disabledTests = [
# timing based
"test_etag"
"test_bogota"
"test_event_no_dst"
];
meta = with lib; {
description = "CLI calendar application";
homepage = "http://lostpackets.de/khal/";
license = licenses.mit;
maintainers = with maintainers; [ gebner ];
broken = stdenv.isDarwin;
};
}