Skip to content

Commit af4f4c0

Browse files
authored
chore: update installation documentation via cli (#323)
1 parent dbe1f7a commit af4f4c0

File tree

4 files changed

+94
-32
lines changed

4 files changed

+94
-32
lines changed

README.md

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -76,32 +76,56 @@ Nixopus streamlines your workflow with comprehensive tools for deployment, monit
7676

7777
This section will help you set up Nixopus on your VPS quickly.
7878

79-
To install Nixopus on your VPS, ensure you have sudo access and run the following command:
79+
### Install the Nixopus CLI
8080

81+
First, install the Nixopus CLI tool:
82+
83+
```bash
84+
curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install-cli.sh | sudo bash
8185
```
82-
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install.sh)"
86+
87+
### Self Host Nixopus on your VPS
88+
89+
Once the CLI is installed, you can self host Nixopus on your VPS:
90+
91+
```bash
92+
nixopus install
8393
```
8494

8595
#### Optional Parameters
8696

8797
You can customize your installation by providing the following optional parameters:
8898

89-
- `--api-domain`: Specify the domain where the Nixopus API will be accessible (e.g., `nixopusapi.example.tld`)
90-
- `--app-domain`: Specify the domain where the Nixopus app will be accessible (e.g., `nixopus.example.tld`)
91-
- `--email` or `-e`: Set the email for the admin account
92-
- `--password` or `-p`: Set the password for the admin account
99+
- `--api-domain` or `-ad`: Specify the domain where the Nixopus API will be accessible (e.g., `nixopusapi.example.tld`)
100+
- `--view-domain` or `-vd`: Specify the domain where the Nixopus app will be accessible (e.g., `nixopus.example.tld`)
101+
- `--verbose` or `-v`: Show more details while installing
102+
- `--timeout` or `-t`: Set timeout for each step (default: 300 seconds)
103+
- `--force` or `-f`: Replace files if they already exist
104+
- `--dry-run` or `-d`: See what would happen without making changes
105+
- `--config-file` or `-c`: Path to custom config file (defaults to built-in [`config.prod.yaml`](https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/helpers/config.prod.yaml))
93106

94107
Example with optional parameters:
95108

96-
```
97-
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install.sh)" -- \
109+
```bash
110+
nixopus install \
98111
--api-domain nixopusapi.example.tld \
99-
--app-domain nixopus.example.tld \
100-
101-
--password Adminpassword@123 \
102-
--env production
112+
--view-domain nixopus.example.tld \
113+
--verbose \
114+
--timeout 600
103115
```
104116

117+
#### Additional CLI Commands
118+
119+
The Nixopus CLI provides several other useful commands:
120+
121+
- `nixopus preflight` - Check system requirements before installation
122+
- `nixopus install deps` - Install only dependencies
123+
- `nixopus install ssh` - Generate SSH keys for deployment
124+
- `nixopus service` - Manage Nixopus services
125+
- `nixopus uninstall` - Remove Nixopus from your system
126+
127+
Run `nixopus --help` to see all available commands.
128+
105129
## About the Name
106130

107131
Nixopus is derived from the combination of "octopus" and the Linux penguin (Tux). While the name might suggest a connection to [NixOS](https://nixos.org/), Nixopus is an independent project with no direct relation to NixOS or its ecosystem.

docs/cli/installation.md

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,7 @@ python3 --version
1919
Download and install the pre-built binary for your platform:
2020

2121
```bash
22-
# Download and run the install script
23-
curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/master/cli/install.sh | bash
24-
25-
# Or for local installation (no sudo required)
26-
curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/master/cli/install.sh | bash -s -- --local
22+
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install-cli.sh)"
2723
```
2824

2925
**Install script options:**
@@ -115,6 +111,29 @@ Expected output:
115111
└─────────────────────────────────────────────────┘
116112
```
117113

114+
## Next Steps: Installing Nixopus
115+
116+
Once the CLI is installed, you can use it to install Nixopus on your VPS:
117+
118+
```bash
119+
# Basic installation
120+
nixopus install
121+
122+
# Installation with custom domains
123+
nixopus install \
124+
--api-domain api.example.com \
125+
--view-domain app.example.com \
126+
--verbose
127+
128+
# Check system requirements first
129+
nixopus preflight
130+
131+
# Install only dependencies
132+
nixopus install deps
133+
```
134+
135+
For detailed installation options, see the [Installation Guide](../install/index.md).
136+
118137
## Troubleshooting
119138

120139
### Command Not Found

