- db.rs: Vollständige SQLite-Schicht (Permissions, Audit, Memory, Patterns, Settings) - guard.rs: Risiko-Klassifikation + Freigabe-Management in lib.rs integriert - scripts/claude-bridge.js: Node.js Bridge für Claude CLI (stream-json, NDJSON) - audit.rs + memory.rs: An SQLite angebunden statt In-Memory - Frontend: MemoryPanel + AuditLog laden echte Daten via Tauri-Commands - shell.nix: Rust-Toolchain aus nixpkgs statt rustup - Build: cargo check + npm run build erfolgreich Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
68 lines
1.4 KiB
Nix
68 lines
1.4 KiB
Nix
{ pkgs ? import <nixpkgs> {} }:
|
|
|
|
pkgs.mkShell {
|
|
buildInputs = with pkgs; [
|
|
# Rust Toolchain aus nixpkgs
|
|
rustc
|
|
cargo
|
|
rustfmt
|
|
clippy
|
|
gcc
|
|
pkg-config
|
|
openssl
|
|
|
|
# Tauri-Abhängigkeiten für Linux
|
|
webkitgtk_4_1
|
|
libappindicator-gtk3
|
|
librsvg
|
|
|
|
# GTK/GLib für Tauri
|
|
gtk3
|
|
glib
|
|
cairo
|
|
pango
|
|
gdk-pixbuf
|
|
|
|
# Zusätzliche Abhängigkeiten
|
|
libsoup_3
|
|
at-spi2-atk
|
|
|
|
# Node.js (falls nicht global)
|
|
nodejs_22
|
|
|
|
# Für Audio (Whisper/TTS später)
|
|
alsa-lib
|
|
ffmpeg
|
|
|
|
# Zusätzliche Bibliotheken für Tauri CLI
|
|
bzip2
|
|
zlib
|
|
xz
|
|
zstd
|
|
];
|
|
|
|
# Umgebungsvariablen für Rust/Tauri
|
|
shellHook = ''
|
|
export PKG_CONFIG_PATH="${pkgs.openssl.dev}/lib/pkgconfig:$PKG_CONFIG_PATH"
|
|
export LD_LIBRARY_PATH="${pkgs.lib.makeLibraryPath [
|
|
pkgs.webkitgtk_4_1
|
|
pkgs.libappindicator-gtk3
|
|
pkgs.gtk3
|
|
pkgs.cairo
|
|
pkgs.pango
|
|
pkgs.gdk-pixbuf
|
|
pkgs.librsvg
|
|
pkgs.libsoup_3
|
|
pkgs.bzip2
|
|
pkgs.zlib
|
|
pkgs.xz
|
|
pkgs.zstd
|
|
pkgs.openssl
|
|
]}:$LD_LIBRARY_PATH"
|
|
|
|
echo "🦀 Claude Desktop Entwicklungsumgebung geladen"
|
|
echo " Rust: $(rustc --version 2>/dev/null || echo 'nicht gefunden')"
|
|
echo " Cargo: $(cargo --version 2>/dev/null || echo 'nicht gefunden')"
|
|
echo " Node: $(node --version 2>/dev/null || echo 'nicht gefunden')"
|
|
'';
|
|
}
|