Skip to content

ChirpStack - #2546

Merged
michelroegl-brunner merged 2 commits into
community-scripts:mainfrom
tomfrenzel:chirpstack
Nov 13, 2026
Merged

michelroegl-brunner merged 2 commits into
community-scripts:mainfrom
tomfrenzel:chirpstack

Conversation

@tomfrenzel

Copy link
Copy Markdown
Contributor

✍️ Description

This adds the ChirpStack scripts. Implementation details are below ind "Additional Information"

🔗 Related PR / Issue

Link: #2521

✅ Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No breaking changes – Existing functionality remains intact.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🧩 Script

Name: ChirpStack

Tool:

🗂️ Category (X in brackets)

  • CT – LXC container (ct/ + install/)
  • VM – Virtual machine (vm/)
  • Addon – tools/addon/
  • PVE Tool – tools/pve/
  • Other – path given in the Description

🖥️ Platform – tested on (X in brackets)

  • Proxmox VE – Created on a Proxmox VE host and the app works.
  • Incus – Created on an Incus host and the app works.

🏗️ Architecture (X in brackets)

  • arm64 supported - Tested and supported on arm64.
  • arm64 not tested - Assumed to work on arm64, but testing has not been done.
  • arm64 not supported - Confirmed upstream dependencies or binaries do not support arm64.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • ✨ New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔍 Code & Security Review (X in brackets)

  • Follows CODE-AUDIT.md & CONTRIBUTING.md guidelines
  • Uses correct script structure (AppName.sh, AppName-install.sh, AppName.json)
  • No hardcoded credentials
  • No Docker / Docker Compose – The application is installed bare-metal; Docker is not used.
  • No git pull – Updates use fetch_and_deploy_gh_release, fetch_and_deploy_codeberg_release, fetch_and_deploy_gl_release, or fetch_and_deploy_from_url instead of git pull.

📋 Additional Information (optional)

ChirpStack publishes apt packages for their server and gateway but users need to manuelly configure their region. Without a propper region, the setup will not work out of the box. This is also the reason why the service fails after installation and needs to be reset after configuration (systemctl reset-failed chirpstack).

I tested it with my Seeed M2 Gateway and it worked as supposed to.
selfh.st does not have an icon yet so i referenced the svg from the ChirpStack docs repo. I also requested the icon for selfh.st in selfhst/icons#1085


📦 Application Requirements (for new scripts)

  • The application is at least 6 months old
  • The application is actively maintained
  • The application has 1,000+ GitHub stars
  • Official release tarballs are published
  • I understand that not all scripts will be accepted due to various reasons and criteria by the community-scripts ORG

🌐 Source

https://github.com/chirpstack/chirpstack


🤖 AI Assistance (X in brackets)

  • No AI used – Scripts were written without AI assistance.
  • AI was used – I confirm the scripts were built using AGENTS.md and .github/agents/pve-script-creator.agent.md as guidance, and the output has been reviewed and corrected to match those guidelines.

GitHub Copilot Fusion -> GPT-6.1-Sol (Medium)
Used it for the sed as i can't wrap my head around the sed syntax 😄

@tomfrenzel
tomfrenzel requested a review from a team as a code owner November 12, 2026 17:14
@github-actions

Copy link
Copy Markdown
Contributor

Try this script

ct/chirpstack.sh, run in the Proxmox VE shell or on an Incus host:

COMMUNITY_SCRIPTS_URL=https://raw.githubusercontent.com/tomfrenzel/DevScripts/chirpstack \
bash -c "$(curl -fsSL https://raw.githubusercontent.com/tomfrenzel/DevScripts/chirpstack/ct/chirpstack.sh)"

COMMUNITY_SCRIPTS_URL is not optional for ct/. Fetching the ct/ script from a
branch does not tell the engine where that branch is — with bash -c "$(curl …)"
there is no file on disk for the scripts root to be derived from, so it would fall
back to upstream main and look for the install script there.

Against a core branch as well

Add COMMUNITY_SCRIPTS_CORE_URL=https://raw.githubusercontent.com/OWNER/core/BRANCH
to test an engine change at the same time. The two resolve independently.

Useful flags while testing

dev_mode=net logs every fetch with status and duration, so you can confirm the
branch is really being used. dev_mode=keep stops a failed build from deleting
the container along with the evidence.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proxmox script test failed at 6ecac5e:

  • ct/chirpstack.sh (pve): update: exited 1: var_region is required for unattended installs (e.g. var_region=eu868).
  • ct/chirpstack.sh (incus): update: exited 1: var_region is required for unattended installs (e.g. var_region=eu868).

Logs and details: test result. Push a fix, then ask for /test again.

@github-actions

Copy link
Copy Markdown
Contributor

Proxmox script test

@tomfrenzel ✅ 2/2 passed at 6fc85c1

Script Platform Install Update Duration Detail
ct/chirpstack.sh pve ✅ ✅ 6m09s http://10.99.0.126:8080 → 200
ct/chirpstack.sh incus ✅ ✅ 3m35s http://10.98.0.28:8080 → 200
ct/chirpstack.sh arm64 ✅ ✅ 3m16s http://10.98.0.159:8080 → 200

ARM64 (information only, not counted): 1/1 passed.

Notes (information only, not counted):

  • ct/chirpstack.sh (pve): a second 'update' right after the first updated again: update_script does not notice it is current (e.g. a version file it never writes)
  • ct/chirpstack.sh (incus): a second 'update' right after the first updated again: update_script does not notice it is current (e.g. a version file it never writes)
  • ct/chirpstack.sh (arm64): a second 'update' right after the first updated again: update_script does not notice it is current (e.g. a version file it never writes)
📊 Resources
Script Platform Usage
ct/chirpstack.sh pve disk 1.0 of 8 GB · RAM at rest 266 of 2048 MB · OOM kills 0
ct/chirpstack.sh incus disk 0.9 of 8 GB · RAM at rest 274 of 2048 MB · OOM kills 0
ct/chirpstack.sh arm64 disk 1.1 of 8 GB · RAM at rest 262 of 2048 MB · OOM kills 0
📸 ct/chirpstack.sh (pve) — http://10.99.0.126:8080: after install / after update

Screenshot of ct/chirpstack.sh Screenshot of ct/chirpstack.sh

📸 ct/chirpstack.sh (incus) — http://10.98.0.28:8080: after install / after update

Screenshot of ct/chirpstack.sh Screenshot of ct/chirpstack.sh

📸 ct/chirpstack.sh (arm64) — http://10.98.0.159:8080: after install / after update

Screenshot of ct/chirpstack.sh Screenshot of ct/chirpstack.sh

📄 ct/chirpstack.sh (pve) — install log (1292 lines)
… 982 earlier lines cut, the full log is in the run artifacts
Hit:4 https://apt.postgresql.org/pub/repos/apt trixie-pgdg InRelease
Reading package lists...
Building dependency tree...
Reading state information...
All packages are up to date.
Reading package lists...
Building dependency tree...
Reading state information...
Installing:
  ssl-cert
