No description
Find a file
Sebastian Cabrera 90f9c9d954
Fix prompt() silently truncating multi-line pasted input
`prompt()` used a single `read -r`, which stops at the first newline.
If a pasted value (most notably join-data copied from the panel UI)
arrives with an embedded newline, everything after it was silently
dropped, and the leftover fragment would be consumed by the *next*
prompt instead. The truncated-but-still-valid-looking base64 could
still decode successfully, just missing trailing fields like `remote`,
producing a config.yml that fails at startup with "invalid remote
configuration, cannot connect to panel".

prompt() now drains any additional lines already buffered on the TTY
after the first read, so a multi-line paste is captured in full
without blocking on further keystrokes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-09 20:59:01 -04:00
install-wings.sh Fix prompt() silently truncating multi-line pasted input 2026-09-09 20:59:01 -04:00
README.md fix $cfg path 2026-08-17 21:29:56 -04:00
temp-env.sh slight update to temp env 2026-07-04 03:50:36 -04:00
update-forgejo.sh update forgejo update script now that its docker 2026-07-08 16:29:51 -04:00
update-panel.sh fix claude is kinda stupid still 2026-07-02 10:28:48 -04:00
update-wings.sh update wings update script 2026-07-01 16:18:23 -04:00

Seby's Hosting Scripts

Interactive installation scripts for Calagopus Wings nodes. This script installs:

  • Docker (optional, prompted)
  • Certbot SSL (optional, prompted)
  • Calagopus Wings (auto-detects x86_64 or ARM64)
  • Systemd service (via wings service-install)
  • Optional SSL configuration auto-wiring in config.yml

🚀 Quick Install (Copy & Paste)

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/install-wings.sh | bash

⚠️ Make sure ports 80 and 443 are open if you plan to enable SSL.


🔄 Update Scripts (Copy & Paste)

Update Forgejo

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-forgejo.sh | bash

Update Panel

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-panel.sh | bash

Update Wings

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-wings.sh | bash

Temp Environment

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/temp-env.sh | bash

📦 What the Script Does

1 Docker

  • Checks if Docker is installed
  • Prompts to install if missing
  • Default answer: No

2 SSL (Optional)

If you choose to enable SSL:

  • Installs certbot
  • Runs:
    certbot certonly --standalone -d yourdomain.com
    
  • Automatically modifies: /etc/calagopus-wings/config.yml From:
  ssl:
    enabled: false
    cert: ''
    key: ''

To:

  ssl:
    enabled: true
    cert: /etc/letsencrypt/live/yourdomain.com/fullchain.pem
    key: /etc/letsencrypt/live/yourdomain.com/privkey.pem

A backup of the config is created as:

/etc/calagopus-wings/config.yml.bak

3 Wings Binary

/usr/local/bin/wings

4 Configuration

Optionally runs:

wings configure --join-data <token>

Then optionally installs as a systemd service:

wings service-install

service-install automatically:

  • Creates systemd unit
  • Reloads daemon
  • Enables service
  • Starts service

🧱 Requirements

  • Debian / Ubuntu based system
  • apt
  • Root or sudo access
  • Ports 80/443 open (for SSL standalone mode)

🔐 Security Note

Always inspect remote scripts before running them:

curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/install-wings.sh
curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-forgejo.sh
curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-panel.sh
curl -fsSL https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/update-wings.sh

🛠 Manual Install Option

If you prefer not to pipe to bash:

curl -O https://git.okseby.com/okseby/sebys-hosting-scripts/raw/branch/main/install-wings.sh
chmod +x install-wings.sh
./install-wings.sh