Installieren und prüfen
Den Server aus einem Paket für Debian, Ubuntu, Fedora, openSUSE Leap oder Arch Linux installieren oder aus einem Klon des Repositorys, dann die Tests ausführen, die keinen Browser brauchen, und den Smoke-Test.
Vor allem anderen
Der Server arbeitet nicht ohne verschlüsseltes Verzeichnis. Der Browser, an den er
sich anbindet, hält Ihre angemeldeten Sitzungen in seinem Profil, und sie dürfen
nicht unverschlüsselt auf der Festplatte liegen. Nach der Installation lautet der
erste Befehl mcp-server-diwall-browser-setup (aus einem Klon:
.venv/bin/python -m mcp_server_diwall_browser.setup), den Sie selbst in einem
Terminal ausführen: Er liest Ihren Rechner und endet mit dem nächsten Befehl, den
Sie eingeben.
Es gibt zwei Wege weiter. Ein Versuch, mcp-server-diwall-browser-setup create --temporary,
legt ein Volume im Arbeitsspeicher an: Schließen, Ausschalten des Rechners oder das
Ende Ihrer Sitzung zerstört es, und mit ihm die Sitzungen der Websites, die Sie
geöffnet haben, das Journal und die Aufnahmen. Ein dauerhaftes Volume,
mcp-server-diwall-browser-setup create, bewahrt sie. In beiden Fällen geben Sie
das Passwort selbst an der Eingabeaufforderung von gocryptfs ein, und Sie melden
sich selbst bei Ihren Websites an, in dem Browser, den der Assistent startet. Haben
Sie den Server zu Ihrem MCP-Client hinzugefügt, starten Sie den Client neu: Eine
bereits offene Sitzung sieht den neuen Server nicht. Die Schritte stehen unter
das verschlüsselte Verzeichnis.
Was Sie brauchen
- Linux. Das Bedienerhandbuch ist für Debian 13 geschrieben, wo die Tests des Projekts liefen.
- Python 3.12 oder neuer.
- Google Chrome, Chromium oder Brave.
fuse3undgocryptfsfür das verschlüsselte Verzeichnis,kdialogoderzenityfür das Bestätigungsfenster,gitundss(Paketiproute2).
Unter Debian 13 und Ubuntu 24.04 die Systempakete (Befehl in einem sauberen Container jedes Systems wiederholt):
sudo apt install python3-venv fuse3 gocryptfs kdialog iproute2 git
Mit dem Paket kommen python3-venv, fuse3, gocryptfs und kdialog mit ihm : diese Zeile dient vor allem dem Weg über den Klon.
Außerhalb von KDE kann zenity an die Stelle von kdialog treten.
Der Browser wird getrennt installiert. Unter Debian 13 ist er das Paket
chromium (155.0.8059.79):
sudo apt install chromium
Unter Ubuntu 24.04 gibt es kein Paket chromium (chromium-browser
installiert nur einen Snap-Starter): Installieren Sie Google Chrome aus seiner
.deb-Datei.
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb
Installieren
Eine 64-Bit-ARM-Maschine nimmt dasselbe .deb. Auf einem Raspberry Pi 4 Model B unter Raspberry Pi OS (Debian 13, aarch64) mit Chromium 155 wurden die Installation, der erste Start, der Smoke-Test und die vollständige Suite (2694 Tests bestanden, 1 übersprungen) durchgeführt; das Bedienerhandbuch, Abschnitte 1 und 12, sagt, was sich von einem PC unterscheidet.
Aus einem Paket
Laden Sie das Paket Ihres Systems herunter und installieren Sie es aus dem Ordner,
der es enthält. Die Summe jeder Datei steht in SHA256SUMS:
sha256sum -c --ignore-missing SHA256SUMS.
- Debian 13, Ubuntu 24.04 und 26.04:
mcp-server-diwall-browser_0.0.1-1_all.deb, dannsudo apt install ./mcp-server-diwall-browser_0.0.1-1_all.deb - Fedora 44:
mcp-server-diwall-browser-0.0.1-1.fc44.noarch.rpm, dannsudo dnf install ./mcp-server-diwall-browser-0.0.1-1.fc44.noarch.rpm - openSUSE Leap 16.0:
mcp-server-diwall-browser-0.0.1-1.leap160.noarch.rpm, dannsudo zypper install --allow-unsigned-rpm ./mcp-server-diwall-browser-0.0.1-1.leap160.noarch.rpm - Arch Linux:
mcp-server-diwall-browser-0.0.1-1-any.pkg.tar.zst, dannsudo pacman -U ./mcp-server-diwall-browser-0.0.1-1-any.pkg.tar.zst
Das Paket bringt Python, fuse3, gocryptfs und kdialog oder zenity selbst
mit und installiert die Abhängigkeiten des Servers in einer eigenen virtuellen
Umgebung, wofür eine Netzwerkverbindung nötig ist. Den Browser installieren Sie
selbst. Installation, Start des Servers durch ein gewöhnliches Konto und Entfernen
sind auf diesen Systemen in Containern validiert. Ein Container zeigt weder das
Bestätigungsfenster noch das Einhängen des verschlüsselten Verzeichnisses noch
einen Browser. Debian 12 und Ubuntu 22.04 werden nicht unterstützt: Ihr Python ist
älter als 3.12. Das Paket fügt die Befehle mcp-server-diwall-browser,
mcp-server-diwall-browser-credential-import und mcp-server-diwall-browser-setup
hinzu, dazu die Handbuchseite man mcp-server-diwall-browser. Es endet mit der
Ausgabe des ersten Befehls, den Sie eingeben, mcp-server-diwall-browser-setup.
Aus einem Klon des Repositorys
Ein Klon des Repositorys installiert den Server mit seinen Testwerkzeugen. ~ ist
Ihr Home-Verzeichnis.
git clone https://github.com/RonanDavalan/mcp-server-diwall-browser.git \
~/mcp-server-diwall-browser
cd ~/mcp-server-diwall-browser
python3 -m venv .venv
.venv/bin/python -m pip install -e ".[dev]"
python3 --version muss 3.12 oder neuer ausgeben; andernfalls nennen Sie im
dritten Befehl den Interpreter, python3.12 oder python3.13. Die vom Projekt
getesteten Versionen sind in requirements.lock festgelegt.
Prüfen
Zwei Befehle, aus dem Klon. Das Paket liefert weder die Tests noch scripts/smoke_test.py;
mit dem Paket ist die Prüfung mcp-server-diwall-browser-setup ohne Argument, das die Maschine
liest und nichts ändert. Keiner der beiden Befehle unten berührt Ihren Browser, Ihr
verschlüsseltes Verzeichnis oder Ihr Bedienerprofil.
.venv/bin/python -m pytest -q -m "not browser"
.venv/bin/python scripts/smoke_test.py
Der erste führt alle Tests aus, die keinen Browser brauchen. Auf dem Code der Version 0.0.1, mit Python 3.12.11:
2100 passed, 1 skipped, 589 deselected, 1 warning in 105.36s (0:01:45)
Der übersprungene Test ändert den Eigentümer einer Datei, wozu Root nötig ist. Der zweite startet den Server gegen einen eigenen Browser auf einem leeren temporären Profil und beobachtet die Demoseite des Repositorys. Am selben Tag, mit Google Chrome:
browser executable: google-chrome (Chrome/155.0.8059.84)
server 0.0.1, configured: True
browser Chrome/155.0.8059.84, attached: True
encrypted directory closed_or_absent (encrypted_dir_undetermined), action expected: operator_opens_directory
tab origin http://127.0.0.1:38565
marks 4
image yes
tree lines 10
redacted_fields 1
password value in the result absent
elements 1 textbox "User name", 2 textbox "Password", 3 button "Sign in", 4 link "Help"
result: conforming
Der Port von tab origin ändert sich bei jedem Lauf. Das verschlüsselte
Verzeichnis zeigt absichtlich closed_or_absent: Der Smoke-Test gibt dem Server
ein Verzeichnis, das nicht eingehängt ist. Der Befehl gibt 0 zurück, wenn das
Ergebnis wie erwartet ist, 1, wenn eine Zeile abweicht (sie endet dann mit
<- not as expected), und 3, wenn er in Ihrem PATH keinen Browser findet.
--save-image ~/observe.png schreibt das Bild, das das Modell
erhalten hat.
Mit einem Browser in Ihrem PATH führt .venv/bin/python -m pytest -q auch die
589 Browsertests aus, jeden auf einem leeren temporären Profil.
Als Nächstes: den Browser auf seinem eigenen Profil starten, Schritt 2. Alle Optionen dieses Schritts stehen in Abschnitt 2 des Bedienerhandbuchs.