docs/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ hero:
99
<div style="display: flex; justify-content: center; align-items: center; margin: 1.5em 0;">
1010
<div style="position: relative; display: inline-flex; align-items: center; background: rgba(0,0,0,0.18); border-radius: 12px; border: 1px solid #a78bfa; overflow: hidden; box-shadow: 0 4px 12px rgba(0,0,0,0.15); min-width: 400px; max-width: 90vw;">
1111
<div style="flex: 1; padding: 1.2em 1.5em; font-family: 'Fira Code', 'Monaco', 'Consolas', monospace; font-size: 1.05em; color: #fff; background: rgba(0,0,0,0.18); overflow-x: auto; white-space: nowrap; max-width: 600px;">
12-
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install.sh)"
12+
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install-cli.sh)"
1313
</div>
14-
<button onclick="navigator.clipboard.writeText('curl -sSL https://nixopus.sh/install.sh | bash'); this.innerText='Copied!'; setTimeout(()=>this.innerText='Copy',1200);" style="color: #fff; border: none; padding: 1.2em 1.5em; font-weight: 600; font-size: 0.9em; cursor: pointer; transition: all 0.2s; outline: none; border-left: 1px solid #a78bfa; min-width: 80px; display: flex; align-items: center; justify-content: center;">Copy</button>
14+
<button onclick="navigator.clipboard.writeText('sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install-cli.sh)"'); this.innerText='Copied!'; setTimeout(()=>this.innerText='Copy',1200);" style="color: #fff; border: none; padding: 1.2em 1.5em; font-weight: 600; font-size: 0.9em; cursor: pointer; transition: all 0.2s; outline: none; border-left: 1px solid #a78bfa; min-width: 80px; display: flex; align-items: center; justify-content: center;">Copy</button>
1515
</div>
1616
</div>
1717
<SponsorsMarquee />

docs/install/index.md

Lines changed: 32 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,49 @@
22

33
Welcome to the Nixopus installation guide. This section will help you set up Nixopus on your VPS quickly.
44

5-
To install Nixopus on your VPS, ensure you have sudo access and run the following command:
5+
## Prerequisites
66

7+
- **VPS with sudo access**
8+
- **Nixopus CLI installed** (see [CLI Installation Guide](../cli/installation.md))
9+
10+
## Quick Installation
11+
12+
### Step 1: Install the Nixopus CLI
13+
14+
First, install the Nixopus CLI tool:
15+
16+
```bash
17+
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install-cli.sh)"
718
```
8-
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install.sh)"
19+
20+
### Step 2: Install Nixopus on your VPS
21+
22+
Once the CLI is installed, you can install Nixopus on your VPS:
23+
24+
```bash
25+
nixopus install
926
```
1027

11-
## Optional Parameters
28+
## Installation Options
1229

1330
You can customize your installation by providing the following optional parameters:
1431

15-
- `--api-domain`: Specify the domain where the Nixopus API will be accessible (e.g., `nixopusapi.example.tld`)
16-
- `--app-domain`: Specify the domain where the Nixopus app will be accessible (e.g., `nixopus.example.tld`)
17-
- `--email` or `-e`: Set the email for the admin account
18-
- `--password` or `-p`: Set the password for the admin account
32+
- `--api-domain` or `-ad`: Specify the domain where the Nixopus API will be accessible (e.g., `nixopusapi.example.tld`)
33+
- `--view-domain` or `-vd`: Specify the domain where the Nixopus app will be accessible (e.g., `nixopus.example.tld`)
34+
- `--verbose` or `-v`: Show more details while installing
35+
- `--timeout` or `-t`: Set timeout for each step (default: 300 seconds)
36+
- `--force` or `-f`: Replace files if they already exist
37+
- `--dry-run` or `-d`: See what would happen without making changes
38+
- `--config-file` or `-c`: Path to custom config file (defaults to built-in [`config.prod.yaml`](https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/helpers/config.prod.yaml))
1939

2040
Example with optional parameters:
2141

22-
```
23-
sudo bash -c "$(curl -sSL https://raw.githubusercontent.com/raghavyuva/nixopus/refs/heads/master/scripts/install.sh)" -- \
42+
```bash
43+
nixopus install \
2444
--api-domain nixopusapi.example.tld \
25-
--app-domain nixopus.example.tld \
26-
27-
--password Adminpassword@123 \
28-
--env production
45+
--view-domain nixopus.example.tld \
46+
--verbose \
47+
--timeout 600
2948
```
3049

3150
## Accessing Nixopus

0 commit comments

Comments
 (0)