Skip to content

Commit 5871190

Browse files
committed
shorten more jsons
1 parent d6c830d commit 5871190

13 files changed

Lines changed: 44 additions & 124 deletions

‎json/casdoor.json‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"arm64"
1818
],
1919
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/casdoor.webp",
20-
"description": "Casdoor is an open-source identity and access management (IAM) and single sign-on platform with a web UI. It acts as an OAuth 2.0, OIDC, SAML and CAS provider, adds LDAP, RADIUS and SCIM endpoints, social and enterprise login providers, MFA and WebAuthn, and manages organizations, users, roles and Casbin-based permissions. This script installs the prebuilt release with a local PostgreSQL database.",
20+
"description": "Casdoor is an open-source identity and access management (IAM) and single sign-on platform. It acts as an OAuth 2.0, OIDC, SAML and CAS provider with LDAP, RADIUS and SCIM endpoints, social logins, MFA and WebAuthn, and Casbin-based permissions.",
2121
"install_methods": [
2222
{
2323
"type": "default",
@@ -38,15 +38,15 @@
3838
},
3939
"notes": [
4040
{
41-
"text": "Log in at http://<IP>:8000 as admin with password 123 (organization built-in). These defaults are public and give full control over every user and application, so change the password right after the install: the user menu in the top right, My Account, Password.",
41+
"text": "The default admin login (organization built-in) is public and controls every user and application. Change the password right away under the user menu > My Account.",
4242
"type": "warning"
4343
},
4444
{
45-
"text": "origin in /opt/casdoor_data/conf/app.conf is the OIDC issuer and the base of the links Casdoor mails out, and points at the container IP. Change it before connecting applications when the IP changes or Casdoor sits behind a reverse proxy or domain, then run systemctl restart casdoor.",
45+
"text": "origin in /opt/casdoor_data/conf/app.conf is the OIDC issuer. Behind a reverse proxy or domain, change it before connecting applications and run systemctl restart casdoor.",
4646
"type": "info"
4747
},
4848
{
49-
"text": "Besides the web UI on port 8000, Casdoor serves its built-in LDAP server on port 389 and a RADIUS server on UDP port 1812. The RADIUS shared secret is generated during the install and stored as radiusSecret in /opt/casdoor_data/conf/app.conf.",
49+
"text": "Casdoor also serves LDAP on port 389 and RADIUS on UDP port 1812. The RADIUS secret is radiusSecret in /opt/casdoor_data/conf/app.conf.",
5050
"type": "info"
5151
}
5252
]

‎json/chartdb.json‎

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"arm64"
1919
],
2020
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/chartdb.webp",
21-
"description": "ChartDB is a database diagram editor that runs in the browser. A single query run against PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, ClickHouse or CockroachDB returns the schema as JSON, which ChartDB turns into an editable entity-relationship diagram; diagrams can also be built from scratch, imported from DBML or SQL, and exported as SQL, DBML or images. This script builds the web app from source and serves it with nginx.",
21+
"description": "ChartDB is a database diagram editor that runs in the browser. One query against PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, ClickHouse or CockroachDB returns the schema, which ChartDB turns into an editable ER diagram that can be exported as SQL, DBML or an image.",
2222
"install_methods": [
2323
{
2424
"type": "default",
@@ -39,24 +39,16 @@
3939
},
4040
"notes": [
4141
{
42-
"text": "Diagrams are stored in the browser (IndexedDB), not in the container. Another browser or device, cleared site data or a different address (new IP, hostname or reverse proxy) shows an empty diagram list, and container backups do not include them. Export diagrams you want to keep (JSON, DBML or SQL).",
42+
"text": "Diagrams are stored in your browser, not in the container. Another browser, cleared site data or a new address shows an empty list, so export the diagrams you want to keep.",
4343
"type": "warning"
4444
},
4545
{
46-
"text": "ChartDB is served over HTTPS with a self-signed certificate (http:// redirects to it): accept the certificate warning on first visit. HTTPS is needed because the AI export and the copy buttons only work in a secure context.",
46+
"text": "ChartDB uses a self-signed certificate: accept the browser warning on the first visit.",
4747
"type": "info"
4848
},
4949
{
50-
"text": "AI-assisted SQL export to another database dialect is optional. In /opt/chartdb_data/config.js, uncomment OPENAI_API_KEY and fill in the key for OpenAI, or uncomment all three lines for an OpenAI-compatible server such as Ollama or vLLM (set its URL and model, and leave the key empty if the server needs none), then reload the page; no rebuild or restart is needed. The browser calls the endpoint directly, so it has to be reachable from the browser over HTTPS and allow requests from the ChartDB address (CORS).",
51-
"type": "info"
52-
},
53-
{
54-
"text": "An OPENAI_API_KEY in config.js is sent to every browser that opens ChartDB, so anyone who can reach the container can read it. Use a key with a spending limit and keep ChartDB off the public internet when one is set.",
50+
"text": "For the optional AI SQL export, set OPENAI_API_KEY or an OpenAI-compatible endpoint in /opt/chartdb_data/config.js. The key is sent to every browser that opens ChartDB, so use one with a spending limit.",
5551
"type": "warning"
56-
},
57-
{
58-
"text": "Fathom analytics are switched off by DISABLE_ANALYTICS in /opt/chartdb_data/config.js. Install and every update build ChartDB from source and need the 6 GB of RAM; the running site is static files served by nginx, so the RAM can be lowered to 512 MB after the install and raised again before an update.",
59-
"type": "info"
6052
}
6153
]
6254
}

