Raccoon-PC 
PDF Metadata Cleaner für Linux Kubuntu(u. andere) / KDE Plasma
v1.1.0 · Juli 2026
↓ Download
Raccoon-PC-1.1.0-x86_64.AppImage.zip
AppImage (x86_64)
+ ReadMe · Nachfrage beim ersten Start · Deutsch / English · Linux / KDE Plasma
SHA256: 98827d85e0760ea7ce842a80d293fa12d3d2c3c3e430b470cfaaf98c441dcd7a
Python source code: Raccoon-PC-1.1.0-x86_64.source.zip
English Summary
Raccoon-PC is a free PDF metadata cleaner for Linux with
KDE Plasma. It physically strips all metadata out of a PDF
file instead of just hiding it, and writes the result to a
new file named <name>_clean.pdf — the
original stays untouched.
Key features: Four-stage cleaning pipeline
(exiftool clears the info dictionary and XMP, Ghostscript
rewrites the whole PDF to drop leftovers, exiftool clears
the fields Ghostscript just added, and a final check reports
remaining metadata and raw stream traces), side-by-side
BEFORE / Preview AFTER metadata tables, drag and drop of
single values from BEFORE into AFTER to deliberately keep or
re-apply individual fields, an editable AFTER column, a
first-page preview in a separate window, and drag and drop
of PDF files into the app. The interface is available in
English and German and can be switched at any time.
Tested on Kubuntu 26.04 / KDE Plasma 6. Single Python file,
packed as AppImage with its own Python runtime — no python3-tk
needed. On first start it offers to install itself.
Überblick
Raccoon-PC entfernt Metadaten aus PDF-Dateien — und zwar
physisch, nicht nur optisch. Viele Werkzeuge überschreiben
lediglich die sichtbaren Felder, während Reste im Info-Dict,
im XMP-Block oder in den Roh-Streams erhalten bleiben.
Raccoon-PC kombiniert deshalb exiftool und Ghostscript
zu einer mehrstufigen Kette und kontrolliert das Ergebnis
anschließend.
Die Originaldatei wird dabei nie verändert. Das Ergebnis
landet als <name>_clean.pdf neben der
Quelldatei.
Mit Claude.AI ist der Python-Code unter der Linux Distri Kubuntu entstanden. Das dunkle, rahmenlose Design mit flachen Kacheln entspricht dem Bekudio-Standard-Theme und fügt sich unauffällig in moderne Desktop-Umgebungen ein.
Neu in Version 1.1.0: Die Oberfläche gibt
es jetzt auf Deutsch und Englisch,
umschaltbar im Fenster, beim ersten Start oder per --lang.
Beim ersten Start einer noch nicht installierten AppImage
fragt Raccoon-PC, ob es eingerichtet werden soll — mit der
Sprachwahl im selben Dialog. Im About-Fenster stehen zwei
Kommandozeilen-Befehle zum Kopieren bereit.
Außerdem bringt die AppImage jetzt ihre eigene
Python-Laufzeit samt Tcl/Tk mit. Damit entfällt python3-tk
als Voraussetzung, und die Datei läuft unabhängig davon,
welche Python-Version die Distribution mitbringt.
Version 1.0.0 war die erste Veröffentlichung: vollständige Reinigungskette, Vorher/Nachher-Vergleich mit editierbarer AFTER-Spalte, gezieltes Zurückschreiben einzelner Felder per Drag & Drop und die Seitenvorschau in einem separaten Fenster.
Features
🧹Vierstufige Reinigung
exiftool leert Info-Dict und XMP, Ghostscript schreibt die PDF komplett neu, exiftool leert die von Ghostscript neu gesetzten Felder, danach folgt die Kontrolle.
🔍Kontrolllauf
Nach dem Reinigen wird geprüft, welche Metadaten noch
vorhanden sind und ob Spuren in den Roh-Streams stehen —
per strings aus binutils.
↔️Vorher / Nachher
Zwei Tabellen nebeneinander: BEFORE zeigt den Ist-Stand, Preview AFTER das Ergebnis. Feldname und Feldwert getrennt, mit eigenem Scrollbalken.
🖐️Werte-Drag & Drop
Einzelne Werte lassen sich aus BEFORE in ein Feld der AFTER-Spalte ziehen. Der Cursor wechselt zur Greifhand, das Zielfeld wird markiert.
✏️Editierbares AFTER
Die Wertespalte der AFTER-Tabelle ist frei beschreibbar. Nicht-leere Felder werden nach der Reinigung gezielt wieder gesetzt.
📄Seitenvorschau
Die erste Seite wird per PyMuPDF gerendert und in einem separaten, nicht fokussierten Fenster gezeigt — das Hauptfenster bleibt bedienbar.
📥Drag & Drop
PDF per Drag & Drop auf die Drop-Zone ziehen oder per Klick über den Dateidialog auswählen. Start auch direkt mit Dateipfad möglich.
🛡️Original bleibt
Es wird nie in die Quelldatei geschrieben. Das Ergebnis
entsteht als neue Datei <name>_clean.pdf;
bei vorhandener Datei wird nachgefragt.
🌐Deutsch / English
Die gesamte Oberfläche liegt in beiden Sprachen vor. Umschalten per Knopf im Fenster — die geladene Datei bleibt dabei erhalten. Die Wahl wird gemerkt.
📦Eigenes Python
Python und Tcl/Tk stecken in der AppImage. Kein python3-tk,
keine Abhängigkeit von der Python-Version der
Distribution.
Die Reinigungskette
Der eigentliche Vorgang läuft in vier Schritten ab — bei gezielt beibehaltenen Feldern kommt ein fünfter dazu:
| Schritt | Werkzeug | Wirkung |
|---|---|---|
| 1 | exiftool |
Leert alle Metadaten: Info-Dictionary und XMP-Block |
| 2 | gs (Ghostscript) |
Schreibt die PDF vollständig neu — dabei fallen Altreste weg, die in Objekten oder Streams hängen |
| 3 | exiftool |
Leert die Felder, die Ghostscript beim Neuschreiben selbst gesetzt hat (z. B. Producer) |
| 4 | exiftool + strings |
Kontrolle: listet verbliebene Metadaten und sucht nach Spuren in den Roh-Streams |
| 5 | exiftool / PyMuPDF |
Optional: setzt die in AFTER eingetragenen Felder gezielt wieder — erst nach der vollständigen Reinigung |
Die Reihenfolge ist bewusst so gewählt: Erst wird rückstandslos gereinigt, dann kommt nur das zurück, was ausdrücklich gewünscht ist. So bleibt die forensische Reinigung erhalten, auch wenn einzelne Felder erhalten bleiben sollen.
Datumsfelder
Die Felder CreateDate und ModifyDate
werden nicht über exiftool geschrieben, sondern über PyMuPDF.
Grund: exiftool normalisiert den PDF-Datumsstring und verliert
dabei den Zeitzonen-Offset (+02'00). PyMuPDF
schreibt den String dagegen unverändert in den Info-Dict.
Behandelte Metadaten-Felder
| Feld | exiftool-Tag | Wiederherstellbar |
|---|---|---|
| Title | -Title= |
ja |
| Author | -Author= |
ja |
| Subject | -Subject= |
ja |
| Keywords | -Keywords= |
ja |
| Creator | -Creator= |
ja |
| Producer | -Producer= |
ja |
| CreationDate | -CreateDate= |
ja — über PyMuPDF, Zeitzone bleibt erhalten |
| ModDate | -ModifyDate= |
ja — über PyMuPDF, Zeitzone bleibt erhalten |
Installation
Voraussetzungen
| Komponente | Details |
|---|---|
| Betriebssystem | Linux mit Wayland (entwickelt unter Kubuntu 26.04 /
KDE Plasma 6) auf AMD und intel Ein Test mit Ubuntu-26.04.4-desktop-amd64 war positiv. |
| Python, Tcl/Tk und Python-Pakete gebündelt | Die AppImage bringt eine eigene Python-Laufzeit samt
Tcl/Tk mit, dazu pymupdf, pillow
und tkinterdnd2. python3-tk
wird nicht gebraucht, und die
Python-Version der Distribution spielt keine Rolle. |
exiftool, ghostscript, binutils
erforderlich |
Die drei Werkzeuge ruft Raccoon-PC als Unterprozess
auf; fehlt eines, meldet die App das beim Start.
Nachinstallieren mitsudo apt install libimage-exiftool-perl
ghostscript binutilsoder bequemer über den eingebauten Schalter: sudo ./Raccoon-PC-1.1.0-x86_64.AppImage --deps |
| Gruppen / udev-Regeln nicht nötig | Raccoon-PC braucht keine Gruppenmitgliedschaft und keine udev-Regel — es arbeitet sofort, ohne Ab- und Anmelden. |
Schritt 1 — Entpacken & ausführbar machen
Das heruntergeladene Archiv entpacken und die AppImage ausführbar machen:
unzip Raccoon-PC-1.1.0-x86_64.AppImage.zip chmod +x Raccoon-PC-1.1.0-x86_64.AppImage
Alternativ per Rechtsklick → Eigenschaften → „Ausführen als Programm erlauben".
Schritt 2 — Starten
Per Doppelklick im Dateimanager oder im Terminal:
./Raccoon-PC-1.1.0-x86_64.AppImage
Beim ersten Start einer noch nicht installierten AppImage
erscheint ein Begrüßungsfenster. Dort wird zweierlei gefragt:
die Sprache (English ist die Vorgabe,
Deutsch steht daneben) und ob Raccoon-PC eingerichtet
werden soll — also eine Kopie nach ~/.local/bin
und ein Eintrag im Startmenü.
Zur Wahl stehen Installieren, Jetzt nicht und Nicht mehr fragen. „Jetzt nicht" merkt sich nichts — beim nächsten Start kommt die Frage wieder, solange nichts installiert ist. Für die Einrichtung wird kein Passwort gebraucht: es wird ausschließlich ins eigene Home geschrieben.
Die Systemwerkzeuge (exiftool, ghostscript,
binutils) installiert dieser Dialog nicht
— dafür braucht es root-Rechte. Fehlt eines, sagt Raccoon-PC
beim Start Bescheid und nennt den apt-Befehl; bequemer geht es
mit sudo ./Raccoon-PC-1.1.0-x86_64.AppImage --deps.
Schritt 3 — Aktualisieren
Eine neuere AppImage-Datei herunterladen und einmal mit --update
aufrufen:
./Raccoon-PC-1.1.0-x86_64.AppImage --update
Die installierte Kopie wird ersetzt, Menüeintrag und Icon
werden aufgefrischt. Raccoon-PC merkt sich die installierte
Version und nennt den Sprung beim Aktualisieren (1.0.0
-> 1.1.0). Der Austausch läuft über eine temporäre
Datei und wird erst am Schluss umbenannt, damit bei einem
Abbruch keine halbe Datei zurückbleibt.
Die einmal gewählte Sprache bleibt beim Update erhalten — es wird nicht erneut gefragt.
Command-Line-Parameter
--version und --help beantwortet
die AppImage ohne Python zu starten; die übrigen Schalter
brauchen ebenfalls keine installierten Abhängigkeiten. Die
Liste steht auch im About-Fenster, mit Knopf zum Kopieren:
| Parameter | Wirkung |
|---|---|
datei.pdf |
Direkt mit einer PDF starten |
--install |
Nach ~/.local/bin kopieren und
Menüeintrag anlegen |
--uninstall |
Menüeintrag, Icon und installierte Kopie entfernen |
--update |
Installation auf die Version dieser Datei aktualisieren |
--deps |
Fehlende Systemwerkzeuge nachinstallieren — als
einziger Schalter mit sudo aufzurufen |
--lang de|en |
Sprache der Oberfläche setzen und merken. Lässt sich
mit einer Aktion verbinden:--lang de --install |
--version |
Version dieser AppImage anzeigen |
--help |
Kurzhilfe ausgeben — in der eingestellten Sprache |
--install, --update und --uninstall
werden bewusst ohne sudo
aufgerufen: Menüeintrag und Programmkopie gehören ins eigene
Home. Mit sudo landeten sie unter /root/.local
und tauchten im Startmenü nie auf — Raccoon-PC weist diesen
Aufruf deshalb ab und sagt warum.
Desktop-Integration
Der Menüeintrag zeigt auf ~/.local/bin/raccoon-pc.AppImage
— ein Pfad ohne Versionsnummer, der auch nach einem Update
gültig bleibt und unabhängig davon ist, wo die
heruntergeladene Datei liegt. Über den Eintrag MimeType=application/pdf
erscheint Raccoon-PC in KDEs „Öffnen mit"-Menü für
PDF-Dateien; ein so übergebener Dateipfad wird direkt geladen.
Erscheint der Menüeintrag nicht sofort, liest KDE den Cache noch verzögert. Ab- und Anmelden hilft, oder:
kbuildsycoca6 --noincremental
Bedienung
| Aktion | Wirkung |
|---|---|
| PDF auf die Drop-Zone ziehen | Datei laden, BEFORE-Tabelle füllen |
| Klick auf die Drop-Zone | Dateidialog zum Auswählen öffnen |
| Wert aus BEFORE nach AFTER ziehen | Feldwert übernehmen — bleibt nach dem Reinigen erhalten |
| Klick in ein AFTER-Feld | Wert direkt eintippen oder ändern |
| AFTER-Feld leeren | Feld wird nicht zurückgeschrieben — bleibt leer |
Klick auf ▶ Start |
Reinigung starten; Ergebnis als <name>_clean.pdf |
Klick auf Deutsch / English |
Sprache umschalten — die geladene Datei bleibt erhalten, die Wahl wird gemerkt |
Klick auf About |
Info-Fenster mit Version, Lizenzen und den Kommandozeilen-Befehlen zum Kopieren |
Cursor-Rückmeldung beim Ziehen
Der Cursor zeigt an, was gerade möglich ist: im Ruhezustand ein Zeigefinger („hier kann man greifen"), während des Ziehens eine geschlossene Greifhand, über einem gültigen Zielfeld ein Plus-Zeichen („Ablegen OK").
Deinstallation
Schritt 1 — AppImage & Integration entfernen
Am einfachsten über den eingebauten Schalter — er entfernt
Menüeintrag, Icon und die installierte Kopie in ~/.local/bin/:
./Raccoon-PC-1.1.0-x86_64.AppImage --uninstall
Danach die heruntergeladene AppImage-Datei löschen. Bereits gereinigte PDF-Dateien bleiben selbstverständlich erhalten.
Schritt 2 — Konfiguration löschen
--uninstall lässt die Einstellungen absichtlich
stehen, damit eine spätere Neuinstallation nicht wieder nach
der Sprache fragt. Für die restlose Entfernung:
rm -rf ~/.config/raccoon-pc/
Beide Befehle zusammen stehen im About-Fenster zum Kopieren bereit.
Schritt 3 — Optional: Systempakete entfernen
Die per apt installierten Pakete bleiben bestehen — sie sind
allgemein nützlich, und binutils gehört auf
vielen Systemen ohnehin zur Grundausstattung. Falls sie weg
sollen:
sudo apt remove libimage-exiftool-perl ghostscript
Technische Details
| Eigenschaft | Wert |
|---|---|
| Sprache | Python — in der AppImage ist Python 3.12 samt Tcl/Tk gebündelt |
| Oberflächensprachen | Deutsch und Englisch, im laufenden Programm umschaltbar. Vorgabe ist Englisch; die Systemsprache wird bewusst nicht ausgewertet |
| GUI-Framework | tkinter, Bekudio-Theme (theme.py) |
| Reinigung | exiftool (Info-Dict + XMP) und Ghostscript
(vollständiges Neuschreiben), als Subprozess aufgerufen |
| Kontrolle | exiftool für verbliebene Felder, strings
(binutils) für Spuren in den Roh-Streams |
| Seitenvorschau | PyMuPDF (fitz) rastert die erste Seite;
Anzeige über Pillow in einem separaten Toplevel-Fenster |
| Drag & Drop | tkinterdnd2 für Dateien, eigener
X-Grab-Mechanismus für das Ziehen einzelner Werte
zwischen den Tabellen |
| Ausgabe | <name>_clean.pdf — die
Originaldatei bleibt unverändert |
| Distribution | AppImage (x86_64) auf Basis von python-appimage,
mit eigener Python-Laufzeit und gebündelten Paketen; die
Systemwerkzeuge kommen über --deps per apt
dazu |
| Konfiguration | ~/.config/raccoon-pc/config — schlichtes
key=value (lang, firstrun),
lesbar für Shell und Python |
| Lizenz | AGPL-3.0-or-later Du darfst die Software kostenlos benutzen, kopieren, ändern und weitergeben — auch gewerblich. Gibst du sie weiter oder machst du sie über ein Netzwerk zugänglich, muss der Quelltext mitgeliefert oder erreichbar sein, und deine Änderungen stehen wieder unter der AGPL. Ich gebe keine Garantie und hafte nicht für Schäden oder Probleme. You may use, copy, modify and share the software free of charge, including commercially. If you distribute it or make it available over a network, the source code must come with it or be reachable, and your changes fall under the AGPL as well. I provide no warranty and am not liable for any damages or problems. Warum AGPL und nicht MIT: Raccoon-PC importiert PyMuPDF direkt, und PyMuPDF steht unter der AGPL. Diese Bedingung wirkt auf das Gesamtwerk. exiftool und Ghostscript
werden dagegen nur als Unterprozess aufgerufen und
lösen sie nicht aus. |
Fehlersuche
| Symptom | Abhilfe |
|---|---|
| AppImage startet nicht, keine Meldung | Ausführbar-Bit fehlt: chmod +x
Raccoon-PC-1.1.0-x86_64.AppImage |
dlopen(): error loading libfuse.so.2 |
Ältere AppImage-Runtimes brauchen FUSE 2: sudo
apt install libfuse2 — oder einmalig mit APPIMAGE_EXTRACT_AND_RUN=1
starten |
| Meldung „The following tools are missing" | exiftool, ghostscript oder
binutils fehlt:sudo ./Raccoon-PC-1.1.0-x86_64.AppImage --deps |
| Menüeintrag erscheint nicht | kbuildsycoca6 --noincremental oder ab-
und wieder anmelden |
--install meldet Erfolg, im Startmenü
steht nichts |
Vermutlich mit sudo aufgerufen — dann
landet alles unter /root/.local. Ohne sudo
wiederholen |
| Oberfläche in der falschen Sprache | Knopf Deutsch / English
oben rechts im Fenster, oder./Raccoon-PC-1.1.0-x86_64.AppImage --lang de |
| Beim Start kommt keine Nachfrage zur Installation | Sie erscheint nur, solange nichts installiert ist und
„Nicht mehr fragen" nicht gewählt wurde. Zurücksetzen
mit rm ~/.config/raccoon-pc/config |