Summary:
  Upgrading: 0, Installing: 1, Removing: 0, Not Upgrading: 0
  Download size: 16.8 kB
  Space needed: 62.5 kB / 7006 MB available
Get:1 http://deb.debian.org/debian trixie/main amd64 ssl-cert all 1.1.3 [16.8 kB]
Preconfiguring packages ...
Fetched 16.8 kB in 0s (450 kB/s)
Selecting previously unselected package ssl-cert.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20393 files and directories currently installed.)
Preparing to unpack .../ssl-cert_1.1.3_all.deb ...
Unpacking ssl-cert (1.1.3) ...
Setting up ssl-cert (1.1.3) ...
Processing triggers for man-db (2.13.1-1) ...
Reading package lists...
Building dependency tree...
Reading state information...
Installing:
  postgresql-18  postgresql-client-18
Installing dependencies:
  libcommon-sense-perl  libsensors-config         postgresql-18-jit
  libjson-perl          libsensors5               postgresql-client-common
  libjson-xs-perl       libtypes-serialiser-perl  postgresql-common
  libllvm19             liburing2                 sysstat
  libnuma1              libxslt1.1
  libpq5                libz3-4
Suggested packages:
  libpq-oauth  lm-sensors  postgresql-doc-18  isag
Summary:
  Upgrading: 0, Installing: 18, Removing: 0, Not Upgrading: 0
  Download size: 55.6 MB
  Space needed: 237 MB / 7006 MB available
Get:1 http://deb.debian.org/debian trixie/main amd64 libjson-perl all 4.10000-1 [87.5 kB]
Get:2 http://security.debian.org trixie-security/main amd64 libjson-xs-perl amd64 4.040-1~deb13u1 [91.0 kB]
Get:3 http://deb.debian.org/debian trixie/main amd64 libcommon-sense-perl amd64 3.75-3+b5 [22.9 kB]
Get:4 http://deb.debian.org/debian trixie/main amd64 libtypes-serialiser-perl all 1.01-1 [12.2 kB]
Get:5 http://deb.debian.org/debian trixie/main amd64 libz3-4 amd64 4.13.3-1 [8560 kB]
Get:6 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-client-common all 294.pgdg13+2 [48.9 kB]
Get:7 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-common all 294.pgdg13+2 [108 kB]
Get:8 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 libpq5 amd64 18.7-1.pgdg13+2 [267 kB]
Get:9 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-client-18 amd64 18.7-1.pgdg13+2 [2149 kB]
Get:10 http://deb.debian.org/debian trixie/main amd64 libllvm19 amd64 1:19.1.7-3+b1 [26.0 MB]
Get:11 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-18 amd64 18.7-1.pgdg13+2 [7373 kB]
Get:12 http://deb.debian.org/debian trixie/main amd64 libnuma1 amd64 2.0.19-1 [22.2 kB]
Get:13 http://deb.debian.org/debian trixie/main amd64 libsensors-config all 1:3.6.2-2 [16.2 kB]
Get:14 http://deb.debian.org/debian trixie/main amd64 libsensors5 amd64 1:3.6.2-2 [37.5 kB]
Get:15 http://deb.debian.org/debian trixie/main amd64 liburing2 amd64 2.9-1 [26.4 kB]
Get:16 http://deb.debian.org/debian trixie/main amd64 libxslt1.1 amd64 1.1.35-1.2+deb13u3 [233 kB]
Get:17 http://deb.debian.org/debian trixie/main amd64 sysstat amd64 12.7.5-2 [623 kB]
Get:18 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-18-jit amd64 18.7-1.pgdg13+2 [9964 kB]
Preconfiguring packages ...
Fetched 55.6 MB in 2s (26.2 MB/s)
Selecting previously unselected package libjson-perl.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20402 files and directories currently installed.)
Preparing to unpack .../00-libjson-perl_4.10000-1_all.deb ...
Unpacking libjson-perl (4.10000-1) ...
Selecting previously unselected package postgresql-client-common.
Preparing to unpack .../01-postgresql-client-common_294.pgdg13+2_all.deb ...
Unpacking postgresql-client-common (294.pgdg13+2) ...
Selecting previously unselected package postgresql-common.
Preparing to unpack .../02-postgresql-common_294.pgdg13+2_all.deb ...
Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common'
Unpacking postgresql-common (294.pgdg13+2) ...
Selecting previously unselected package libcommon-sense-perl:amd64.
Preparing to unpack .../03-libcommon-sense-perl_3.75-3+b5_amd64.deb ...
Unpacking libcommon-sense-perl:amd64 (3.75-3+b5) ...
Selecting previously unselected package libtypes-serialiser-perl.
Preparing to unpack .../04-libtypes-serialiser-perl_1.01-1_all.deb ...
Unpacking libtypes-serialiser-perl (1.01-1) ...
Selecting previously unselected package libjson-xs-perl.
Preparing to unpack .../05-libjson-xs-perl_4.040-1~deb13u1_amd64.deb ...
Unpacking libjson-xs-perl (4.040-1~deb13u1) ...
Selecting previously unselected package libz3-4:amd64.
Preparing to unpack .../06-libz3-4_4.13.3-1_amd64.deb ...
Unpacking libz3-4:amd64 (4.13.3-1) ...
Selecting previously unselected package libllvm19:amd64.
Preparing to unpack .../07-libllvm19_1%3a19.1.7-3+b1_amd64.deb ...
Unpacking libllvm19:amd64 (1:19.1.7-3+b1) ...
Selecting previously unselected package libnuma1:amd64.
Preparing to unpack .../08-libnuma1_2.0.19-1_amd64.deb ...
Unpacking libnuma1:amd64 (2.0.19-1) ...
Selecting previously unselected package libpq5:amd64.
Preparing to unpack .../09-libpq5_18.7-1.pgdg13+2_amd64.deb ...
Unpacking libpq5:amd64 (18.7-1.pgdg13+2) ...
Selecting previously unselected package libsensors-config.
Preparing to unpack .../10-libsensors-config_1%3a3.6.2-2_all.deb ...
Unpacking libsensors-config (1:3.6.2-2) ...
Selecting previously unselected package libsensors5:amd64.
Preparing to unpack .../11-libsensors5_1%3a3.6.2-2_amd64.deb ...
Unpacking libsensors5:amd64 (1:3.6.2-2) ...
Selecting previously unselected package liburing2:amd64.
Preparing to unpack .../12-liburing2_2.9-1_amd64.deb ...
Unpacking liburing2:amd64 (2.9-1) ...
Selecting previously unselected package libxslt1.1:amd64.
Preparing to unpack .../13-libxslt1.1_1.1.35-1.2+deb13u3_amd64.deb ...
Unpacking libxslt1.1:amd64 (1.1.35-1.2+deb13u3) ...
Selecting previously unselected package postgresql-client-18.
Preparing to unpack .../14-postgresql-client-18_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-client-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18.
Preparing to unpack .../15-postgresql-18_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18-jit.
Preparing to unpack .../16-postgresql-18-jit_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-18-jit (18.7-1.pgdg13+2) ...
Selecting previously unselected package sysstat.
Preparing to unpack .../17-sysstat_12.7.5-2_amd64.deb ...
Unpacking sysstat (12.7.5-2) ...
Setting up postgresql-client-common (294.pgdg13+2) ...
Setting up libsensors-config (1:3.6.2-2) ...
Setting up libpq5:amd64 (18.7-1.pgdg13+2) ...
Setting up libcommon-sense-perl:amd64 (3.75-3+b5) ...
Setting up libz3-4:amd64 (4.13.3-1) ...
Setting up libsensors5:amd64 (1:3.6.2-2) ...
Setting up libnuma1:amd64 (2.0.19-1) ...
Setting up libtypes-serialiser-perl (1.01-1) ...
Setting up libjson-perl (4.10000-1) ...
Setting up libxslt1.1:amd64 (1.1.35-1.2+deb13u3) ...
Setting up liburing2:amd64 (2.9-1) ...
Setting up sysstat (12.7.5-2) ...
Creating config file /etc/default/sysstat with new version
update-alternatives: using /usr/bin/sar.sysstat to provide /usr/bin/sar (sar) in auto mode
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-collect.timer' → '/usr/lib/systemd/system/sysstat-collect.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-rotate.timer' → '/usr/lib/systemd/system/sysstat-rotate.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-summary.timer' → '/usr/lib/systemd/system/sysstat-summary.timer'.
Created symlink '/etc/systemd/system/multi-user.target.wants/sysstat.service' → '/usr/lib/systemd/system/sysstat.service'.
Setting up libjson-xs-perl (4.040-1~deb13u1) ...
Setting up libllvm19:amd64 (1:19.1.7-3+b1) ...
Setting up postgresql-client-18 (18.7-1.pgdg13+2) ...
update-alternatives: using /usr/share/postgresql/18/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode
Setting up postgresql-common (294.pgdg13+2) ...
Creating config file /etc/postgresql-common/createcluster.conf with new version
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Removing obsolete dictionary files:
/usr/lib/tmpfiles.d/postgresql-common.conf:2: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:4: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:6: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:8: Failed to resolve user 'postgres': No such process
Creating group 'postgres' with GID 988.
Creating user 'postgres' (PostgreSQL administrator) with UID 988 and GID 988.
Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'.
Setting up postgresql-18 (18.7-1.pgdg13+2) ...
Creating new PostgreSQL cluster 18/main ...
/usr/lib/postgresql/18/bin/initdb -D /var/lib/postgresql/18/main --auth-local peer --auth-host scram-sha-256 --no-instructions
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are enabled.
fixing permissions on existing directory /var/lib/postgresql/18/main ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default "max_connections" ... 100
selecting default "shared_buffers" ... 128MB
selecting default time zone ... Europe/Vienna
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Setting up postgresql-18-jit (18.7-1.pgdg13+2) ...
Processing triggers for libc-bin (2.41-12+deb13u4) ...
Processing triggers for man-db (2.13.1-1) ...
Synchronizing state of postgresql.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable postgresql
[2026-11-12 18:32:25] [OK] Setup PostgreSQL 18
[2026-11-12 18:32:25] [INFO] Setting up PostgreSQL Database
CREATE ROLE
CREATE DATABASE
CREATE EXTENSION
ALTER ROLE
ALTER ROLE
ALTER ROLE
[2026-11-12 18:32:26] [OK] Set up PostgreSQL Database
[2026-11-12 18:32:26] [INFO] Installing ChirpStack
Hit:1 http://security.debian.org trixie-security InRelease
Hit:2 http://deb.debian.org/debian trixie InRelease
Hit:3 http://deb.debian.org/debian trixie-updates InRelease
Get:4 https://artifacts.chirpstack.io/packages/4.x/deb stable InRelease [10.8 kB]
Hit:5 https://apt.postgresql.org/pub/repos/apt trixie-pgdg InRelease
Get:6 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 Packages [4190 B]
Fetched 15.0 kB in 0s (74.1 kB/s)
Reading package lists...
Building dependency tree...
Reading state information...
All packages are up to date.
Reading package lists...
Building dependency tree...
Reading state information...
Installing:
  chirpstack  chirpstack-gateway-bridge
