Blob


1 # gmid
3 > A Gemini server
5 ## Features
7 * sandboxed by default on OpenBSD, FreeBSD and Linux
8 * able to reload the configuration on-the-fly without loosing connections
9 * punycode and IRI support
10 * reverse proxying
11 * CGI and FastCGI support
12 * virtual hosts and per-location rules
13 * low memory footprint
14 * event-based asynchronous I/O model
15 * rich configuration file
17 gmid also bundles a small gemini client called ‘gg’ (gemini get)
19 => gmid.1.MANEXT gmid(1) manpage
20 => gg.1.MANEXT gg(1) manpage
22 ## Install
24 Some distros provide a package — thanks to the maintainers!
26 => REPOLOGY Repology: packaging status for gmid
28 Source code and precompiled binaries for linux are available:
30 => GITHUB/releases/download/VERS/gmid-VERS.tar.gz gmid-VERS.tar.gz
31 => GITHUB/releases/download/VERS/gmid-VERS.tar.bz2 gmid-VERS.tar.bz2
33 => https://git.omarpolo.com/gmid/ git repository
34 => gemini://git.omarpolo.com/gmid.git/ git repository via Gemini
35 => GITHUB GitHub mirror
37 => GITHUB/releases/download/VERS/gmid.linux.aarch64 gmid.linux.aarch64
38 => GITHUB/releases/download/VERS/gmid.linux.amd64 gmid.linux.amd64
40 When in doubt, compile from source: it’s easy and takes less than a minute on a raspberry pi 3. The dependencies are:
42 * libevent
43 * OpenSSL/LibreSSL
44 * libtls (from either LibreSSL or LibreTLS)
45 * yacc or GNU bison
47 Once all the dependencies are installed, building is as easy as:
49 ```Example of how to compile from source
50 $ curl -LO GITHUB/releases/download/VERS/gmid-VERS.tar.gz
51 $ tar xzvf gmid-VERS.tar.gz
52 $ cd gmid-VERS
53 $ ./configure
54 $ make
55 $ sudo make install # eventually
56 ```
58 A SHA256 file is available. However, that only checks for accidental corruption: you can use signify (SHA256.sig and the public key gmid-CURV.pub) or GPG. The hash of the signify public key is also included in the SHA256 file and thus signed with my GPG. The signify public key for the next release ‘gmid-NEXTV.pub’ is also included.
60 => GITHUB/releases/download/VERS/SHA256 SHA256
61 => GITHUB/releases/download/VERS/SHA256 SHA256.gpg
62 => GITHUB/releases/download/VERS/SHA256.sig SHA256.sig
64 To verify the signatures with signify(1)
66 ```Example of how to verify the signature with signify
67 % signify -C -p gmid-1.8.pub -x SHA256.sig
68 Signature Verified
69 gg.linux.amd64: OK
70 gmid-1.8.2-binaries.tar.gz: OK
71 gmid-1.8.2.tar.gz: OK
72 gmid-1.8.pub: OK
73 gmid-1.9.pub: OK
74 gmid.linux.amd64: OK
75 ```