Blame


1 ae6870fa 2021-10-04 op => / Home
2 7c6bf71d 2021-10-11 op => /quickstart.gmi Quickstart
3 ae6870fa 2021-10-04 op => /gmid.1.txt docs
4 ae6870fa 2021-10-04 op
5 ae6870fa 2021-10-04 op # Contrib
6 ae6870fa 2021-10-04 op
7 ae6870fa 2021-10-04 op This directory is for additional contributed files which may be useful.
8 ae6870fa 2021-10-04 op
9 ae6870fa 2021-10-04 op ## Dockerfile
10 ae6870fa 2021-10-04 op
11 ae6870fa 2021-10-04 op => https://git.omarpolo.com/gmid/tree/contrib/Dockerfile contrib/Dockerfile
12 ae6870fa 2021-10-04 op
13 ae6870fa 2021-10-04 op A sample Dockerfile. The resulting image is a classic alpine linux image with a statically linked gmid installed as /bin/gmid.
14 ae6870fa 2021-10-04 op To build the image:
15 ae6870fa 2021-10-04 op
16 ae6870fa 2021-10-04 op ```instructions to build the image
17 ae6870fa 2021-10-04 op # docker build -f contrib/Dockerfile -t gmid .
18 ae6870fa 2021-10-04 op ```
19 9212cf1b 2021-10-04 op
20 ae6870fa 2021-10-04 op and then run it with something along the lines of:
21 9212cf1b 2021-10-04 op
22 ae6870fa 2021-10-04 op ```instruction to run the image
23 ae6870fa 2021-10-04 op # docker run --rm -it -p 1965:1965 \
24 ae6870fa 2021-10-04 op -v gmid.conf:/etc/gmid.conf:ro \
25 ae6870fa 2021-10-04 op -v path/to/keys:/tls:ro \
26 ae6870fa 2021-10-04 op -v /var/gemini:/var/gemini:ro \
27 ae6870fa 2021-10-04 op gmid -c /etc/gmid.conf
28 ae6870fa 2021-10-04 op ```
29 ae6870fa 2021-10-04 op
30 a83ba844 2021-10-09 op ## gencert
31 a83ba844 2021-10-09 op
32 a83ba844 2021-10-09 op => https://git.omarpolo.com/gmid/tree/contrib/gencert contrib/gencert
33 a83ba844 2021-10-09 op
34 a83ba844 2021-10-09 op contrib/gencert is a simple script to generate self-signed certificates.
35 a83ba844 2021-10-09 op
36 ae6870fa 2021-10-04 op ## OpenBSD rc file
37 ae6870fa 2021-10-04 op
38 ae6870fa 2021-10-04 op => https://git.omarpolo.com/gmid/tree/contrib/gmid contrib/gmid
39 ae6870fa 2021-10-04 op
40 ae6870fa 2021-10-04 op contrib/gmid is a sample service file for OpenBSD rc(8). To install it:
41 9212cf1b 2021-10-04 op
42 ae6870fa 2021-10-04 op ```command to install the rc file
43 ae6870fa 2021-10-04 op # cp contrib/gmid /etc/rc.d
44 ae6870fa 2021-10-04 op ```
45 9212cf1b 2021-10-04 op
46 ae6870fa 2021-10-04 op then the usual ‘rcctl [start|stop|enable|restart] gmid’ are available.
47 ae6870fa 2021-10-04 op
48 ae6870fa 2021-10-04 op ## Systemd unit file
49 ae6870fa 2021-10-04 op
50 ae6870fa 2021-10-04 op => https://git.omarpolo.com/gmid/tree/contrib/gmid.service gmid.service
51 ae6870fa 2021-10-04 op
52 ae6870fa 2021-10-04 op A simple service file for systemd. To install it
53 9212cf1b 2021-10-04 op
54 ae6870fa 2021-10-04 op ```instructions to install the system file
55 ae6870fa 2021-10-04 op # cp contrib/gmid.service /lib/systemd/system/gmid.service
56 ae6870fa 2021-10-04 op ```
57 9212cf1b 2021-10-04 op
58 ae6870fa 2021-10-04 op then the usual ‘systemctl [status|start|enable|stop] gmid’ commands can be used to manage the server.
59 ae6870fa 2021-10-04 op
60 ae6870fa 2021-10-04 op Some things to keep in mind:
61 eb82dcfb 2021-10-04 op * the ExecStart path may depend on the installation
62 eb82dcfb 2021-10-04 op * a ‘gmid’ user needs to be create for e.g. with
63 ae6870fa 2021-10-04 op
64 eb82dcfb 2021-10-04 op ```how to create a dedicated user
65 eb82dcfb 2021-10-04 op # useradd --system --no-create-home -s /bin/nologin -c "gmid Gemini server" gmid
66 eb82dcfb 2021-10-04 op ```
67 eb82dcfb 2021-10-04 op
68 eb82dcfb 2021-10-04 op * logs can be inspected with journalctl(1)
69 eb82dcfb 2021-10-04 op
70 eb82dcfb 2021-10-04 op ```reads gmid logs with journalctl
71 eb82dcfb 2021-10-04 op # journalctl -t gmid
72 eb82dcfb 2021-10-04 op ```
73 eb82dcfb 2021-10-04 op
74 c0f81ed3 2021-10-11 op ## renew certificates automatically
75 c0f81ed3 2021-10-11 op
76 c0f81ed3 2021-10-11 op => https://git.omarpolo.com/gmid/tree/contrib/renew-certs contrib/renew-certs
77 c0f81ed3 2021-10-11 op
78 79c3a021 2021-12-10 op NB: this script requires features that are currently available only in the master branch.
79 79c3a021 2021-12-10 op
80 c0f81ed3 2021-10-11 op contrib/renew-certs is a script meant to be run in a crontab that watch for certificate expiration. It can optionally renew the certs and restart gmid too.
81 c0f81ed3 2021-10-11 op
82 c0f81ed3 2021-10-11 op Read the documentation with: perldoc renew-certs
83 c0f81ed3 2021-10-11 op
84 ae6870fa 2021-10-04 op ## Vim syntax files
85 ae6870fa 2021-10-04 op
86 ae6870fa 2021-10-04 op => https://git.omarpolo.com/gmid/tree/contrib/vim contrib/vim
87 ae6870fa 2021-10-04 op
88 ae6870fa 2021-10-04 op contrib/vim contains a syntax highlighting for vim. To install it, just copy the files to ~/.vim or to /usr/share/vim/vimfiles, e.g.:
89 9212cf1b 2021-10-04 op
90 ae6870fa 2021-10-04 op ```install the vim syntax highlight in your home
91 ae6870fa 2021-10-04 op $ mkdir -p ~/.vim
92 ae6870fa 2021-10-04 op $ cp -R contrib/vim/* ~/.vim/
93 ae6870fa 2021-10-04 op ```
94 ae6870fa 2021-10-04 op
95 ae6870fa 2021-10-04 op To enable Syntastic checker, add to your vimrc:
96 9212cf1b 2021-10-04 op
97 ae6870fa 2021-10-04 op ```
98 ae6870fa 2021-10-04 op let g:syntastic_gmid_checkers = ['gmid']
99 ae6870fa 2021-10-04 op ```
100 ae6870fa 2021-10-04 op
101 ae6870fa 2021-10-04 op => vim-screenshot.png Screenshot of vim editing gmid.conf