Suggested packages:
  postgresql  redis
Summary:
  Upgrading: 0, Installing: 2, Removing: 0, Not Upgrading: 0
  Download size: 17.9 MB
  Space needed: 67.5 MB / 6721 MB available
Get:1 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 chirpstack amd64 4.20.0-1 [12.0 MB]
Get:2 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 chirpstack-gateway-bridge amd64 4.1.2 [5942 kB]
Fetched 17.9 MB in 1s (32.7 MB/s)
Selecting previously unselected package chirpstack.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 22920 files and directories currently installed.)
Preparing to unpack .../chirpstack_4.20.0-1_amd64.deb ...
Unpacking chirpstack (4.20.0-1) ...
Selecting previously unselected package chirpstack-gateway-bridge.
Preparing to unpack .../chirpstack-gateway-bridge_4.1.2_amd64.deb ...
Unpacking chirpstack-gateway-bridge (4.1.2) ...
Setting up chirpstack-gateway-bridge (4.1.2) ...
---------------------------------------------------------------------------------
The configuration file is located at:
 /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
Some helpful commands for chirpstack-gateway-bridge:
Start:
 $ sudo systemctl start chirpstack-gateway-bridge
Restart:
 $ sudo systemctl restart chirpstack-gateway-bridge
Stop:
 $ sudo systemctl stop chirpstack-gateway-bridge
Display logs:
 $ sudo journalctl -f -n 100 -u chirpstack-gateway-bridge
---------------------------------------------------------------------------------
Created symlink '/etc/systemd/system/lora-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Setting up chirpstack (4.20.0-1) ...
chirpstack: generated a random [api] secret in /etc/chirpstack/chirpstack.toml
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack.service' → '/usr/lib/systemd/system/chirpstack.service'.
[2026-11-12 18:32:33] [OK] Installed ChirpStack
[2026-11-12 18:32:33] [INFO] Configuring ChirpStack
[2026-11-12 18:32:33] [OK] Configured ChirpStack
[2026-11-12 18:32:33] [INFO] Customizing Container
[2026-11-12 18:32:34] [OK] Customized Container
[2026-11-12 18:32:34] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 18:32:35] [OK] Cleaned
🔄 ct/chirpstack.sh (pve) — update log (23 lines)
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!
  ⏳   Cleaning up
  ✔️  Cleaned
