diff --git a/README.md b/README.md index 46f45477..9216de20 100644 --- a/README.md +++ b/README.md @@ -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). --- diff --git a/docker/docker-compose-dev.yml b/docker/docker-compose-dev.yml index 111e45eb..deb43bf9 100644 --- a/docker/docker-compose-dev.yml +++ b/docker/docker-compose-dev.yml @@ -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 diff --git a/docs/README.md b/docs/README.md index 1d6e98dc..3565c04e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -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) diff --git a/docs/availability.md b/docs/availability.md new file mode 100644 index 00000000..b6e8983b --- /dev/null +++ b/docs/availability.md @@ -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