VS Code und RaspberryMatic

Einrichtung, Nutzung und Hilfe zu RaspberryMatic (OCCU auf Raspberry Pi)

Moderatoren: jmaus, Co-Administratoren

Antworten
ptweety
Beiträge: 419
Registriert: 07.01.2017, 16:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 25 Mal
Danksagung erhalten: 34 Mal

VS Code und RaspberryMatic

Beitrag von ptweety » 17.07.2022, 00:32

Hallo zusammen,

ich bin ein Fan von Visual Studio Code und wollte das Ding schon immer sauber mit RaspberryMatic zum laufen bekommen.
Hier mal eine Anleitung dazu, welche so auf meinem Mac funktioniert hat. (von Windows habe ich leider keine Ahnung ...)

A. VS Code installieren: https://code.visualstudio.com
B. Sichersellen, dass die Erweiterung "Remote - SSH" installiert ist: https://marketplace.visualstudio.com/it ... remote-ssh
C. Und dann die Vorbedingungen erfüllen: https://code.visualstudio.com/docs/remo ... requisites
Base Requirements
kernel >= 3.10, glibc >=2.17, libstdc++ >= 3.4.18, Python 2.6 or 2.7, tar

Remote - SSH Requirements
OpenSSH server, bash, and curl or wget

Notes
Run ldd --version to check the glibc version. Run `strings /usr/lib64/libstdc++.so.6
Fangen wir mal mit den Remote - SSH Requirements an

1. in der RaspberryMatic ssh aktivieren per Einstellungen > Systemsteuerung > Sicherheit
2. login vom Client testen mit

Code: Alles auswählen

ssh root@<ip-der-raspberrymatic>
3. einen ssh-key auf dem Client für passwortlosen Zugang erstellen

Code: Alles auswählen

$ ssh-keygen -t ed25519
Der findet sich dann üblicherweise im Verzeichnis (private und public key) wieder:

Code: Alles auswählen

$ ls .ssh
id_ed25519	id_ed25519.pub
4. ssh-key auf die RaspberryMatic hochladen

Code: Alles auswählen

$ ssh-copy-id -i .ssh/id_ed25519.pub root@<ip-der-raspberrymatic>
Dadurch wird ein Eintrag in $ cat /usr/local/etc/ssh/authorized_keys auf der RaspberryMatic erstellt

5. eine ssh Konfigurationsdatei auf dem Client erstellen, um zukünftige logins zu erleichtern (keep-alive, root-user und key voreinstellen)

Code: Alles auswählen

$ cat .ssh/config
Host *
 ServerAliveInterval 240

Host ccu3-webui
 User root
 HostName ccu3-webui.fritz.box
 IdentityFile ~/.ssh/id_ed25519

Code: Alles auswählen

$ ls .ssh
config	id_ed25519	id_ed25519.pub
6. bash installieren

Das ist eigentlich eine ganz eigenen Anleitung wert. Aber in Kürze gibt es zwei Möglichkeiten:

a. das HM-Tools Addon (mit etwas älterer bash)
b. selber kompilieren (habe ich gemacht, weil ich eine aktuelle bash haben wollte)

7. und dann ist noch einen kleinen Patch an /usr/bin/ldd durchzuführen. Und zwar muss erstmal das filesystem beschreibbar gemacht werden:

Code: Alles auswählen

$ mount -o rw,remount /
und folgende Datei

Code: Alles auswählen

$ head -1 /usr/bin/ldd
#!/bin/bash
zu

Code: Alles auswählen

$ head -1 /usr/bin/ldd
#!/usr/bin/env bash
geändert werden. Da kann man dann kurz vi üben. (Hinweis: vi <datei>; i für insert mode; editieren und dann <ESC> :wq zum speichern) Und natürlich

Code: Alles auswählen

$ mount -o ro,remount /
nicht vergessen.

8. letzter Schritt auf der RaspberryMatic ist dann noch ein Verzeichnis für die Daten von VS Code vorzubereiten:

Code: Alles auswählen

$ mkdir /usr/local/vscode

D. Nun endlich geht es in VS Code weiter. Dort müssen nun noch die Settings der oben erwähnten Erweiterung angepasst werden. Ich habe

Code: Alles auswählen

    "remote.SSH.serverInstallPath": {
        "ccu3-webui": "/usr/local/vscode"
    }
eintragen müssen. Dies bewirkt, dass nicht in das $HOME des root users geschrieben wird (ist nämlich read-only, sondern in einen anderen Ordner deiner Wahl auf der RaspberryMatic

Jetzt kann man eine neue Verbindung im "Remote Explorer" über das kleine + anlegen und endlich loslegen.

Bigfoot0485
Beiträge: 10
Registriert: 19.07.2022, 10:00
System: Alternative CCU (auf Basis OCCU)

Re: VS Code und RaspberryMatic

Beitrag von Bigfoot0485 » 19.07.2022, 10:15

Danke fürs teilen.

Antworten

Zurück zu „RaspberryMatic“