3 , buildPythonApplication
29 buildPythonApplication rec {
32 format = "setuptools";
35 inherit pname version;
36 hash = "sha256-sfQ/iBd1Z+YqnaOg8j32rC2iucdiiK3Tff9NfYFnQyc=";
41 name = "fix-test-hotdoc.patch";
42 url = "https://github.com/hotdoc/hotdoc/commit/d2415a520e960a7b540742a0695b699be9189540.patch";
43 hash = "sha256-9ORZ91c+/oRqEp2EKXjKkz7u8mLnWCq3uPsc3G4NB9E=";
59 propagatedBuildInputs = [
69 setuptools # for pkg_resources
78 # CMake is used to build CMARK, but the build system is still python
79 dontUseCmakeConfigure = true;
81 # Ensure C+GI+GST extensions are built and can be imported
82 pythonImportsCheck = [
83 "hotdoc.extensions.c.c_extension"
84 "hotdoc.extensions.gi.gi_extension"
85 "hotdoc.extensions.gst.gst_extension"
88 # Run the tests by package instead of current dir
89 pytestFlagsArray = [ "--pyargs" "hotdoc" ];
92 # Test does not correctly handle path normalization for test comparison
94 ] ++ lib.optionals stdenv.isDarwin [
95 # Test does not correctly handle absolute /home paths on Darwin (even fake ones)
99 # Hardcode libclang paths
101 substituteInPlace hotdoc/extensions/c/c_extension.py \
102 --replace "shutil.which('llvm-config')" 'True' \
103 --replace "subprocess.check_output(['llvm-config', '--version']).strip().decode()" '"${lib.versions.major llvmPackages.libclang.version}"' \
104 --replace "subprocess.check_output(['llvm-config', '--prefix']).strip().decode()" '"${llvmPackages.libclang.lib}"' \
105 --replace "subprocess.check_output(['llvm-config', '--libdir']).strip().decode()" '"${llvmPackages.libclang.lib}/lib"'
108 # Make pytest run from a temp dir to have it pick up installed package for cmark
117 inherit (gst_all_1) gstreamer gst-plugins-base;
121 description = "The tastiest API documentation system";
122 homepage = "https://hotdoc.github.io/";
123 license = [ licenses.lgpl21Plus ];
124 maintainers = with maintainers; [ lilyinstarlight ];