Fix paths after the apps/ → Apps/ rename

The rename left lowercase paths that 404 on case-sensitive hosts: the
install URLs in the README and on the IPCR Forge landing page, and the
dev compose's ./apps/IPCR/seed mount.
This commit is contained in:
Worph
2026-10-03 17:21:37 +00:00
parent a07b28b10c
commit 108a2649dc
2 changed files with 11 additions and 11 deletions
+9 -9
View File
@@ -16,8 +16,8 @@ name: ipcr-forge
# (IPCR's published.json, served as /images.json). <name> is the IPNS key IPCR minted for the # (IPCR's published.json, served as /images.json). <name> is the IPNS key IPCR minted for the
# repository (k51…), not the repository's name, which is why the page lists it. # repository (k51…), not the repository's name, which is why the page lists it.
# #
# Every service is copied verbatim from its standalone listing (apps/Radicle, apps/Gitea, # Every service is copied verbatim from its standalone listing (Apps/Radicle, Apps/Gitea,
# apps/Radicle-Gitea-Bridge, apps/IPCR), so each keeps its own comments and rationale.md. # Apps/Radicle-Gitea-Bridge, Apps/IPCR), so each keeps its own comments and rationale.md.
# Only the data folders move, one subfolder per part: $AppID/{radicle,gitea,bridge,ipcr}/. # Only the data folders move, one subfolder per part: $AppID/{radicle,gitea,bridge,ipcr}/.
# #
# Replaces those four apps; it cannot sit beside them. It uses the same container names, # Replaces those four apps; it cannot sit beside them. It uses the same container names,
@@ -77,7 +77,7 @@ services:
- pcs - pcs
# ═══ Radicle — the source of truth ═════════════════════════════════════════════ # ═══ Radicle — the source of truth ═════════════════════════════════════════════
# Verbatim from apps/Radicle; only its data folder moves to $AppID/radicle/. # Verbatim from Apps/Radicle; only its data folder moves to $AppID/radicle/.
# The web UI: the Radicle Explorer bundle served as static files by Caddy. # The web UI: the Radicle Explorer bundle served as static files by Caddy.
# It is a pure client-side app — every request it makes goes from the visitor's # It is a pure client-side app — every request it makes goes from the visitor's
@@ -203,7 +203,7 @@ services:
- radicle-internal - radicle-internal
# ═══ Gitea — CI and the staging registry ═══════════════════════════════════════ # ═══ Gitea — CI and the staging registry ═══════════════════════════════════════
# Verbatim from apps/Gitea; only its data folder moves to $AppID/gitea/. # Verbatim from Apps/Gitea; only its data folder moves to $AppID/gitea/.
# Gitea itself — git hosting, the Actions controller, and the OCI package # Gitea itself — git hosting, the Actions controller, and the OCI package
# registry, all in one process. SQLite: a personal forge never has the write # registry, all in one process. SQLite: a personal forge never has the write
@@ -328,7 +328,7 @@ services:
- gitea-internal - gitea-internal
# ═══ Radicle → Gitea bridge ════════════════════════════════════════════════════ # ═══ Radicle → Gitea bridge ════════════════════════════════════════════════════
# Verbatim from apps/Radicle-Gitea-Bridge; only its data folder moves to $AppID/bridge/. # Verbatim from Apps/Radicle-Gitea-Bridge; only its data folder moves to $AppID/bridge/.
radicle-gitea-bridge: radicle-gitea-bridge:
image: ghcr.io/worph/radicle-gitea-bridge:0.1.0 image: ghcr.io/worph/radicle-gitea-bridge:0.1.0
@@ -373,7 +373,7 @@ services:
- pcs - pcs
# ═══ IPCR — the IPFS container registry ════════════════════════════════════════ # ═══ IPCR — the IPFS container registry ════════════════════════════════════════
# Verbatim from apps/IPCR; only its data folder moves to $AppID/ipcr/. # Verbatim from Apps/IPCR; only its data folder moves to $AppID/ipcr/.
# ── The registry Docker talks to ──────────────────────────────────────────── # ── The registry Docker talks to ────────────────────────────────────────────
# ipcrd: TLS front door on 127.0.0.1:4767. Passes /ipfs/<cid> through to the stock nerdctl # ipcrd: TLS front door on 127.0.0.1:4767. Passes /ipfs/<cid> through to the stock nerdctl
@@ -523,13 +523,13 @@ networks:
pcs: pcs:
name: ${APP_NET:-pcs} name: ${APP_NET:-pcs}
external: true external: true
# From apps/Radicle: egress only, for the node. # From Apps/Radicle: egress only, for the node.
radicle-internal: radicle-internal:
driver: bridge driver: bridge
# From apps/Gitea: gitea ↔ runner, nothing else. # From Apps/Gitea: gitea ↔ runner, nothing else.
gitea-internal: gitea-internal:
driver: bridge driver: bridge
# From apps/IPCR: gateway ↔ registry ↔ kubo, nothing else. # From Apps/IPCR: gateway ↔ registry ↔ kubo, nothing else.
ipcr-internal: ipcr-internal:
driver: bridge driver: bridge
+2 -2
View File
@@ -174,9 +174,9 @@ from this server and from every other server that already pulled it.</p>
<p>Install <b>IPCR</b> from the App Store. There is nothing to configure.</p> <p>Install <b>IPCR</b> from the App Store. There is nothing to configure.</p>
<h3>On any Linux server with Docker 29+</h3> <h3>On any Linux server with Docker 29+</h3>
<pre><code>mkdir -p /DATA/AppData/ipcr &amp;&amp; cd /DATA/AppData/ipcr <pre><code>mkdir -p /DATA/AppData/ipcr &amp;&amp; cd /DATA/AppData/ipcr
curl -fsSLO https://raw.githubusercontent.com/Yundera/ipcr/main/apps/IPCR/docker-compose.yml curl -fsSLO https://raw.githubusercontent.com/Yundera/ipcr/main/Apps/IPCR/docker-compose.yml
install -d -m 0700 -o 1000 -g 1000 kubo &amp;&amp; install -d -o 1000 -g 1000 init.d install -d -m 0700 -o 1000 -g 1000 kubo &amp;&amp; install -d -o 1000 -g 1000 init.d
curl -fsSL -o init.d/01-ipcr-node.sh https://raw.githubusercontent.com/Yundera/ipcr/main/apps/IPCR/seed/init.d/01-ipcr-node.sh curl -fsSL -o init.d/01-ipcr-node.sh https://raw.githubusercontent.com/Yundera/ipcr/main/Apps/IPCR/seed/init.d/01-ipcr-node.sh
chmod 0755 init.d/01-ipcr-node.sh chmod 0755 init.d/01-ipcr-node.sh
printf 'PUID=1000\nPGID=1000\nTZ=UTC\nAppID=ipcr\n' &gt; .env printf 'PUID=1000\nPGID=1000\nTZ=UTC\nAppID=ipcr\n' &gt; .env
docker compose up -d</code></pre> docker compose up -d</code></pre>