🔁 ct/chirpstack.sh (pve) — second update log
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
curl: (22) The requested URL returned error: 404
curl: (22) The requested URL returned error: 404
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!
  ⏳   Cleaning up
  ✔️  Cleaned
📄 ct/chirpstack.sh (incus) — install log (520 lines)
… 213 earlier lines cut, the full log is in the run artifacts
Get:18 http://deb.debian.org/debian trixie/main amd64 libjson-xs-perl amd64 4.040-1~deb13u1 [91.0 kB]
Get:19 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-18 amd64 18.7-1.pgdg13+2 [7373 kB]
Get:20 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main amd64 postgresql-18-jit amd64 18.7-1.pgdg13+2 [9964 kB]
Get:21 http://deb.debian.org/debian trixie/main amd64 libz3-4 amd64 4.13.3-1 [8560 kB]
Get:22 http://deb.debian.org/debian trixie/main amd64 libllvm19 amd64 1:19.1.7-3+b1 [26.0 MB]
Get:23 http://deb.debian.org/debian trixie/main amd64 libnuma1 amd64 2.0.19-1 [22.2 kB]
Get:24 http://deb.debian.org/debian trixie/main amd64 libsensors-config all 1:3.6.2-2 [16.2 kB]
Get:25 http://deb.debian.org/debian trixie/main amd64 libsensors5 amd64 1:3.6.2-2 [37.5 kB]
Get:26 http://deb.debian.org/debian trixie/main amd64 liburing2 amd64 2.9-1 [26.4 kB]
Get:27 http://deb.debian.org/debian trixie/main amd64 libxslt1.1 amd64 1.1.35-1.2+deb13u3 [233 kB]
Get:28 http://deb.debian.org/debian trixie/main amd64 sysstat amd64 12.7.5-2 [623 kB]
Preconfiguring packages ...
Fetched 66.7 MB in 1s (71.0 MB/s)
Selecting previously unselected package libss2:amd64.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 16649 files and directories currently installed.)
Preparing to unpack .../libss2_1.47.2-3+b12_amd64.deb ...
Unpacking libss2:amd64 (1.47.2-3+b12) ...
Selecting previously unselected package logsave.
Preparing to unpack .../logsave_1.47.2-3+b12_amd64.deb ...
Unpacking logsave (1.47.2-3+b12) ...
Setting up libss2:amd64 (1.47.2-3+b12) ...
Selecting previously unselected package e2fsprogs.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 16661 files and directories currently installed.)
Preparing to unpack .../00-e2fsprogs_1.47.2-3+b12_amd64.deb ...
Unpacking e2fsprogs (1.47.2-3+b12) ...
Selecting previously unselected package libjson-perl.
Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ...
Unpacking libjson-perl (4.10000-1) ...
Selecting previously unselected package postgresql-client-common.
Preparing to unpack .../02-postgresql-client-common_294.pgdg13+2_all.deb ...
Unpacking postgresql-client-common (294.pgdg13+2) ...
Selecting previously unselected package libtext-charwidth-perl:amd64.
Preparing to unpack .../03-libtext-charwidth-perl_0.04-11+b4_amd64.deb ...
Unpacking libtext-charwidth-perl:amd64 (0.04-11+b4) ...
Selecting previously unselected package libtext-wrapi18n-perl.
Preparing to unpack .../04-libtext-wrapi18n-perl_0.06-10_all.deb ...
Unpacking libtext-wrapi18n-perl (0.06-10) ...
Selecting previously unselected package ucf.
Preparing to unpack .../05-ucf_3.0052_all.deb ...
Moving old data out of the way
Unpacking ucf (3.0052) ...
Selecting previously unselected package postgresql-common.
Preparing to unpack .../06-postgresql-common_294.pgdg13+2_all.deb ...
Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common'
Unpacking postgresql-common (294.pgdg13+2) ...
Selecting previously unselected package libpopt0:amd64.
Preparing to unpack .../07-libpopt0_1.19+dfsg-2_amd64.deb ...
Unpacking libpopt0:amd64 (1.19+dfsg-2) ...
Selecting previously unselected package logrotate.
Preparing to unpack .../08-logrotate_3.22.0-1_amd64.deb ...
Unpacking logrotate (3.22.0-1) ...
Selecting previously unselected package e2fsprogs-l10n.
Preparing to unpack .../09-e2fsprogs-l10n_1.47.2-3_all.deb ...
Unpacking e2fsprogs-l10n (1.47.2-3) ...
Selecting previously unselected package libcommon-sense-perl:amd64.
Preparing to unpack .../10-libcommon-sense-perl_3.75-3+b5_amd64.deb ...
Unpacking libcommon-sense-perl:amd64 (3.75-3+b5) ...
Selecting previously unselected package libicu76:amd64.
Preparing to unpack .../11-libicu76_76.1-4_amd64.deb ...
Unpacking libicu76:amd64 (76.1-4) ...
Selecting previously unselected package libtypes-serialiser-perl.
Preparing to unpack .../12-libtypes-serialiser-perl_1.01-1_all.deb ...
Unpacking libtypes-serialiser-perl (1.01-1) ...
Selecting previously unselected package libjson-xs-perl.
Preparing to unpack .../13-libjson-xs-perl_4.040-1~deb13u1_amd64.deb ...
Unpacking libjson-xs-perl (4.040-1~deb13u1) ...
Selecting previously unselected package libz3-4:amd64.
Preparing to unpack .../14-libz3-4_4.13.3-1_amd64.deb ...
Unpacking libz3-4:amd64 (4.13.3-1) ...
Selecting previously unselected package libllvm19:amd64.
Preparing to unpack .../15-libllvm19_1%3a19.1.7-3+b1_amd64.deb ...
Unpacking libllvm19:amd64 (1:19.1.7-3+b1) ...
Selecting previously unselected package libnuma1:amd64.
Preparing to unpack .../16-libnuma1_2.0.19-1_amd64.deb ...
Unpacking libnuma1:amd64 (2.0.19-1) ...
Selecting previously unselected package libpq5:amd64.
Preparing to unpack .../17-libpq5_18.7-1.pgdg13+2_amd64.deb ...
Unpacking libpq5:amd64 (18.7-1.pgdg13+2) ...
Selecting previously unselected package libsensors-config.
Preparing to unpack .../18-libsensors-config_1%3a3.6.2-2_all.deb ...
Unpacking libsensors-config (1:3.6.2-2) ...
Selecting previously unselected package libsensors5:amd64.
Preparing to unpack .../19-libsensors5_1%3a3.6.2-2_amd64.deb ...
Unpacking libsensors5:amd64 (1:3.6.2-2) ...
Selecting previously unselected package liburing2:amd64.
Preparing to unpack .../20-liburing2_2.9-1_amd64.deb ...
Unpacking liburing2:amd64 (2.9-1) ...
Selecting previously unselected package libxslt1.1:amd64.
Preparing to unpack .../21-libxslt1.1_1.1.35-1.2+deb13u3_amd64.deb ...
Unpacking libxslt1.1:amd64 (1.1.35-1.2+deb13u3) ...
Selecting previously unselected package postgresql-client-18.
Preparing to unpack .../22-postgresql-client-18_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-client-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18.
Preparing to unpack .../23-postgresql-18_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18-jit.
Preparing to unpack .../24-postgresql-18-jit_18.7-1.pgdg13+2_amd64.deb ...
Unpacking postgresql-18-jit (18.7-1.pgdg13+2) ...
Selecting previously unselected package sysstat.
Preparing to unpack .../25-sysstat_12.7.5-2_amd64.deb ...
Unpacking sysstat (12.7.5-2) ...
Setting up postgresql-client-common (294.pgdg13+2) ...
Setting up libtext-charwidth-perl:amd64 (0.04-11+b4) ...
Setting up libsensors-config (1:3.6.2-2) ...
Setting up libpq5:amd64 (18.7-1.pgdg13+2) ...
Setting up libcommon-sense-perl:amd64 (3.75-3+b5) ...
Setting up libtext-wrapi18n-perl (0.06-10) ...
Setting up libz3-4:amd64 (4.13.3-1) ...
Setting up ucf (3.0052) ...
Setting up libsensors5:amd64 (1:3.6.2-2) ...
Setting up logsave (1.47.2-3+b12) ...
Setting up libnuma1:amd64 (2.0.19-1) ...
Setting up libtypes-serialiser-perl (1.01-1) ...
Setting up libjson-perl (4.10000-1) ...
Setting up libxslt1.1:amd64 (1.1.35-1.2+deb13u3) ...
Setting up libicu76:amd64 (76.1-4) ...
Setting up liburing2:amd64 (2.9-1) ...
Setting up sysstat (12.7.5-2) ...
Creating config file /etc/default/sysstat with new version
update-alternatives: using /usr/bin/sar.sysstat to provide /usr/bin/sar (sar) in auto mode
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-collect.timer' → '/usr/lib/systemd/system/sysstat-collect.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-rotate.timer' → '/usr/lib/systemd/system/sysstat-rotate.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-summary.timer' → '/usr/lib/systemd/system/sysstat-summary.timer'.
Created symlink '/etc/systemd/system/multi-user.target.wants/sysstat.service' → '/usr/lib/systemd/system/sysstat.service'.
Setting up libpopt0:amd64 (1.19+dfsg-2) ...
Setting up logrotate (3.22.0-1) ...
Created symlink '/etc/systemd/system/timers.target.wants/logrotate.timer' → '/usr/lib/systemd/system/logrotate.timer'.
logrotate.service is a disabled or a static unit, not starting it.
Setting up libjson-xs-perl (4.040-1~deb13u1) ...
Setting up libllvm19:amd64 (1:19.1.7-3+b1) ...
Setting up postgresql-client-18 (18.7-1.pgdg13+2) ...
update-alternatives: using /usr/share/postgresql/18/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode
Setting up e2fsprogs (1.47.2-3+b12) ...
Created symlink '/etc/systemd/system/timers.target.wants/e2scrub_all.timer' → '/usr/lib/systemd/system/e2scrub_all.timer'.
Created symlink '/etc/systemd/system/multi-user.target.wants/e2scrub_reap.service' → '/usr/lib/systemd/system/e2scrub_reap.service'.
Setting up postgresql-common (294.pgdg13+2) ...
Creating config file /etc/postgresql-common/createcluster.conf with new version
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Removing obsolete dictionary files:
/usr/lib/tmpfiles.d/postgresql-common.conf:2: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:4: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:6: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:8: Failed to resolve user 'postgres': No such process
Creating group 'postgres' with GID 989.
Creating user 'postgres' (PostgreSQL administrator) with UID 989 and GID 989.
Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'.
Setting up e2fsprogs-l10n (1.47.2-3) ...
Setting up postgresql-18 (18.7-1.pgdg13+2) ...
Creating new PostgreSQL cluster 18/main ...
/usr/lib/postgresql/18/bin/initdb -D /var/lib/postgresql/18/main --auth-local peer --auth-host scram-sha-256 --no-instructions
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are enabled.
fixing permissions on existing directory /var/lib/postgresql/18/main ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default "max_connections" ... 100
selecting default "shared_buffers" ... 128MB
selecting default time zone ... Europe/Vienna
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Setting up postgresql-18-jit (18.7-1.pgdg13+2) ...
Processing triggers for libc-bin (2.41-12+deb13u4) ...
Synchronizing state of postgresql.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable postgresql
[2026-11-12 18:30:31] [OK] Setup PostgreSQL 18
[2026-11-12 18:30:31] [INFO] Setting up PostgreSQL Database
CREATE ROLE
CREATE DATABASE
CREATE EXTENSION
ALTER ROLE
ALTER ROLE
ALTER ROLE
[2026-11-12 18:30:32] [OK] Set up PostgreSQL Database
[2026-11-12 18:30:32] [INFO] Installing ChirpStack
Hit:1 http://deb.debian.org/debian trixie InRelease
Hit:2 http://deb.debian.org/debian trixie-updates InRelease
Hit:3 http://deb.debian.org/debian-security trixie-security InRelease
Hit:4 https://apt.postgresql.org/pub/repos/apt trixie-pgdg InRelease
Get:5 https://artifacts.chirpstack.io/packages/4.x/deb stable InRelease [10.8 kB]
Get:6 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 Packages [4190 B]
Fetched 15.0 kB in 0s (58.3 kB/s)
Reading package lists...
Building dependency tree...
Reading state information...
All packages are up to date.
Reading package lists...
Building dependency tree...
Reading state information...
Installing:
  chirpstack  chirpstack-gateway-bridge
