Maschinelle Übersetzung aus dem Türkischen (Cloudflare Workers AI), vom Autor nicht geprüft. Türkisches Original lesen

← Beiträge

OmaNotes für Omarchy Linux: Notiz- und Aufgabenverwaltung im Google-Keep-Stil mit Zero-Knowledge-E2EE

Bewertung —

Architektur und Veröffentlichung von OmaNotes: vollständig mit Quickshell-Oberfläche, Rust-Engine, mausorientierter Bedienung (mouse-first) und Ende-zu-Ende-verschlüsselter (AES-256-GCM) Sicherung mit Google Drive und Git.

· 4 Min. Lesezeit
Inhalt

Zusammenfassung: OmaNotes ist eine Notiz-App mit farbigen Karten im Stil von Google Keep, einer Quickshell-Oberfläche und einer Rust-Engine. Sie beschreibt Mausbedienungsfunktionen wie das Erstellen von Notizen per Klick aus der Zwischenablage und Vorlagen, die Verschlüsselung mit PBKDF2 und AES-256-GCM, die Sicherung über rclone und Git sowie die 15 Tests, die die Anwendung besteht.

Im Linux-Desktop-Alltag steckt das schnelle Notieren einer Idee, eines Links oder einer To-do-Liste, die uns gerade durch den Kopf geht, oft zwischen zwei Extremen fest: Entweder geben wir uns proprietären Cloud-Notiz-Apps großer Technologiekonzerne hin, die all unsere Daten durchsuchen und ihre KI-Modelle damit trainieren, oder wir müssen uns mit textbasierten, langsamen lokalen Werkzeugen abfinden, die nichts von der Eleganz einer grafischen Oberfläche haben.

Um dieses Dilemma zu beseitigen, freue ich mich, OmaNotes vorzustellen, das wir für das Omarchy-Linux-Desktop-Ökosystem entwickelt haben.

OmaNotes ist ein unabhängiges, quelloffenes Desktop-Plugin, das farbige Karten im Google-Keep-Stil und die Ergonomie von To-do-Listen, die flüssige Wayland-Oberfläche von Quickshell 4.0, eine System-Engine mit Rust-Kern und eine Zero-Knowledge-AES-256-GCM-Ende-zu-Ende-Verschlüsselung (E2EE) in einer Architektur vereint.

Ergonomie ohne Tastatur (Mouse & Touch-First)

OmaNotes wurde so konzipiert, dass es im täglichen Gebrauch ohne einen einzigen Tastendruck über die obere rechte Leiste des Desktops mit einem Klick bedient werden kann:

  1. Notiz mit einem Klick aus der Zwischenablage erstellen: Die Schaltfläche Paste from Clipboard (Integration von wl-paste), die jeden kopierten Text, Link oder jede Aufgabenliste mit einem Klick in eine Karte verwandelt, ohne dass man sie abtippen muss.
  2. Fertige Schnellvorlagen:
    • Groceries (fertige Einkaufsliste mit Beispielartikeln)
    • Priorities (tägliche Prioritäten und Fokusaufgaben)
    • Idea (Vorlage zum Skizzieren von Ideen)
  3. Live-Filter-Chips (Zero Typing): Statt zum Suchen einer Notiz in die Suchleiste zu tippen, filtert man Karten sofort, indem man auf All, Pinned, Checklist und die Farbpunkte (Gelb, Grün, Blau, Lila, Rot, Steinfarbe) klickt.
  4. Schnellaktionen auf der Karte: Mit einem Klick ein Kontrollkästchen ankreuzen (wird durchgestrichen), mit einem Klick in der unteren Palette die Kartenfarbe ändern sowie Aktionen zum Anheften, Duplizieren und sicheren Löschen.

Zero-Knowledge-Ende-zu-Ende-Verschlüsselung (Zero-Knowledge E2EE)

Im Kern von OmaNotes liegt eine mathematische Verschlüsselungsschicht, die garantiert, dass niemand außer Ihnen (auch nicht der Cloud-Anbieter) auf Ihre Daten zugreifen kann:

  • Kryptografische Schlüsselableitung: Ihr festgelegtes Hauptpasswort wird über den Standard PBKDF2-HMAC-SHA256 mit 10.000 Iterationen und einem 16 Byte großen kryptografischen Zufallssalz (Salt) in einen 256-Bit-Verschlüsselungsschlüssel umgewandelt.
  • AES-256-GCM authentifizierte Verschlüsselung (AEAD): Bei jedem Verschlüsselungsvorgang wird ein 12 Byte großer einmaliger Zufalls-Nonce erzeugt. Während die Daten verschlüsselt werden, wird zugleich ein Authentifizierungs-Tag (Auth Tag) erzeugt, was vollständigen Schutz gegen Manipulationen auf Byte-Ebene in der Cloud (Bit-Flipping-Angriffe) bietet.
  • Kein Klartext-Leck: Im in die Cloud-Truhe übertragenen Paket notes.enc befindet sich weder eine Überschrift noch ein Inhalt oder ein Tag im Klartext (Plaintext).

Mehrfache Cloud-Sicherung und Disaster Recovery

