No description
Find a file
Sebastian Cabrera 12c20e12e8
Strip all whitespace from join-data instead of just the first token
extract_join_data() previously used `awk '{print $1}'` as its final
step, which only keeps the first whitespace-delimited chunk. Since the
join-data token is base64 and never legitimately contains whitespace,
any paste that gets hard-wrapped across multiple lines (long tokens
wrapped by a terminal or the panel UI, or CRLF line endings) was
silently truncated at the first space/newline, even when the raw
input already contained the rest of the token. This produced a valid
but incomplete base64 string that decoded into a config.yml missing
trailing fields such as `remote`, causing wings to fail at startup
with "invalid remote configuration, cannot connect to panel".

Now strips every whitespace character from the token instead of only
keeping the first token, so wrapped/multi-line pastes are captured in
full regardless of how prompt() received them.

Also bumps the installer banner to v1.3.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-09 21:19:14 -04:00
install-wings.sh Strip all whitespace from join-data instead of just the first token 2026-09-09 21:19:14 -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