Skip to content

Add Rettid - #6095

Open
g4bcloud wants to merge 2 commits into
getumbrel:masterfrom
g4bcloud:add-rettid
Open

g4bcloud wants to merge 2 commits into
getumbrel:masterfrom
g4bcloud:add-rettid

Conversation

@g4bcloud

Copy link
Copy Markdown

App

  • Name: Rettid
  • App ID: rettid
  • Version packaged: 0.1.2
  • Upstream project: https://github.com/g4bcloud/rettid
  • Image: gab360/rettid:0.1.2@sha256:91c01f55056cccc7a3a9acab6e8c66cedf01f68e6013ef7fee6ba3090a0ee852 (multi-arch: linux/amd64, linux/arm64, confirmed via the Docker Hub manifest list)

What is Rettid

Rettid is a self-hosted, private, ad-free, tracker-free front-end for Reddit. It's a fork of Redlib (itself descended from Libreddit) that keeps Redlib's privacy properties — no ads, no trackers, no JavaScript required for the classic layouts, and every request (including media) proxied server-side so the browser never talks to Reddit directly — and adds three things on top:

  • A mobile-first 'Voyager' layout with a bottom tab bar, sticky top bar, and card-style feed (enabled by default)
  • An installable PWA (service worker, manifest, offline fallback, media caching)
  • An opt-in, read-only, allowlisted JSON API passthrough for building custom clients

Testing performed

  • node .tools/lint-apps.mjs rettid passes with 0 errors (1 warning, justified below).
  • Manually verified the pinned image manifest against the Docker Hub registry API (auth + manifest fetch) and confirmed the tag 0.1.2 resolves to a multi-arch OCI image index containing both linux/amd64 and linux/arm64 platform manifests, matching the digest pinned in docker-compose.yml.
  • The app is stateless (no user accounts, no database, no persistent app data), matching upstream Redlib's architecture, so no `` bind mounts are needed.
  • app_proxy fronts the single web service; Umbrel auth stays enabled (no whitelist needed, no companion app/webhook routes).

Notable setup / host access

  • No default credentials, no login — Rettid has no accounts.
  • No dependencies on other Umbrel apps.
  • No special permissions requested (no GPU, no shared storage access).
  • docker-compose.yml adds extra hardening beyond the minimum: read_only: true, cap_drop: [ALL], and security_opt: [no-new-privileges:true], plus running as user: nobody. This mirrors the hardened compose file the upstream project ships and runs in production; the app performs no writes to its container filesystem at runtime, so this is safe and only reduces the container's attack surface. This is what the linter's single warning (access.security_opt) flags — noted here as requested.

Assets

Per the packaging guide, gallery/icon assets are not committed; the Umbrel team creates and hosts final App Store assets. Source logo assets are available in the upstream repo under static/ (e.g. static/rettid-logo-white.png, static/rettid-icon.png, static/rettid-logo-rett.svg) for reference.

Rettid is a self-hosted, private, ad-free, tracker-free front-end for
Reddit, forked from Redlib with a mobile-first Voyager layout,
installable PWA support, and an opt-in read-only JSON API.

- Image: gab360/rettid:0.1.2 (multi-arch: linux/amd64, linux/arm64)
- Upstream: https://github.com/g4bcloud/rettid
- Stateless app_proxy service; no persistent app data required
- Hardened compose: read_only rootfs, all capabilities dropped,
  no-new-privileges
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant