docs(readme,hosting): improve docs

This commit is contained in:
Dustin Stiles 2025-03-24 18:21:00 -04:00
parent 9ea34cf622
commit 04004f5fc2
Signed by: duwstiles
GPG Key ID: BCD9912EC231FC87
2 changed files with 44 additions and 28 deletions

View File

@ -1,8 +1,6 @@
# dsfx # Distributed Secure File Exchange (dsfx)
> Distributed Secure File Exchange > DSFX is a next generation data exchange designed to be user friendly and excessively secure.
_DSFX is a next generation file exchange that that liberates users from big tech._
## Documentation ## Documentation

View File

@ -1,28 +1,52 @@
# Hosting # Hosting
## Installation This document describes how to set up and run your own DSFX server. It is
intended for users who want to run their own instance of DSFX, either for
testing or for production use. If you are looking for the DSFX client, please
see the [operating docs](./operating.md). If you are looking for the DSFX
administration docs, please see the [administration docs](./administration.md).
- [Setup](#setup)
- [Dependencies](#dependencies)
- [Git Setup](#git-setup)
- [Binary Installation](#binary-installation)
- [Running](#running)
- [Configuration](#configuration)
- [Local Files](#local-files)
---
## Setup
Due to the maturity of the project, we haven't yet created a release strategy. Due to the maturity of the project, we haven't yet created a release strategy.
In order to install DSFX, we recommend building the project from source. We have, however, fully embraced the go ecosystem - so you can use the go
toolchain to install the project from source. This is the recommended way to
install the project, as it will always give you the latest version of the code.
### Dependencies ### Dependencies
In order to build the project from source, you will need to have git installed - [git](https://git-scm.com/)
on your system, as well as the go compiler. You can install these dependencies - [golang](https://go.dev/)
using your system's package manager. For example, on Ubuntu, you can run:
```bash In many cases, these tools are available in your system package manager. Here
sudo apt-get install git golang are a few commands for various operating systems (not comprehensive):
```
- **Ubuntu**: `sudo apt-get install git golang`
- **Fedora**: `sudo dnf install git golang`
- **Arch**: `sudo pacman -S git go`
- **macOS**: `brew install git go`
If the above commands don't work for you, please refer to the official
documentation for your operating system.
### Git Setup ### Git Setup
Currently we are hosted on **gitea cloud**, which hides everything from the Currently we are hosted on **gitea cloud**, which hides everything from the
public internet by default. This means that you will need to authenticate with public internet by default. This means that the machine you are deploying to
your gitea account as if you were cloning a private repository, even though our will need to be able to access the gitea cloud instance. One way to do this is
repository is public. An easy way to do this is with the `.netrc` file combined to use the `.netrc` file in conjunction with a personal access token. Once you
with a personal access token. You can create a `.netrc` file in your home directory have a personal access token, you can create a `.netrc` file in your home
with the following contents: directory with the following contents:
```plaintext ```plaintext
machine koti.casa login <your username> password <gitea personal access token> machine koti.casa login <your username> password <gitea personal access token>
@ -38,7 +62,7 @@ export GOPRIVATE=koti.casa
If you want to persist this setting across sessions, you can add the above line to your If you want to persist this setting across sessions, you can add the above line to your
`~/.bashrc` or `~/.bash_profile`. `~/.bashrc` or `~/.bash_profile`.
### Installation ### Binary Installation
Now that you have the go toolchain set up with access to our repository, you can simply install the Now that you have the go toolchain set up with access to our repository, you can simply install the
project by using the `go install` command. project by using the `go install` command.
@ -49,16 +73,10 @@ go install koti.casa/numenorlabs/dsfx/cmd/dsfx@main
### Running ### Running
You can run the DSFX server using the `dsfx` command, which will be available in your `$GOPATH/bin` If you are familiar with the go toolchain, you can run the executables in the
directory after installation. If you have added `$GOPATH/bin` to your `PATH`, you can run the server `cmd` directory directly. For other users, we recommend using the `go run`
directly from the command line: command to run the project. This will automatically download and install the
dependencies for you, and run the project in a single command.
```bash
dsfx
```
Optionally, you can run the command directly via the `go run` command if you prefer not to install
the project globally. This can be done with the following command:
```bash ```bash
go run koti.casa/numenorlabs/dsfx/cmd/dsfx@main go run koti.casa/numenorlabs/dsfx/cmd/dsfx@main