Bewahren Sie Ihre Notizen entweder in Google Drive oder in Ihrem eigenen privaten Git-Repository auf:

  • Google Drive / Nextcloud / WebDAV (rclone): Verschlüsselte Synchronisierung mit einem Klick über die rclone-Remoteverbindungen im System.
  • Private Git-Truhe (git): Sicherung der verschlüsselten Datei notes.enc in Ihrem eigenen privaten Git-Repository mit Versionierung über git commit & push.
  • Disaster Recovery (--pull): Selbst wenn Sie Ihren Computer formatieren oder auf ein neues Gerät wechseln, können Sie mit einem Klick das verschlüsselte Paket aus der Cloud herunterladen und mit Ihrem Hauptpasswort alle Ihre Karten innerhalb von Sekunden wiederherstellen.

Sicherheitsarchitektur und Omarcom-Standards (AGENTS.md)

OmaNotes wurde so gebaut, dass es die offiziellen Sicherheitsrichtlinien des Omarchy-Linux-Ökosystems (AGENTS.md) ausnahmslos vollständig erfüllt:

Sicherheitsbereich Angewandte Architekturregel
Isolierte Prozessgruppen Unterprozesse werden in einer unabhängigen Prozessgruppe (cmd.process_group(0)) ausgeführt.
Non-Blocking I/O Mit O_NONBLOCK + POSIX poll() werden Pipes ohne Blockieren gelesen.
Monotonic Deadlines Durch eine absolute Zeitüberschreitung von 30 Sekunden werden Hänger verhindert.
Bedingungsloses SIGKILL Bei Zeitüberschreitung wird mit SIGTERM -> 5ms -> SIGKILL kein Enkelprozess im Hintergrund zurückgelassen.
0600 / 0700 Atomares Schreiben Dateien werden über .tmp_* geschrieben und nach sync_all mit atomarem rename mit 0600-Berechtigungen verschoben; Symlinks werden abgelehnt.
Klartext-Garantie In allen Benutzer- und Zwischenablagetexten auf der QML-Seite ist textFormat: Text.PlainText verpflichtend, wodurch XSS-/HTML-Injektion verhindert wird.

15/15 Automatisches Testpaket

OmaNotes hat in der Rust-Testinfrastruktur alle 15 verschiedenen Unit-, Sicherheits-, Stress- und Chaostests mit voller Punktzahl bestanden:

  • Unit-Tests (5/5): 0600 atomare Speicherung, Verhinderung von Buffer Overrun, monotonic Deadline, Krypto-Round-Trip, Ablehnung falscher Passwörter.
  • Fortgeschrittene Sicherheits- & Chaostests (6/6):
    1. Bit-Flipping-Test: Wenn ein einzelnes Byte im verschlüsselten Paket verfälscht wird, lehnt die AEAD-Verifikation die Daten ab.
    2. Shell Injection & Fuzzing: Wenn Befehle wie ; rm -rf / ; touch /tmp/pwned in den Notiztitel injiziert werden, werden Systembefehle blockiert.
    3. Wiederherstellung beschädigter Dateien: Durch Schreiben von halb abgeschnittenem JSON in notes.json wird ein plötzlicher Stromausfall simuliert und die Engine repariert sich ohne Absturz selbst.
    4. Stresstest: Scannen von 1.000 Notizen in < 50ms und Übertragung von 64 KB großen Daten.
    5. Nebenläufigkeit: 10 separate Threads fügen gleichzeitig Notizen hinzu, ohne dass eine Race Condition entsteht.
    6. Netzwerkunterbrechung: Bei nicht erreichbaren Git-/rclone-Zielen wird ohne Hängenbleiben ein sauberer Fehler zurückgegeben.
  • Integrationstests (4/4): Ablehnung von Symlink-Angriffen, Bereinigung hartnäckiger Enkelprozesse, CLI-Robustheit, End-to-End-Git-Cloud-Zyklus.

Installation und Verwendung

Auf Ihrem System mit installiertem Omarchy Linux können Sie das Repository mit einem einzigen Befehl hinzufügen und mit der Nutzung beginnen:

# 1. Eklentiyi sisteme ekleyin
omarchy plugin add https://github.com/ozdil/omarchy-omanotes.git

# 2. Güvenli kaynaktan yerel derlemeyi yapın
cd ~/.config/omarchy/plugins/ozdil.omanotes
cargo build --release --locked
install -m 755 target/release/omanotes-engine ./omanotes-engine

# 3. Omarchy barınıza ekleyin (~/.config/omarchy/shell.json içine)
# "bar.layout.right" altına: { "id": "ozdil.omanotes" }

# 4. Shell'i yenileyin
omarchy-restart-shell

Für eine schnelle Statusprüfung im Terminal:

~/.config/omarchy/plugins/ozdil.omanotes/omanotes-status

Meine Lesart

  • Die Cloud sieht nur das verschlüsselte Paket: Notizen werden verschlüsselt, bevor sie das Gerät verlassen, selbst Titel sind kein Klartext.
  • Das Backup kann an zwei Orten aufbewahrt werden: Drive oder WebDAV mit rclone, ein persönliches Repository mit Git.
  • Die Tests decken auch Fehlerfälle ab: beschädigte Dateien, Netzwerkausfälle und gleichzeitige Schreibvorgänge wurden getestet.

Quellen

  • GitHub-Repository: ozdil/omarchy-omanotes
  • Lizenz: MIT-Lizenz
  • Kurator & Standard: Omarchy Linux (CONTRIBUTING.md) & Sicherheitsrichtlinien