import mycorrhiza-1.12.1

Mycorrhiza can be used for personal wikis, digital gardens and wikis
for small teams or communities. It doesn't require a database,
everything is stored as plain-text files. Content is stored as
hyphas which can be just text articles or media such as pictures
and videos. History of changes is managed using git in automated
fashion - mycorrhiza creates and manages git repository for you.

One can serve mycorrhiza to be accessible via http, it's web ready.
It also features few authentication options and user management.

port from la ninpre (aaoth [at] aaoth [dot] xyz); ok sthen@
This commit is contained in:
op 2022-09-08 13:35:47 +00:00
parent fc18529fa4
commit 20d111ff8f
7 changed files with 318 additions and 0 deletions

22
www/mycorrhiza/Makefile Normal file
View File

@ -0,0 +1,22 @@
COMMENT = plain-text driven engine for personal wikis
MODGO_MODNAME = github.com/bouncepaw/mycorrhiza
MODGO_VERSION = v1.12.1
DISTNAME = mycorrhiza-${MODGO_VERSION}
CATEGORIES = www
HOMEPAGE = https://mycorrhiza.wiki
# AGPLv3
PERMIT_PACKAGE = Yes
WANTLIB += c pthread
MODULES = lang/go
RUN_DEPENDS = devel/git
.include "modules.inc"
.include <bsd.port.mk>

144
www/mycorrhiza/distinfo Normal file
View File