‎json/chatto.json‎

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"website": "https://chatto.run",
1515
"repository": "https://github.com/chattocorp/chatto",
1616
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/chatto.webp",
17-
"description": "Chatto is a fully-featured, privacy-first team and group chat application that is free and easy to self-host. It ships as a single binary with an embedded NATS/JetStream store (no external database) and supports voice/video calls and screensharing via an optional LiveKit server.",
17+
"description": "Chatto is a privacy-first team and group chat app built for self-hosting. It runs as a single binary with an embedded NATS/JetStream store, so it needs no external database, and supports voice and video calls and screensharing through an optional LiveKit server.",
1818
"install_methods": [
1919
{
2020
"type": "default",
@@ -35,23 +35,15 @@
3535
},
3636
"notes": [
3737
{
38-
"text": "Create the first account with `cd /opt/chatto && ./chatto operator user create --login <yourname>` (the operator API is enabled by default), or register via the web UI at http://IP:4000. Pick your own login: root, admin, superuser, op, operator and support are blocked by default and fail with 'this username is not available'.",
38+
"text": "Register the first account in the web UI, or run cd /opt/chatto && ./chatto operator user create --login <name>. Logins such as root, admin, op and operator are blocked.",
3939
"type": "info"
4040
},
4141
{
42-
"text": "Review /opt/chatto_data/chatto.toml and configure SMTP credentials and a public webserver.url before using Chatto in production.",
43-
"type": "warning"
44-
},
45-
{
46-
"text": "All persistent data (embedded NATS/JetStream store and chatto.toml with its secrets) lives in /opt/chatto_data, kept outside the app directory so it survives updates. Include /opt/chatto_data in regular backups.",
47-
"type": "warning"
48-
},
49-
{
50-
"text": "Uploads go through the embedded NATS/JetStream store, which gets slow with many or large files. Testers report it becomes noticeably more usable with more CPU cores assigned to the container.",
42+
"text": "Set SMTP credentials and a public webserver.url in /opt/chatto_data/chatto.toml before using Chatto in production.",
5143
"type": "info"
5244
},
5345
{
54-
"text": "Voice and video calls require a separately deployed LiveKit server; configure the [livekit] section in chatto.toml to enable them.",
46+
"text": "Voice and video calls need a separately deployed LiveKit server, configured in the [livekit] section of chatto.toml.",
5547
"type": "info"
5648
}
5749
]

‎json/ideon.json‎

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"arm64"
1818
],
1919
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/ideon.webp",
20-
"description": "Ideon is a self-hosted visual workspace that maps a project on an infinite canvas. Notes, files, links, tasks, kanban boards, sketches and live Git repository blocks (GitHub, GitLab, Gitea, Forgejo) sit side by side, are edited together in real time and can be rewound to earlier snapshots. This script builds Ideon from source and runs it with PostgreSQL.",
20+
"description": "Ideon is a self-hosted visual workspace that maps a project on an infinite canvas. Notes, files, links, tasks, kanban boards, sketches and live Git repository blocks sit side by side, are edited together in real time and can be rewound to earlier snapshots.",
2121
"install_methods": [
2222
{
2323
"type": "default",
@@ -38,27 +38,15 @@
3838
},
3939
"notes": [
4040
{
41-
"text": "There is no default account. The first visit to http://<IP>:3000 opens the setup page that creates the super-admin; anyone who reaches the port can claim it until then, so finish the setup right after the install. Public registration is off afterwards, further users are invited from the Team page.",
41+
"text": "There is no default account: the first visit opens the setup page that creates the super-admin. Finish it right after the install.",
4242
"type": "warning"
4343
},
4444
{
45-
"text": "Redirects, invitation and share links are built from APP_URL in /opt/ideon_data/.env, which points at the container IP. Change it when the IP changes or Ideon sits behind a reverse proxy or domain, then run systemctl restart ideon.",
45+
"text": "Links and redirects use APP_URL in /opt/ideon_data/.env. Change it behind a reverse proxy or after an IP change, add the SMTP_* values for email, then run systemctl restart ideon.",
4646
"type": "info"
4747
},
4848
{
49-
"text": "Back up SECRET_KEY from /opt/ideon_data/.env together with the database and /opt/ideon_data/storage (uploads, avatars and the canvas documents). Sessions and encrypted values such as Git tokens depend on it.",
50-
"type": "warning"
51-
},
52-
{
53-
"text": "Ideon connects to PostgreSQL as a regular role that is subject to its row-level security, unlike the upstream Docker setup whose database user is a superuser. Canvases, blocks, files and collaboration work, but a few features expect to bypass it: Shell blocks are refused, MCP/API-key clients and access requests to other users' projects report the project as missing, and the admin audit log only lists the admin's own entries.",
54-
"type": "info"
55-
},
56-
{
57-
"text": "Install and every update build Ideon from source (Next.js), which takes about 10 minutes on 2 cores and needs the 4 GB of RAM. The running app uses around 300 MB, so the RAM can be lowered after the install and raised again before an update.",
58-
"type": "info"
59-
},
60-
{
61-
"text": "Email (invitations, password reset, magic links) needs the SMTP_* values in /opt/ideon_data/.env, followed by systemctl restart ideon.",
49+
"text": "Shell blocks, MCP and API-key clients, and access requests to other users' projects do not work here, as the database user is not a superuser like in upstream's Docker setup.",
6250
"type": "info"
6351
}
6452
]

‎json/k3s-vm.json‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@
3636
},
3737
"notes": [
3838
{
39-
"text": "Default settings use Debian 13; choose another Debian/Ubuntu cloud image in Advanced settings. Cloud-Init uses the shared credentials/network wizard and is enabled by default for unattended runs. Explicitly disabling it on Debian uses a nocloud image with root console login and no password; set a password immediately.",
40-
"type": "info"
39+
"text": "Cloud-Init sets up credentials, SSH keys and networking. If you turn it off on Debian, root logs in on the console without a password, so set one right away.",
40+
"type": "warning"
4141
},
4242
{
43-
"text": "K3s and Helm are installed into the image before import. k9s is added from the derailed/k9s release when available. Optional ArgoCD bootstrap runs on first boot through argocd-bootstrap.service; monitor journalctl -u argocd-bootstrap -f.",
43+
"text": "ArgoCD is installed on first boot by default. Set INSTALL_ARGOCD_BOOTSTRAP=0 to skip it.",
4444
"type": "info"
4545
},
4646
{

‎json/netbird-server.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
},
3737
"notes": [
3838
{
39-
"text": "Default settings use Debian 13; Advanced settings offer other Debian/Ubuntu cloud images. Shared Cloud-Init configures credentials/networking when enabled. NetBird domain/proxy settings are required after VM settings; unattended deployment requires VM_NETBIRD_DOMAIN. Setup is staged with the netbird-setup.service first-boot unit; follow it with tail -f /var/log/netbird-setup.log. If Docker cannot be pre-installed, install-docker.service runs first and logs to /var/log/install-docker.log.",
39+
"text": "Needs a public domain whose DNS A record points at this VM, with 80/tcp, 443/tcp and 3478/udp reachable. The install asks for it; unattended installs must set VM_NETBIRD_DOMAIN.",
4040
"type": "info"
4141
},
4242
{

‎json/nextcloud-aio-vm.json‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,12 @@
3636
},
3737
"notes": [
3838
{
39-
"text": "Default settings use Debian 13; Advanced settings offer other Debian/Ubuntu cloud images. The AIO master container is started by the nextcloud-aio.service first-boot unit (log: /var/log/nextcloud-aio.log); if Docker cannot be pre-installed, install-docker.service runs first. Finish the setup at https://<VM-IP>:8080; the AIO password is printed with `docker exec nextcloud-aio-mastercontainer grep password /mnt/docker-aio-config/data/configuration.json`.",
40-
"type": "info"
39+
"text": "Nextcloud AIO needs a domain with a valid certificate and does not work on a bare IP. For a VM that works on an IP straight away, use the TurnKey-based nextcloud-vm instead.",
40+
"type": "warning"
4141
},
4242
{
43-
"text": "Nextcloud AIO requires a domain with a valid certificate and does not work on a bare IP. Point the domain at the VM and open 80/tcp and 443/tcp, or follow the AIO local-instance guide for a LAN-only setup. For a VM that works on an IP address straight away, use the TurnKey-based nextcloud-vm instead.",
44-
"type": "warning"
43+
"text": "Finish the setup at https://<VM-IP>:8080 with the AIO password: `docker exec nextcloud-aio-mastercontainer grep password /mnt/docker-aio-config/data/configuration.json`",
44+
"type": "info"
4545
},
4646
{
4747
"text": "If you use Cloud-init, checkout cloud-init discussion: `https://github.com/community-scripts/ProxmoxVE/discussions/272`",

‎json/nextdns.json‎

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"website": "https://nextdns.io/",
1414
"repository": "https://github.com/nextdns/nextdns",
1515
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/nextdns.webp",
16-
"description": "NextDNS is a DNS-over-HTTPS (DoH) client and resolver that blocks ads, trackers and malware using cloud-managed profiles. This script installs a minimal Debian LXC with the official NextDNS CLI from the NextDNS apt repository, prompts for your profile ID, and configures router mode so DNS is served on TCP/UDP port 53.",
16+
"description": "NextDNS is a DNS-over-HTTPS (DoH) client and resolver that blocks ads, trackers and malware using cloud-managed profiles. It serves DNS for your network on port 53; profiles are managed at my.nextdns.io, there is no local web interface.",
1717
"install_methods": [
1818
{
1919
"type": "default",
@@ -43,23 +43,7 @@
4343
],
4444
"notes": [
4545
{
46-
"text": "During install you will be asked for your NextDNS profile ID (or pass var_nextdns_profile). The script runs: nextdns install -profile <id> -report-client-info -setup-router",
47-
"type": "info"
48-
},
49-
{
50-
"text": "Create or copy your profile ID from https://my.nextdns.io before running the script.",
51-
"type": "info"
52-
},
53-
{
54-
"text": "After install, NextDNS listens on TCP/UDP port 53. Point DHCP clients at the container IP:53, or set the container as upstream DNS on your router. There is no local web UI (profiles are managed at my.nextdns.io).",
55-
"type": "info"
56-
},
57-
{
58-
"text": "Router mode (-setup-router) makes this LXC the DNS server for your network.",
59-
"type": "info"
60-
},
61-
{
62-
"text": "Updates use the official NextDNS apt repository (repo.nextdns.io). Run the container update script or apt upgrade inside the LXC.",
46+
"text": "Have your NextDNS profile ID from https://my.nextdns.io ready: the install asks for it, or pass var_nextdns_profile.",
6347
"type": "info"
6448
}
6549
]

‎json/nightingale.json‎

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"arm64"
1818
],
1919
"logo": "https://cdn.jsdelivr.net/gh/n9e/n9e.github.io@main/static/apple-touch-icon.png",
20-
"description": "Nightingale is an open-source monitoring and alerting platform. Like Grafana it connects to existing data sources such as Prometheus, VictoriaMetrics, Elasticsearch, Loki, ClickHouse or MySQL, but its focus is the alerting engine: alert rules, muting, subscriptions, event pipelines and notifications to more than 20 channels, plus dashboards, a host inventory fed by the Categraf agent and a built-in time series database. This script installs the prebuilt release with MariaDB and Redis.",
20+
"description": "Nightingale is an open-source monitoring and alerting platform. It queries data sources such as Prometheus, VictoriaMetrics, Elasticsearch or Loki, and adds alert rules, muting, notifications to more than 20 channels, dashboards and a built-in time series database.",
2121
"install_methods": [
2222
{
2323
"type": "default",
@@ -38,15 +38,11 @@
3838
},
3939
"notes": [
4040
{
41-
"text": "Log in at http://<IP>:17000 as root with password root.2020. These defaults are public and the account is an administrator, so change the password right after the install: the user menu in the top right, Profile, Change password.",
41+
"text": "The default login is public and has admin rights. Change the password right after the first login: user menu, Profile, Change password.",
4242
"type": "warning"
4343
},
4444
{
45-
"text": "No external Prometheus or VictoriaMetrics is needed: metrics pushed by Categraf agents land in Nightingale's built-in time series database, registered as the datasource embedded-tsdb. Install Categraf on the hosts to monitor from Infrastructure, Hosts, which serves the bundled agent and generates the install command. Samples are kept 15 days and capped at 4 GiB, set in [EmbeddedTSDB] of /opt/nightingale_data/config.toml.",
46-
"type": "info"
47-
},
48-
{
49-
"text": "Unlike the upstream default, anonymous queries against the datasources are disabled (PromQuerier = false in [Center.AnonymousAccess] of /opt/nightingale_data/config.toml), because they would let anyone who reaches port 17000 read every datasource. Set it to true for dashboards shared without login, then run systemctl restart nightingale.",
45+
"text": "No separate Prometheus is needed: Categraf agents push metrics into the built-in time series database. Infrastructure > Hosts generates the agent install command.",
5046
"type": "info"
5147
}
5248
]

0 commit comments

Comments
 (0)