Page MenuHomeFreeBSD

D55877.diff
No OneTemporary

D55877.diff

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

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)

Event Timeline