From cf2f65c5673888ae609970dda6bfe172fe2d5399 Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Thu, 23 Jul 2026 15:02:39 +0200 Subject: [PATCH] Doku: 15 Troubleshooting-Leichen raus, SAVEPOINT v3.0 + ROADMAP Etappe 11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ARCAN-*.md, Setup-/Fix-Skripte (u.a. install-rippy.sh fuer ein nie existentes "LXC 106"), proxmox-add-drive.sh (scsi-Passthrough war der falsche Weg — richtig ist USB-Passthrough per Vendor-ID, siehe SAVEPOINT) und die udev-Rules (referenzierten ein nie gebautes udev_daemon.py). SAVEPOINT dokumentiert Kernumbau + Hardware-Kette + Firmware-Befund (BU40N 1.05 kann kein UHD — Crossflash 1.03-MK ist der dokumentierte Weg). Co-Authored-By: Claude Fable 5 --- ARCAN-FIX.md | 31 ------------- ARCAN-INTEGRATION.md | 47 -------------------- ARCAN-PROJECTS-DIR.md | 62 -------------------------- ARCANE-DOCKER-COMPOSE-FIX.md | 49 --------------------- ARCANE-VM-SETUP.md | 58 ------------------------- LAUFWERK-AN-VM-HINZUFUEGEN.md | 72 ------------------------------- ROADMAP.md | 28 ++++++++++-- SAVEPOINT.md | 30 ++++++++++++- arcane-vm-setup-unix.sh | 42 ------------------ arcane-vm-setup.sh | 42 ------------------ create-docker-compose.sh | 26 ----------- install-rippy.sh | 28 ------------ proxmox-add-drive.sh | 44 ------------------- proxmox-laufwerk-hinzufuegen.conf | 8 ---- setup-arcane.sh | 14 ------ setup-git.sh | 3 -- udev/99-disc-ripper.rules | 8 ---- 17 files changed, 54 insertions(+), 538 deletions(-) delete mode 100644 ARCAN-FIX.md delete mode 100644 ARCAN-INTEGRATION.md delete mode 100644 ARCAN-PROJECTS-DIR.md delete mode 100644 ARCANE-DOCKER-COMPOSE-FIX.md delete mode 100644 ARCANE-VM-SETUP.md delete mode 100644 LAUFWERK-AN-VM-HINZUFUEGEN.md delete mode 100644 arcane-vm-setup-unix.sh delete mode 100644 arcane-vm-setup.sh delete mode 100644 create-docker-compose.sh delete mode 100644 install-rippy.sh delete mode 100644 proxmox-add-drive.sh delete mode 100644 proxmox-laufwerk-hinzufuegen.conf delete mode 100644 setup-arcane.sh delete mode 100644 setup-git.sh delete mode 100644 udev/99-disc-ripper.rules diff --git a/ARCAN-FIX.md b/ARCAN-FIX.md deleted file mode 100644 index 6a4bb53..0000000 --- a/ARCAN-FIX.md +++ /dev/null @@ -1,31 +0,0 @@ -# Arcane Git Sync Fix - -## Problem - -Arcane GitOps sync schlägt fehl mit "Failed to perform GitOps sync" + "agent event ingestion is not configured" (Bug #2978). - -## Lösung 1: Workaround in Arcane (empfohlen) - -1. **Git Repository hinzufügen** (ohne "Sync sibling files") -2. **Manuellen Sync starten** → wird erfolgreich sein -3. **Deployen** über Arcane UI -4. **"Sync sibling files" aktivieren** nach erstem Deployment - -## Lösung 2: Direkt auf LXC 106 per Docker Compose - -Ich erstelle ein Skript für dich: - -```bash -# Auf LXC 106 ausführen: -cd /opt/docker/rippy -docker compose up -d -``` - -Ich bereite das Skript vor: - -## Status (21.07.2026) - -- ✅ Doppelte Arcane-Einträge behoben (`rippy` statt `Rippy`) -- ✅ Git Sync in Arcane konfiguriert -- ✅ DB-Update mit korrekter `project_id` und `project_name` -- ✅ Commit `43dfce5` — Dark Mode Implementation diff --git a/ARCAN-INTEGRATION.md b/ARCAN-INTEGRATION.md deleted file mode 100644 index 5aa1c95..0000000 --- a/ARCAN-INTEGRATION.md +++ /dev/null @@ -1,47 +0,0 @@ -# Arcane-Integration für Rippy - -## Vorbereitung - -Damit Rippy in Arcane (auf LXC 106) importiert werden kann, benötige ich Zugriff auf: - -1. **Das Arcane Projects Directory** auf LXC 106 - - Standard: `/app/data/projects` (im Arcane-Container) - - Oder ein hostseitiges Verzeichnis, das du dafür vorgesehen hast - -2. **Zugangsmethode** (bitte eine wählen): - - **Option A (empfohlen):** SSH-Zugang zu LXC 106 → ich kopiere die Dateien per `scp` - - **Option B:** Git-Repo sync → ich pushe nach einem privaten Repo, du syncst in Arcane - - **Option C:** Datei-Upload per Arcane WebUI → ich erstelle ein Zip mit allen Dateien - -3. **Deine Wunsch-Pfad** im Arcane Projects Directory - - Z.B. `/app/data/projects/rippy` oder `/opt/docker/rippy` - -## Empfehlung - -Ich schlage **Option A (SSH)** vor: -- Du gibst mir SSH-Zugang zu LXC 106 (IP + Port + Zugangsdaten) -- Ich kopiere die Dateien direkt an den richtigen Ort -- Du brauchst Arcane nur zu neustarten, damit es die neuen Dateien findet - -**Oder** — wenn du willst, dass ich es über Git mache: -- Du erstellst ein privates Repo (z.B. auf git.tobisniceshomelab.ddnsfree.com) -- Ich pushe die Rippy-Dateien dorthin -- Du syncst in Arcane über "Add Git Repository" - ---- - -**Was möchtest du?** -1. SSH-Zugang → ich mache den Kopierscript -2. Git sync → ich pushe zu deinem Repo -3. Arcane WebUI → ich erstelle ein Zip-Package - -Und: **Wo genau** sollen die Dateien auf LXC 106 hin? (Pfad angeben) - ---- - -## Status (21.07.2026) - -- ✅ Git Sync in Arcane konfiguriert -- ✅ Rippy läuft über Arcane auf VM 192.168.178.162 -- ✅ Dark Mode implementiert -- ✅ Einstellungen mit Tab-Struktur diff --git a/ARCAN-PROJECTS-DIR.md b/ARCAN-PROJECTS-DIR.md deleted file mode 100644 index 41f2e32..0000000 --- a/ARCAN-PROJECTS-DIR.md +++ /dev/null @@ -1,62 +0,0 @@ -# Arcane Projects Directory Konfiguration - -## Problem -Arcane versucht, Project-Verzeichnisse in `/etc/arcane/projects/` zu erstellen (falscher Default). - -## Lösung - -### Methode 1: Arcane UI (empfohlen) - -1. Öffne Arcane WebUI (http://localhost:3552) -2. Gehe zu **Settings** → **General** -3. Suche nach **Projects Directory** -4. Ändere zu: `/app/data/projects` -5. Klicke **Save** - -### Methode 2: Docker Compose (wenn Arcane neu gestartet wird) - -Die Arcane Docker Compose Datei auf LXC 106 muss erweitert werden: - -```yaml -services: - arcane: - environment: - - PROJECTS_DIRECTORY=/app/data/projects - volumes: - - arcane-data:/app/data - # Optional: Host-Verzeichnis mounten für persistente Projects - - /opt/docker/projects:/app/data/projects -``` - -### Methode 3: Direkt im Container (temporär) - -```bash -# Auf LXC 106: -docker exec -it arcane sh -# Im Container: -mkdir -p /app/data/projects -chown 65532:65532 /app/data/projects -``` - -## Nach der Konfiguration - -1. Projects Directory ist now `/app/data/projects` -2. Git Sync erneut versuchen -3. Rippy Project sollte sich importieren lassen - -## Empfohlener Pfad für Rippy - -``` -/opt/docker/rippy -``` - -Oder wenn du Arcane's Standard nutzt: -``` -/app/data/projects/rippy -``` - -## Status (21.07.2026) - -- ✅ Arcane Projects Directory konfiguriert auf `/app/data/projects` -- ✅ Rippy Git Sync funktioniert -- ✅ Doppelte Einträge in DB behoben diff --git a/ARCANE-DOCKER-COMPOSE-FIX.md b/ARCANE-DOCKER-COMPOSE-FIX.md deleted file mode 100644 index bbcc73e..0000000 --- a/ARCANE-DOCKER-COMPOSE-FIX.md +++ /dev/null @@ -1,49 +0,0 @@ -# Arcane Docker Compose Fix für LXC 106 - -## Problem -Arcane versucht, Project-Verzeichnisse in `/etc/arcane/projects/` zu erstellen (falscher Default). - -## Lösung - -### Schritt 1: Arcane Docker Compose Datei finden - -Auf LXC 106 folgende Pfade prüfen: -- `/opt/docker-compose.yml` -- `/opt/docker/docker-compose.yml` -- `/opt/arcane/docker-compose.yml` -- `/app/docker-compose.yml` - -### Schritt 2: docker-compose.yml editieren - -Füge die Umgebungsvariable hinzu: - -```yaml -services: - arcane: - environment: - - PROJECTS_DIRECTORY=/app/data/projects -``` - -### Schritt 3: Docker Compose neu starten - -```bash -cd /opt -docker compose down -docker compose up -d -``` - -### Schritt 4: In Arcane UIProjects Directory prüfen - -Gehe zu Settings → General und prüfe, ob `/app/data/projects` eingestellt ist. - -### Schritt 5: Git Sync erneut starten - -Rippy Project importieren und deployen. - -## Status (21.07.2026) - -- ✅ Arcane Docker Compose konfiguriert -- ✅ PROJECTS_DIRECTORY=/app/data/projects -- ✅ Git Sync funktioniert -- ✅ Doppelte Einträge behoben -- ✅ Dark Mode implementiert diff --git a/ARCANE-VM-SETUP.md b/ARCANE-VM-SETUP.md deleted file mode 100644 index 0046674..0000000 --- a/ARCANE-VM-SETUP.md +++ /dev/null @@ -1,58 +0,0 @@ -# Arcane VM Setup - ABGESCHLOSSEN - -## Status -- **VM IP:** 192.168.178.162 -- **Arcane:** Erreichbar unter http://192.168.178.162:3552 -- **Docker:** Installiert und läuft -- **Projects Directory:** /home/arcane/projects -- **Rippy UI:** http://192.168.178.162:80 -- **Rippy API:** http://192.168.178.162:8000 -- **Git Sync:** Konfiguriert und funktioniert - -## Nächste Schritte in Arcane - -1. Öffne http://192.168.178.162:3552 -2. Gehe zu **Projects** → **Add Git Repository** -3. Repository URL: `https://git.tobisniceshomelab.ddnsfree.com/Hitonabi/rippy.git` -4. Branch: `main` -5. Compose File Path: `docker-compose.yml` -6. Sync Name: `rippy` -7. **WICHTIG:** Deaktiviere "Sync sibling files" (Bug #2978) -8. Klicke **Create Sync** -9. Git Sync erneut versuchen → wird jetzt erfolgreich sein! - -## Docker Compose Datei - -Die Datei wurde unter `/home/arcane/docker-compose.yml` erstellt. - -```yaml -version: '3.8' -services: - arcane: - image: ghcr.io/getarcaneapp/manager:latest - container_name: arcane - ports: - - '3552:3552' - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - arcane-data:/app/data - - /home/arcane/projects:/app/data/projects - environment: - - PROJECTS_DIRECTORY=/app/data/projects - - APP_URL=http://192.168.178.162:3552 - - PUID=1000 - - PGID=1000 - - ENCRYPTION_KEY= - - JWT_SECRET= - restart: unless-stopped -volumes: - arcane-data: -``` - -## Status: Arcane läuft, Rippy Import bereit - -## Rippy Features -- ✅ Dark Mode mit Theme-Toggle -- ✅ React UI mit TailwindCSS -- ✅ Einstellungen mit Tab-Struktur -- ✅ Sidebar Navigation diff --git a/LAUFWERK-AN-VM-HINZUFUEGEN.md b/LAUFWERK-AN-VM-HINZUFUEGEN.md deleted file mode 100644 index 3007689..0000000 --- a/LAUFWERK-AN-VM-HINZUFUEGEN.md +++ /dev/null @@ -1,72 +0,0 @@ -# Laufwerk zur Arcane VM hinzufügen - -## Status -- ✅ Laufwerk am Proxmox Host (192.168.178.108) sichtbar: `/dev/sr0` (block device) -- ❌ Laufwerk ist noch **nicht** an die VM (192.168.178.162) durchgereicht - -## Lösung - -### Schritt 1: Laufwerk zur VM-Konfiguration hinzufügen - -Auf dem Proxmox Host (192.168.178.108) als root: - -```bash -# VM-Config sichern -cp /etc/pve/qemu-server/106.conf /etc/pve/qemu-server/106.conf.backup - -# Laufwerk hinzufügen (als SCSI Device) -echo "scsi1: /dev/sr0,media=cdrom" >> /etc/pve/qemu-server/106.conf - -# VM neu starten -qm shutdown 106 -# Warten bis VM gestoppt ist -qm start 106 -``` - -### Schritt 2: Nach dem Neustart prüfen - -In der Arcane VM: - -```bash -# Laufwerk im Container prüfen -docker exec rippy-worker ls -la /dev/sr0 -docker exec rippy-worker ls -la /dev/cdrom -``` - -### Schritt 3: Rippy UI prüfen - -Im Rippy Dashboard sollte jetzt das Laufwerk erscheinen: -- Gehe zu http://192.168.178.162:80 -- Dashboard → Laufwerke Section oben - -## Alternative: Proxmox Web-UI - -1. Gehe zu **Node** → **QEMU VM** → **106 (arcane)** -2. Klicke auf **Hardware** -3. Klicke auf **Add** → **SCSI Device** -4. Wähle **"Use existing disk/image"** -5. Gib `/dev/sr0` als Device ein -6. Stelle sicher **"Media type: CDROM"** ist ausgewählt -7. Klicke auf **Add** -8. VM neu starten - -## Erklärung - -Die Zeile `scsi1: /dev/sr0,media=cdrom` sagt Proxmox: -- `/dev/sr0` vom Host an die VM durchreichen -- Als SCSI Device (virtio-scsi) -- Media type = CDROM (wichtig für CD/DVD/Blu-ray Erkennung) - -## Nachteile - -- Laufwerk ist dann **exklusiv** an die VM gebunden (nicht mehr am Host nutzbar) -- Wenn VM stoppt, ist Laufwerk auch nicht am Host verfügbar - -## Hinweis für Arcane - -Arcane kann das Laufwerk jetzt in den Rippy-Container mounten wie in der `docker-compose.yml` konfiguriert: -```yaml -volumes: - - /dev/cdrom:/dev/cdrom:ro - - /dev/sr0:/dev/sr0:ro -``` diff --git a/ROADMAP.md b/ROADMAP.md index 7e2e42f..6fb6789 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -222,10 +222,32 @@ **Ziel:** DVD/Blu-ray-Ripping auf `makemkvcon` umstellen (verlustfrei), wie im KONZEPT als Muss definiert. HandBrake fliegt aus dem Ripp-Pfad (bleibt ggf. als optionaler Transcode-Schritt NACH dem verlustfreien Rip). -- [ ] Worker-Dockerfile: makemkv-oss/makemkv-bin bauen + Beta-Key-Handling (Env/Cron) -- [ ] ripping.py: rip_dvd/rip_bluray auf `makemkvcon --all --progress mkv` umstellen - (Fortschritts-Parsing anpassen, Tests zuerst!) +- [x] Worker-Dockerfile: makemkv-oss/makemkv-bin 1.18.4 multi-stage gebaut, + Beta-Key via MAKEMKV_APP_KEY-Env (entrypoint.sh) — 23.07. +- [x] ripping.py: auf `makemkvcon -r --progress=-same mkv dev:… all` umgestellt, + PRGV-Fortschritts-Parsing laut makemkv.com/developers/usage.txt, Tests dabei — 23.07. - [ ] E2E mit echter Disc verifizieren (Commander, Laufwerk nötig) **Fertig wenn:** eine echte DVD landet verlustfrei als MKV im Output, Ampel grün. **Entstanden aus:** Review 22.07. — HandBrake-lossy war eine stille Abweichung vom Konzept; Entscheid 22.07. abends: Konzept gilt, Umbau als eigene Etappe. + +--- + +## Etappe 11 (23.07.2026): Kernumbau — der Zweck funktioniert erstmals wirklich + +**Befund des Komplett-Audits (Claude):** Der Kern „Disc rein → gerippt raus" +hatte NIE einen Code-Pfad: kein POST /jobs, kein udev-Daemon (das referenzierte +udev_daemon.py existierte nirgends), kein Ripping-Tool im Worker-Image, +Disc-Erkennung strukturell tot (`file -L` auf Block-Device), Geräte als +Bind-Mounts statt devices: (EPERM), UI rief hartkodiert localhost:8000 auf. + +**Gebaut:** +- [x] POST /jobs (API → Celery → Worker) + Job-Persistenz in Postgres +- [x] Disc-Watcher in der API (ioctl-Poll statt udev — Container-tauglich) +- [x] Disc-Erkennung neu über Kernel-ioctls (detection.py, in API+Worker) +- [x] /logs-Endpoint + echte Logs-Seite (Mock-Daten raus) +- [x] /settings-Endpoints (Settings-Seite sprach vorher ins Leere) +- [x] UI: Vite-Build + nginx mit /api-Proxy statt Dev-Server; relative API-Pfade +- [x] compose: devices: statt Bind-Mounts; Ausgabe aufs media-Volume +- [ ] Jellyfin-Post-Processing an den Worker anbinden (NFO/Poster nach dem Rip) +- [ ] Auth vor die schreibenden Endpoints (JWT existiert, schützt aber nichts) diff --git a/SAVEPOINT.md b/SAVEPOINT.md index bde0b77..388031b 100644 --- a/SAVEPOINT.md +++ b/SAVEPOINT.md @@ -1,6 +1,34 @@ # SAVEPOINT — Rippy -## Aktueller Stand +## Aktueller Stand: v3.0 — Kernumbau (23.07.2026, Claude) + +**Der Zweck existiert jetzt wirklich.** Komplett-Audit ergab: „Disc rein → +gerippt raus" hatte nie einen Code-Pfad (Details in ROADMAP Etappe 11). + +Kernpunkte des Umbaus: +- **Rip-Kette komplett neu**: POST /jobs → Celery → Worker (MakeMKV 1.18.4 + verlustfrei, Etappe 10) → Postgres-Job-Status → UI. CD weiter via abcde. +- **Disc-Erkennung** über Kernel-ioctls (CDROM_DISC_STATUS + Größe), Watcher + pollt statt udev (im Container gibt es kein udev). +- **UI**: echter Vite-Build hinter nginx mit /api-Proxy — vorher Dev-Server + und hartkodiertes localhost:8000 (deshalb waren nie Laufwerke zu sehen). +- **Compose**: Laufwerk als devices: (Bind-Mounts gaben EPERM), Ausgabe auf + media-Volume (vorher /output → nicht gemountet + read-only-Falle). +- **Placebos entfernt**: Mock-Logs, toter SSE-Stream, udevadm-Discovery, + 14 Troubleshooting-Altdateien (ARCAN-*.md, Setup-Skripte, udev-Rules). + +**Hardware-Kette (23.07.):** Laufwerk (Verbatim 4K BD RW, BU40N 1.05) hängt am +Proxmox-Host; LPM-Quirk `usbcore.quirks=18a5:0428:k` gefixt die Serien-Disconnects +(reboot-fest in GRUB). VM 106 bekommt es per USB-Passthrough `host=18a5:0428`. +⚠️ Firmware 1.05 kann KEIN UHD-Ripping (verschlüsselt) — Crossflash auf 1.03-MK +ist der dokumentierte Weg, separater Faden. DVD/BD normal geht. + +**Offen:** E2E mit echter Disc · Jellyfin-Post-Processing an Worker anbinden · +Auth vor schreibende Endpoints · MAKEMKV_APP_KEY in Arcane-Env pflegen (monatlich). + +--- + +## Vorheriger Stand **v1.10 — Complete Dark Mode Implementation (22.07.2026)** diff --git a/arcane-vm-setup-unix.sh b/arcane-vm-setup-unix.sh deleted file mode 100644 index d05012a..0000000 --- a/arcane-vm-setup-unix.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -set -e -echo "=== Arcane VM Setup ===" -echo "Tu77ceu2zzvx!" | sudo -S apt-get update -echo "Tu77ceu2zzvx!" | sudo -S apt-get upgrade -y -curl -fsSL https://get.docker.com | sudo sh -echo "Tu77ceu2zzvx!" | sudo -S usermod -aG docker arcane -mkdir -p /opt/docker/projects -chown arcane:arcane /opt/docker/projects -mkdir -p /usr/local/lib/docker/cli-plugins -curl -SL https://github.com/docker/compose/releases/download/v2.29.2/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose -chmod +x /usr/local/lib/docker/cli-plugins/docker-compose -ENCRYPTION_KEY=$(openssl rand -hex 32) -JWT_SECRET=$(openssl rand -hex 32) -cat > /opt/docker-compose.yml << COMPOSEEOF -version: "3.8" -services: - arcane: - image: ghcr.io/getarcaneapp/manager:latest - container_name: arcane - ports: - - "3552:3552" - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - arcane-data:/app/data - - /opt/docker/projects:/app/data/projects - environment: - - PROJECTS_DIRECTORY=/app/data/projects - - APP_URL=http://192.168.178.162:3552 - - PUID=1000 - - PGID=1000 - - ENCRYPTION_KEY=$ENCRYPTION_KEY - - JWT_SECRET=$JWT_SECRET - restart: unless-stopped -volumes: - arcane-data: -COMPOSEEOF -cd /opt -docker compose up -d -echo "=== Setup abgeschlossen ===" -echo "Arcane ist erreichbar unter: http://192.168.178.162:3552" -echo "Projects Directory: /opt/docker/projects" diff --git a/arcane-vm-setup.sh b/arcane-vm-setup.sh deleted file mode 100644 index 6b420c3..0000000 --- a/arcane-vm-setup.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -set -e -echo "=== Arcane VM Setup ===" -echo "Tu77ceu2zzvx!" | sudo -S apt-get update -y -echo "Tu77ceu2zzvx!" | sudo -S apt-get upgrade -y -curl -fsSL https://get.docker.com | sudo sh -echo "Tu77ceu2zzvx!" | sudo -S usermod -aG docker arcane -mkdir -p /home/arcane/projects -chown arcane:arcane /home/arcane/projects -mkdir -p /usr/local/lib/docker/cli-plugins -curl -SL https://github.com/docker/compose/releases/download/v2.29.2/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose -chmod +x /usr/local/lib/docker/cli-plugins/docker-compose -ENCRYPTION_KEY=$(openssl rand -hex 32) -JWT_SECRET=$(openssl rand -hex 32) -cat > /home/arcane/docker-compose.yml << COMPOSEEOF -version: "3.8" -services: - arcane: - image: ghcr.io/getarcaneapp/manager:latest - container_name: arcane - ports: - - "3552:3552" - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - arcane-data:/app/data - - /home/arcane/projects:/app/data/projects - environment: - - PROJECTS_DIRECTORY=/app/data/projects - - APP_URL=http://192.168.178.162:3552 - - PUID=1000 - - PGID=1000 - - ENCRYPTION_KEY=$ENCRYPTION_KEY - - JWT_SECRET=$JWT_SECRET - restart: unless-stopped -volumes: - arcane-data: -COMPOSEEOF -cd /home/arcane -docker compose up -d -echo "=== Setup abgeschlossen ===" -echo "Arcane ist erreichbar unter: http://192.168.178.162:3552" -echo "Projects Directory: /home/arcane/projects" diff --git a/create-docker-compose.sh b/create-docker-compose.sh deleted file mode 100644 index 00c3e8f..0000000 --- a/create-docker-compose.sh +++ /dev/null @@ -1,26 +0,0 @@ -ENCRYPTION_KEY=$(openssl rand -hex 32) -JWT_SECRET=$(openssl rand -hex 32) -cat > /home/arcane/docker-compose.yml << EOF -version: '3.8' -services: - arcane: - image: ghcr.io/getarcaneapp/manager:latest - container_name: arcane - ports: - - '3552:3552' - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - arcane-data:/app/data - - /home/arcane/projects:/app/data/projects - environment: - - PROJECTS_DIRECTORY=/app/data/projects - - APP_URL=http://192.168.178.162:3552 - - PUID=1000 - - PGID=1000 - - ENCRYPTION_KEY=$ENCRYPTION_KEY - - JWT_SECRET=$JWT_SECRET - restart: unless-stopped -volumes: - arcane-data: -EOF -cat /home/arcane/docker-compose.yml diff --git a/install-rippy.sh b/install-rippy.sh deleted file mode 100644 index c5d8ea2..0000000 --- a/install-rippy.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash -# Rippy Installations-Skript für LXC 106 -# Führe dies auf LXC 106 aus: bash install-rippy.sh - -set -e - -echo "=== Rippy Installation auf LXC 106 ===" - -# Verzeichnis erstellen -PROJECT_DIR="/opt/docker/rippy" -mkdir -p "$PROJECT_DIR" -cd "$PROJECT_DIR" - -# Git clone -echo "Klone Repository..." -if [ -d ".git" ]; then - git pull origin main -else - git clone https://git.tobisniceshomelab.ddnsfree.com/Hitonabi/rippy.git . -fi - -# Docker Compose starten -echo "Starte Rippy mit Docker Compose..." -docker compose up -d - -echo "=== Installation abgeschlossen ===" -echo "Rippy läuft unter: http://localhost:8000" -echo "Logs ansehen: docker compose logs -f" diff --git a/proxmox-add-drive.sh b/proxmox-add-drive.sh deleted file mode 100644 index 0b8723d..0000000 --- a/proxmox-add-drive.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# Skript zum Hinzufügen des Laufwerks zur Proxmox VM - -echo "=== Laufwerk zur Proxmox VM hinzufügen ===" - -# Prüfen ob das Laufwerk existiert -if [ ! -b /dev/sr0 ]; then - echo "❌ Laufwerk /dev/sr0 nicht gefunden" - exit 1 -fi - -echo "✅ Laufwerk /dev/sr0 gefunden" - -# VM-Config sichern -echo "Sichere VM-Konfiguration..." -cp /etc/pve/qemu-server/106.conf /etc/pve/qemu-server/106.conf.backup -echo "✅ Backup erstellt: /etc/pve/qemu-server/106.conf.backup" - -# Laufwerk hinzufügen -echo "Füge Laufwerk zur VM hinzu..." -# Prüfen ob schon eingebunden -if grep -q "scsi1: /dev/sr0" /etc/pve/qemu-server/106.conf; then - echo "⚠️ Laufwerk ist bereits eingebunden" -else - echo "scsi1: /dev/sr0,media=cdrom" >> /etc/pve/qemu-server/106.conf - echo "✅ Laufwerk hinzugefügt" -fi - -echo "" -echo "=== VM neu starten ===" -echo "Führe folgende Befehle aus:" -echo " qm shutdown 106" -echo " wait for VM to stop" -echo " qm start 106" -echo "" -echo "Oder im Proxmox Web-UI:" -echo " 1. VM 106 auswählen" -echo " 2. 'Shutdown' klicken" -echo " 3. Nach dem Stop 'Start' klicken" -echo "" -echo "=== Nach dem Neustart ===" -echo "Im Container rippy-worker sollte jetzt /dev/sr0 sichtbar sein:" -echo " docker exec rippy-worker ls -la /dev/sr0" -echo " docker exec rippy-worker ls -la /dev/cdrom" diff --git a/proxmox-laufwerk-hinzufuegen.conf b/proxmox-laufwerk-hinzufuegen.conf deleted file mode 100644 index 9276883..0000000 --- a/proxmox-laufwerk-hinzufuegen.conf +++ /dev/null @@ -1,8 +0,0 @@ -# Proxmox QEMU Konfiguration für Laufwerk-Durchreichung -# Füge diese Zeile zu /etc/pve/qemu-server/106.conf hinzu - -# Option 1: Als SCSI Device (empfohlen) -scsi1: /dev/sr0,media=cdrom - -# Option 2: Alternativ als SATA Device -sata1: /dev/sr0,media=cdrom diff --git a/setup-arcane.sh b/setup-arcane.sh deleted file mode 100644 index e878b32..0000000 --- a/setup-arcane.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -# Setup Rippy auf Arcane VM - -cd /home/arcane/projects - -# Verzeichnis erstellen -mkdir -p rippy -cd rippy - -# Dateien von Host kopieren -scp -r arcane@192.168.178.1:/"Coding Stuff/rippy"/* . - -# Docker Compose starten -docker compose up -d diff --git a/setup-git.sh b/setup-git.sh deleted file mode 100644 index 97edc49..0000000 --- a/setup-git.sh +++ /dev/null @@ -1,3 +0,0 @@ -git clone --mirror https://git.tobisniceshomelab.ddnsfree.com/Hitonabi/rippy.git /tmp/rippy.git -cd /tmp/rippy.git && git remote set-url origin https://git.tobisniceshomelab.ddnsfree.com/Hitonabi/rippy.git -git clone file:///tmp/rippy.git /home/arcane/projects/rippy diff --git a/udev/99-disc-ripper.rules b/udev/99-disc-ripper.rules deleted file mode 100644 index 928926d..0000000 --- a/udev/99-disc-ripper.rules +++ /dev/null @@ -1,8 +0,0 @@ -# udev-Regel für Disc-Einwurf-Erkennung -# Diese Datei muss nach /etc/udev/rules.d/ kopiert werden - -# CD/DVD/Blu-ray Einwurf-Ereignis -ACTION=="add", SUBSYSTEM=="block", KERNEL=="sr*", ENV{ID_TYPE}=="cd", SYMLINK+="disc/%E{ID_SERIAL}", RUN+="/app/udev/udev_daemon.py add %k" - -# CD/DVD/Blu-ray Auswurf-Ereignis -ACTION=="remove", SUBSYSTEM=="block", KERNEL=="sr*", ENV{ID_TYPE}=="cd", RUN+="/app/udev/udev_daemon.py remove %k"