On Tue, Jan 17, 2023 at 02:36:53PM +0100, Stefan Sperling wrote:
> This update requires significant packaging changes. I would like
> to get feedback before commit, in case I made a mistake somewhere.
>
> Changes specific to the devel/got port:
> - gotd is ready for wider testing and can be packaged
> - gotweb has been replaced by gotwebd; adjust devel/quirks accordingly
> - gotwebd.rc: reload on SIGHUP is not actually supported, set reload=NO
> - fix wantlib (missing libevent and libm)
>
> Full changelog and diff for the port follow:
In the previous version of this diff I forgot to allocate a UID/GID
for the _gotd user. Fixed here (Thanks Landry for the hints).
diff /usr/ports
commit - 6802ac417459dc67578bf97fc6c33b1d861c5817
path + /usr/ports
blob - 7053c69213780c2ffa77fc1e066f63991082f3f0
file + devel/got/Makefile
--- devel/got/Makefile
+++ devel/got/Makefile
@@ -1,10 +1,10 @@
COMMENT-main = game of trees version control system
-COMMENT-web = game of trees repository cgi script
+COMMENT-server = game of trees repository server
COMMENT-webd = game of trees repository fast-cgi server
-V = 0.79
+V = 0.80
DISTNAME = got-${V}
-PKGNAME-web = gotweb-${V}
+PKGNAME-server = gotd-${V}
PKGNAME-webd = gotwebd-${V}
CATEGORIES = devel
HOMEPAGE = https://gameoftrees.org
@@ -13,30 +13,27 @@ MULTI_PACKAGES = -main -web -webd
# ISC
PERMIT_PACKAGE = Yes
-MULTI_PACKAGES = -main -web -webd
+MULTI_PACKAGES = -main -server -webd
# uses pledge()
WANTLIB-main = c curses m panel pthread util z
-WANTLIB-web = c util z
-WANTLIB-webd = c util z
+WANTLIB-server = c event m util z
+WANTLIB-webd = c event m util z
MAKE_FLAGS = CC="${CC}"
-ALL_TARGET = all web webd
-INSTALL_TARGET = install web-install webd-install
+ALL_TARGET = all server webd
+INSTALL_TARGET = install server-install webd-install
MASTER_SITES = https://gameoftrees.org/releases/
DEBUG_PACKAGES = ${BUILD_PACKAGES}
-BUILD_DEPENDS = www/kcgi>=0.12.0
-
# some tests will fail without working non-interactive 'ssh 127.0.0.1'
TEST_IS_INTERACTIVE = Yes
TEST_ENV = $${SSH_AUTH_SOCK:+SSH_AUTH_SOCK="$$SSH_AUTH_SOCK"}
TEST_DEPENDS = devel/git \
${PKGPATH}=${V}
-PREFIX-web = ${VARBASE}/www
PREFIX-webd = ${VARBASE}/www
TEST_TARGET = regress
FAKE_FLAGS = MANDIR=${PREFIX}/man/man CHROOT_DIR=${VARBASE}/www
blob - 6d7d971e03d237cb2dc33964d36132631df06a31
file + devel/got/distinfo
--- devel/got/distinfo
+++ devel/got/distinfo
@@ -1,2 +1,2 @@
-SHA256 (got-0.79.tar.gz) = GuME42pJyO0Onf7q8+YQ0UI8vHR+wIqYnUK/QwROPvA=
-SIZE (got-0.79.tar.gz) = 843921
+SHA256 (got-0.80.tar.gz) = 6SfQ67bRDN8XDPLd56G+IFUc1ErDXPASJIJgqAkiK60=
+SIZE (got-0.80.tar.gz) = 784764
blob - /dev/null
file + devel/got/pkg/DESCR-server (mode 644)
--- /dev/null
+++ devel/got/pkg/DESCR-server
@@ -0,0 +1,8 @@
+gotd(8) is the Game of Trees Git repository server.
+
+gotd(8) makes Git repositories reachable over the network via ssh(1).
+The plaintext git:// and HTTP/HTTPS protocols are intentionally not
+supported.
+
+Documentation is provided in manual pages installed by this package:
+gotsh(1), gotd.conf(5), gotd(8), gotctl(8)
blob - 83e00c07fd57bb571d46cebe7bda981dd5157413
file + /dev/null
--- devel/got/pkg/DESCR-web
+++ /dev/null
@@ -1,2 +0,0 @@
-Game of Trees Web (Gotweb) is a CGI program which displays repository data
-and is designed to work with httpd(8) and slowcgi(8).
blob - /dev/null
file + devel/got/pkg/PLIST-server (mode 644)
--- /dev/null
+++ devel/got/pkg/PLIST-server
@@ -0,0 +1,10 @@
+@newgroup _gotd:501
+@newuser _gotd:501:_gotd::Game of Trees Daemon:/nonexistent:/sbin/nologin
+@rcscript ${RCDIR}/gotd
+@bin bin/gotsh
+@man man/man1/gotsh.1
+@man man/man5/gotd.conf.5
+@man man/man8/gotctl.8
+@man man/man8/gotd.8
+@bin sbin/gotctl
+@bin sbin/gotd
blob - 874cb69374a878114e04634163ef700f0ea746b9
file + /dev/null
--- devel/got/pkg/PLIST-web
+++ /dev/null
@@ -1,43 +0,0 @@
-cgi-bin/gotweb/
-@bin cgi-bin/gotweb/gotweb
-cgi-bin/gotweb/gw_tmpl/
-cgi-bin/gotweb/gw_tmpl/blame.tmpl
-cgi-bin/gotweb/gw_tmpl/briefs.tmpl
-cgi-bin/gotweb/gw_tmpl/commit.tmpl
-cgi-bin/gotweb/gw_tmpl/diff.tmpl
-cgi-bin/gotweb/gw_tmpl/err.tmpl
-cgi-bin/gotweb/gw_tmpl/index.tmpl
-cgi-bin/gotweb/gw_tmpl/summry.tmpl
-cgi-bin/gotweb/gw_tmpl/tag.tmpl
-cgi-bin/gotweb/gw_tmpl/tags.tmpl
-cgi-bin/gotweb/gw_tmpl/tree.tmpl
-cgi-bin/gotweb/libexec/
-@bin cgi-bin/gotweb/libexec/got-read-blob
-@bin cgi-bin/gotweb/libexec/got-read-commit
-@bin cgi-bin/gotweb/libexec/got-read-gitconfig
-@bin cgi-bin/gotweb/libexec/got-read-gotconfig
-@bin cgi-bin/gotweb/libexec/got-read-object
-@bin cgi-bin/gotweb/libexec/got-read-pack
-@bin cgi-bin/gotweb/libexec/got-read-tag
-@bin cgi-bin/gotweb/libexec/got-read-tree
-got/
-got/public/
-got/tmp/
-htdocs/gotweb/
-htdocs/gotweb/android-chrome-192x192.png
-htdocs/gotweb/android-chrome-384x384.png
-htdocs/gotweb/apple-touch-icon.png
-htdocs/gotweb/browserconfig.xml
-htdocs/gotweb/favicon-16x16.png
-htdocs/gotweb/favicon-32x32.png
-htdocs/gotweb/favicon.ico
-htdocs/gotweb/got.png
-htdocs/gotweb/got_large.png
-htdocs/gotweb/gotweb.css
-htdocs/gotweb/index.html
-htdocs/gotweb/mstile-150x150.png
-htdocs/gotweb/safari-pinned-tab.svg
-htdocs/gotweb/site.webmanifest
-@cwd ${LOCALBASE}
-@man man/man5/gotweb.conf.5
-@man man/man8/gotweb.8
blob - /dev/null
file + devel/got/pkg/gotd.rc (mode 644)
--- /dev/null
+++ devel/got/pkg/gotd.rc
@@ -0,0 +1,15 @@
+#!/bin/ksh
+
+daemon="${TRUEPREFIX}/sbin/gotd"
+
+. /etc/rc.d/rc.subr
+
+pexp="gotd: parent"
+
+rc_configtest() {
+ ${daemon} -n ${daemon_flags}
+}
+
+rc_reload=NO
+
+rc_cmd $1
blob - 070adaaebbaffa49b8b61624f824f855ca19098a
file + devel/got/pkg/gotwebd.rc
--- devel/got/pkg/gotwebd.rc
+++ devel/got/pkg/gotwebd.rc
@@ -8,4 +8,6 @@ rc_cmd $1
${daemon} -n ${daemon_flags}
}
+rc_reload=NO
+
rc_cmd $1
blob - 39d25bcc0d169ad0420cfa5c89dd83f29320b151
file + devel/quirks/Makefile
--- devel/quirks/Makefile
+++ devel/quirks/Makefile
@@ -3,7 +3,7 @@ PKGNAME = quirks-6.95
DISTFILES =
# API.rev
-PKGNAME = quirks-6.95
+PKGNAME = quirks-6.96
PKG_ARCH = *
MAINTAINER = Marc Espie <[email protected]>
blob - 34a9d35b3a827d5f81ba61737dfa354a5e0a813a
file + devel/quirks/files/Quirks.pm
--- devel/quirks/files/Quirks.pm
+++ devel/quirks/files/Quirks.pm
@@ -1778,6 +1778,7 @@ setup_obsolete_reason(
6 => 'caribou',
5 => 'riak',
15 => 'rmilter',
+ 3 => 'gotweb',
);
# though it's not yet used, these should be pkgnames, so that eventually
@@ -1794,6 +1795,7 @@ my $obsolete_suggestion = {
'keepassx' => 'keepassxc',
'lives' => [qw(kdenlive shotcut)],
'pdfshuffler' => 'pdfarranger',
+ 'gotweb' => 'gotwebd',
};
# reasons for obsolete packages
blob - f29dc8b5587e3b35267e9c13a4368392c6fca82f
file + infrastructure/db/user.list
--- infrastructure/db/user.list
+++ infrastructure/db/user.list
@@ -9,7 +9,7 @@ id user group port
id user group port
----------------------------------------------------
500 _opennap _opennap audio/opennap
-#501 _gnats databases/gnats
+501 _gotd _gotd devel/got
502 _mysql _mysql databases/mariadb,-server
503 _postgresql _postgresql databases/postgresql,-server
504 _mailman _mailman mail/mailman