Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F151957053
D55877.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
13 KB
Referenced Files
None
Subscribers
None
D55877.diff
View Options
diff --git a/www/Makefile b/www/Makefile
--- a/www/Makefile
+++ b/www/Makefile
@@ -2741,6 +2741,7 @@
SUBDIR += yuicompressor
SUBDIR += zenphoto
SUBDIR += zerowait-httpd
+ SUBDIR += zine-ssg
SUBDIR += zgrab2
SUBDIR += zola
diff --git a/www/zine-ssg/Makefile b/www/zine-ssg/Makefile
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/Makefile
@@ -0,0 +1,44 @@
+PORTNAME= zine-ssg
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.11.2
+CATEGORIES= www
+
+MAINTAINER= dave@freedave.net
+COMMENT= Fast and Flexible Static Site Generator
+WWW= https://zine-ssg.io
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+# This is needed to run `make test`.
+TEST_DEPENDS= git:devel/git
+
+USES= inotify zig
+
+USE_GITHUB= yes
+GH_ACCOUNT= kristoff-it
+GH_PROJECT= zine
+
+CONFLICTS_INSTALL= zine
+
+PLIST_FILES= bin/zine
+
+.include <bsd.port.pre.mk>
+
+post-patch:
+.if defined(INOTIFY_PORT)
+ ${REINPLACE_CMD} -e 's|%INOTIFY_GUARD%||' ${WRKSRC}/build.zig
+.else
+ # comment out of builds for FreeBSD15+
+ ${REINPLACE_CMD} -e 's|%INOTIFY_GUARD%|// |' ${WRKSRC}/build.zig
+.endif
+
+# zine needs to test with a git repo which the ports build system goes out of
+# its way to *not* use. So step 1 is to create the git repo... its just for the test
+# Also we have to remove the -D... and --release... flags. zine is using "snapshot"
+# testing and changing args breaks that.
+do-test:
+ cd ${BUILD_WRKSRC} && ${RM} -r .git && git init . && git add tests && git commit -m 'tests'
+ cd ${BUILD_WRKSRC} && ${DO_MAKE_BUILD:N-D*:N--release=*:S/build/build test --summary all/}
+
+.include <bsd.port.post.mk>
diff --git a/www/zine-ssg/Makefile.zig b/www/zine-ssg/Makefile.zig
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/Makefile.zig
@@ -0,0 +1,24 @@
+# had to advance afl_kit for zig 0.15.2
+ZIG_TUPLE= AFLplusplus:github.com/AFLplusplus/AFLplusplus/archive/v4.21c.tar.gz:N-V-__8AAKE4uAAJZgEcPdaXnWqoj-IwYf3G2h9YSm-x92gg \
+ AFLplusplus:github.com/allyourcodebase/AFLplusplus/archive/7e65eb4262688a120bf830d145060aac0.tar.gz:AFLplusplus-4.21.0-aA1y4dZxAAAhqDy_JoRw3zwNSg8MenEGP7uJI_xNcYuV \
+ afl_kit:github.com/kristoff-it/zig-afl-kit/archive/395c39d5b33d999f6871a90bd731ec112.tar.gz:afl_kit-0.1.0-NdJ3ch8eAABQkd1wk2W-JDCvvX5Jmnu3uJulS3lPepG7 \
+ cbor:github.com/neurocyte/cbor/archive/7d2eeb68c8a2fb3f4d6baad6cc04c521b.tar.gz:cbor-1.0.0-RcQE_AswAQAPlqBCZXYQf9DZXn-0Ubt8Mk03ZcJWcsAG \
+ flow_syntax:github.com/neurocyte/flow-syntax/archive/6992eddeb9a4a013886db0cbca2156686.tar.gz:flow_syntax-0.6.0-X8jOoWgVAQBBTuGGE9r1ECSDFzi8z6_XNCW1oF5B4fL8 \
+ frameworks:github.com/hexops/xcode-frameworks/archive/8a1cfb373587ea4c9bb1468b7c986462d.tar.gz:N-V-__8AALShqgXkvqYU6f__FrA22SMWmi2TXCJjNTO1m8XJ \
+ gfm:github.com/kristoff-it/cmark-gfm/archive/b96c27a5152b9124d657dee7fb1186d0a.tar.gz:cmark_gfm-0.1.0-uQgTK6WZFwCG9y7_Z0IkCINtmMTwvEZTyVh_6nsaMVPq \
+ known_folders:github.com/ziglibs/known-folders/archive/aa24df42183ad415d10bc0a33e6238c43.tar.gz:known_folders-0.0.0-Fy-PJtLDAADGDOwYwMkVydMSTp_aN-nfjCZw6qPQ2ECL \
+ known_folders:github.com/ziglibs/known-folders/archive/ab5cf5feb936fa3b72c95d3ad0c0c6779.tar.gz:known_folders-0.0.0-Fy-PJtTTAADUOhGKM0sxzG4eMkNQxRvx9e5dfHVyaeA3 \
+ lsp_kit:github.com/kristoff-it/lsp-kit/archive/01c14e592d25dc57dfebba27b8bd2b4aa.tar.gz:lsp_kit-0.1.0-bi_PL5YyCgA2QFEza6llr2Uy08QUQsWBu2wKvtr8tbLx \
+ lsp_kit:github.com/zigtools/lsp-kit/archive/4835b9d3d3cf732fe1830189d81f331c6.tar.gz:lsp_kit-0.1.0-bi_PL18tCgAMyrZ0tgn_0PXnGEvxGWeNkkRygfe9pX9u \
+ lsp_kit:github.com/zigtools/lsp-kit/archive/c46ac866dda11ab58e4ba71ed0d8ba21f.tar.gz:lsp_kit-0.1.0-bi_PL98yCgBfW3T4iLkfV5VOXc__pOpOsQsX1tRmpqAG \
+ lsp_kit:github.com/zigtools/lsp-kit/archive/fe98e895ca3bd1b39965ab30f0f252f7b.tar.gz:lsp_kit-0.1.0-bi_PLzAyCgClDh8_M0U9Q50ysdsQBuRuBTZfwg6rZPd6 \
+ mime:github.com/kristoff-it/mime/archive/a2ed0cba3b1463217168034ffed8c1604.tar.gz:mime-3.0.0-zwmL--0gAAByELrj57sRm2EFBRzjKLFrMgHQcs7sFZev \
+ scripty:github.com/kristoff-it/scripty/archive/50dbab8945440089384f26ec165d870c2.tar.gz:scripty-0.1.0-LKK5O7v4AADWWXuFcTJky_5sY12tmw3kRi3k2wkpfxAX \
+ superhtml:github.com/kristoff-it/superhtml/archive/8cb16babb0c66b6512d6aeb4cbc37ed90.tar.gz:superhtml-0.4.0-Y7MdPJTWDQBJJoaCLlBYLGrjhAnmWAtVhVGelveq3O-s \
+ supermd:github.com/kristoff-it/supermd/archive/530ac6c337c9a9511560fba3181db10d1.tar.gz:supermd-0.1.0-3Mco3GyYWACe4ptEKIrZUhizWGwXhbmtKtjNopG8f76y \
+ tracy:github.com/kristoff-it/tracy/archive/67d2d89e351048c76fc6d161e0ac09d8a.tar.gz:tracy-0.0.0-4Xw-1pwwAABTfMgoDP1unCbZDZhJEfict7XCBGF6IdIn \
+ tree_sitter:github.com/neurocyte/tree-sitter/releases/download/master-6e2827ee231e220467bf04d2a2746faff5cb204a/source.tar.gz:tree_sitter-0.22.4-150-g7e3f5726-z0LhyGeG1y67PeOltaplVkxRNT2jMMexQhbUlrh0vdxM \
+ wuffs:github.com/allyourcodebase/wuffs/archive/5822dc06c75b30d53082debf68c90193c.tar.gz:wuffs-0.4.0-alpha.9+3837.20240914-3CHJgcMFAACyPvxsC7b48pJv9dPkPa4pSrB2VFbCXTfK \
+ wuffs:github.com/google/wuffs-mirror-release-c/archive/90e4d81a6a8b7b601e8e568da32a105d7f7705e5.tar.gz:N-V-__8AANEmUgA6aZZZKbfNMv6DSs5In7CDFU6nInu_Y6aY \
+ zeit:github.com/sam701/zeit/archive/46583c4695bade6841a558c0ce5648426.tar.gz:zeit-0.6.0-5I6bk0J9AgCVa0nnyL0lNY9Xa9F68hHq-ZarhuXNV-Jb \
+ ziggy:github.com/kristoff-it/ziggy/archive/4353b20ef2ac750e35c6d68e4eb2a07c2.tar.gz:ziggy-0.1.0-kTg8v5pABgDztlefWHceH-Sh8tVveguFC61QkmLkIRaA
diff --git a/www/zine-ssg/distinfo b/www/zine-ssg/distinfo
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/distinfo
@@ -0,0 +1,49 @@
+TIMESTAMP = 1773684398
+SHA256 (zig/v4.21c.tar.gz) = 11f7c77d37cff6e7f65ac7cc55bab7901e0c6208e845a38764394d04ed567b30
+SIZE (zig/v4.21c.tar.gz) = 3004235
+SHA256 (zig/7e65eb4262688a120bf830d145060aac0.tar.gz) = ed670033d925563091323622e465665540abedce999552b7bf04ffd0e2bc050f
+SIZE (zig/7e65eb4262688a120bf830d145060aac0.tar.gz) = 7271
+SHA256 (zig/395c39d5b33d999f6871a90bd731ec112.tar.gz) = 573ce3455468311df43ffa573d6049593d558076b74e8203327eabeca10fca1c
+SIZE (zig/395c39d5b33d999f6871a90bd731ec112.tar.gz) = 6165
+SHA256 (zig/7d2eeb68c8a2fb3f4d6baad6cc04c521b.tar.gz) = 89b234098ebefc8472d8b1e7eda21938c11bc6577f83d58dd62ec941ae68fcd7
+SIZE (zig/7d2eeb68c8a2fb3f4d6baad6cc04c521b.tar.gz) = 13775
+SHA256 (zig/6992eddeb9a4a013886db0cbca2156686.tar.gz) = 442bb2c07ba6cd281a8f5c4863c1211a64a88b44ec928c2d6c6ca2f122ce9beb
+SIZE (zig/6992eddeb9a4a013886db0cbca2156686.tar.gz) = 14688
+SHA256 (zig/8a1cfb373587ea4c9bb1468b7c986462d.tar.gz) = 8ed818e25f2ed3bb77dc8202d003ecd0efa2be198962eca1452e545cbe17aac8
+SIZE (zig/8a1cfb373587ea4c9bb1468b7c986462d.tar.gz) = 16433930
+SHA256 (zig/b96c27a5152b9124d657dee7fb1186d0a.tar.gz) = 7a9bb97d6a5ad6c7d34f29760e1eae9bf0283932fefef51a7b0a60e6e57cb8d1
+SIZE (zig/b96c27a5152b9124d657dee7fb1186d0a.tar.gz) = 301431
+SHA256 (zig/aa24df42183ad415d10bc0a33e6238c43.tar.gz) = 500d9df2df8b44060dac523b0402126c0341e01d77f59101e1335654b8ae25a1
+SIZE (zig/aa24df42183ad415d10bc0a33e6238c43.tar.gz) = 11946
+SHA256 (zig/ab5cf5feb936fa3b72c95d3ad0c0c6779.tar.gz) = 55a2380907da5e30a3a9991d73d5b4a1372a2c2bd508da4dad96c127a10625e9
+SIZE (zig/ab5cf5feb936fa3b72c95d3ad0c0c6779.tar.gz) = 12569
+SHA256 (zig/01c14e592d25dc57dfebba27b8bd2b4aa.tar.gz) = b4fbe30a998c4e112703eb6376bf29c9667f76721fd579e2dde59f0479189a81
+SIZE (zig/01c14e592d25dc57dfebba27b8bd2b4aa.tar.gz) = 100623
+SHA256 (zig/4835b9d3d3cf732fe1830189d81f331c6.tar.gz) = 3bc515f43df0c81404ab27833a8ac08f372c5d8752750efabf0f21a9fa60b781
+SIZE (zig/4835b9d3d3cf732fe1830189d81f331c6.tar.gz) = 100191
+SHA256 (zig/c46ac866dda11ab58e4ba71ed0d8ba21f.tar.gz) = e9ddd03a2cc9eed59e6115de8a5e2d044b2b8e58196fb681e33c8c90ed338a0c
+SIZE (zig/c46ac866dda11ab58e4ba71ed0d8ba21f.tar.gz) = 100880
+SHA256 (zig/fe98e895ca3bd1b39965ab30f0f252f7b.tar.gz) = 46c57bad1922899bfae68e2d30a363061242dc2e808d6f27fc92ea8fe74c92db
+SIZE (zig/fe98e895ca3bd1b39965ab30f0f252f7b.tar.gz) = 100656
+SHA256 (zig/a2ed0cba3b1463217168034ffed8c1604.tar.gz) = fba12453efe9e788644cc3e6fe5c04be25ef4d4f21c4f82e995b9640b71bb383
+SIZE (zig/a2ed0cba3b1463217168034ffed8c1604.tar.gz) = 2926
+SHA256 (zig/50dbab8945440089384f26ec165d870c2.tar.gz) = 18325156728c48236270812947b4a1d24f9767899c771ddd21bfdb99b581fd30
+SIZE (zig/50dbab8945440089384f26ec165d870c2.tar.gz) = 12473
+SHA256 (zig/8cb16babb0c66b6512d6aeb4cbc37ed90.tar.gz) = e1b1846ab9310e406497228578bcbd320ad9ebb760ac95ee6aeb7d540200ad66
+SIZE (zig/8cb16babb0c66b6512d6aeb4cbc37ed90.tar.gz) = 2235403
+SHA256 (zig/530ac6c337c9a9511560fba3181db10d1.tar.gz) = 630b0a5e0afccd5b86b9dff8603629ce24c2802767aba779338c92a93c9a0e9a
+SIZE (zig/530ac6c337c9a9511560fba3181db10d1.tar.gz) = 490017
+SHA256 (zig/67d2d89e351048c76fc6d161e0ac09d8a.tar.gz) = a54d405e7ffadcc5f2e441b361226666e61df1acf3ac18045f2771df0cf26b3f
+SIZE (zig/67d2d89e351048c76fc6d161e0ac09d8a.tar.gz) = 3933
+SHA256 (zig/source.tar.gz) = 93c78e5ae9f600dcd624e6bc5c06a45cde1595d830ce5cb7144498025b1b555c
+SIZE (zig/source.tar.gz) = 42884192
+SHA256 (zig/5822dc06c75b30d53082debf68c90193c.tar.gz) = 2746628447433f64793928fe1a88dcf89d4ac14561af67783fe8fc03115e6645
+SIZE (zig/5822dc06c75b30d53082debf68c90193c.tar.gz) = 2233
+SHA256 (zig/90e4d81a6a8b7b601e8e568da32a105d7f7705e5.tar.gz) = ddbebc8fb7405e7a9177efdfbdf0df18ad02b607311d9e604959c7c0f6236af4
+SIZE (zig/90e4d81a6a8b7b601e8e568da32a105d7f7705e5.tar.gz) = 721379
+SHA256 (zig/46583c4695bade6841a558c0ce5648426.tar.gz) = d7e6ac2d5b6e45f3af073bed1032fb52f773440bf7e3fc4effca4005af6b3c82
+SIZE (zig/46583c4695bade6841a558c0ce5648426.tar.gz) = 39731
+SHA256 (zig/4353b20ef2ac750e35c6d68e4eb2a07c2.tar.gz) = 18e6c8a159abd6b2819e7089a3b01ee346c99ce784cdac9f8ed694923c0eb392
+SIZE (zig/4353b20ef2ac750e35c6d68e4eb2a07c2.tar.gz) = 173775
+SHA256 (zig/kristoff-it-zine-v0.11.2_GH0.tar.gz) = 551e9953b5b07473b66b128f20678aa4a18bf3447a5ab3c7c54d6a203d3a7ae4
+SIZE (zig/kristoff-it-zine-v0.11.2_GH0.tar.gz) = 824759
diff --git a/www/zine-ssg/files/patch-build.zig b/www/zine-ssg/files/patch-build.zig
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/files/patch-build.zig
@@ -0,0 +1,36 @@
+--- build.zig.orig 2025-11-21 13:41:48 UTC
++++ build.zig
+@@ -309,6 +309,11 @@ pub fn build(b: *std.Build) !void {
+ else => @panic("target must be added to build.zig"),
+ .linux => {},
+
++ .freebsd => {
++ // only added for FreeBSD < 15
++ %INOTIFY_GUARD%zine_exe.linkSystemLibrary("inotify");
++ },
++
+ .windows => {
+ zine_exe.linkSystemLibrary("ws2_32");
+ },
+@@ -519,8 +524,10 @@ fn setupReleaseStep(
+ const targets: []const std.Target.Query = &.{
+ .{ .cpu_arch = .aarch64, .os_tag = .macos },
+ .{ .cpu_arch = .aarch64, .os_tag = .linux, .abi = .musl },
++ .{ .cpu_arch = .aarch64, .os_tag = .freebsd },
+ .{ .cpu_arch = .x86_64, .os_tag = .macos },
+ .{ .cpu_arch = .x86_64, .os_tag = .linux, .abi = .musl },
++ .{ .cpu_arch = .x86_64, .os_tag = .freebsd },
+ .{ .cpu_arch = .x86_64, .os_tag = .windows },
+ .{ .cpu_arch = .aarch64, .os_tag = .windows },
+ };
+@@ -626,6 +633,10 @@ fn setupReleaseStep(
+ switch (target.result.os.tag) {
+ else => @panic("target must be added to build.zig"),
+ .linux => {},
++ .freebsd => {
++ // only added for FreeBSD < 15
++ %INOTIFY_GUARD%zine_exe_release.linkSystemLibrary("inotify");
++ },
+ .windows => {
+ zine_exe_release.linkSystemLibrary("ws2_32");
+ },
diff --git a/www/zine-ssg/files/patch-build.zig.zon b/www/zine-ssg/files/patch-build.zig.zon
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/files/patch-build.zig.zon
@@ -0,0 +1,13 @@
+--- build.zig.zon.orig 2025-11-21 13:41:48 UTC
++++ build.zig.zon
+@@ -5,8 +5,8 @@
+ .minimum_zig_version = "0.15.0",
+ .dependencies = .{
+ .afl_kit = .{
+- .url = "git+https://github.com/kristoff-it/zig-afl-kit#8ef04d1db48650345dca68da1e1b8f2615125c40",
+- .hash = "afl_kit-0.1.0-NdJ3cvscAACLEvjZTB017IAks_Uq5ux1qpA-klDe384Y",
++ .url = "git+https://github.com/kristoff-it/zig-afl-kit#395c39d5b33d999f6871a90bd731ec112d3995ca",
++ .hash = "afl_kit-0.1.0-NdJ3ch8eAABQkd1wk2W-JDCvvX5Jmnu3uJulS3lPepG7",
+ .lazy = true,
+ },
+ .lsp_kit = .{
diff --git a/www/zine-ssg/files/patch-src_cli_serve.zig b/www/zine-ssg/files/patch-src_cli_serve.zig
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/files/patch-src_cli_serve.zig
@@ -0,0 +1,10 @@
+--- src/cli/serve.zig.orig 2026-03-13 17:52:18 UTC
++++ src/cli/serve.zig
+@@ -24,6 +24,7 @@ const Watcher = switch (builtin.target.os.tag) {
+ const outside_html = @embedFile("serve/outside.html");
+ const Watcher = switch (builtin.target.os.tag) {
+ .linux => @import("serve/watcher/LinuxWatcher.zig"),
++ .freebsd => @import("serve/watcher/LinuxWatcher.zig"),
+ .macos => @import("serve/watcher/MacosWatcher.zig"),
+ .windows => @import("serve/watcher/WindowsWatcher.zig"),
+ else => @compileError("unsupported platform"),
diff --git a/www/zine-ssg/pkg-descr b/www/zine-ssg/pkg-descr
new file mode 100644
--- /dev/null
+++ b/www/zine-ssg/pkg-descr
@@ -0,0 +1,8 @@
+Zine is a static site generator similar in concept to www/gohugo.
+
+Zine turns your content into HTML, styles it using your layouts, and finally
+copies the result into an output directory that you can then publish on static
+hosting services like GitHub Pages.
+
+Zine has a companion port, devel/superhtml which acts as an LSP for the markdown
+content and HTML layouts.
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Apr 12, 6:39 PM (11 h, 8 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31330990
Default Alt Text
D55877.diff (13 KB)
Attached To
Mode
D55877: www/zine-ssg: Add port
Attached
Detach File
Event Timeline
Log In to Comment