Add Debian package and Gitea APT repository support

debian/control, postinst, prerm, postrm — standard dpkg package lifecycle
debian/files/opt/dupfinder/dupfinder-setup.sh — interactive setup:
  checks Docker, detects NVIDIA GPU, prompts for photos/data paths,
  writes docker-compose.override.yml with GPU reservation if present,
  pulls image from registry (builds from source as fallback)
debian/files/usr/local/bin/dupfinder — CLI wrapper:
  setup / start / stop / restart / status / logs / open / update
debian/files/etc/systemd/system/dupfinder.service — systemd unit,
  guards against starting before setup has run
debian/build-deb.sh — builds .deb and uploads to Gitea package registry;
  prints the exact apt sources.list line on success

Install on any Debian/Ubuntu machine:
  echo "deb [trusted=yes] http://192.168.1.64:3000/api/packages/tocmo0nlord/debian bookworm main" \
    | sudo tee /etc/apt/sources.list.d/dupfinder.list
  sudo apt update && sudo apt install dupfinder
  sudo dupfinder setup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
tocmo
2026-04-05 01:42:45 -04:00
parent c110a8e4f9
commit f9164b4fa0
8 changed files with 482 additions and 0 deletions

15
debian/control vendored Normal file
View File

@@ -0,0 +1,15 @@
Package: dupfinder
Version: 1.0.0
Architecture: amd64
Maintainer: tocmo0nlord
Depends: docker.io | docker-ce, docker-compose-plugin | docker-compose
Recommends: nvidia-container-toolkit
Section: utils
Priority: optional
Description: Self-hosted duplicate photo and video finder
DupFinder scans a photo/video library using four detection methods:
exact hash (SHA-256), visual similarity (perceptual hash), EXIF
timestamp matching, and file-size/dimension matching. All decisions
are stored in SQLite — no files are ever moved or deleted.
GPU acceleration via NVIDIA CUDA is supported automatically.
Homepage: http://192.168.1.64:3000/tocmo0nlord/duplicate-finder