nixpkgs/pkgs/applications/misc/buku/default.nix

82 lines
1.9 KiB
Nix
Raw Normal View History

{ stdenv, python3, fetchFromGitHub }:
2016-03-26 21:27:36 +01:00
with python3.pkgs; buildPythonApplication rec {
2020-12-30 03:49:57 +01:00
version = "4.5";
pname = "buku";
2016-03-26 21:27:36 +01:00
src = fetchFromGitHub {
owner = "jarun";
repo = "buku";
2016-09-26 03:16:58 +02:00
rev = "v${version}";
2020-12-30 03:49:57 +01:00
sha256 = "1lcq5fk8d5j2kfhn9m5l2hk46v7nj4vfa22m1psz35c9zpw4px8q";
};
checkInputs = [
pytestcov
hypothesis
pytest
2017-09-13 18:29:34 +02:00
pylint
flake8
2018-08-14 19:37:14 +02:00
pyyaml
mypy-extensions
];
2017-04-08 00:16:48 +02:00
propagatedBuildInputs = [
2016-10-21 08:00:18 +02:00
cryptography
beautifulsoup4
requests
2017-04-08 00:16:48 +02:00
urllib3
2018-08-14 19:37:14 +02:00
flask
flask-admin
2018-08-14 19:37:14 +02:00
flask-api
flask-bootstrap
flask-paginate
flask-reverse-proxy-fix
2018-08-14 19:37:14 +02:00
flask_wtf
arrow
werkzeug
click
2019-01-28 21:30:14 +01:00
html5lib
vcrpy
2020-06-23 21:54:44 +02:00
toml
2016-09-26 03:16:58 +02:00
];
2016-03-26 21:27:36 +01:00
2019-01-28 21:30:14 +01:00
postPatch = ''
# Jailbreak problematic dependencies
sed -i \
-e "s,'PyYAML.*','PyYAML',g" \
setup.py
'';
preCheck = ''
# Fixes two tests for wrong encoding
export PYTHONIOENCODING=utf-8
# Disables a test which requires internet
substituteInPlace tests/test_bukuDb.py \
--replace "@pytest.mark.slowtest" "@unittest.skip('skipping')" \
--replace "self.assertEqual(shorturl, 'http://tny.im/yt')" "" \
--replace "self.assertEqual(url, 'https://www.google.com')" ""
substituteInPlace setup.py \
--replace mypy-extensions==0.4.1 mypy-extensions>=0.4.1
'';
2016-03-26 21:27:36 +01:00
2018-08-14 19:37:14 +02:00
postInstall = ''
2016-03-26 21:27:36 +01:00
make install PREFIX=$out
mkdir -p $out/share/zsh/site-functions $out/share/bash-completion/completions $out/share/fish/vendor_completions.d
cp auto-completion/zsh/* $out/share/zsh/site-functions
cp auto-completion/bash/* $out/share/bash-completion/completions
cp auto-completion/fish/* $out/share/fish/vendor_completions.d
'';
2016-03-26 21:27:36 +01:00
meta = with stdenv.lib; {
description = "Private cmdline bookmark manager";
homepage = "https://github.com/jarun/Buku";
2016-03-26 21:27:36 +01:00
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ matthiasbeyer infinisil ];
2016-03-26 21:27:36 +01:00
};
}