Suggested packages:
  postgresql  redis
Summary:
  Upgrading: 0, Installing: 2, Removing: 0, Not Upgrading: 0
  Download size: 17.9 MB
  Space needed: 67.5 MB / 146 GB available
Get:1 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 chirpstack amd64 4.20.0-1 [12.0 MB]
Get:2 https://artifacts.chirpstack.io/packages/4.x/deb stable/main amd64 chirpstack-gateway-bridge amd64 4.1.2 [5942 kB]
Fetched 17.9 MB in 1s (31.2 MB/s)
Selecting previously unselected package chirpstack.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19399 files and directories currently installed.)
Preparing to unpack .../chirpstack_4.20.0-1_amd64.deb ...
Unpacking chirpstack (4.20.0-1) ...
Selecting previously unselected package chirpstack-gateway-bridge.
Preparing to unpack .../chirpstack-gateway-bridge_4.1.2_amd64.deb ...
Unpacking chirpstack-gateway-bridge (4.1.2) ...
Setting up chirpstack-gateway-bridge (4.1.2) ...
---------------------------------------------------------------------------------
The configuration file is located at:
 /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
Some helpful commands for chirpstack-gateway-bridge:
Start:
 $ sudo systemctl start chirpstack-gateway-bridge
Restart:
 $ sudo systemctl restart chirpstack-gateway-bridge
