Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 10 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,44 +149,19 @@ management:

| | Where | Details |
|---|---|---|
| 🏠 | **[etke.cc](https://etke.cc/?utm_source=github&utm_medium=readme&utm_campaign=ketesa)** | Core component of the managed hosting platform |
| 🌐 | **[admin.etke.cc](https://admin.etke.cc)** | Hosted instance, always on the latest version |
| 📦 | **[GitHub Releases](https://github.com/etkecc/ketesa/releases)** | Prebuilt tarballs for root-path and `/admin` subpath deployment |
| 🐳 | **[Docker Hub](https://hub.docker.com/r/etkecc/ketesa) / [GHCR](https://github.com/etkecc/ketesa/pkgs/container/ketesa)** | Official Docker images |
| 🤖 | **[matrix-docker-ansible-deploy](https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/docs/configuring-playbook-ketesa.md)** | Ansible playbook component |
| ❄️ | **[Nix package](https://search.nixos.org/packages?show=synapse-admin-etkecc)** | Maintained by [@Defelo](https://github.com/Defelo) |
| 🐧 | **[Arch Linux AUR](https://aur.archlinux.org/packages/synapse-admin-etke-git)** | Maintained by [@drygdryg](https://github.com/drygdryg) |
| 🌊 | **[IPFS](https://ipfs.io)** | Maintained by [Fеnикs (@fenuks:sibnsk.net)](https://matrix.to/#/@fenuks:sibnsk.net) — see [details below](#ipfs) |
| 🏠 | **[etke.cc](https://etke.cc/?utm_source=github&utm_medium=readme&utm_campaign=ketesa)** | Managed hosting with Ketesa built in |
| 🌐 | **[admin.etke.cc](https://admin.etke.cc)** | Hosted instance, always on the latest development version |
| 📦 | **[GitHub Releases](https://github.com/etkecc/ketesa/releases)** | Official prebuilt tarballs for root-path and `/admin` deployments |
| 🐳 | **[GHCR](https://github.com/etkecc/ketesa/pkgs/container/ketesa) / [Docker Hub](https://hub.docker.com/r/etkecc/ketesa/tags)** | Official container images |
| 🔧 | **[Source](https://github.com/etkecc/ketesa)** | Build from source or track `main` directly |

### Prebuilt distributions
Official static builds:

We offer two prebuilt distributions for different deployment paths:
- **`ketesa.tar.gz`** for root path deployment, such as `https://admin.example.com`
- **`ketesa-subpath-admin.tar.gz`** for `/admin` deployments, such as `https://example.com/admin`

- **`ketesa.tar.gz`** — for root path deployment (e.g., `https://admin.example.com`)
- **`ketesa-subpath-admin.tar.gz`** — for `/admin` subpath deployment (e.g., `https://example.com/admin`)

Find the latest **released** versions on [GitHub Releases](https://github.com/etkecc/ketesa/releases).
Find the latest **development (nightly)** builds in [GitHub Actions](https://github.com/etkecc/ketesa/actions/workflows/workflow.yml)
— click the latest successful run and download `dist-root` or `dist-subpath-admin` from the Artifacts section.

### 🌙 Nightly builds

Stay on the bleeding edge:

- 🌐 **[admin.etke.cc](https://admin.etke.cc)** — always running the latest development version
- 🐳 **Docker** — use the `latest` or `latest-subpath-admin` image tags on [GHCR](https://github.com/etkecc/ketesa/pkgs/container/ketesa) or [Docker Hub](https://hub.docker.com/r/etkecc/ketesa/tags)
- 📦 **Artifacts** — `dist-root` / `dist-subpath-admin` from the latest [GitHub Actions run](https://github.com/etkecc/ketesa/actions/workflows/workflow.yml)
- 🔧 **Source** — clone the `main` branch and build it yourself

### IPFS

> Maintained by [Fеnикs (@fenuks:sibnsk.net)](https://matrix.to/#/@fenuks:sibnsk.net)

**Latest version:** `/ipns/synapse-admin.sibnsk.net`
(dnslink key `/ipns/k51qzi5uqu5dj91scsxoqu0ebmy7uqajrt9ohl98vs7fl7l429h0chgozk58i2`)

**Archive:** `/ipns/synapse-admin-archive.sibnsk.net`
(dnslink key `/ipns/k51qzi5uqu5dhxwc36sld1hn6jn935k71ww8rdyqomrnqcqucixy7re08qeu7z`)
For nightly builds, distro packages, Ansible integrations, and IPFS,
see the [full availability guide](./docs/availability.md).

---

Expand Down
2 changes: 2 additions & 0 deletions docker/docker-compose-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@ services:

postgres:
image: postgres:17-alpine
ports:
- "5432:5432"
volumes:
- ../docs/testdata/postgres.data:/var/lib/postgresql/data
- ../docs/testdata/postgres.initdb:/docker-entrypoint-initdb.d:ro
Expand Down
1 change: 1 addition & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,4 +82,5 @@ Specific topics:

## 🚀 Deployment

* [Availability](./availability.md) — where to get Ketesa: official builds, distro packages, integrations, mirrors, and legacy compatibility links
* [Serving Ketesa behind a reverse proxy](./reverse-proxy.md)
74 changes: 74 additions & 0 deletions docs/availability.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# 📦 Availability

This page is the canonical "where to get Ketesa" reference.
It collects official release channels, deployment integrations, community-maintained packaging,
and alternative distribution options.

> ⚠️ Community-maintained and third-party entries may lag behind official releases.
> When in doubt, prefer the official release tarballs, containers, or the hosted instance.

## ✅ Official channels

| Channel | Type | Maintainer | Best for | Notes |
|---|---|---|---|---|
| [etke.cc](https://etke.cc/?utm_source=github&utm_medium=docs&utm_campaign=ketesa) | Managed hosting | Official | Fully managed deployments | Ketesa is [a core component](https://etke.cc/help/faq#what-are-the-base-matrix-components-installed-on-the-server) installed by default |
| [admin.etke.cc](https://admin.etke.cc) | Hosted instance | Official | Zero-install access | Always on the latest development version |
| [GitHub Releases](https://github.com/etkecc/ketesa/releases) | Static builds | Official | Self-hosting behind any web server | Includes `ketesa.tar.gz` and `ketesa-subpath-admin.tar.gz` |
| [GHCR](https://github.com/etkecc/ketesa/pkgs/container/ketesa) | Container image | Official | Docker and OCI-based deployments | Main image registry |
| [Docker Hub](https://hub.docker.com/r/etkecc/ketesa/tags) | Container image | Official | Docker-first users | Mirrors the official container images |
| [matrix-docker-ansible-deploy](https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/docs/configuring-playbook-ketesa.md) | Ansible integration | Official | Operators using the MDAD playbook | Maintained by the etke.cc team |
| [etkecc/ansible](https://github.com/etkecc/ansible) | Ansible integration | Official | etke.cc-flavoured self-hosted automation | Maintained by the etke.cc team |
| [Source repository](https://github.com/etkecc/ketesa) | Source code | Official | Building from source or contributing | Use when you need custom builds or development checkouts |

### Prebuilt distributions

Ketesa publishes two static distributions:

- `ketesa.tar.gz` for root path deployments such as `https://admin.example.com`
- `ketesa-subpath-admin.tar.gz` for `/admin` subpath deployments such as `https://example.com/admin`

For custom prefixes other than `/admin`, build from source with `yarn build --base=/your-prefix/`
or pass the `BASE_PATH` Docker build argument.

## 🤝 Community-packaged options

| Channel | Type | Maintainer | Best for | Notes |
|---|---|---|---|---|
| [YunoHost app](https://apps.yunohost.org/app/synapse-admin) | App catalog package | [@Josue-T](https://github.com/Josue-T) | YunoHost-based deployments | Listed in the YunoHost app catalog under the legacy `synapse-admin` name |
| [IPFS](#ipfs) | Mirror / alternative delivery | [Fеnикs (@fenuks:sibnsk.net)](https://matrix.to/#/@fenuks:sibnsk.net) | Content-addressed distribution | Current and archive addresses are listed below |

## 🐧 Distro packages

| Channel | Type | Maintainer | Best for | Notes |
|---|---|---|---|---|
| [Nixpkgs](https://search.nixos.org/packages?channel=unstable&show=ketesa) | Package index | [@Defelo](https://github.com/Defelo) | Nix and NixOS users | |
| [Arch Linux AUR](https://aur.archlinux.org/packages/synapse-admin-etke-git) | AUR package | [@drygdryg](https://github.com/drygdryg) | Arch users who prefer AUR packaging | Legacy package naming; maintained outside this repository |

## 🌙 Nightly and development builds

If you want the latest unreleased changes:

- Use [admin.etke.cc](https://admin.etke.cc) for the hosted development version
- Pull `latest` or `latest-subpath-admin` from [GHCR](https://github.com/etkecc/ketesa/pkgs/container/ketesa) or [Docker Hub](https://hub.docker.com/r/etkecc/ketesa/tags)
- Download `dist-root` or `dist-subpath-admin` from the latest successful [GitHub Actions run](https://github.com/etkecc/ketesa/actions/workflows/workflow.yml)
- Build the `main` branch from [source](https://github.com/etkecc/ketesa)

## IPFS

> Maintained by [Fеnикs (@fenuks:sibnsk.net)](https://matrix.to/#/@fenuks:sibnsk.net)

**Latest version:** `/ipns/ketesa.sibnsk.net`
(`dnslink` key `/ipns/k51qzi5uqu5dj91scsxoqu0ebmy7uqajrt9ohl98vs7fl7l429h0chgozk58i2`)

**Archive:** `/ipns/ketesa-archive.sibnsk.net`
(`dnslink` key `/ipns/k51qzi5uqu5dhxwc36sld1hn6jn935k71ww8rdyqomrnqcqucixy7re08qeu7z`)

## 📝 Want your package listed?

Open a pull request if you maintain a Ketesa package, mirror, or deployment integration.
Please include:

- the package or project link
- whether it is official, community-maintained, or a third-party mirror
- who maintains it
- any important caveats, especially if it still uses legacy `synapse-admin` naming
Loading