5ca4b8d4f7803f0b1b6958735bd3ef90fd1513bc
- Author
- Christian Rocha <christian@rocha.is>
- Committer
- Christian Rocha <christian@rocha.is>
- Date
Message
Diff
This diff is truncated to protect this page.
1diff --git a/README.md b/README.md
2index 8e3c1d4a99e503d66630732abddb40bb6303ab7f..a75ed45604d8884f067c52a6c1148f6cc7e59a2e 100644
3--- a/README.md
4+++ b/README.md
5@@ -1,80 +1,87 @@
6-# Soft Serve
7+Soft Serve
8+==========
9
10-A tasty Git server. Self-hosted with a built in SSH powered TUI.
11+A tasty Git server that runs its own SSH service. 🍦
12
13-## What is it?
14+* Configure with `git`
15+* Create repos on demand with `git push`
16+* Browse repos with an SSH-accessible TUI
17+* Easy access control
18+ - Allow/disallow anonymous access
19+ - Add collaborators with SSH public keys
20+ - Repos can be public or private
21
22-Soft Serve is a Git server that runs its own SSH service, allows repo creation
23-on first push, is configured by cloning a `config` repo and provides a TUI
24-accessible to anyone over SSH without having to worry about setting up accounts
25-on the host machine. Give it a shot!
26+## What does it look like?
27
28-```
29-ssh beta.charm.sh
30-```
31+Just run `ssh beta.charm.sh` for an example.
32
33-## Installing / Building
34+## Building/installing
35
36-The Soft Serve command is called `soft`. You can build it with `go`.
37+The Soft Serve command is called `soft`. You can build and install it with
38+`go`:
39
40-```
41-cd cmd/soft
42-go build
43+```bash
44+git clone ssh://beta.charm.sh/soft-serve
45+cd soft-serve/cmd/soft
46+go install
47 ```
48
49 ## Setting up a server
50
51-Make sure `git` is installed, then run `soft`.
52+Make sure `git` is installed, then run `soft`. That’s it.
53
54-## Configuring
55+## Configuration
56
57-When Soft Serve is run for the first time, it creates a configuration repo that
58-contains the README displayed for Home and user access control. By default the
59-`config` repo is publicly writable, so be sure to setup your access as desired.
60-You can also set the `SOFT_SERVE_AUTH_KEY` environment variable and it will
61-restrict access to that initial public key.
62+When `soft` is run for the first time, it creates a configuration repo
63+containing the main README displayed in the TUI as well as a config file for
64+user access control.
65
66 ```
67 git clone ssh://localhost:23231/config
68 ```
69
70-## Pushing a repo
71+The `config` repo is publicly writable by default, so be sure to setup your
72+access as desired. You can also set the `SOFT_SERVE_INITIAL_ADMIN_KEY`
73+environment variable before first run and it will restrict access to that
74+initial public key until you configure things otherwise.
75+
76+## Pushing (and creating!) repos
77
78-You can add your Soft Serve server as a remote to any existing repo.
79+You can add your Soft Serve server as a remote to any existing repo:
80
81 ```
82 git remote add soft ssh://localhost:23231/REPO
83 ```
84
85-After you've added the remote, you can push. If it's a new repo, it will be
86-automatically added to the server.
87+After you’ve added the remote just go ahead and push. If the repo doesn’t exist
88+on the server it’ll be created.
89
90 ```
91 git push soft main
92 ```
93
94-## Soft Serve TUI
95+## The Soft Serve TUI
96
97-Soft Serve provides a TUI over SSH to browse repos, view READMEs, and grab
98-clone commands.
99+Soft Serve serves a TUI over SSH for browsing repos, viewing READMEs, and
100+grabbing clone commands:
101
102 ```
103 ssh localhost -p 23231
104 ```