Stop:
 $ sudo systemctl stop chirpstack-gateway-bridge
Display logs:
 $ sudo journalctl -f -n 100 -u chirpstack-gateway-bridge
---------------------------------------------------------------------------------
Created symlink '/etc/systemd/system/lora-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Setting up chirpstack (4.20.0-1) ...
chirpstack: generated a random [api] secret in /etc/chirpstack/chirpstack.toml
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack.service' → '/usr/lib/systemd/system/chirpstack.service'.
[2026-11-12 18:30:38] [OK] Installed ChirpStack
[2026-11-12 18:30:38] [INFO] Configuring ChirpStack
[2026-11-12 18:30:38] [OK] Configured ChirpStack
[2026-11-12 18:30:38] [INFO] Customizing Container
[2026-11-12 18:30:40] [OK] Customized Container
[2026-11-12 18:30:40] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 18:30:41] [OK] Cleaned
🔄 ct/chirpstack.sh (incus) — update log (18 lines)
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
10.98.0.28
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!
🔁 ct/chirpstack.sh (incus) — second update log
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
10.98.0.28
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!
📄 ct/chirpstack.sh (arm64) — install log (498 lines)
… 198 earlier lines cut, the full log is in the run artifacts
Get:9 http://deb.debian.org/debian trixie/main arm64 libicu76 arm64 76.1-4 [9524 kB]
Get:10 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 postgresql-client-common all 294.pgdg13+2 [48.9 kB]
Get:11 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 postgresql-common all 294.pgdg13+2 [108 kB]
Get:12 http://deb.debian.org/debian trixie/main arm64 libtypes-serialiser-perl all 1.01-1 [12.2 kB]
Get:13 http://deb.debian.org/debian trixie/main arm64 libjson-xs-perl arm64 4.040-1~deb13u1 [89.4 kB]
Get:14 http://deb.debian.org/debian trixie/main arm64 libz3-4 arm64 4.13.3-1 [7507 kB]
Get:15 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 libpq5 arm64 18.7-1.pgdg13+2 [258 kB]
Get:16 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 postgresql-client-18 arm64 18.7-1.pgdg13+2 [2102 kB]
Get:17 http://deb.debian.org/debian trixie/main arm64 libllvm19 arm64 1:19.1.7-3+b1 [23.3 MB]
Get:18 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 postgresql-18 arm64 18.7-1.pgdg13+2 [6947 kB]
Get:19 https://apt.postgresql.org/pub/repos/apt trixie-pgdg/main arm64 postgresql-18-jit arm64 18.7-1.pgdg13+2 [9868 kB]
Get:20 http://deb.debian.org/debian trixie/main arm64 libnuma1 arm64 2.0.19-1 [21.6 kB]
Get:21 http://deb.debian.org/debian trixie/main arm64 libsensors-config all 1:3.6.2-2 [16.2 kB]
Get:22 http://deb.debian.org/debian trixie/main arm64 libsensors5 arm64 1:3.6.2-2 [36.4 kB]
Get:23 http://deb.debian.org/debian trixie/main arm64 liburing2 arm64 2.9-1 [26.2 kB]
Get:24 http://deb.debian.org/debian trixie/main arm64 libxslt1.1 arm64 1.1.35-1.2+deb13u3 [222 kB]
Get:25 http://deb.debian.org/debian trixie/main arm64 sysstat arm64 12.7.5-2+b2 [597 kB]
Preconfiguring packages ...
Fetched 62.1 MB in 0s (207 MB/s)
Selecting previously unselected package libss2:arm64.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 26799 files and directories currently installed.)
Preparing to unpack .../libss2_1.47.2-3+b12_arm64.deb ...
Unpacking libss2:arm64 (1.47.2-3+b12) ...
Selecting previously unselected package logsave.
Preparing to unpack .../logsave_1.47.2-3+b12_arm64.deb ...
Unpacking logsave (1.47.2-3+b12) ...
Setting up libss2:arm64 (1.47.2-3+b12) ...
Selecting previously unselected package e2fsprogs.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 26811 files and directories currently installed.)
Preparing to unpack .../00-e2fsprogs_1.47.2-3+b12_arm64.deb ...
Unpacking e2fsprogs (1.47.2-3+b12) ...
Selecting previously unselected package libjson-perl.
Preparing to unpack .../01-libjson-perl_4.10000-1_all.deb ...
Unpacking libjson-perl (4.10000-1) ...
Selecting previously unselected package postgresql-client-common.
Preparing to unpack .../02-postgresql-client-common_294.pgdg13+2_all.deb ...
Unpacking postgresql-client-common (294.pgdg13+2) ...
Selecting previously unselected package postgresql-common.
Preparing to unpack .../03-postgresql-common_294.pgdg13+2_all.deb ...
Adding 'diversion of /usr/bin/pg_config to /usr/bin/pg_config.libpq-dev by postgresql-common'
Unpacking postgresql-common (294.pgdg13+2) ...
Selecting previously unselected package libpopt0:arm64.
Preparing to unpack .../04-libpopt0_1.19+dfsg-2_arm64.deb ...
Unpacking libpopt0:arm64 (1.19+dfsg-2) ...
Selecting previously unselected package logrotate.
Preparing to unpack .../05-logrotate_3.22.0-1+b2_arm64.deb ...
Unpacking logrotate (3.22.0-1+b2) ...
Selecting previously unselected package e2fsprogs-l10n.
Preparing to unpack .../06-e2fsprogs-l10n_1.47.2-3_all.deb ...
Unpacking e2fsprogs-l10n (1.47.2-3) ...
Selecting previously unselected package libcommon-sense-perl:arm64.
Preparing to unpack .../07-libcommon-sense-perl_3.75-3+b5_arm64.deb ...
Unpacking libcommon-sense-perl:arm64 (3.75-3+b5) ...
Selecting previously unselected package libicu76:arm64.
Preparing to unpack .../08-libicu76_76.1-4_arm64.deb ...
Unpacking libicu76:arm64 (76.1-4) ...
Selecting previously unselected package libtypes-serialiser-perl.
Preparing to unpack .../09-libtypes-serialiser-perl_1.01-1_all.deb ...
Unpacking libtypes-serialiser-perl (1.01-1) ...
Selecting previously unselected package libjson-xs-perl.
Preparing to unpack .../10-libjson-xs-perl_4.040-1~deb13u1_arm64.deb ...
Unpacking libjson-xs-perl (4.040-1~deb13u1) ...
Selecting previously unselected package libz3-4:arm64.
Preparing to unpack .../11-libz3-4_4.13.3-1_arm64.deb ...
Unpacking libz3-4:arm64 (4.13.3-1) ...
Selecting previously unselected package libllvm19:arm64.
Preparing to unpack .../12-libllvm19_1%3a19.1.7-3+b1_arm64.deb ...
Unpacking libllvm19:arm64 (1:19.1.7-3+b1) ...
Selecting previously unselected package libnuma1:arm64.
Preparing to unpack .../13-libnuma1_2.0.19-1_arm64.deb ...
Unpacking libnuma1:arm64 (2.0.19-1) ...
Selecting previously unselected package libpq5:arm64.
Preparing to unpack .../14-libpq5_18.7-1.pgdg13+2_arm64.deb ...
Unpacking libpq5:arm64 (18.7-1.pgdg13+2) ...
Selecting previously unselected package libsensors-config.
Preparing to unpack .../15-libsensors-config_1%3a3.6.2-2_all.deb ...
Unpacking libsensors-config (1:3.6.2-2) ...
Selecting previously unselected package libsensors5:arm64.
Preparing to unpack .../16-libsensors5_1%3a3.6.2-2_arm64.deb ...
Unpacking libsensors5:arm64 (1:3.6.2-2) ...
Selecting previously unselected package liburing2:arm64.
Preparing to unpack .../17-liburing2_2.9-1_arm64.deb ...
Unpacking liburing2:arm64 (2.9-1) ...
Selecting previously unselected package libxslt1.1:arm64.
Preparing to unpack .../18-libxslt1.1_1.1.35-1.2+deb13u3_arm64.deb ...
Unpacking libxslt1.1:arm64 (1.1.35-1.2+deb13u3) ...
Selecting previously unselected package postgresql-client-18.
Preparing to unpack .../19-postgresql-client-18_18.7-1.pgdg13+2_arm64.deb ...
Unpacking postgresql-client-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18.
Preparing to unpack .../20-postgresql-18_18.7-1.pgdg13+2_arm64.deb ...
Unpacking postgresql-18 (18.7-1.pgdg13+2) ...
Selecting previously unselected package postgresql-18-jit.
Preparing to unpack .../21-postgresql-18-jit_18.7-1.pgdg13+2_arm64.deb ...
Unpacking postgresql-18-jit (18.7-1.pgdg13+2) ...
Selecting previously unselected package sysstat.
Preparing to unpack .../22-sysstat_12.7.5-2+b2_arm64.deb ...
Unpacking sysstat (12.7.5-2+b2) ...
Setting up postgresql-client-common (294.pgdg13+2) ...
Setting up libsensors-config (1:3.6.2-2) ...
Setting up libpq5:arm64 (18.7-1.pgdg13+2) ...
Setting up libcommon-sense-perl:arm64 (3.75-3+b5) ...
Setting up libz3-4:arm64 (4.13.3-1) ...
Setting up libsensors5:arm64 (1:3.6.2-2) ...
Setting up logsave (1.47.2-3+b12) ...
Setting up libnuma1:arm64 (2.0.19-1) ...
Setting up libtypes-serialiser-perl (1.01-1) ...
Setting up libjson-perl (4.10000-1) ...
Setting up libxslt1.1:arm64 (1.1.35-1.2+deb13u3) ...
Setting up libicu76:arm64 (76.1-4) ...
Setting up liburing2:arm64 (2.9-1) ...
Setting up sysstat (12.7.5-2+b2) ...
Creating config file /etc/default/sysstat with new version
update-alternatives: using /usr/bin/sar.sysstat to provide /usr/bin/sar (sar) in auto mode
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-collect.timer' → '/usr/lib/systemd/system/sysstat-collect.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-rotate.timer' → '/usr/lib/systemd/system/sysstat-rotate.timer'.
Created symlink '/etc/systemd/system/sysstat.service.wants/sysstat-summary.timer' → '/usr/lib/systemd/system/sysstat-summary.timer'.
Created symlink '/etc/systemd/system/multi-user.target.wants/sysstat.service' → '/usr/lib/systemd/system/sysstat.service'.
Setting up libpopt0:arm64 (1.19+dfsg-2) ...
Setting up logrotate (3.22.0-1+b2) ...
Created symlink '/etc/systemd/system/timers.target.wants/logrotate.timer' → '/usr/lib/systemd/system/logrotate.timer'.
logrotate.service is a disabled or a static unit, not starting it.
Setting up libjson-xs-perl (4.040-1~deb13u1) ...
Setting up libllvm19:arm64 (1:19.1.7-3+b1) ...
Setting up postgresql-client-18 (18.7-1.pgdg13+2) ...
update-alternatives: using /usr/share/postgresql/18/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode
Setting up e2fsprogs (1.47.2-3+b12) ...
Created symlink '/etc/systemd/system/timers.target.wants/e2scrub_all.timer' → '/usr/lib/systemd/system/e2scrub_all.timer'.
Created symlink '/etc/systemd/system/multi-user.target.wants/e2scrub_reap.service' → '/usr/lib/systemd/system/e2scrub_reap.service'.
Setting up postgresql-common (294.pgdg13+2) ...
Creating config file /etc/postgresql-common/createcluster.conf with new version
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Removing obsolete dictionary files:
/usr/lib/tmpfiles.d/postgresql-common.conf:2: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:4: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:6: Failed to resolve user 'postgres': No such process
/usr/lib/tmpfiles.d/postgresql-common.conf:8: Failed to resolve user 'postgres': No such process
Creating group 'postgres' with GID 988.
Creating user 'postgres' (PostgreSQL administrator) with UID 988 and GID 988.
Created symlink '/etc/systemd/system/multi-user.target.wants/postgresql.service' → '/usr/lib/systemd/system/postgresql.service'.
Setting up e2fsprogs-l10n (1.47.2-3) ...
Setting up postgresql-18 (18.7-1.pgdg13+2) ...
Creating new PostgreSQL cluster 18/main ...
/usr/lib/postgresql/18/bin/initdb -D /var/lib/postgresql/18/main --auth-local peer --auth-host scram-sha-256 --no-instructions
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are enabled.
fixing permissions on existing directory /var/lib/postgresql/18/main ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default "max_connections" ... 100
selecting default "shared_buffers" ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Setting up postgresql-18-jit (18.7-1.pgdg13+2) ...
Processing triggers for libc-bin (2.41-12+deb13u4) ...
Synchronizing state of postgresql.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable postgresql
[2026-11-12 17:31:23] [OK] Setup PostgreSQL 18
[2026-11-12 17:31:23] [INFO] Setting up PostgreSQL Database
CREATE ROLE
CREATE DATABASE
CREATE EXTENSION
ALTER ROLE
ALTER ROLE
ALTER ROLE
[2026-11-12 17:31:24] [OK] Set up PostgreSQL Database
[2026-11-12 17:31:24] [INFO] Installing ChirpStack
Hit:1 http://deb.debian.org/debian trixie InRelease
Hit:2 http://deb.debian.org/debian trixie-updates InRelease
Hit:3 https://apt.postgresql.org/pub/repos/apt trixie-pgdg InRelease
Hit:4 http://deb.debian.org/debian-security trixie-security InRelease
Get:5 https://artifacts.chirpstack.io/packages/4.x/deb stable InRelease [10.8 kB]
Get:6 https://artifacts.chirpstack.io/packages/4.x/deb stable/main arm64 Packages [4851 B]
Fetched 15.6 kB in 1s (25.9 kB/s)
Reading package lists...
Building dependency tree...
Reading state information...
All packages are up to date.
Reading package lists...
Building dependency tree...
Reading state information...
Installing:
  chirpstack  chirpstack-gateway-bridge