@ -0,0 +1,144 @@
SHA256 (go_modules/git.sr.ht/~bouncepaw/mycomarkup/v5/@v/v5.2.1.mod) = L51xy10F0ZU2tmQkoFnYI2AjTv4GmNcDZxDlHpaF3tE=
SHA256 (go_modules/git.sr.ht/~bouncepaw/mycomarkup/v5/@v/v5.2.1.zip) = GYRgDENzsGZ6Ej7opcOT8wRDM28y4Nrc7DOgTe0OpLw=
SHA256 (go_modules/github.com/andybalholm/brotli/@v/v1.0.2.mod) = hWZkf7zU9nc3KiYxeKry8ncpsFfcIYf9EZS+yYgwx8k=
SHA256 (go_modules/github.com/andybalholm/brotli/@v/v1.0.3.mod) = gLn5QXXMYZiLSYDdCzyCwBdJQP93fYIOJhrmAA+H1xM=
SHA256 (go_modules/github.com/andybalholm/brotli/@v/v1.0.3.zip) = HXjtY7wKJvINBW8oDhK7yD769Opg2kz0d9+hLgzNpCE=
SHA256 (go_modules/github.com/davecgh/go-spew/@v/v1.1.0.mod) = vLKTkyUSN7eaF7bBm/KRNPQ+j0OMMZiYj81GGhzfBcw=
SHA256 (go_modules/github.com/davecgh/go-spew/@v/v1.1.0.zip) = C1ppGuuLavMb0rtkCXPqfovx7ZvFiJ2iIL9E3AbZaSw=
SHA256 (go_modules/github.com/go-ini/ini/@v/v1.63.2.mod) = N68DixhDQ+XhM/VMULINgNQx3EuNJKd9l1+dMDafLHc=
SHA256 (go_modules/github.com/go-ini/ini/@v/v1.63.2.zip) = 0xUHX6KjcIGJ+lOuSi1g259fZObSIv+vW4T3k9py4CY=
SHA256 (go_modules/github.com/golang/snappy/@v/v0.0.3.mod) = 9W3ryXZbhJKXn++jEgm2fJYn2Q4kacYVnJQNr20kmQU=
SHA256 (go_modules/github.com/golang/snappy/@v/v0.0.3.zip) = 9rXjW9Hh01taZ8ipG/dtQDQmzjZpeDr4K2bAJU5ODaU=
SHA256 (go_modules/github.com/gorilla/feeds/@v/v1.1.1.mod) = 5rx1j6V5+hKoKjhl2ds7oP0Wm1ZWjlFhl3yJYqa0bHU=
SHA256 (go_modules/github.com/gorilla/feeds/@v/v1.1.1.zip) = UZx+vvJG6E+rfcK3tEecTuGKtPwXij2MN5yw+wa0Td0=
SHA256 (go_modules/github.com/gorilla/mux/@v/v1.8.0.mod) = R/lPOCkTbcy7qn88QRD3QNs3/5Dd555rM2xzLh/ajZw=
SHA256 (go_modules/github.com/gorilla/mux/@v/v1.8.0.zip) = dkGRHgCvnJHwiYaDMwZ8nLmlhwLSyeqCHuN0lACRw4U=
SHA256 (go_modules/github.com/klauspost/compress/@v/v1.13.4.mod) = H9DJliVjOQBLcVctcHaMMJLXSs3bXzZIURU8F5Fjwyg=
SHA256 (go_modules/github.com/klauspost/compress/@v/v1.13.5.mod) = hzMbvVb5EFUKSEj77nhRzEOqVpvKMdlECSZU8IrPby4=
SHA256 (go_modules/github.com/klauspost/compress/@v/v1.13.5.zip) = 5beJ5Ibx5FTvAjRMgjWhpOKF17jdgB/41mf85jCfM1U=
SHA256 (go_modules/github.com/kr/pretty/@v/v0.2.1.mod) = wq4ovVu46PkHaVUSZ2irehR5Ut7qn9vLNzxTzBiHD4I=
SHA256 (go_modules/github.com/kr/pretty/@v/v0.2.1.zip) = gK8EUgggUtGzJl18uJhdRk1L4iLCfhRljpVjLCInYeU=
SHA256 (go_modules/github.com/kr/pty/@v/v1.1.1.mod) = baTJxzZERolOXvh34Z+YXNUdZxzm6PTKh4YrRJ9t1/Y=
SHA256 (go_modules/github.com/kr/pty/@v/v1.1.1.zip) = EEdNeodcvSuddMm7j7mSZLeGPyBMdhBgd5f/GNWAvwA=
SHA256 (go_modules/github.com/kr/text/@v/v0.1.0.mod) = L7qVKeXBPd5i83Hvc4O68E1xMlAdrGqgjpEPnsC/hcU=
SHA256 (go_modules/github.com/kr/text/@v/v0.1.0.zip) = k2OkyPHzOHo2AU3lG0d7gxoTmB/FmlZl+dIWCb6p53w=
SHA256 (go_modules/github.com/pmezard/go-difflib/@v/v1.0.0.mod) = dLLnZushU3eGTVh7rfV+lVIfaS0qeGCzx3WQk/nJvsI=
SHA256 (go_modules/github.com/pmezard/go-difflib/@v/v1.0.0.zip) = 3gTOzBpLjVPkNXBRAmeUvLxU8uaiYM+sUIzmnV1kV6A=
SHA256 (go_modules/github.com/stretchr/objx/@v/v0.1.0.mod) = E1A1TVLSKHpiM27MDVYjLUxHaZr5u6ScZ8K0glTamPE=
SHA256 (go_modules/github.com/stretchr/objx/@v/v0.1.0.zip) = H6ENq0BO1/yO0qAz+HhBh9XfNRPO04Qc455G03hQ6x0=
SHA256 (go_modules/github.com/stretchr/testify/@v/v1.7.0.mod) = //gWjZjmoHFWxFShtuklUJ8xd+lsFVUW1/lrQHnMo78=
SHA256 (go_modules/github.com/stretchr/testify/@v/v1.7.0.zip) = WkbM6+/1EN8+L204Qu550/aNDnsVVM1u6TOQ1otsazQ=
SHA256 (go_modules/github.com/valyala/bytebufferpool/@v/v1.0.0.mod) = +MKUzPEYuSsa3pB1CJZ7/g+Ao1dCbhoH5S+oyz5Xes0=
SHA256 (go_modules/github.com/valyala/bytebufferpool/@v/v1.0.0.zip) = f1nzLFaFOa/umiGmZaQVaWKwGb6qyEBOJro3rwVrTx4=
SHA256 (go_modules/github.com/valyala/fasthttp/@v/v1.30.0.mod) = p7ACzDC+Va/Beh7XOgPPTLPrcXMJMGcXmJjv+exSGjU=
SHA256 (go_modules/github.com/valyala/fasthttp/@v/v1.30.0.zip) = eET6X4GZ5VastIf1KoyRuk1E/srWBFVU9BPI6Jfv3tc=
SHA256 (go_modules/github.com/valyala/quicktemplate/@v/v1.7.0.mod) = 5xx+IqzDmfNYyL+IAs+hQ+jPpcurv50xFWc1h+DrVb0=
SHA256 (go_modules/github.com/valyala/quicktemplate/@v/v1.7.0.zip) = BH4+9pyQiLw8kco4JMAKlG0m8l04JQacQEbJJ3Z9AFI=
SHA256 (go_modules/github.com/valyala/tcplisten/@v/v1.0.0.mod) = h7jhMzyA6tyb8SoyHW5vX2QsiJAmkHH4ScbA5MuLbNk=
SHA256 (go_modules/github.com/valyala/tcplisten/@v/v1.0.0.zip) = ed/z7REUuJuzlrc9VN/TmZp0GBhZ0CsmHDGGHAIcweg=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20210513164829-c07d793c2f9a.mod) = gULGyDiexcbzvbr4GR+H975CXHfKNVJR7QZsmo/qNw8=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20211108221036-ceb1ce70b4fa.mod) = zWMRYSoqpNDX4DxBs6ofvC1fiVqz9hCJ+rgL/p+PVIU=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20211108221036-ceb1ce70b4fa.zip) = 36okbRB+QiMkyKcFDXF4c/mEnM7kd9NecrSssfl0BBs=
SHA256 (go_modules/golang.org/x/exp/@v/v0.0.0-20220414153411-bcd21879b8fd.mod) = 2xLf5Sji5F9WmEsb0fzMU4xUTuJ8IVnzE3Jy/45ZULw=
SHA256 (go_modules/golang.org/x/exp/@v/v0.0.0-20220414153411-bcd21879b8fd.zip) = TSH7R1Y82Hwm7uskTxRF4O+7g+AMivJS3H9cRqIvZTM=
SHA256 (go_modules/golang.org/x/mod/@v/v0.6.0-dev.0.20211013180041-c96bc1413d57.mod) = CT1MzqEdCHW3jvAJ119ua0lGy5YRNQEqZC8SVR1ISNw=
SHA256 (go_modules/golang.org/x/mod/@v/v0.6.0-dev.0.20211013180041-c96bc1413d57.zip) = blRU8jtOvGwYyNsHvBaMcZOCad65LCLJzkgQkDaA/Ms=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20210226172049-e18ecbb05110.mod) = /vWJbRA6C85QVf216W6DCUQzR5JDeGU0dxjtzrYzNIo=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20210510120150-4163338589ed.mod) = +pFfXQIs+wy4Zaou4306d0G0BvhOtKg3hi4pzGmrTvQ=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20210510120150-4163338589ed.zip) = b5q5Mcvgp6GNEO8rdt9gEeWu/VZki7IQ552+XSlopzY=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20201119102817-f84b799fce68.mod) = GBl56L1X0tngZBgtqGyaYRGqaXVeiI8IQx7OR0Kuw0M=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210423082822-04245dca01da.mod) = GBl56L1X0tngZBgtqGyaYRGqaXVeiI8IQx7OR0Kuw0M=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210615035016-665e8c7367d1.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20211019181941-9d821ace8654.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20211109184856-51b60fd695b3.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20211109184856-51b60fd695b3.zip) = gw4hX/L1//S+EuRhQnKTice4bSyzgVHj4/w/2I426Pc=
SHA256 (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.mod) = TLqxT3cGdxsnHZlaGzzBMf5aJGqtx+5tG6bwvYlHgfo=
SHA256 (go_modules/golang.org/x/term/@v/v0.0.0-20210927222741-03fcf44c2211.mod) = dAeU4pFPXMh+JWVsWEMiKyxlZlghIF9FYyoEd8jT95s=
SHA256 (go_modules/golang.org/x/term/@v/v0.0.0-20210927222741-03fcf44c2211.zip) = Ot9xOvpJ/iZYD/5K2x9PsvSSHJRTAapan7bTQDH6MM0=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.3.mod) = +7eojtFAUV55Dsp6EP/TGcl4axHGpsfln4D3+ze7RUI=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.6.mod) = +7eojtFAUV55Dsp6EP/TGcl4axHGpsfln4D3+ze7RUI=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.7.mod) = xF1mkIlCe8RjXQexhfm5aAMy0cSMdbPEnLcVuBoEpbA=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.7.zip) = 4akRXmGjjai9yJPQuoO2X4nMERTxUqmOtXLF6mVR6NQ=
SHA256 (go_modules/golang.org/x/tools/@v/v0.0.0-20180917221912-90fa682c2a6e.mod) = oOAvBnj+Ytw8S0vHf6kSybcN4Q+p988veq0DNzkrUq8=
SHA256 (go_modules/golang.org/x/tools/@v/v0.1.8-0.20211029000441-d6a9af8af023.mod) = EjpgkNo9ol+9FJgeNnHS6wagG0qf1pOVdYDlCYn17Po=
SHA256 (go_modules/golang.org/x/tools/@v/v0.1.8-0.20211029000441-d6a9af8af023.zip) = TKkEV66+ybVGv/OciWaceoGFtwx9wkJI9btXfABBYks=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.mod) = ql4+ybt7n2gWCe+sAZ2d4ae6dxkkj/Hqon54iC2z1/U=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.zip) = OAqqM2iuFlYou0h89OaVpVwUIAcri3pvWcEi9qI7slU=
SHA256 (go_modules/gopkg.in/check.v1/@v/v0.0.0-20161208181325-20d25e280405.mod) = XDBuDWM81moRtA4uX7vG2kIRDbfXLqPBUkzrRe5Awz8=
SHA256 (go_modules/gopkg.in/check.v1/@v/v0.0.0-20161208181325-20d25e280405.zip) = ThgX+WTKNOVFuBr9oDJaXonPWN4uQT2CB8Cv3dD9wVw=
SHA256 (go_modules/gopkg.in/yaml.v3/@v/v3.0.0-20200313102051-9f266ea9e77c.mod) = IVeYYKIDBvz0OxvSNNH7oxlJnHdhG3HAX5vzupDauTk=
SHA256 (go_modules/gopkg.in/yaml.v3/@v/v3.0.0-20200313102051-9f266ea9e77c.zip) = rPGcy0/KmDsjSjnvAy+vmrcOdZaAZzuz3/B353/uIP4=
SHA256 (mycorrhiza-v1.12.1.zip) = FoAquWNlH0StchtVuaAQGUm4UpwFhOTXCq9ION62g5g=
SIZE (go_modules/git.sr.ht/~bouncepaw/mycomarkup/v5/@v/v5.2.1.mod) = 51
SIZE (go_modules/git.sr.ht/~bouncepaw/mycomarkup/v5/@v/v5.2.1.zip) = 58897
SIZE (go_modules/github.com/andybalholm/brotli/@v/v1.0.2.mod) = 46
SIZE (go_modules/github.com/andybalholm/brotli/@v/v1.0.3.mod) = 103
SIZE (go_modules/github.com/andybalholm/brotli/@v/v1.0.3.zip) = 646559
SIZE (go_modules/github.com/davecgh/go-spew/@v/v1.1.0.mod) = 34
SIZE (go_modules/github.com/davecgh/go-spew/@v/v1.1.0.zip) = 60546
SIZE (go_modules/github.com/go-ini/ini/@v/v1.63.2.mod) = 29
SIZE (go_modules/github.com/go-ini/ini/@v/v1.63.2.zip) = 67266
SIZE (go_modules/github.com/golang/snappy/@v/v0.0.3.mod) = 32
SIZE (go_modules/github.com/golang/snappy/@v/v0.0.3.zip) = 79266
SIZE (go_modules/github.com/gorilla/feeds/@v/v1.1.1.mod) = 32
SIZE (go_modules/github.com/gorilla/feeds/@v/v1.1.1.zip) = 20851
SIZE (go_modules/github.com/gorilla/mux/@v/v1.8.0.mod) = 39
SIZE (go_modules/github.com/gorilla/mux/@v/v1.8.0.zip) = 57100
SIZE (go_modules/github.com/klauspost/compress/@v/v1.13.4.mod) = 99
SIZE (go_modules/github.com/klauspost/compress/@v/v1.13.5.mod) = 46
SIZE (go_modules/github.com/klauspost/compress/@v/v1.13.5.zip) = 15563802
SIZE (go_modules/github.com/kr/pretty/@v/v0.2.1.mod) = 72
SIZE (go_modules/github.com/kr/pretty/@v/v0.2.1.zip) = 11508
SIZE (go_modules/github.com/kr/pty/@v/v1.1.1.mod) = 25
SIZE (go_modules/github.com/kr/pty/@v/v1.1.1.zip) = 14199
SIZE (go_modules/github.com/kr/text/@v/v0.1.0.mod) = 64
SIZE (go_modules/github.com/kr/text/@v/v0.1.0.zip) = 12591
SIZE (go_modules/github.com/pmezard/go-difflib/@v/v1.0.0.mod) = 37
SIZE (go_modules/github.com/pmezard/go-difflib/@v/v1.0.0.zip) = 12433
SIZE (go_modules/github.com/stretchr/objx/@v/v0.1.0.mod) = 32
SIZE (go_modules/github.com/stretchr/objx/@v/v0.1.0.zip) = 34637
SIZE (go_modules/github.com/stretchr/testify/@v/v1.7.0.mod) = 216
SIZE (go_modules/github.com/stretchr/testify/@v/v1.7.0.zip) = 105564
SIZE (go_modules/github.com/valyala/bytebufferpool/@v/v1.0.0.mod) = 41
SIZE (go_modules/github.com/valyala/bytebufferpool/@v/v1.0.0.zip) = 7534
SIZE (go_modules/github.com/valyala/fasthttp/@v/v1.30.0.mod) = 375
SIZE (go_modules/github.com/valyala/fasthttp/@v/v1.30.0.zip) = 272619
SIZE (go_modules/github.com/valyala/quicktemplate/@v/v1.7.0.mod) = 242
SIZE (go_modules/github.com/valyala/quicktemplate/@v/v1.7.0.zip) = 69818
SIZE (go_modules/github.com/valyala/tcplisten/@v/v1.0.0.mod) = 45
SIZE (go_modules/github.com/valyala/tcplisten/@v/v1.0.0.zip) = 7515
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20210513164829-c07d793c2f9a.mod) = 247
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20211108221036-ceb1ce70b4fa.mod) = 247
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20211108221036-ceb1ce70b4fa.zip) = 1876850
SIZE (go_modules/golang.org/x/exp/@v/v0.0.0-20220414153411-bcd21879b8fd.mod) = 309
SIZE (go_modules/golang.org/x/exp/@v/v0.0.0-20220414153411-bcd21879b8fd.zip) = 366481
SIZE (go_modules/golang.org/x/mod/@v/v0.6.0-dev.0.20211013180041-c96bc1413d57.mod) = 214
SIZE (go_modules/golang.org/x/mod/@v/v0.6.0-dev.0.20211013180041-c96bc1413d57.zip) = 169083
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20210226172049-e18ecbb05110.mod) = 179
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20210510120150-4163338589ed.mod) = 179
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20210510120150-4163338589ed.zip) = 1565631
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20201119102817-f84b799fce68.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210423082822-04245dca01da.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210615035016-665e8c7367d1.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20211019181941-9d821ace8654.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20211109184856-51b60fd695b3.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20211109184856-51b60fd695b3.zip) = 1670443
SIZE (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.mod) = 95
SIZE (go_modules/golang.org/x/term/@v/v0.0.0-20210927222741-03fcf44c2211.mod) = 95
SIZE (go_modules/golang.org/x/term/@v/v0.0.0-20210927222741-03fcf44c2211.zip) = 21653
SIZE (go_modules/golang.org/x/text/@v/v0.3.3.mod) = 97
SIZE (go_modules/golang.org/x/text/@v/v0.3.6.mod) = 97
SIZE (go_modules/golang.org/x/text/@v/v0.3.7.mod) = 97
SIZE (go_modules/golang.org/x/text/@v/v0.3.7.zip) = 8610883
SIZE (go_modules/golang.org/x/tools/@v/v0.0.0-20180917221912-90fa682c2a6e.mod) = 26
SIZE (go_modules/golang.org/x/tools/@v/v0.1.8-0.20211029000441-d6a9af8af023.mod) = 349
SIZE (go_modules/golang.org/x/tools/@v/v0.1.8-0.20211029000441-d6a9af8af023.zip) = 3729865
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.mod) = 37
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.zip) = 22295
SIZE (go_modules/gopkg.in/check.v1/@v/v0.0.0-20161208181325-20d25e280405.mod) = 25
SIZE (go_modules/gopkg.in/check.v1/@v/v0.0.0-20161208181325-20d25e280405.zip) = 39844
SIZE (go_modules/gopkg.in/yaml.v3/@v/v3.0.0-20200313102051-9f266ea9e77c.mod) = 95
SIZE (go_modules/gopkg.in/yaml.v3/@v/v3.0.0-20200313102051-9f266ea9e77c.zip) = 101467
SIZE (mycorrhiza-v1.12.1.zip) = 197433

