soyuz-cli/README.md

48 lines
2.3 KiB
Markdown
Raw Normal View History

2023-02-26 17:56:57 +11:00
# soyuz-cli
2023-04-02 08:52:18 +10:00
This is the sister application to [`soyuz-web`](https://github.com/hughrun/soyuz-web).
2023-02-26 17:56:57 +11:00
`soyuz-cli` can be used alone or on combination with `soyuz-web` to publish and syncronise a gemlog between your local machine and your gemini server.
2023-04-02 08:52:18 +10:00
It is mostly a wrapper around `rsync`. Additionally it will maintain an archive of posts for each year, and the latest 5 posts on your gemlog homepage.
2023-02-26 17:56:57 +11:00
## Assumptions
1. You are using MacOS locally and a unix-like OS on the server (it probably works on n*x locally but I haven't tested it)
2. If you have text _under_ the list of latest posts on your homepage, you have at least 5 posts listed already (I could have put in some logic to deal with this but I am lazy)
2023-04-02 08:52:18 +10:00
3. You have `rsync` and `ssh` installed on your local machine
2023-02-26 17:56:57 +11:00
4. You have read and write permission for your gemlog files on the server, with the same username as your local machine (otherwise file permissions get weird)
5. You have permission to install files at `/usr/local/bin` on your local machine
2023-04-02 08:52:18 +10:00
6. You publish posts one at a time, so each post will be published prior to the next one being drafted
2023-02-26 17:56:57 +11:00
## Installation
The easiest way to install `soyuz-cli` is using the install script. Note that these scripts **will overwrite any previously installed version**.
If you are using a recent version of MacOS, run this command in `Terminal`:
```sh
curl -kL https://hugh.run/install-soyuz | bash
```
To install for MacOS Mojave, run this command instead:
2023-02-26 17:56:57 +11:00
```sh
curl -kL https://hugh.run/install-soyuz-mojave | bash
2023-02-26 20:49:56 +11:00
```
2023-04-02 08:52:18 +10:00
Alternatively, you can build from source if you have rust and cargo installed.
## Set up
Once installed, run `soyuz settings` to create a new settings file. The settings file has the following values:
2023-04-02 08:54:29 +10:00
* `local_dir` - the directory on your local machine where your Gemini files are saved
2023-04-02 08:53:53 +10:00
* `remote_dir` - the SSH remote directory path to your files on the server. This includes the server name or ip address, so should look something like `gemini-server:/srv/gemini/example.com` or `username@123.456.789:/srv/gemini/example.com`.
* `editor` - the command to open the text editor you want to use. Defaults to `nano`.
2023-04-02 08:55:41 +10:00
* `index_heading` - the heading text above the latest posts listing on your homepage. If unsure, leave this on the default.
## Commands
Run `soyuz help` for a list of commands and what they do.