summaryrefslogtreecommitdiff
path: root/topics/systems/shepherd.gmi
blob: d67d9d695013aa4c3c7f8d5d332021ad6edb079e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# Shepherd

## Tags

* assigned: pjotrp, efraimf
* type: documentation
* keywords: system, shepherd
* status: wip
* priority: unclear

## Description

On Debian based systems we run shepherd as a shepherd user. The service gets started up through systemd.
There is currently a systemd service to automatically start shepherd
on system boot-up. A copy of the service lives in the shepherd-service
repository.

The process for deploying the services:

symlink shepherd-services/shepherd to $HOME/.config/shepherd
symlink shepherd-services/cron to $home/.config/cron
symlink shepherd-services/*sh to $HOME

When shepherd starts up it should start all the services. So currently
that's bnw, gitea, ipfs, power, rn6app, singlecell and the mcron
services, gitea-dump and pubmed.

To use shepherd's herd command the command is 'sudo -u shepherd
/home/shepherd/.guix-profile/bin/herd status'.

: /home/shepherd/.guix-profile/bin/herd status

Adding a bash alias, such as "alias herd-herd='sudo -u shepherd
/home/shepherd/.guix-profile/bin/herd'", will make it easier to
interact with shepherd without needing to switch to the shepherd
user. The logs for the various shepherd services are located in
/home/shepherd/logs/ but are not yet timestamped. The log for shepherd
itself is in /home/shepherd/.config/shepherd/shepherd.log. There is
not yet a way to change this from a config file.


```
[Unit]
Description=Launch user shepherd daemon
Wants=guix-daemon.service

[Service]
Type=oneshot
ExecStart=/var/guix/profiles/per-user/shepherd/guix-profile/bin/shepherd --socket=/home/shepherd/.config/shepherd/shepherd.sock
User=shepherd
Group=shepherd

[Install]
WantedBy=multi-user.target
```

=> https://git.genenetwork.org/efraim/shepherd-services Running shepherd services

## Notes

This seems to be documentation, and not necessarily a task, issue or enhancement to be worked on.
It is a topic.