View File

@ -0,0 +1,46 @@
MODGO_MODULES = \
git.sr.ht/~bouncepaw/mycomarkup/v5 v5.2.1 \
github.com/andybalholm/brotli v1.0.3 \
github.com/davecgh/go-spew v1.1.0 \
github.com/go-ini/ini v1.63.2 \
github.com/golang/snappy v0.0.3 \
github.com/gorilla/feeds v1.1.1 \
github.com/gorilla/mux v1.8.0 \
github.com/klauspost/compress v1.13.5 \
github.com/kr/pretty v0.2.1 \
github.com/kr/pty v1.1.1 \
github.com/kr/text v0.1.0 \
github.com/pmezard/go-difflib v1.0.0 \
github.com/stretchr/objx v0.1.0 \
github.com/stretchr/testify v1.7.0 \
github.com/valyala/bytebufferpool v1.0.0 \
github.com/valyala/fasthttp v1.30.0 \
github.com/valyala/quicktemplate v1.7.0 \
github.com/valyala/tcplisten v1.0.0 \
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa \
golang.org/x/exp v0.0.0-20220414153411-bcd21879b8fd \
golang.org/x/mod v0.6.0-dev.0.20211013180041-c96bc1413d57 \
golang.org/x/net v0.0.0-20210510120150-4163338589ed \
golang.org/x/sys v0.0.0-20211109184856-51b60fd695b3 \
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 \
golang.org/x/text v0.3.7 \
golang.org/x/tools v0.1.8-0.20211029000441-d6a9af8af023 \
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 \
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 \
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c
MODGO_MODFILES = \
github.com/andybalholm/brotli v1.0.2 \
github.com/klauspost/compress v1.13.4 \
golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a \
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 \
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68 \
golang.org/x/sys v0.0.0-20210423082822-04245dca01da \
golang.org/x/sys v0.0.0-20210514084401-e8d321eab015 \
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 \
golang.org/x/sys v0.0.0-20211019181941-9d821ace8654 \
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 \
golang.org/x/text v0.3.3 \
golang.org/x/text v0.3.6 \
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e

