Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

A free and open-source forge that lives in your Git repo.

Code

392 commit(s) on main

Merge change request 01M70WES5ZZDJ6RP226WB11BBZ: Let people rename and remove their own passkeys keenan · 17m ago 4b8c9e1d
history blame raw 1.1 KiB
1#!/bin/sh
2# Runs after install and after every upgrade, as root, for both .deb and .rpm.
3#
4# It creates the service account and prepares the instance the shipped config
5# names. It does not create an administrator or start the service: on Debian the
6# package manager starts enabled units itself, and on RHEL the unit is not enabled
7# until an operator does it. Either way, who may administer the instance is the
8# operator's decision, not the package's.
9set -e
10
11if ! getent group vole >/dev/null 2>&1; then
12 groupadd --system vole
13fi
14if ! getent passwd vole >/dev/null 2>&1; then
15 useradd --system --gid vole --home-dir /var/lib/vole --no-create-home \
16 --shell /usr/sbin/nologin --comment "Vole software forge" vole
17fi
18
19install -d -o vole -g vole -m 0750 /var/lib/vole
20
21# Init is idempotent: it leaves an existing config, repository tree, and database
22# alone. Running it as the service account keeps the data it creates writable by
23# the service, and a failed upgrade never leaves root-owned state behind.
24su -s /bin/sh vole -c 'umask 0027; /usr/bin/vole admin init --config /etc/vole/vole.toml' </dev/null
25
26exit 0
27