nixpkgs/pkgs/servers/isso/default.nix
Raito Bezarius 1ebed52d62 isso: 0.12.6.2 -> 0.13.0
This uses `buildNpmPackage` now and Node.js 20.
Also, packages the HTML documentation in a new output.

https://isso-comments.de/news/#isso-version-0-13-0-released
2023-05-22 20:42:38 +02:00

70 lines
1.2 KiB
Nix

{ pkgs, nodejs, lib, python3Packages, fetchFromGitHub, nixosTests, fetchNpmDeps, npmHooks }:
with python3Packages;
buildPythonApplication rec {
pname = "isso";
version = "0.13.0";
src = fetchFromGitHub {
owner = "posativ";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-kZNf7Rlb1DZtQe4dK1B283OkzQQcCX+pbvZzfL65gsA=";
};
npmDeps = fetchNpmDeps {
inherit src;
hash = "sha256-RBpuhFI0hdi8bB48Pks9Ac/UdcQ/DJw+WFnNj5f7IYE=";
};
outputs = [
"out"
"doc"
];
propagatedBuildInputs = [
itsdangerous
jinja2
misaka
html5lib
werkzeug
bleach
flask-caching
];
nativeBuildInputs = [
cffi
sphinxHook
sphinx
nodejs
npmHooks.npmConfigHook
];
NODE_PATH = "$npmDeps";
preBuild = ''
ln -s ${npmDeps}/node_modules ./node_modules
export PATH="${npmDeps}/bin:$PATH"
make js
'';
nativeCheckInputs = [
pytest
pytest-cov
];
checkPhase = ''
pytest
'';
passthru.tests = { inherit (nixosTests) isso; };
meta = with lib; {
description = "A commenting server similar to Disqus";
homepage = "https://posativ.org/isso/";
license = licenses.mit;
maintainers = with maintainers; [ fgaz ];
};
}