9
www/mycorrhiza/pkg/DESCR Normal file
View File

@ -0,0 +1,9 @@
Mycorrhiza can be used for personal wikis, digital gardens and wikis
for small teams or communities. It doesn't require a database,
everything is stored as plain-text files. Content is stored as
hyphas which can be just text articles or media such as pictures
and videos. History of changes is managed using git in automated
fashion - mycorrhiza creates and manages git repository for you.
One can serve mycorrhiza to be accessible via http, it's web ready.
It also features few authentication options and user management.

9
www/mycorrhiza/pkg/PLIST Normal file
View File

@ -0,0 +1,9 @@
@newgroup _mycorrhiza:885
@newuser _mycorrhiza:885:_mycorrhiza::Mycorrhiza User:${LOCALSTATEDIR}/mycorrhiza:/sbin/nologin
@rcscript ${RCDIR}/mycorrhiza
@bin bin/mycorrhiza
share/doc/pkg-readmes/${PKGSTEM}
@mode 0755
@owner _mycorrhiza
@group _mycorrhiza
@sample ${LOCALSTATEDIR}/mycorrhiza/

76
www/mycorrhiza/pkg/README Normal file
View File

@ -0,0 +1,76 @@
+-------------------------------------------------------------------------------
| Running ${PKGSTEM} on OpenBSD
+-------------------------------------------------------------------------------
Initial setup
=============
By default, Mycorrhiza listens on localhost:1737. To make it reachable
as a web service, it needs to be put behind a TLS terminating proxy.
Here's a sample httpd(8) and relayd(8) configuration provided for
reference:
/etc/httpd.conf:
server "mycorrhiza.example.com" {
listen on * port http
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
}
location "*" {
block return 302 "https://$HTTP_HOST$REQUEST_URI"
}
}
/etc/relayd.conf:
ext_ip="123.45.67.89"
ext_ip6="1234:5678:dead:beef"
mycorrhiza_port="1737"
table <mycorrhiza> { 127.0.0.1 ::1 }
http protocol https {
match request header append "X-Forwarded-For" \
value "$REMOTE_ADDR"
match request header append "X-Forwarded-By" \
value "$SERVER_ADDR:$SERVER_PORT"
match request header set "Connection" value "close"
match request header "Host" value "mycorrhiza.*" \
forward to <mycorrhiza>
tcp { sack, backlog 128 }
tls keypair mycorrhiza.example.com
}
relay https {
listen on $ext_ip port https tls
listen on $ext_ip6 port https tls
protocol https
forward to <mycorrhiza> port $mycorrhiza_port check tcp
}
Don't forget to set up a TLS certificate (for example using
acme-client(1)) and start httpd(8) and relayd(8):
# rcctl enable httpd relayd
# rcctl start httpd relayd
Setup
=====
See the official documentation for details about configuration and
deployment. Be sure to set up proper authentication.
By default the wiki will be created in ${LOCALSTATEDIR}/mycorrhiza, but
it's possible to change it by overwriting the daemon flags with rcctl(8)
# rcctl set mycorrhiza flags '/path/to/wiki/dir'
Finally, enable and start the daemon:
# rcctl enable mycorrhiza
# rcctl start mycorrhiza

View File

@ -0,0 +1,12 @@
#!/bin/ksh
daemon="${TRUEPREFIX}/bin/mycorrhiza"
daemon_flags="${LOCALSTATEDIR}/mycorrhiza"
daemon_user="_mycorrhiza"
. /etc/rc.d/rc.subr
rc_bg=YES
rc_reload=NO
rc_cmd $1