Suggested packages:
  postgresql  redis
Summary:
  Upgrading: 0, Installing: 2, Removing: 0, Not Upgrading: 0
  Download size: 17.5 MB
  Space needed: 66.6 MB / 110 GB available
Get:1 https://artifacts.chirpstack.io/packages/4.x/deb stable/main arm64 chirpstack arm64 4.20.0-1 [12.2 MB]
Get:2 https://artifacts.chirpstack.io/packages/4.x/deb stable/main arm64 chirpstack-gateway-bridge arm64 4.1.2 [5375 kB]
Fetched 17.5 MB in 1s (11.9 MB/s)
Selecting previously unselected package chirpstack.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 29508 files and directories currently installed.)
Preparing to unpack .../chirpstack_4.20.0-1_arm64.deb ...
Unpacking chirpstack (4.20.0-1) ...
Selecting previously unselected package chirpstack-gateway-bridge.
Preparing to unpack .../chirpstack-gateway-bridge_4.1.2_arm64.deb ...
Unpacking chirpstack-gateway-bridge (4.1.2) ...
Setting up chirpstack-gateway-bridge (4.1.2) ...
---------------------------------------------------------------------------------
The configuration file is located at:
 /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
Some helpful commands for chirpstack-gateway-bridge:
Start:
 $ sudo systemctl start chirpstack-gateway-bridge
