ATProto Browser

ATProto Browser

Experimental browser for the Atmosphere

Record data

{
  "uri": "at://did:plc:6hbqm2oftpotwuw7gvvrui3i/sh.tangled.repo.pull/3lne6qwfkuz22",
  "cid": "bafyreid5vbf4ebvlqgbt25efckyyaxgjilotw62zgtdvyw4422zgvtds2u",
  "value": {
    "$type": "sh.tangled.repo.pull",
    "patch": "From 176c0e16c1ee2ab015e7cee5769ac23359808be3 Mon Sep 17 00:00:00 2001\nFrom: Roscoe Rubin-Rottenberg <roscoe@knotbin.xyz>\nDate: Mon, 21 Apr 2025 17:41:58 -0400\nSubject: [PATCH 1/3] correct permissions\n\n---\n docker/Dockerfile         | 10 ++++++++--\n docker/docker-compose.yml |  5 ++++-\n 2 files changed, 12 insertions(+), 3 deletions(-)\n\ndiff --git a/docker/Dockerfile b/docker/Dockerfile\nindex f7c7604..181e12a 100644\n--- a/docker/Dockerfile\n+++ b/docker/Dockerfile\n@@ -2,6 +2,8 @@ FROM docker.io/golang:1.24-alpine3.21 AS build\n \n ENV CGO_ENABLED=1\n \n+USER root\n+\n RUN apk add --no-cache gcc musl-dev\n \n WORKDIR /usr/src/app\n@@ -34,7 +36,7 @@ RUN apk add --no-cache shadow s6-overlay execline openssh git && \\\n     adduser --disabled-password git && \\\n     # We need to set password anyway since otherwise ssh won't work\n     head -c 32 /dev/random | base64 | tr -dc 'a-zA-Z0-9' | passwd git --stdin && \\\n-    mkdir /app && mkdir /home/git/repositories\n+    mkdir -p /app && mkdir -p /home/git/repositories\n \n COPY --from=build /usr/local/bin/knotserver /usr/local/bin\n COPY --from=build /usr/local/bin/keyfetch /usr/local/libexec/tangled-keyfetch\n@@ -44,7 +46,11 @@ COPY docker/rootfs/ .\n RUN chown root:root /usr/local/libexec/tangled-keyfetch && \\\n     chmod 755 /usr/local/libexec/tangled-keyfetch && \\\n     chown git:git /home/git/repoguard && \\\n-    chown git:git /app && chown git:git /home/git/repositories\n+    chown -R git:git /app && chmod -R 755 /app && \\\n+    chown -R git:git /home/git/repositories\n+\n+# Create an empty database file with correct permissions\n+RUN touch /app/knotserver.db && chown git:git /app/knotserver.db && chmod 644 /app/knotserver.db\n \n EXPOSE 22\n EXPOSE 5555\ndiff --git a/docker/docker-compose.yml b/docker/docker-compose.yml\nindex 04a5793..93d92ec 100644\n--- a/docker/docker-compose.yml\n+++ b/docker/docker-compose.yml\n@@ -11,7 +11,10 @@ services:\n     volumes:\n       - \"./keys:/etc/ssh/keys\"\n       - \"./repositories:/home/git/repositories\"\n-      - \"./server:/app\"\n+      - db_data:/app\n     ports:\n       - \"5555:5555\"\n       - \"2222:22\"\n+\n+volumes:\n+  db_data:\n-- \n2.43.0\n\n\nFrom 3fea1df9c583c3fff70517a79aac905bbcc676d4 Mon Sep 17 00:00:00 2001\nFrom: Roscoe Rubin-Rottenberg <roscoe@knotbin.xyz>\nDate: Mon, 21 Apr 2025 19:58:48 -0400\nSubject: [PATCH 2/3] permissions for git repos\n\n---\n docker/Dockerfile | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/docker/Dockerfile b/docker/Dockerfile\nindex 181e12a..b68a53c 100644\n--- a/docker/Dockerfile\n+++ b/docker/Dockerfile\n@@ -47,7 +47,7 @@ RUN chown root:root /usr/local/libexec/tangled-keyfetch && \\\n     chmod 755 /usr/local/libexec/tangled-keyfetch && \\\n     chown git:git /home/git/repoguard && \\\n     chown -R git:git /app && chmod -R 755 /app && \\\n-    chown -R git:git /home/git/repositories\n+    chown -R git:git /home/git/repositories && chmod -R 775 /home/git/repositories\n \n # Create an empty database file with correct permissions\n RUN touch /app/knotserver.db && chown git:git /app/knotserver.db && chmod 644 /app/knotserver.db\n-- \n2.43.0\n\n\nFrom 3df97244c9ad622444dc373cc997e07d8258a837 Mon Sep 17 00:00:00 2001\nFrom: Roscoe Rubin-Rottenberg <roscoe@knotbin.xyz>\nDate: Tue, 22 Apr 2025 11:56:31 -0400\nSubject: [PATCH 3/3] all of the volumes\n\n---\n docker/docker-compose.yml | 6 ++++--\n 1 file changed, 4 insertions(+), 2 deletions(-)\n\ndiff --git a/docker/docker-compose.yml b/docker/docker-compose.yml\nindex 93d92ec..d983e75 100644\n--- a/docker/docker-compose.yml\n+++ b/docker/docker-compose.yml\n@@ -9,8 +9,8 @@ services:\n       KNOT_SERVER_DB_PATH: \"/app/knotserver.db\"\n       KNOT_REPO_SCAN_PATH: \"/home/git/repositories\"\n     volumes:\n-      - \"./keys:/etc/ssh/keys\"\n-      - \"./repositories:/home/git/repositories\"\n+      - keys:/etc/ssh/keys\n+      - repositories:/home/git/repositories\n       - db_data:/app\n     ports:\n       - \"5555:5555\"\n@@ -18,3 +18,5 @@ services:\n \n volumes:\n   db_data:\n+  repositories:\n+  keys:\n-- \n2.43.0\n\n",
    "title": "fix docker permissions",
    "pullId": 61,
    "source": {
      "repo": "at://did:plc:6hbqm2oftpotwuw7gvvrui3i/sh.tangled.repo/3lne4u5auj722",
      "branch": "master"
    },
    "targetRepo": "at://did:plc:wshs7t2adsemcrrd4snkeqli/sh.tangled.repo/3liuighjy2h22",
    "targetBranch": "master"
  }
}