diff options
author | Aluísio Augusto Silva Gonçalves <aluisio@aasg.name> | 2019-08-18 13:37:45 -0300 |
---|---|---|
committer | Aluísio Augusto Silva Gonçalves <aluisio@aasg.name> | 2020-12-02 17:44:04 -0300 |
commit | b0d6df575c32f8cebd352c342657e1928648bdf4 (patch) | |
tree | 124eec0f1d0be6f6382cec275695390e5d499d8b /pkgs/applications/networking/dyndns | |
parent | 799cfd954519843dccfd656a5732200e62846168 (diff) |
dyndnsc: init at 0.5.1
Diffstat (limited to 'pkgs/applications/networking/dyndns')
-rw-r--r-- | pkgs/applications/networking/dyndns/dyndnsc/default.nix | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/applications/networking/dyndns/dyndnsc/default.nix b/pkgs/applications/networking/dyndns/dyndnsc/default.nix new file mode 100644 index 0000000000000..65d4630574162 --- /dev/null +++ b/pkgs/applications/networking/dyndns/dyndnsc/default.nix @@ -0,0 +1,59 @@ +{ stdenv, lib, python3Packages }: + +python3Packages.buildPythonApplication rec { + pname = "dyndnsc"; + version = "0.5.1"; + + src = python3Packages.fetchPypi { + inherit pname version; + hash = "sha256-Sy6U0XhIQ9mPmznmWKqoyqE34vaE84fwlivouaF7Dd0="; + }; + + postPatch = '' + substituteInPlace setup.py --replace "bottle==" "bottle>=" + ''; + + nativeBuildInputs = with python3Packages; [ pytestrunner ]; + propagatedBuildInputs = with python3Packages; [ + daemonocle + dnspython + netifaces + requests + setuptools + ]; + checkInputs = with python3Packages; [ bottle pytestCheckHook ]; + + disabledTests = [ + # dnswanip connects to an external server to discover the + # machine's IP address. + "dnswanip" + ] ++ lib.optionals stdenv.isDarwin [ + # The tests that spawn a server using Bottle cannot be run on + # macOS or Windows as the default multiprocessing start method + # on those platforms is 'spawn', which requires the code to be + # run to be picklable, which this code isn't. + # Additionaly, other start methods are unsafe and prone to failure + # on macOS; see https://bugs.python.org/issue33725. + "BottleServer" + ]; + # Allow tests that bind or connect to localhost on macOS. + __darwinAllowLocalNetworking = true; + + meta = with lib; { + description = "Dynamic DNS update client with support for multiple protocols"; + longDescription = '' + Dyndnsc is a command line client for sending updates to Dynamic + DNS (DDNS, DynDNS) services. It supports multiple protocols and + services, and it has native support for IPv6. The configuration + file allows using foreign, but compatible services. Dyndnsc + ships many different IP detection mechanisms, support for + configuring multiple services in one place and it has a daemon + mode for running unattended. It has a plugin system to provide + external notification services. + ''; + homepage = "https://github.com/infothrill/python-dyndnsc"; + license = licenses.mit; + maintainers = with maintainers; [ AluisioASG ]; + platforms = platforms.unix; + }; +} |