Restart:
 $ sudo systemctl restart chirpstack-gateway-bridge
Stop:
 $ sudo systemctl stop chirpstack-gateway-bridge
Display logs:
 $ sudo journalctl -f -n 100 -u chirpstack-gateway-bridge
---------------------------------------------------------------------------------
Created symlink '/etc/systemd/system/lora-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack-gateway-bridge.service' → '/usr/lib/systemd/system/chirpstack-gateway-bridge.service'.
Setting up chirpstack (4.20.0-1) ...
chirpstack: generated a random [api] secret in /etc/chirpstack/chirpstack.toml
Created symlink '/etc/systemd/system/multi-user.target.wants/chirpstack.service' → '/usr/lib/systemd/system/chirpstack.service'.
[2026-11-12 17:31:29] [OK] Installed ChirpStack
[2026-11-12 17:31:29] [INFO] Configuring ChirpStack
[2026-11-12 17:31:30] [OK] Configured ChirpStack
[2026-11-12 17:31:30] [INFO] Customizing Container
[2026-11-12 17:31:30] [OK] Customized Container
[2026-11-12 17:31:31] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-12 17:31:31] [OK] Cleaned
🔄 ct/chirpstack.sh (arm64) — update log (18 lines)
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
10.98.0.159
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!
🔁 ct/chirpstack.sh (arm64) — second update log
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
10.98.0.159
   ______                                      _ __           _____           _       __
  / ____/___  ____ ___  ____ ___  __  ______  (_) /___  __   / ___/__________(_)___  / /______
 / /   / __ \/ __ `__ \/ __ `__ \/ / / / __ \/ / __/ / / /   \__ \/ ___/ ___/ / __ \/ __/ ___/
/ /___/ /_/ / / / / / / / / / / / /_/ / / / / / /_/ /_/ /   ___/ / /__/ /  / / /_/ / /_(__  )
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/ /_/_/\__/\__, /   /____/\___/_/  /_/ .___/\__/____/
                                                 /____/                    /_/
  ChirpStack
  ⏳   Updating ChirpStack
  ✔️  Updated ChirpStack
  ✔️  Updated successfully!

Full logs: workflow run (artifacts result-*). Comment /test to build again.

@github-actions
github-actions Bot dismissed their stale review November 12, 2026 17:36

Proxmox script test passed at 6fc85c1.

Comment thread ct/chirpstack.sh
var_unprivileged="${var_unprivileged:-1}"

export var_region="${var_region:-}"
var_testurl="${var_testurl:-https://github.com/community-scripts/DevScripts/issues/2521}"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of that hack here, can we give the var_region some sane default? The test should run as if a user dose not provide anything ideally.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought about that as well, but since it's dependent on the users region it did not much sense. For example if an american user runs this with a default like eu868, they would have the gateway running with a frequency which is not allowed there.

If that's fine with you, i could set eu868 as default (official docs also use that) and let them know to configure a region that matches their home location

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@michelroegl-brunner Now looking at your comment again: It's on the change from my second commit. There i just removed the variable inside the update script which i forgot to remove from my testings.
So the update script does not need the variable at all.
The install script still requires it, but the tests are successful since they set the variable to ci-test.

Do you still prefer if we use a default value here?
I saw that other scripts also abort if required variables aren't set (i.e. opencloud)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tomfrenzel
If deafults will not work then we leave them out. worst thing is that the CI will fail, wich is fine.

I just want to try and push defaults where possible, so it is easier for the users to install suff. Is there a list onlie of all regiones a user can pick? I saw you added a hint in the json for a .toml file, wich a user only can access after the install. Would be greate if we can add a link to some online resource. Or if such thing dose not exist, would you mind openeing a discussion in the main repository where you list the contents of the toml file and link to it in the JSON?
Thank you!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alright, then i would say we keep it required during install. The linkt to the list of available regions is being printed above the prompt (https://github.com/chirpstack/chirpstack/tree/master/chirpstack/configuration)
It's on Line 17 in chirpstack-install.sh. So either the user sets the variable directly (They see the warning with the link on the website and can choose their region before running the script) or the see the link during install with no prevoisulsy specified region.

If thats fine with you, i would update the json and add the GitHub link with the regions there as well (instead of toml file reference)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah i did miss that you print it during install. Than it is fine and we can keep it as is!

@michelroegl-brunner
michelroegl-brunner merged commit 2da71b6 into community-scripts:main Nov 13, 2026
12 checks passed
@push-app-to-main push-app-to-main Bot mentioned this pull request Nov 13, 2026
1 of 2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants