# Desktop Umgebungen

# KDE installieren und NoMachine Workstation for Linux Service

### Beschreibung:

Wenn man ein Debian Terminal Server installieren möchte, fehlt meistens eine Desktop umgebung um diese dann per rdp oder nomachine zugänglich zu machen.

### Installation

Entweder als root oder mit sudo. Wir machen hier sudo, weil meisten wenn man ein Desktop will, hat man einen Standard user.

```
sudo apt install kde-plasma-desktop
```

#### No Machine installieren:

Cups und Archivverwaltung (Grafischen Entpackprogramm) installieren

```
sudo apt install cups file-roller ark
```

Für den Virtuellen Desktop braucht nomaschien den x11 Server

```
sudo apt install xserver-xorg xinit x11-xserver-utils sddm dbus-x11
```

Danach nomachine server holen.  
Site öffnen

[https://downloads.nomachine.com/download/?id=13&amp;platform=linux](https://downloads.nomachine.com/download/?id=13&platform=linux)

Dann Rechtsklick auf den Download button und link Adresse kopieren anklicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/h9aOqRU6o83EWsYa-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/h9aOqRU6o83EWsYa-grafik.png)

 Hier die zur Erstellung des Artikels Aktuelle Version, diese dann per wget downloaden

```
wget https://download.nomachine.com/packages/9.0-PRODUCTION/Linux/nomachine-workstation_9.0.188_11_amd64.deb
```

und installieren

```
sudo apt install ./nomachine-workstation_9.0.188_11_amd64.deb
```

Nun noch für KDE anpassen

```
sudo nano /usr/NX/etc/node.cfg
```

Dort folgende Werte das Kommentar entfernen

ca Zeile 464

```
WaylandModes egl,drm,compositor
```

Und in ca Zeile 1030

Den Wert von 1 auf 0 ändern

```
EnableEGLCapture 0
```

Dann speichern und

neustarten

```
sudo reboot
```

Alle Benutzer die Drucken sollen in die Gruppe CUPS reinpacken

```
sudo usermod -aG lpadmin <username>
```

Verbinden:

NX-PLayer auf dem Dem Client starten und ip eintragen und auf hinzufügen klicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/h4FG4UqST6ubDPmB-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/h4FG4UqST6ubDPmB-grafik.png)

Nun den Schlüssel akzeptieren mit ok

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/RDe9TkpPwZ1NlRzL-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/RDe9TkpPwZ1NlRzL-grafik.png)

Benutzername Kennwort eingeben

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/KirTw7sEjcy4mDHW-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/KirTw7sEjcy4mDHW-grafik.png)

Dann auf Pyhsische Anzeige klicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/LhllNfGXGcPWedWn-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/LhllNfGXGcPWedWn-grafik.png)

Nun hat man nach eingeben des Kennwortes

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/BhioI48nk8UxDzpW-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/BhioI48nk8UxDzpW-grafik.png)

 den Desktop vor sich

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/FYNUpkzdzQYdvuCR-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/FYNUpkzdzQYdvuCR-grafik.png)

License Einspielen für Virtuellen Desktop

Nun auf den Server die Licence Datei kopieren

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/o7KFBBAslw8tUqsF-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/o7KFBBAslw8tUqsF-grafik.png)

Nun No Machine Service Server öffnen, dazu rechtsklick auf Symbol und dann show Server status

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/AA7eti9bz1uoDtJS-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/AA7eti9bz1uoDtJS-grafik.png)

Dann auf Updates klicken, dann auf Server subscription klicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/0zPQNOFNnXn2GdgD-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/0zPQNOFNnXn2GdgD-grafik.png)

Dann runterscrollen und auf Update subscription klicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/vJcT4m8eWYYabAMY-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/vJcT4m8eWYYabAMY-grafik.png)

Datei auswählen, fertig

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/ziTZbC7eQqc7iVPL-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/ziTZbC7eQqc7iVPL-grafik.png)

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/BxjXiOQfHEVOjPgR-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/BxjXiOQfHEVOjPgR-grafik.png)

Dann auf einen Neuen Virtuellen Desktop erstellen klicken

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/oE3HNnekl0OMxgbX-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/oE3HNnekl0OMxgbX-grafik.png)

Nun warten und man ist drin

