|
|
||
|---|---|---|
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| install.sh | ||
| README.md | ||
soyuz-cli
This is the sister application to soyuz-web.
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.
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.
Assumptions
- 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)
- 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)
- You have
rsyncandsshinstalled on your local machine - 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)
- You have permission to install files at
/usr/local/binon your local machine - You publish posts one at a time, so each post will be published prior to the next one being drafted
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:
curl -kL https://hugh.run/install-soyuz | bash
To install for MacOS Mojave, run this command instead:
curl -kL https://hugh.run/install-soyuz-mojave | bash
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:
local_dir- the directory on your local machine where your Gemini files are savedremote_dir- the SSH remote directory path to your files on the server. This includes the server name or ip address, so should look something likegemini-server:/srv/gemini/example.comorusername@123.456.789:/srv/gemini/example.com.editor- the command to open the text editor you want to use. Defaults tonano.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.