Be advised that a set of upgrades affecting all SourceHut Alpine
packages has made some changes which impact downstream SourceHut
instances. A summary of required manual interventions is given
here -- feel free to ask on sr.ht-discuss if you run into any problems
upgrading your installation.
## Static web resources relocated
Static files used by the web frontend (e.g. CSS) have been moved to
/usr/share/sourcehut/static, from their previous location at
/usr/lib/python3.x.
Web server configurations (e.g. nginx, caddy) will have to be updated
accordingly.
## Executables renamed
All executables have been updated to use a consistent naming convention.
Executables previously called e.g. "gitsrht-dispatch" are now called
e.g. "git.sr.ht-dispatch". This requires manual intervention in a few
cases.
### Cronjobs
Many services have cronjobs, such as "gitsrht-periodic" or
"metasrht-daily". These have been renamed to e.g. "git.sr.ht-periodic"
or "meta.sr.ht-periodic", and downstreams are required to update their
cronjobs accordingly.
### SSH dispatch pipeline
gitsrht-dispatch has been renamed to git.sr.ht-dispatch, requiring a
manual change to sshd_config on servers using the SSH pipeline.
The [git.sr.ht::dispatch] section of your config.ini will also have to
rename some later steps in the pipeline, such as changing "gitsrht-keys"
to "git.sr.ht-keys".
Note as well that the log file paths have changed, from e.g.
/var/log/gitsrht-dispatch to /var/log/git.sr.ht-dispatch. The
administrator may wish to rename them prior to the upgrade, or dispose
of obsolete log files after.
### Post-update scripts
git.sr.ht and hg.sr.ht use a post-update script which is invoked on push
operations to their respective repository stores, previously called,
respectively, gitsrht-update-hook and hgsrht-hook-changegroup. These are
now called git.sr.ht-update-hook and hg.sr.ht-hook-changeroup.
config.ini must be updated to install the new hooks for new repositories
via [git.sr.ht]post-update-script and [hg.sr.ht]changegroup-script.
Additionally, existing repositories must have the new executable name
backfilled into their hook configurations. If you want the "express"
solution and don't want to bother backfilling existing repositories,
create the appropriate symlinks:
doas ln -s /usr/bin/git.sr.ht-update-hook \
/usr/bin/gitsrht-update-hook
doas ln -s /usr/bin/hg.sr.ht-hook-changegroup \
/usr/bin/hg.sr.ht-hook-changegroup
To update existing repositories to use the new hook, use scripts
provided in contrib/ for this purpose:
https://git.sr.ht/~sircmpwn/git.sr.ht/tree/master/item/contrib/ensure-hooks
https://hg.sr.ht/~sircmpwn/hg.sr.ht/browse/contrib/ensure-hooks?rev=tip