f34ce41345
GitOrigin-RevId: b73c2221a46c13557b1b3be9c2070cc42cf01eb3
74 lines
1.7 KiB
Nix
74 lines
1.7 KiB
Nix
{
|
|
lib,
|
|
fetchPypi,
|
|
nixosTests,
|
|
python3,
|
|
}:
|
|
|
|
python3.pkgs.buildPythonApplication rec {
|
|
version = "0.5.0b3.dev85";
|
|
pname = "pyload-ng";
|
|
pyproject = true;
|
|
|
|
src = fetchPypi {
|
|
inherit version;
|
|
# The uploaded tarball uses an underscore in recent releases
|
|
pname = "pyload_ng";
|
|
hash = "sha256-KLpfh53JKqe0kZLcQ1C4fXFFYeO5pPhia9fRxWsbIHY=";
|
|
};
|
|
|
|
patches = [
|
|
# Makes it possible to change the default username/password in the module
|
|
./declarative-default-user.patch
|
|
# Makes it possible to change the configuration through environment variables
|
|
# in the NixOS module (aimed mostly at listen address/port)
|
|
./declarative-env-config.patch
|
|
];
|
|
|
|
postPatch = ''
|
|
# relax version bounds
|
|
sed -i -E 's/([A-z0-9]*)~=[^;]*(.*)/\1\2/' setup.cfg
|
|
'';
|
|
|
|
dependencies =
|
|
with python3.pkgs;
|
|
[
|
|
bitmath
|
|
certifi
|
|
cheroot
|
|
cryptography
|
|
filetype
|
|
flask
|
|
flask-babel
|
|
flask-caching
|
|
flask-compress
|
|
flask-session
|
|
flask-themes2
|
|
pycurl
|
|
semver
|
|
setuptools
|
|
]
|
|
++ (if pythonOlder "3.12" then [ js2py ] else [ dukpy ]);
|
|
|
|
optional-dependencies = {
|
|
plugins = with python3.pkgs; [
|
|
beautifulsoup4 # for some plugins
|
|
colorlog # colorful console logging
|
|
pillow # for some CAPTCHA plugin
|
|
send2trash # send some files to trash instead of deleting them
|
|
slixmpp # XMPP plugin
|
|
];
|
|
};
|
|
|
|
passthru.tests = {
|
|
inherit (nixosTests) pyload;
|
|
};
|
|
|
|
meta = {
|
|
description = "Free and open-source download manager with support for 1-click-hosting sites";
|
|
homepage = "https://github.com/pyload/pyload";
|
|
license = lib.licenses.agpl3Plus;
|
|
maintainers = with lib.maintainers; [ ruby0b ];
|
|
mainProgram = "pyload";
|
|
};
|
|
}
|