secretshop/README.md

73 lines
2.4 KiB
Markdown
Raw Normal View History

2020-02-21 21:13:54 +00:00
# SecretShop: a small Gemini server.
2020-02-13 01:29:32 +00:00
2020-02-21 21:13:54 +00:00
## Features
2020-02-19 20:26:46 +00:00
* Multi-site hosting
2020-02-20 22:03:34 +00:00
* Also supports simple Gopher hosting
2020-02-13 01:52:11 +00:00
* Fully compliant with Jetforce diagnostics
* Probably won't kill your computer
2020-02-13 01:29:32 +00:00
2020-05-15 00:34:07 +00:00
## Where to get it
git clone https://git.saintnet.tech/stryan/secretshop.git
I also release binaries at https://build.opensuse.org/project/show/home:stryan
2020-05-15 01:17:26 +00:00
The release tab also has pre-generated archives if you don't want to run master.
2020-02-21 21:13:54 +00:00
## Configuration
2020-02-13 01:29:32 +00:00
SecretShop looks in it's current running directory and /etc/secretshop for it's config file.
Configuration is in config/yaml in one of the above directories. See the sample config for more details
but a standard file looks like such:
2020-02-21 21:13:54 +00:00
---
2020-02-22 21:17:38 +00:00
port: 1965
2020-02-21 21:13:54 +00:00
active_capsules:
- localhost
localhost:
Hostname: "localhost"
Port: "1965"
RootDir: "/var/gemini"
CGIDir: "/var/gemini/cgi"
KeyFile: "localhost.key"
CertFile: "localhost.crt"
2020-02-13 01:29:32 +00:00
2020-02-22 21:17:38 +00:00
Where each "active_capsule" is a virtual Gemini capsule. SecretShop supports virtual Gemini capsules all listening on port 1965
as well as multiple Gopher servers runnning (though not virtual Gopher hosts due to protocol limitations)
2020-02-21 21:13:54 +00:00
## Building
2020-04-27 20:02:23 +00:00
Build Dependencies: go1.14
2020-02-21 21:13:54 +00:00
Running "make" should work for any given x86 machine.
If you're planning on running this on a Raspberry Pi or other ARM machine try
env GOOS=linux GOARCH=arm GOARM=5 make
## Installation
2020-02-21 21:10:08 +00:00
Running "make install" will install to /usr/local/bin by default.
Running "make service" will install to /usr/local/bin and also install the systemd service file
2020-02-21 21:13:54 +00:00
## Uninstall
Simply run "make uninstall".
2020-02-21 21:10:08 +00:00
2020-02-21 21:13:54 +00:00
## Running
2020-02-13 01:29:32 +00:00
Either run the executable directly or use the SystemD unit file
2020-04-27 20:01:08 +00:00
## Caveats
2020-05-14 22:17:44 +00:00
Currently does not support transient certificates
Only handles whitelisting for certificate authorization
2020-05-14 23:49:10 +00:00
## Licensing
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.