[![grafik.png](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/scaled-1680-/ifmnZf2xCZNcopG0-grafik.png)](https://wiki.hacker-net.de/uploads/images/gallery/2025-07/ifmnZf2xCZNcopG0-grafik.png)

Allerdings hat Debian nur ein kleines Programmspektrum.  
Deshalb Flat Hub installieren.  
Allerdings Brave nicht als Flat Paket installieren, sonst ist ein Syncserver nicht möglich

#### resolv.conf selbt verwalten:

Dazu ein script

```
nano fix-dns.sh
```

Inhalt

Hier noch die DNS-Server anpassen!!!

```
#!/bin/bash

echo "🛠️  Stoppe und deaktiviere systemd-resolved..."
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved

echo "🧹 Entferne symbolischen Link /etc/resolv.conf..."
sudo rm -f /etc/resolv.conf

echo "📄 Erstelle neue resolv.conf mit deinen DNS-Servern..."
cat <<EOF | sudo tee /etc/resolv.conf > /dev/null
nameserver 1.1.1.1
nameserver 9.9.9.9
EOF

echo "🔒 Setze Schreibschutz auf /etc/resolv.conf..."
sudo chattr +i /etc/resolv.conf

echo "✅ Fertig! Deine resolv.conf ist jetzt fest gesetzt."

```

Ausführbar machen

```
chmod +x fix-dns.sh
```

Ausführen

```
./fix-dns.sh
```

Möchte man die Datei wieder ändern, erst den Schreibschutz entfernen.

```
sudo chattr -i /etc/resolv.conf
```

Dann die DNS Server im Script anpassen und neu ausführen

# KDE Desktop weg alles nur schwarz, aber Programme laufen noch

### Beschreibung:

Es kann vorkommen das ein Applet oder anderes Programm KDE zum absturz bringt.  
Die Programme laufen noch weiter, aber keine Taskleiste und kein Desktop.  
Gott sei Dank funktionieren Tastenkürzel noch.

Windows Logo + E öffnnet dann den Dateimanager.  
Erstmal den Order ~/.cache leeren. Denn da liegt sicherlich das Problem das der Desktop überhaupt abschmiert

Dann Rechtklick in den Ordner und Terminal hier öffnen anklicken.  
nun haben wir mit diesem trcik auch ne shell aufgemacht.  
  
Nun folgenden befehl eintippen.

```
plasmashell &
```

nachdem die Shell wieder da mit STRG+C verlassen, nun kann das Terminal geschlossen werden und weiter gearbeitet werden.  
**Es kann sein, das der Desktop wieder weg ist mehrmals wieder holen und wichtig das terminal Fenster zeitnah dann schließen!!!!**

# KDE Freigaberegisterreiter hinzufügen

<div class="badges" id="bkmrk-repo%3A-https%3A%2F%2Fgit.ha"><span class="badge green">REPO: [https://git.hacker-net.de/Hacker-Software/kde-dolphin-smb-sharing-tab](https://git.hacker-net.de/Hacker-Software/kde-dolphin-smb-sharing-tab)</span></div><div class="badges" id="bkmrk-"></div><div class="badges" id="bkmrk--1"></div><div class="badges" id="bkmrk-gplv2%2B-kf5-%2F-kf6-deb"><span class="badge green">GPLv2+</span> <span class="badge blue">KF5 / KF6</span> <span class="badge">Debian 12 Bookworm</span> <span class="badge">Debian 13 Trixie</span> <span class="badge">net usershare</span></div>Ersetzt das kaputte `kdenetwork-filesharing` Paket durch eine einfache, funktionierende Alternative die `net usershare` direkt nutzt — **kein Root nötig!**

[![image.png](https://wiki.hacker-net.de/uploads/images/gallery/2026-03/scaled-1680-/H0kVXnJRYZJDcOhY-image.png)](https://wiki.hacker-net.de/uploads/images/gallery/2026-03/H0kVXnJRYZJDcOhY-image.png)

## ✨ Features

- **Share-Tab** in Dolphins Ordner-Eigenschaften (Rechtsklick → Eigenschaften)
- Freigabe per Checkbox aktivieren/deaktivieren
- Freigabename konfigurierbar (Standard = Ordnername)
- Gastzugang erlauben
- Berechtigungen pro Benutzer: Read Only / Full Access / Deny
- Erkennt bestehende Freigaben und lädt deren Einstellungen

## 📋 Voraussetzungen

- Samba installiert (`net usershare` ist Teil des Samba-Pakets)
- `usershare` in `smb.conf` aktiviert (siehe unten)
- Benutzer muss in der Gruppe `sambashare` sein

### Samba installieren

```
bash```
sudo apt install samba
```
```

### Benutzer zur Gruppe hinzufügen

```
bash```
sudo adduser $USER sambashare
```
```

Danach neu einloggen.

### Samba usershare aktivieren

In `/etc/samba/smb.conf` unter `[global]`:

```
ini```
usershare max shares = 100
usershare owner only = yes
```
```

Danach: `sudo systemctl restart smbd`

## 📦 Versionen

<table id="bkmrk-verzeichnis-zielplat"><tbody><tr><th>Verzeichnis</th><th>Zielplattform</th><th>KDE Frameworks</th><th>Qt</th></tr><tr><td>`kf5/`</td><td>Debian 12 Bookworm</td><td>KF5</td><td>Qt5</td></tr><tr><td>`kf6/`</td><td>Debian 13 Trixie</td><td>KF6</td><td>Qt6</td></tr></tbody></table>

<div class="note" id="bkmrk-der-c%2B%2B-quellcode-is">Der C++ Quellcode ist identisch — nur die CMake-Konfiguration unterscheidet sich.</div>## 🔨 Build &amp; Installation

### Debian 12 Bookworm (KF5)

**Build-Dependencies:**

```
bash```
sudo apt install build-essential cmake extra-cmake-modules \
    libkf5kio-dev libkf5coreaddons-dev libkf5i18n-dev \
    qtbase5-dev
```
```

**Bauen:**

```
bash```
cd kf5
bash build.sh
```
```

**Installieren:**

```
bash```
sudo cp build/bin/smbshareplugin.so \
    /usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/propertiesdialog/
```
```

**Dolphin neustarten:**

```
bash```
killall dolphin; dolphin &
```
```

### Debian 13 Trixie (KF6)

**Build-Dependencies:**

```
bash```
sudo apt install build-essential cmake extra-cmake-modules \
    libkf6kio-dev libkf6coreaddons-dev libkf6i18n-dev \
    qt6-base-dev
```
```

**Bauen:**

```
bash```
cd kf6
bash build.sh
```
```

**Installieren:**

```
bash```
sudo cp build/bin/smbshareplugin.so \
    /usr/lib/x86_64-linux-gnu/qt6/plugins/kf6/propertiesdialog/
```
```

**Dolphin neustarten:**

```
bash```
killall dolphin; dolphin &
```
```

## 🗑️ Deinstallation

```
bash```
# KF5
sudo rm /usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/propertiesdialog/smbshareplugin.so

# KF6
sudo rm /usr/lib/x86_64-linux-gnu/qt6/plugins/kf6/propertiesdialog/smbshareplugin.so
```
```

## 📁 Projektstruktur

<div class="tree" id="bkmrk-kde-dolphin-smb-shar">- `kde-dolphin-smb-sharing-tab/`
    - `README.md`
    - `kf5/` — Debian 12 (KDE Plasma 5) 
        - `CMakeLists.txt`
        - `build.sh`
        - `src/`
            - `CMakeLists.txt`
            - `smbshareplugin.json`
            - `smbshareplugin.h`
            - `smbshareplugin.cpp`
    - `kf6/` — Debian 13 (KDE Plasma 6) 
        - `CMakeLists.txt`
        - `build.sh`
        - `src/`
            - `CMakeLists.txt`
            - `smbshareplugin.json`
            - `smbshareplugin.h`
            - `smbshareplugin.cpp`

</div>## ⚙️ Wie es funktioniert

## ⚙️ Wie es funktioniert

Das Plugin nutzt die `net usershare` Befehle von Samba:

- `net usershare add <name> <path> <comment> <acl> <guest_ok>` — Freigabe erstellen
- `net usershare delete <name>` — Freigabe löschen
- `net usershare info --long` — bestehende Freigaben auflisten

Diese Befehle benötigen keine Root-Rechte, solange der Benutzer in der Gruppe `sambashare` ist und `usershare` in der `smb.conf` aktiviert ist.