Dieser Artikel wird ständig erweitert solange das Projekt läuft. <--- Wenn abgeschlossen nehme ich diese Zeile raus ;-)
Es sollte ursprünglich der Versuch sein, meinen Gaming-Laptop von Windows zu befreien, da ich gehört hatte dass mit der Bibliothek PROTON eine gute Kompatibilität und Performance von DirektX erreicht wird. Es gibt eine Proton-Datenbank, in der geprüft werden kann wie gut Spiele auf Proton funktionieren.
Mittlerweile ist das hier zu einem Projekt geworden, in dem geprüft wird, ob nicht Linux grundsätzlich reicht.
Die Installation werde ich nur kurz anreißen, aber dann auf die Herausforderungen eingehen.
Zum Einsatz kommt CachyOS, da es eine gute Unterstützung von Grafikkarten (NVidia, AMD) bietet und ein fertiges Gaming-Paket mitbringt. CachyOS basiert auf ArchLinux.
Ich habe zwischenzeitlich auch andere Distributionen (Ubunut Gaming Package, PopOS!) getestet, aber keine davon konnte überzeugen.
Anmerkungen:
ich betreibe mein Linux auf Englisch, da dies die Fehlersuche sehr vereinfacht.
Das $ Zeichen bei den Kommandos weisen nur darauf hin, dass es sich um Eingaben auf der Kommandzeile handelt und müssen nicht mit eingeben werden.
Vorrausetzung: Für die Installation und den ersten Boot: Secure Boot muss im BIOS ausgeschaltet sein. Nach ein paar Anpassungen im Linux, kann dies später wieder eingeschaltet werden. Ich werde später darauf eingehen.
Installation durchführen: ISO-Datei herunterladen und mit BalenaEtcher auf eine USB-Stick spielen. Dann den PC/Laptop mit dem USB-Stick booten. Um den USB-Stick auswählen zu können (in meinem Fall) F12 drücken. Es bootet ein Live-System und es erscheint ein Fenster "CachyOS Hello". Dort gibt es einen Knopf "Installation starten". Der Vorgang ist fast selbsterklärend. Im Idealfall hat man eine leere Festplatte und man muss sich für einen Bootmanager entscheiden. Ich habe mich für GRUB entschieden, weil ich den am besten kenne. Außerdem kann man noch den Desktop wählen, in meinem Fall KDE Plasma. Nach erfolgreicher Installation sollte danach bei Reboot Cachyos starten.
Nach der Installation erscheint hier erstmal wieder ein "CachyOS Hello". Dort befindet sich ein Knopf mit dem Namen "Apps/Tweaks". Man gelangt dann in einen weiteren Screen, dort gibt es einen Knopf: "Install Gaming Packages", mit dem man die Gaming Pakete installieren kann. Es beinhaltet Steam, Lutris, Heroic Launcher, Proton, Wine und Co.
Dann zunächst noch ein paar mir wichtige Pakete nachinstalliert.
brave-bin (Mein Standard Browser)
filezilla (Mein Standard SFTP Client)
...
Secure Boot
Um das System wieder Secure Boot fähig zu machen, muss Grub angepasst werden.
Die Herausforderung war bei mir, dass ich keinen Setup-Modus für Secure Boot habe. Bei mir mussten die Secure Boot Settings gelöscht werden. UEFI --> Security --> "Erase all Secure boot settings". Dafür musste kurzzeitig das Secure Boot eingeschaltet werden.
Cool fand ich den Befehl mit dem man einfach in das Bios(UEFI) booten kann:
systemctl reboot --firmware-setup
Paket-Manager
ArchLinux und somit auch CachyOS nutzt den Paketmanager pacman. Falls mal etwas im CachyOS-Repository nicht drin sein sollte, lässt sich dies gut aus AUR (Arch User Repository) installieren. Dafür gibt es das Gegenstück zu pacman mit dem Namen paru. Funktioniert von der Handhabung genauso.
Paket installieren/aktualisieren (am Beispiel von Brave):
sudo pacman -S brave-bin
Paket löschen:
sudo pacman -R brave-bin
Paket inklusive der Abhängigkeiten, die nicht von einem anderen Paket benötigt werden, löschen.
sudo pacman -Rs brave-bin
Alle Pakete aktualisieren
sudo pacman -Su
Installierte Pakete anzeigen
pacman -Q
Information zu einem bestimmten installierten Paket (Teilstring reicht)
pacman -Qi brave
Installierbare Pakete suchen (Teilstring reicht)
pacman -Ss brave
Komplette Aktualisierung (inkl. Aktualisierung der Datenbank)
Lutris hat so auf Anhieb nicht wirklich gut funktioniert und bei dem Versuch etwas zu etablieren viele Fehlermeldungen von Wine rausgespuckt hat. Da ich keine UBIsoft-Spiele haben die ich nicht über Steam gekauft habe, habe ich Lutris nicht weiter verfolgt. Es gibt aber eine Möglichkeit UBI über den Heroic Launcher zu installieren.
Steam
Steam ist in den Einstellungen -->Compatibilty mit Proton experimental vorbelegt. Dies habe ich auch so gelassen, die meisten Spiele laufen damit. Nur bei Bedarf habe ich dann für bestimmte Spiele in den Properties des Spiels diese Version angepasst.
Steam hat in dieser Version auch einen UBIsoft-Connect eingebaut. Da braucht man sich nicht drum kümmern. Das heißt: UBIsoft-Spiele die bei Steam gekauft wurden laufen out of the box.
Heroic Launcher
Im Gegensatz zu Lutris, hat die Einbindung von EPIC und GOG wunderbar geklappt. Dazu unter "Konten verwalten" einfach das entsprechende Konto hinzufügen. Auch Amazon lässt sich hier einbinden, habe ich aber mangels Spiele nicht getestet.
Man kann wohl über "Spiel hinzufügen" einfach den Launcher UBIsoft-Connect in wine installieren und nutzen. Laut einem Bekannten soll dies aber gut funktionieren.
Ich glaube Lutris macht auch nichts anderes, macht die Installation aber automatisiert. Da ich keine Spiele haben, die ich direkt bei UBIsoft gekauft habe, habe ich dies nicht weiter verfolgt.
Mangohud/Mangojuice
Während der Ausprobier-Phase hatte ich Spiele die nicht performant liefen. Um dem auf den Grund zu gehen, habe ich Mangojuice (dies installliert mangohud mit) installiert. Das ist ein Overlay-Programm mit dem man die gewünschten Werte (z.B. in meiem Fall FPS) während des Spiels angezeigt bekommt. Mit Mangojuice konnte man bequem eine Auswahl treffen, welche Werte angezeigt werden sollen.
Spiele
Folgende Spiele wurden getestet:
Tomb Raider (2013)
Hitman Absolution
Watchdogs 2
Mafia 1 Definitive Edition
Mafia 2 Definitive Edition
Watchdogs 1
Control
SWAT 4 Gold Edition
Minecraft
Läuft...
Diese Spiele liefen einfach mal ohne Anpassungen mit akzeptablen Frame-Raten.
Tomb Raider (2013)
Hitman Absolution
Watchdogs2
Mafia 1 Definitive Edition und Mafia2 Definitive Edition
Beim ersten Start von Mafia 1 war dies sehr langsam. Es war sogar so, dass sich die Körper der Personen langsam hinterherzogen. Das gab komische Effekte. Bei Mafia 2 machte ich die Beobachtung, dass die Frame-Rate von 165 auf 10 runterging, sobald das eigentliche Spiel startete.
Es scheint sich um ein allgemeines Problem bei Produkten der Firma 2K zu handeln.
Mafia 1: Unter Optionen --> Anzeige:
VSYNC auf AUS
Mafia 2: Unter Optionen --> Grafik:
VSync auf Aus (die Framrate ging nun von 10 auf 30)
Bildratengrenzeerhöhen. Die war aus irgendeinem Grund auf 30 limitiert.
Watchdogs 1
Die Lösung war hier, eine andere Proton-Version zu verwenden. Offensichtlich kommt Watchdogs 1 nicht mit der experimentellen und auch nicht mit Version 10 klar. Ich habe dann für dieses Spiele explizit auf Version 9 geschwenkt.
SWAT 4 - Gold Edition
Etwas Nostalige. Das war früher unser Netzwerk-Game.
Hatte ich bei GOG gekauft. Über den Heroic Laucher wurde das Spiel mit Wine 10 installiert und funktioniert, zumindest auf Englisch. Es gibt aber eine German-Patch. Dieser ließ sich einfach per Doppelklick installieren. Auch hier wird wieder eine Wine-Instanz für den Installer erstellt, man kann dann aber über das Laufwerk Z: auch das Spiel unter ~/games/Heroic/SWAT 4 erreichen und somit den Patch erfolgreich installieren.
Minecraft
Für Minecraft habe ich einfach CurseForge installiert. Dies benötige ich um auch Plugins oder bestimmte Minecraft-Versionen nutzen zu können.
paru -S curseforge
Zunächst ließ sich eine Instanz starten. Nach dem Erstellen einer anderen Instanz lief plötzlich nichts mehr. Fehlermeldung: Whoops! An unexpected issue occured...
Lösung für mich: In den Einstellungen unter: Game Specific --> Minecraft im Abschnitt "Launcher Settings" den Punkt "Use CurseForge launcher" auswählen. Das erspart dir dann auch den Umweg über den Microsoft Launcher.
Andere Herausforderungen.
Airdrop-Alternative
Ich brauchte auf jedenfall eine Airdrop-Alternative um elegant Dateien hin und herzuschieben.
Dafür habe ich jetzt das Tool LocalSend eines deutschen Herstellers im Einsatz. Es ist OpenSource und somit kostenlos. Die Oberfläche macht einen guten und aufgeräumten Eindruck.
KDE-Connect hat sich zwar verbunden, hat aber beim Dateiaustausch seinen Dienst verweigert (keine Fehlermeldung oder Rückmeldung). Außerdem ist es nicht so elegant und bietet keine echtes Drag und Drop.
Das hochgelobte sendanywhere stürzte einfach beim Start ab.
In der Firewall muss Port 53317 für localsend freigeschaltet werden:
Mit LocalSend hat man (fast) das Airdrop-Gefühl, bin damit sehr zufrieden.
Nachtrag: Ich musste zu nächst das LocalSend jeweils auf den betroffenen Geräten starten. Um das echte Airdrop-Gefühl zu bekommen müssen noch ein paar Schalter in den Settings gesetzt werden um LocalSend im Hintergrund zu starten:
Google Drive Sycnchronisation
Da sich alle wichtigen Dateien auf Google Drive befinden, musste eine Lösung her.
KIO-gdrive Die KDE eigene Lösugn KIO-gdrive funktionierte nicht. Ich (KDE) hatte keinen Zugriff auf die Dateien. Wenn man dann mal etwas im Internet quer-liest merkt man schnell, das es Probleme beim Zugriff auf GoogleDrive mit dieser Software gibt. Bisher konnte das KDE Team dies nicht klären.
rclone Eine zweite kostenlose Lösung ist rclone. Also auch dies probiert. Mal abgesehen, dass es viel Handarbeit war, habe ich letztendlich eine Synchronisation hinbekommen. Eine gute Anleitung findet man hier bei Youtube. Allerdings war rclone recht langsam und läuft nicht automatisch. Man muss die Synchronisation immer wieder ausführen oder regelmäßig einplanen.
Insync Also weiter gesucht und fündig geworden. Das Produkt Insync macht es zwar nicht kostenlos, aber 30-40 EUR (je nach Rabatt) für eine Lifetime-Lizenz ist auch in Ordnung.
Und vor allem, es macht was es soll und das zeitnah und quasi so, wie der Original Client. Selbst die Installation war auf CachyOS obwohl der Hersteller nur Debian und RedHat Pakete bereitstellt einfach. Das Arch-User-Repository(AUR) stellt Insync zur Verfügung
Es gibt auch eine Dolphin Integration, was auch immer die machen soll. Ich habe keine Veränderung bemerkt und mir einen Link zum GoogleDrive-Ordner unter Places angelegt.
paru -S insync
paru -S insync-dolphin
AUR (Arch User Repository)
Manche Software ist im Repository von CachyOS nicht vorhanden. Im AUR kann man aber so manche Software trotzdem installieren.
paru -S <paketname>
#
Software
Paketname
Bemerkung
1
Enpass
enpass-bin
Da ich eine Lifetime-Lizenz hierfür habe, musste die Software her.
2
Spotify
spotify
Ich habe erst später entdeckt, dass Spotify auch im Repository von Cachyos unter dem Namen spotify-player vorhanden ist.
3
Terminal
Mit dem KDE eigenen Terminal wurde ich nicht so recht warm. Die Konfigurationsmöglichkeiten waren bescheiden und dass man für ein Copy/Paste die Shift und die Strg-Taste gleichzeitig drücken muss ging mir auf den Keks. Ich wollte ein Putty Feeling (kopieren bei Markieren & Einfügen bei Rechter Maustaste)und eine größere Schrift. Außerdem wollte ich mir ein STRG-V für das Einfügen vorbehalten.
Das Terminal-Programm kitty war die Lösung. Hier konnte man einfach in einer Configdatei die gewünschten Dinge eintragen.
Linux/KDE hat eine gute Integration von Bluetooth. Die meisten Geräte lassen sich ohne Probleme einbinden.
Meine Herausforderung war, meinen Bluetooth Kopfhörer einzubinden. Der Kopfhörer ist von der englischen Firma Bowers&Wilkins. Zunächst wurde bei der Kopplung (Pair) immer ein Gerät LE_BWHP angezeigt. Dieses wurde als Geräte-Typ "Other" angezeigt und nicht als Audio-Gerät angezeigt.
Beim einem der nächsten Versuche eine Kopplung durchzuführen, erkannte das System plötzlich zusätzlich nun das Audio-Gerät PX7/S2. Und wird nun sofort erkannt wenn eingeschaltet.
USB-C
Grundsätzlich kein Problem. Ein angeschlossener Monitor wurde sofort erkannt und genutzt.
Da ich die Lautsprecher am Monitor angeschlossen habe, sollten auch diese genutzt werden. Zunächst kam kein Ton heraus. Ich musste beim ersten Mal umständlich die Ausgabe von "Analog Stereo Output" auf "Digital Stereo (HDMI)-Output" stellen.
Danach wurden die Lautsprecher (am Monitor) sofort erkannt.
Nvidia / Intel GPU
Mein Laptop hat zwei Grafikkarten (GPU). Eine interne Intel und eine externe Nvidia RTX 3070. Bei der Erstinstallation habe ich davon nichts gemerkt. Beim Start z.B. von steam wurde automatisch die Nvidia genutzt.
Nach einiger Zeit startete steam nicht mehr. Grund war, das der Switch auf die Nvidia GPU nicht funktionierte. Ich hatte zunächst einen Kernel-Update in Verdacht. Es könnte aber auch mit der Umstellung von X11 auf Wayland zusammenhängen.
Das Tool nvidia-smi erkennt zwar die Grafikkarte und die richtigen Treiber, kann aber nicht auf bestimmte Daten (z.b: Temperatur,...) zugreifen:
$ nvidia-smi
Mon Dec 1 19:21:20 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.105.08 Driver Version: 580.105.08 CUDA Version: 13.0 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3070 ... Off | 00000000:01:00.0 N/A | N/A |
|ERR! ERR! ERR! N/A / N/A | 2MiB / 8192MiB | N/A Default |
| | | ERR! |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+
Das Tool prime-run, welches eigentlich dafür da ist mit Systemen mit Hybrid-Grafik, findet keine Informationen zur Nvidia:
$ prime-run glxinfo | grep 'renderer string'
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 150 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 67
Current serial number in output stream: 68
Lösung (für mich)
Nach langer Recherche, vielen Versuchen und langwierigen Diskussionen mit verschiedenen KIs habe ich dann eine Lösung gefunden. Zunächst mal sollte ein modeset=1 vorgenommen werden. Das widerspricht einigen Quellen, die behaupten, dass bei CachyOS dies schon voreingestellt ist.
/etc/modeprobe.d/nvidia.conf:
options nvidia-drm modeset=1
Danach wurde die Nvidia GPU bei Systemstart erkannt, aber nach einiger Zeit der System-Nutzung wieder deaktiviert. Verwantwortlich dafür ist wohl das Power Management, welches die GPU nach einiger Zeit wieder abschaltet. Dem kann man aber durch einen weiteren Eintrag in einer weiteren Datei engegenwirken.
Ich muss des öfteren Rechnungen einscannen und diese in durchsuchbaren PDFs speichern.
Scanner Programme gibt es viele. Die bekanntesten sind wahrscheinlich skanpage und skanlite. Es gibt aber kostenpflichtige Programme und welche die einfach nicht funktioniere.
Daher betrachte ich mal die folgenden drei: skanpage, skanlit und simplescan(Document Scanner)
Skanpage
Hier kommt noch was...
Skanlite
Hier kommt noch was...
Simplescan
Mir hat simplescan (auch Document Scanner) auf Anhieb gefallen, ein auf Gnome basierendes Tool, welches aber keine OCR Erkennung hat. Es war einfach das Look-and-Feel. Für das Problem mit der fehlenden OCR Erkennung gibt es auch eine Lösung. Das Programm bietet eine Möglichkeit eine Nachverarbeitung durchzuführen. So kann man nachträglich das PDF mit einer OCR Schicht versehen.
Bei der Installation von Programmen stoße ich immer wieder auf das Problem, dass ich nicht weiß wie die Pakete heißen. In diesem Fall simple-scan mit Bindestrich.
Installation der Pakete: simple-scan, ocrmypdf und die beiden Sprachdateien für Deutsch und Englisch (tesseract-data-deu und tesseract-data-eng)
--force-ocr OCR erzwingen. Habe ich angegeben, da ocrmypdf immer behauptete, das PDF wäre schon ein durchsuchbares PDF
-l die Sprache(n) die analysiert werden soll.
$3 ist der 4. Übergabeparameter des Skriptes (Dateiname). Das heißt hier Eingabedatei ist gleich Ausgabedatei.
Nun muss die Nachverarbeitung noch in den Einstellungen von simplescan (Document Scanner) hinterlegt werden:
Was mir fehlt? Wenn ich Rechnungen mit nur einer Seite, habe scanne ich die normalerweise in einem Rutsch. Es gibt hier aber keine Möglichkeit diese einzeln oder auch automatisiert in unterschiedlichen PDFs zu speichern.
Fotoverwaltung
Videoschnitt
Fotobearbeitung
Affinity Photo war meine Software zu Bearbeitung von Fotos, aber auch um mal schnell ein Bild mit einem Text zu versehen. Ja, mir ist bewusst, dass dies nicht die Hauptaufgabe eines Fotobearbeitungs-Programmes ist, hat aber mit Affiniy Photo super geklappt.
Die allgmeinen Dinge zur Fotobearbeitung funktionieren. Es gib Ebenen, Masken, Filter....
Ich habe allerdings Affinity Photo auch für folgendes Szenario verwendet (3 Ebenen):
Foto als Hintergrund
Text im Vordergrund
Rechteck welches nur teilweise transparent war hinter dem Text.
Was gibt es unter Linux für Alternativen?
Gimp Gimp gilt ja allgemein als Photoshop Alternative. Ja Gimp hat sich auch entwickelt, ist aber an vielen Stellen immer noch recht gewöhungsbedürftig Ich bin damit nie warm geworden und es war für mich oft nicht intuitiv. Um auf das Szenario oben zu kommen: dies schlicht nicht möglich. Liegt vermutlich daran, dass GIMP keine Vektor-Objkete unterstützt. Schon ein simples Rechteck hinzubekommen war für mich eine Tortour, mit markieren und umwandeln in Pfade, usw. Mag ich nicht: Will ich nicht.
Krita Krita ist das Tool was mir zunächst am besten zusagte. Es fühlt sich ähnlich an wie ein gutes Bearbeitungstool, hat aber Schwächen bei der Textbearbeitung. Und auch hier war es nicht möglich ein Vektorbojekt zu erstellen, welches transparent hinter den Text gelegt werden kann. Es hat zwar geometrische Figuren, aber die sind dann keine Vektor-Objekte.
Affinity (Windows-Version) Tatsächlich gibt es ein Python-Script, mit welchem man die Windows Version auf Linux installieren kann. Das Script lädt alle Abhängigkeiten herunter und installiert es in einer Wine-Umgebung. Damit habe ich mir die kostenlose Version 3 installiert. Sie läsuft tatsächlich, muss aber noch getestet werden.
Letztendlich stellt sich die Fragen:
Gibt es noch andere?
Ist die Windows Version von Affinity eine Lösung?
Muss ich mich umstellen (anderes Tool für das skizzierte Szenario)
threema-desktop führte zu Problemen mit irgendwelchen Abhängigkeiten. Außerdem ließ sich der QR Code nicht scannen, da es mit Threema Desktop 2.0 Beta nicht kompatibel ist.
3
Threema 2.0
Flatpak
Falls noch nicht vorhanden Flatpak nachinstallieren. Dann folgende Befehle ausführen. Installationsanleitung
Für mein Anycubic Photon Drucker (Resin-Drucker) sollten natürlich weiterhin Dateien erzeugt werden. Ich forschte nach und stieß auf eine Seite, die behauptete, dass man einfach die Windows Software installieren sollte.
Also die Software AnycubiPhotonWorkshop beim Hersteller heruntergeladen und mit Wine (dank CachyOS einfach Doppelklick) installiert. Was soll ich sagen? Läuft!
PureBasic
Ja, ich oute mich mal als Basic-Fan. Ich habe keine Zeit mich mit anderen komplizierten Sprachen zu beschäftigen. Hier bei PureBasic bekomme ich ein schnelles Ergebnis auf unkomplizierte Art und Weise.
Es gibt eine Linux Version für Ubuntu. Hier habe ich die neuste Version genommen (24.04 x64). Die musste einfach nur ausgepackt werden. (unzip). In der Datei INSTALL ist auch eine Anleitung wie man das dann selbst in das Anwendungsmenü einbindet.
<div data-initials="A" class="initial">
This is a smaller text.
</div>
<div data-initials="A" class="initial">
This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text. This ist a very long text.
</div>
Soweit so gut. Allerdings bemerkte ich schnell dass immer, wenn der Text zu lang war und es einen Umbruch gab, die runden Kreise mit den Buchstaben nicht mehr 36px groß waren, sondern zu Eiern schrumpften, obwohl im CSS so angegeben :-)
Der Grund ist, dass es einem Element standardmäßig erlaubt ist sich im Flexbox-Context zu verkleinern. Ein kleiner Eintrag im CSS behebt dies.
Nach dem Update auf Joomla 4 funktionierte das Kontaktformular nicht mehr. Der Text wurde nicht in der Email angezeigt.
Unter System -> Tempates -> Mail-Template wurde die Überschrift nicht richtig angezeigt. Hinter der Überschrift nach dem Bindestrich fehlt die Sprache (de-DE)
Ursache
Das Template ist nicht mit den richtigen Variablen gefüllt. Eigentlich müssten dort folgendes stehen:
Dies ist eine E-Mail Anfrage via {URL} von: {NAME} <{EMAIL}>
{BODY}
{CUSTOMFIELDS}
Ich habe versucht den Inhalt des Templates zu ersetzen. Dabei bekam ich aber die Meldung dass die Sprache nicht stimmen würde.
Lösung
Unter System -> Manage -> Sprachen finde ich dass, die Sprache DE nicht aktuell ist. (Das Bild ist nur ein Beispiel, bei mir war die Version noch älter)
Nach dem ich unter System -> Install -> Language die Sprache DE neu installiert hatte, konnte ich endlich das Template mit den richtigen Variablen anpassen.
Danach funktioniert der Versand von Kontaktanfragen wieder wie gewünscht.