4 <title>gmid | contrib</title>
5 <meta charset="utf8" />
6 <meta name="viewport" content="width=device-width, initial-scale=1" />
9 font-family: monospace;
51 strong::before { content: "*" }
52 strong::after { content: "*" }
57 background-color: #222;
70 background-color: #f0f0f0;
77 justify-content: center;
90 @media (prefers-color-scheme: dark) {
92 background-color: #222;
101 background-color: #ddd;
105 background-color: #353535;
113 @media (max-width: 400px) {
114 pre.banner { font-size: 9px; }
117 @media (max-width: 500px) {
118 pre.banner { font-size: 10px; }
125 <a href="index.html">Home</a> |
127 <a href="quickstart.html">Quickstart</a> |
128 <a href="gmid.1.html">docs</a>
133 This directory is for additional contributed files which may be
138 <li><a href="#dockerfile">Dockerfile</a></li>
139 <li><a href="#gencert">gencert</a></li>
140 <li><a href="#openbsd-rc">OpenBSD rc file</a></li>
141 <li><a href="#systemd-unit-file">Systemd unit file</a></li>
142 <li><a href="#vim-syntax-files">Vim syntax files</a></li>
145 <h2 id="dockerfile">Dockerfile</h2>
147 <a href="https://git.omarpolo.com/gmid/tree/contrib/Dockerfile">contrib/Dockerfile</a>
148 is a simple Dockerfile. The resulting image is a classic alpine
149 linux image with a statically linked gmid installed as
150 <code>/bin/gmid</code>.
152 <p>To build the image:</p>
153 <pre># docker build -f contrib/Dockerfile -t gmid .</pre>
154 <p>and then run it with something along the lines of:</p>
155 <pre># docker run --rm -it -p 1965:1965 \
156 -v gmid.conf:/etc/gmid.conf:ro \
157 -v path/to/keys:/tls:ro \
158 -v /var/gemini:/var/gemini:ro \
159 gmid -c /etc/gmid.conf</pre>
160 <h2 id="gencert">gencert</h2>
162 <a href="https://git.omarpolo.com/gmid/tree/contrib/gencert">contrib/gencert</a>
163 is a simple script to generate self-signed certificates.
165 <h2 id="openbsd-rc">OpenBSD rc file</h2>
167 <a href="https://git.omarpolo.com/gmid/tree/contrib/gmid">contrib/gmid</a>
168 is a sample service file for OpenBSD <code>rc(8)</code>.
171 <pre># cp contrib/gmid /etc/rc.d</pre>
174 <code>rcctl [start|stop|enable|restart] gmid</code>
177 <h2 id="systemd-unit-file">Systemd unit file</h2>
179 <a href="https://git.omarpolo.com/gmid/tree/contrib/gmid.service">contrib/gmid.service</a>
180 is a simple service file for
181 systemd. To install it:
183 <pre># cp contrib/gmid.service /lib/systemd/system/gmid.service</pre>
186 <code>systemctl [status|start|enable|stop] gmid</code>
187 commands can be used to manage the server.
189 <p>Some things to keep in mind:</p>
192 the <code>ExecStart</code> path may depend on the installation.
195 a <code>gmid</code> user needs to be created for e.g. with:
196 <pre># useradd --system --no-create-home -s /bin/nologin -c "gmid Gemini server" gmid</pre>
199 logs can be inspected with <code>journalctl(1)</code>:
200 <pre># journalctl -t gmid</pre>
203 <h2 id="vim-syntax-files">Vim syntax files</h2>
205 <a href="https://git.omarpolo.com/gmid/tree/contrib/vim">contrib/vim</a>
206 contains a syntax highlighting for vim. To install it, just
207 copy the files to <code>~/.vim</code>
208 or <code>/usr/share/vim/vimfiles</code>, e.g.
210 <pre>$ mkdir -p ~/.vim
211 $ cp -R contrib/vim/* ~/.vim/</pre>
212 <p>To enable Syntastic checker, add to your vimrc:</p>
213 <pre>let g:syntastic_gmid_checkers = ['gmid']</pre>
214 <p>The end result is something like this:</p>
215 <a href="vim-screenshot.png">
216 <img src="vim-screenshot.png" alt="Screenshot of vim editing gmid.conf with syntax highlighting" />