summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/Makefile1
-rw-r--r--www/py-nikola/Makefile72
-rw-r--r--www/py-nikola/distinfo3
-rw-r--r--www/py-nikola/files/patch-pyproject.toml20
-rw-r--r--www/py-nikola/pkg-descr2
5 files changed, 98 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile
index 0b9712076b56..75297640015c 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -1851,6 +1851,7 @@
SUBDIR += py-nicegui
SUBDIR += py-nicegui-highcharts
SUBDIR += py-nicegui-nogui
+ SUBDIR += py-nikola
SUBDIR += py-niquests
SUBDIR += py-notebook
SUBDIR += py-onetimepass
diff --git a/www/py-nikola/Makefile b/www/py-nikola/Makefile
new file mode 100644
index 000000000000..16fa95e8bf0e
--- /dev/null
+++ b/www/py-nikola/Makefile
@@ -0,0 +1,72 @@
+PORTNAME= nikola
+DISTVERSION= 8.3.3
+CATEGORIES= www python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= wen@FreeBSD.org
+COMMENT= Modular, fast, simple, static website and blog generator
+WWW= https://getnikola.com/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=60.0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}installer>=0:devel/py-installer@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}blinker>=1.3:devel/py-blinker@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}doit>=0.33.1:devel/py-doit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pygments>=2.4.2:textproc/py-pygments@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pillow>=9.1.0:graphics/py-pillow@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.8.2:devel/py-python-dateutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}docutils>=0.19:textproc/py-docutils@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mako>=1.0.9:textproc/py-mako@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}markdown>=3.0:textproc/py-markdown@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}unidecode>=0.4.16:converters/py-unidecode@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyrss2gen>=1.1:textproc/py-pyrss2gen@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=4.5.2:devel/py-lxml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}natsort>=5.1.0:devel/py-natsort@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}requests>=2.31.0:www/py-requests@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}piexif>=1.0.3:graphics/py-piexif@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}Babel>=2.12.0:devel/py-babel@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}coverage>0:devel/py-coverage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}flake8>=3.7.7:devel/py-flake8@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}freezegun>=0.3.10:devel/py-freezegun@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}feedparser>=6.0.10:textproc/py-feedparser@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pydocstyle>=6.3.0:devel/py-pydocstyle@${PY_FLAVOR}
+
+USES= python shebangfix
+USE_PYTHON= autoplist concurrent pep517
+
+SHEBANG_FILES= docs/sphinx/update-modules.sh \
+ scripts/update-npm-assets.sh \
+ scripts/generate_symlinked_list.sh \
+ scripts/baseline.sh \
+ scripts/capty
+
+OPTIONS_DEFINE= EXTRAS
+OPTIONS_DEFAULT=EXTRAS
+EXTRAS_DESC= Install extras modules
+
+EXTRAS_RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}Jinja2>=3.1.0:devel/py-Jinja2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyphen>=0.9.1:textproc/py-pyphen@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}typogrify>=2.0.4:textproc/py-typogrify@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}phpserialize>=1.3:devel/py-phpserialize@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}notebook>=6.0.0:www/py-notebook@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ipykernel>=6.21.2:devel/py-ipykernel@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ghp-import>=1.0.0:www/py-ghp-import@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}aiohttp>=3.8.6:www/py-aiohttp@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}watchdog>=2.3.0:devel/py-watchdog@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml>=0.15.98:devel/py-ruamel.yaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}toml>=0.9.2:textproc/py-toml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}html5lib>=1.0.1:www/py-html5lib@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}hsluv>=5.0.0:graphics/py-hsluv@${PY_FLAVOR}
+
+.include <bsd.port.pre.mk>
+
+do-test:
+ @(cd ${TEST_WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest)
+
+.include <bsd.port.post.mk>
diff --git a/www/py-nikola/distinfo b/www/py-nikola/distinfo
new file mode 100644
index 000000000000..3d377d512315
--- /dev/null
+++ b/www/py-nikola/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757984614
+SHA256 (nikola-8.3.3.tar.gz) = 636d7d6ffc2ab24f4c2649e8695f8bb5604e309153ea4b60b786facae03ab1c7
+SIZE (nikola-8.3.3.tar.gz) = 4569665
diff --git a/www/py-nikola/files/patch-pyproject.toml b/www/py-nikola/files/patch-pyproject.toml
new file mode 100644
index 000000000000..08f80da7de21
--- /dev/null
+++ b/www/py-nikola/files/patch-pyproject.toml
@@ -0,0 +1,20 @@
+--- pyproject.toml.orig 2025-09-16 01:33:40 UTC
++++ pyproject.toml
+@@ -3,7 +3,7 @@ build-backend = "setuptools.build_meta"
+ build-backend = "setuptools.build_meta"
+
+ [project]
+-name = "Nikola"
++name = "nikola"
+ version = "8.3.3"
+ description = "A modular, fast, simple, static website and blog generator"
+ readme = "README.rst"
+@@ -111,7 +111,7 @@ exclude = ["tests", "tests.*"]
+ "docs/theming.rst",
+ "docs/extending.rst"
+ ]
+-"share/man/man1" = ["docs/man/nikola.1.gz"]
++#"share/man/man1" = ["docs/man/nikola.1.gz"]
+
+ [tool.pydocstyle]
+ add-ignore = ["D412", "D413"]
diff --git a/www/py-nikola/pkg-descr b/www/py-nikola/pkg-descr
new file mode 100644
index 000000000000..cbfffba335bd
--- /dev/null
+++ b/www/py-nikola/pkg-descr
@@ -0,0 +1,2 @@
+Nikola is a python framework for modular, fast, simple, static website
+and blog generator.