diff --git a/.env.example b/.env.example index 83ecb45..9f1df4e 100644 --- a/.env.example +++ b/.env.example @@ -110,12 +110,13 @@ FEDI_DOMAIN=example.com # When enabled, a "Download" nav link, a homepage hero CTA, and a /download page # appear — a marketing surface for the FediHome macOS app. Off by default (a # personal instance isn't advertising an app it may not use). Used by the demo. -# The release URL defaults to the app repo's GitHub Releases "latest" (always -# the newest notarized build). The App Store URL is an empty slot until the -# listing is approved. +# Both URLs already default to the project's own app, so you only need to set +# these to point at a fork/rebuild: the release URL tracks the app repo's GitHub +# Releases "latest" (newest notarized build), and the App Store URL is the live +# listing (region-neutral, so Apple redirects each visitor to their storefront). # DOWNLOAD_MACOS_ENABLED=true # DOWNLOAD_MACOS_RELEASE_URL=https://github.com/TemujinCalidius/FediHome-macOS/releases/latest -# DOWNLOAD_MACOS_APP_STORE_URL=https://apps.apple.com/app/id0000000000 +# DOWNLOAD_MACOS_APP_STORE_URL=https://apps.apple.com/app/fedihome/id6790605091 # --- Optional: Web Push (PWA phone notifications) --- # Lets you install the site to your phone's home screen and receive push diff --git a/CHANGELOG.md b/CHANGELOG.md index 1dabdb8..f02a15a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - **Documented what actually happens when you change your domain** (#326) — `docs/fediverse-setup.md` gains a **Changing Your Domain** section. ActivityPub has no rename: your identity is a URL, and every server that has seen you stores it. The network's answer is an alias on the new account plus a `Move` from the old one — which only works while **the old domain is still serving**, because remote servers verify the move by fetching both ends. Move first and lose the domain later and your followers can still be brought across; lose the domain first and they can't, by anyone, ever. FediHome doesn't implement that handshake yet, so for now the guidance is to treat your domain as permanent, and the recommended shape of a move (new instance alongside the old, then decommission slowly) is written down. ### Changed +- **The FediHome macOS app is on the Mac App Store** — it's out of review and live, so the download surface now links straight to the [App Store listing](https://apps.apple.com/app/fedihome/id6790605091) instead of showing "coming soon". The link is region-neutral, so Apple sends each visitor to their own storefront, and it's the default now (alongside the existing direct GitHub download) for any instance that turns the download page on — no configuration needed. Still overridable via env or the admin panel. - **Setting up on an address the Fediverse can't reach is now a deliberate choice** (#326) — the wizard used to let you finish on `localhost` or a private-network address with nothing but a warning. That bakes an identity nobody can follow into your ActivityPub actor, and because posts store their full URL, into everything you publish before you move. It's still allowed — testing locally is a perfectly reasonable thing to do — but you now have to tick a box confirming that's what you're doing. Setting up on a real domain is unchanged. ### Fixed diff --git a/docs/configuration.md b/docs/configuration.md index cf89521..26aee3b 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -163,13 +163,13 @@ Set any of these to `false` to hide that section from the navigation. The corres ## macOS App Download -FediHome has a native menu-bar Mac app. When enabled, a **Download** nav link, a homepage hero CTA, and a `/download` marketing page appear. It's **off by default** — a personal instance isn't advertising an app it may not use — and is intended for the public demo. +FediHome has a native menu-bar Mac app, [live on the Mac App Store](https://apps.apple.com/app/fedihome/id6790605091). When enabled, a **Download** nav link, a homepage hero CTA, and a `/download` marketing page appear. It's **off by default** — a personal instance isn't advertising an app it may not use — and is intended for the public demo. | Env var | Default | Purpose | |---------|---------|---------| | `DOWNLOAD_MACOS_ENABLED` | `false` | Show the Download link, hero CTA, and `/download` page. | -| `DOWNLOAD_MACOS_RELEASE_URL` | the app repo's GitHub Releases `latest` | Primary download — always the newest notarized build. Prefer `releases/latest` over a pinned tag so it auto-tracks new versions. | -| `DOWNLOAD_MACOS_APP_STORE_URL` | *(empty)* | Optional Mac App Store listing. When set, a "Download on the Mac App Store" button appears alongside the GitHub download; until then that slot shows a "coming soon" placeholder. | +| `DOWNLOAD_MACOS_RELEASE_URL` | the app repo's GitHub Releases `latest` | Direct download — always the newest notarized build. Prefer `releases/latest` over a pinned tag so it auto-tracks new versions. | +| `DOWNLOAD_MACOS_APP_STORE_URL` | the live Mac App Store listing | The "Download on the Mac App Store" button. Region-neutral, so Apple redirects each visitor to their own storefront. Both URLs already point at the project's app; only override to point at a fork/rebuild. Clearing it shows a "coming soon" placeholder instead. | All three are also editable at runtime from **Admin → Site settings** (they overlay the env defaults, no restart). diff --git a/site.config.ts b/site.config.ts index d0c56eb..fa4ccad 100644 --- a/site.config.ts +++ b/site.config.ts @@ -87,15 +87,20 @@ export const siteConfig = { // Native-app downloads (#241). When DOWNLOAD_MACOS_ENABLED=true, a "Download" // nav link, a homepage hero CTA, and a /download page appear — a marketing // surface for the FediHome macOS app. Off by default so a personal instance - // isn't advertising an app it may not use; the public demo turns it on. The - // release URL tracks GitHub Releases "latest" (always the newest notarized - // build); the App Store URL is an empty slot until the listing is approved. + // isn't advertising an app it may not use; the public demo turns it on. Both + // URLs default to the project's own app (there's only one FediHome macOS app): + // the release URL tracks GitHub Releases "latest" (the newest notarized build), + // and the App Store URL points at the live listing. Region-neutral on purpose, + // so Apple redirects each visitor to their own storefront. Override either via + // env or the admin panel. download: { macosEnabled: process.env.DOWNLOAD_MACOS_ENABLED === "true", macosReleaseUrl: process.env.DOWNLOAD_MACOS_RELEASE_URL || "https://github.com/TemujinCalidius/FediHome-macOS/releases/latest", - macosAppStoreUrl: process.env.DOWNLOAD_MACOS_APP_STORE_URL || "", + macosAppStoreUrl: + process.env.DOWNLOAD_MACOS_APP_STORE_URL || + "https://apps.apple.com/app/fedihome/id6790605091", }, // Visual theme (#250). Selects a built-in theme preset (see src/lib/themes). diff --git a/src/app/(public)/download/page.tsx b/src/app/(public)/download/page.tsx index 1382995..35cb21e 100644 --- a/src/app/(public)/download/page.tsx +++ b/src/app/(public)/download/page.tsx @@ -90,8 +90,8 @@ export default async function DownloadPage() { )} - {/* Mac App Store slot — the official badge + link drops in here once - the listing is approved (set DOWNLOAD_MACOS_APP_STORE_URL). */} + {/* Mac App Store link. Defaults to the live listing; the "coming + soon" fallback only shows if an instance clears the URL. */} {macosAppStoreUrl ? (