gmid/site/index.gmi

76 lines
2.3 KiB
Plaintext
Raw Normal View History

2021-10-04 12:42:35 +02:00
# gmid
> A Gemini server
## Features
* sandboxed by default on OpenBSD, FreeBSD and Linux
* able to reload the configuration on-the-fly without loosing connections
* punycode and IRI support
2021-12-29 21:53:22 +01:00
* reverse proxying
2021-10-04 12:42:35 +02:00
* CGI and FastCGI support
* virtual hosts and per-location rules
* low memory footprint
* event-based asynchronous I/O model
* rich configuration file
2022-01-28 09:34:39 +01:00
gmid also bundles a small gemini client called gg (gemini get)
=> gmid.1.MANEXT gmid(1) manpage
=> gmid.conf.5.MANEXT gmid.conf(5) manpage
2022-01-28 09:34:39 +01:00
=> gg.1.MANEXT gg(1) manpage
2021-10-04 12:42:35 +02:00
## Install
Some distros provide a package — thanks to the maintainers!
2022-01-28 09:34:39 +01:00
=> REPOLOGY Repology: packaging status for gmid
2021-10-04 12:42:35 +02:00
Source code and precompiled binaries for linux are available:
2022-01-28 09:34:39 +01:00
=> GITHUB/releases/download/VERS/gmid-VERS.tar.gz gmid-VERS.tar.gz
2022-03-27 15:42:31 +02:00
=> GITHUB/releases/download/VERS/gmid-VERS.tar.bz2 gmid-VERS.tar.bz2
2021-10-04 12:42:35 +02:00
=> https://git.omarpolo.com/gmid/ git repository
=> gemini://git.omarpolo.com/gmid.git/ git repository via Gemini
2022-01-28 09:34:39 +01:00
=> GITHUB GitHub mirror
2021-10-04 12:42:35 +02:00
2022-01-28 09:34:39 +01:00
=> GITHUB/releases/download/VERS/gmid.linux.amd64 gmid.linux.amd64
2021-10-04 12:42:35 +02:00
When in doubt, compile from source: its easy and takes less than a minute on a raspberry pi 3. The dependencies are:
* libevent
* OpenSSL/LibreSSL
* libtls (from either LibreSSL or LibreTLS)
* yacc or GNU bison
Once all the dependencies are installed, building is as easy as:
```Example of how to compile from source
2022-01-28 09:34:39 +01:00
$ curl -LO GITHUB/releases/download/VERS/gmid-VERS.tar.gz
$ tar xzvf gmid-VERS.tar.gz
$ cd gmid-VERS
2021-10-04 12:42:35 +02:00
$ ./configure
$ make
$ sudo make install # eventually
```
2022-01-28 09:34:39 +01:00
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.
2021-10-04 12:42:35 +02:00
2022-01-28 09:34:39 +01:00
=> GITHUB/releases/download/VERS/SHA256 SHA256
=> GITHUB/releases/download/VERS/SHA256 SHA256.gpg
=> GITHUB/releases/download/VERS/SHA256.sig SHA256.sig
2021-10-04 12:42:35 +02:00
To verify the signatures with signify(1)
```Example of how to verify the signature with signify
2022-01-30 14:35:45 +01:00
% signify -C -p gmid-1.8.pub -x SHA256.sig
2021-10-04 12:42:35 +02:00
Signature Verified
2022-01-30 14:35:45 +01:00
gg.linux.amd64: OK
gmid-1.8.2-binaries.tar.gz: OK
gmid-1.8.2.tar.gz: OK
2021-10-04 12:42:35 +02:00
gmid-1.8.pub: OK
2022-01-30 14:35:45 +01:00
gmid-1.9.pub: OK
2021-10-04 12:42:35 +02:00
gmid.linux.amd64: OK
```