website/Tricks.md
2024-05-31 17:03:51 +02:00

28 KiB

Gitea

Start und stop

Nach Änderung von Einstellungen muss gitea neu gestartet werden. Das passiert über supervisorctl:

supervisorctl restart gitea

Es gibt analog auch stop und start. Nicht ~/gitea/gitea selbst aufrufen! (Zumindest für diesen Zweck.) Diese Info findet man auch auf der uberspace Anleitung zu gitea.

Spawn Error

Ohne Anlass habe ich plötzlich beim push und pull zu/ von gitea repo den Fehler

Gitea: Internal Server Error
Get http://localhost:9000/api/internal/serv/command/3/flukx/moneyusage?mode=1&verb=git-upload-pack: dial tcp [::1]:9000: connect: connection refused

bekommen. Erst konnte ich mich auch auf der Maschine nicht mit ssh verbinden. Das ging später plötzlich wieder. Start/ Stop wie oben beschrieben gingen nicht mit Spawn Error. Direkt ~/gitea/gitea aufrufen ging nicht wegen eines locks auf ~/.gitconfig. Daher habe ich ~/.gitconfig.lock gelöscht und dann konnte ich gitea wieder wie oben starten. Alles wieder gut. Merkwürdig, aber erledigt.

gitlab-ci with my own docker image (TU Dresden MN)

When using gitlab-ci one way is to use a docker image with the necessary software for compilation etc. The docker image to use must come from somewhere. The standard is to pull it from dockerhub but that's very wastefull in case of big docker images like mine with texlive-full for my masterthesis. Also I was blocked (understandably) after a while. So it's better to store the image together with the repo on the gitlab. This is done in the so-called Container Registry, findable in the gitlab-menu (on the left) under Packages & RegistriesContainer Regsitry. (or just add /container_registry to the repo url.

  1. Get the image locally on your computer. You can build it yourself or as I did, pull it from dockerhub:
    docker pull texlive/texlive:latest
    
  2. Retag it with the name needed for the gitlab registry. This can be found in the CLI command for "Build an image" on the abovementioned gitlab menu. In my case it is
    docker tag texlive/texlive:latest gitlab.mn.tu-dresden.de:8000/s1140568/masterthesis
    
  3. Login to the docker registry. The command is also mentioned as one of CLI commands. In case of the TU Dresden, you need to be in the university network or use VPN to be in it! You can type your username and password or use a password manager (s1140568 is my username, pass my password manager):
    pass uni/gitlab.mn.tu-dresden.de | head -1 | docker login gitlab.mn.tu-dresden.de:8000 -u s1140568 --password-stdin
    
  4. Push the docker image to the gitlab container registry as mentioned as CLI command.
    docker push gitlab.mn.tu-dresden.de:8000/s1140568/masterthesis
    
  5. Use this image in your ci. For this mention it as the image to be used in the .gitlab-ci.yml, for example by having the first line.
    image: gitlab.mn.tu-dresden.de:8000/s1140568/masterthesis:latest
    

Automatisches mounten einer Partition.

Erklärt unter Ubuntu help. Bei meinen Daten-Partitionen hat das zu den Kommandos udisksctl mount --block-device /dev/disk/by-uuid/99fb08ea-47fb-4595-9527-c259f318331c und udisksctl mount --block-device /dev/disk/by-uuid/7AB0D22F35BD16B1 geführt. Unter Einstellungen - Sitzung und Startverhalten - Automatisch gestartete Anwendungen - Hinzufügen diesen Befehl hinzugefügt.

Touchpad deaktivieren in Lubuntu

  • vollständig deaktivieren: synclient TouchpadOFF=1
  • curser aktivieren, klicken deaktivieren: synclient TouchpadOFF=2
  • Touchpad voll aktivieren: synclient TouchpadOFF=0

Auch dieser Befehl macht sich gut im Autostart.

Trackpoint sensitivity

Disclaimer: unsicher, ob diese Einstellung nötig ist oder überhaupt etwas tut, denn der nächste Punkt bearbeitet das gleiche Thema.

Der Trackpoint ist bei mir sehr langsam gewesen. Nervig. askubuntu hat die Lösung: xinput installiert. Im Output von xinput den TrackPoint gefunden: TPPS/2 IBM TrackPoint und damit mit xinput list-props die zugehörige Eigenschaft libinput Accel Speed gefunden. Diese Informationen ermöglichen Einstellen der Sensitivität im Bereich [-1, 1] mit

xinput --set-prop 'TPPS/2 IBM TrackPoint' 'libinput Accel Speed' 1.0

Für dauerhaftes Übernehmen dieser Einstellung die Datei ~/.xsessionrc erstellt mit

xinput set-prop 'TPPS/2 IBM TrackPoint' 'libinput Accel Speed' 1

Außerdem habe ich die Geschwindigkeit erhöht.

Drift des Trackpoints vermeiden

Disclaimer: eigentliche Lösung am Ende

Wenn man lange mit dem Trackpoint in eine Richtung bewegt, bewegt sich der Trackpoint häufig zurück, denn er kalibriert neu mit der Bewegung als 0-Punkt. Um das zu verringern, soll die Datei /sys/devices/platform/i8042/serio1/serio2/drift_time zuständig sein. Dokumentation scheint es zu geben. Daher habe ich die 5 in dieser Datei durch eine 8 ersetzt und schaue jetzt mal. Genauso habe ich .../speed von 97 auf 120 erhöht. Dummerweise werden diese Werte beim Start des Computers zurückgesetzt. Daher muss eine udev-Regel erstellt werden: in /etc/udev/rules.d/trackpoint.rules:

ACTION=="add",
SUBSYSTEM=="input",
ATTR{name}=="TPPS/2 IBM TrackPoint",
ATTR{device/sensitivity}="210",
ATTR{device/speed}="220",
ATTR{device/drift_time}="8",

Einstellungen für eduroam an der TU Dresden:

Halte dich an die Anleitung auf der ZIH-TU-Seite. Dort gibt es funktionierende Installationsprogramme (Bash-Skript für Linux, App + Config-Datei für Android)

Einrichten von vpn ins TU-Dresden-Netz mit OpenVPN

Hauptsächlich entsprechend der Anleitung.

Dann:

  • System: Fedora 33 mit KDE Oberfläche
  • Fehlermeldung nach Import über Benutzeroberfläche: "Connection Timed out"
  • Problem: TLS-Settings falsch und TLS-Crypt Zertifikat fehlt
  • Lösung:
    • Kopiere den Teil des tls-crypt aus der TUD.ovpn in eine Datei (in meinem Fall: ~/.local/share/networkmanagement/certificates/TUD/tls-crypt ):
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
9b32985687664a47084463da740ff2a2
8976d0f78b2264e7feda8486efe02289
7ff5abc2f1bfe170eb620e63fb0cba01
fb65e4f6668fd3a718e1b3d4d94ac2a5
56a1d53f8f971fb0307034d425758cb3
1aeb8156b05ceb2fe79eaf56777c3bb5
0fa26bc1f3a0b21d3a1a8787f133c626
5776465ab7848443d8b153300853a7c2
167d72baf41b6372db1b801499ac1aa3
3506442dfb204bb037e961c938fd9571
cb62228eb0c482f3db4598f08f8c26fe
1d72031e82f5bd163e961310fe781806
8e546e4957f6eae73585b245ae3a6273
fc4375d385cb2c95646af01ec31a23cc
e7fbbd353a27ec216f6e677fed8a4298
6b0c01f429db0ddb52fd0760788c32d5
-----END OpenVPN Static key V1-----
  • öffne VPN-Einstellungsoberfläche (Suche "Connections" in Systemmenü)
  • wähle TUD-VPN-Verbindung (setzt vorherigen import voraus)
  • im Reiter "VPN (openvpn)" klicke "Advanced..."
  • öffne Reiter "TLS Settings"
  • wähle "Verify peer (server) certificate usage signature" (ich weiß nicht, ob das mit dem Problem zusammenhängt, aber es war vorher nicht ausgewählt)
  • wähle Mode: "TLS-Crypt"
  • wähle im Key File die oben erstellte Datei

Wenn ich stattdessen den vorgeschlagenen Kommandozeilenimport

sudo nmcli connection import type openvpn file <pfad zur>/TUD.ovpn

mache und versuche zu verbinden, bekomme ich den Fehler The service providing the VPN connection was stopped. Dafür ist die oben beschriebene Einstellung auf Anhieb richtig, allerdings sind die beiden Zertifikate (das oben beschriebene und das CA Certificate) in /root und damit nicht erreichbar. Nachdem ich beide durch die Zertifikate in ~ ersetzt habe, hat's geklappt.

Installation/ Einrichten von vpn ins TU Dresden-Netz mit Cisco

Cisco is proprietary software and unnecessary. Rather use OpenVPN.

hauptsächlich entsprechend der Anleitung

um die GUI von Cisco AnyConnect zu öffnen wird das Paket libpangox benötigt. Habe ich über den Paketmanager installieren können.

Cisco AnyConnect ist die Datei /opt/cisco/anyconnect/bin/vpnui

Ordner vergleichen

Ich habe 2 Festplatten, die eigentlich den gleichen Inhalt haben sollten. Irgendwie habe ich es immer wieder hinbekommen, dass der Inhalt doch nicht gleich ist. Zum Vergleichen der Ordner auf den beiden Festplatten habe ich verschiedene Software ausprobiert: meld reagiert oft nicht, diff und git diff schauen sich jede Datei komplett an, was bei großen Filmen ewig dauert. Dann wurde ich darauf aufmerksam gemacht, dass rsync mit --dry-run einem diese Information geben kann:

rsync --size-only --itemize-changes --dry-run --verbose --recursive dir1/ dir2

Dabei ist das / at dir1/ wichtig! Sonst wird simuliert, wie dir1 in dir2 hineinkopiert wird (nicht der Inhalt von dir1)!

Problem dabei noch: wenn die Dateien gleich, aber die timestamps unterschiedlich sind, werden diese Dateien mit angezeigt. Daher noch ein grep nachschieben:

rsync --size-only --itemize-changes --dry-run --verbose --recursive dir1/ dir2 | grep --invert-match '^\.'

Das funktioniert, weil --itemize-changes Dateien, die zwar übertragen werden, aber keine Änderung haben, mit einem . am Anfang markiert. '^\.' ist eine regular expression, die ein . am Anfang der Zeile (^) beschreibt. (s. man rsync)

Rsync copy

Zum Kopieren der Daten von einer Sicherungsfestplatte zur anderen:

rsync --progress --size-only --itemize-changes --verbose --recursive /media/user/origdrive/subdir /media/user/newdrive
Rsync delete

Zum Löschen von Dateien, die auf einer Sicherungsfestplatte gelöscht wurden und auf der anderen auch weg sollen.

rsync --dry-run --delete --existing --ignore-existing --progress --size-only --itemize-changes --verbose --recursive /media/user/origdrive/subdir /media/user/newdrive
# check again, then without dryrun:
rsync --delete --existing --ignore-existing --progress --size-only --itemize-changes --verbose --recursive /media/user/origdrive/subdir /media/user/newdrive

and if necessary in the other way as well.

Bilder verkleinern

for i in *.jpg; do convert $i -resize 541x304 $i; done

Achtung, Bilder werden ersetzt! (wenn nicht gewollt das $i um ein präfix ergänzen); gleiches ggf. mit *.JPG

lxde-rc.xml

Nach anpassen der Datei lxde-rc.xml mit den Shortcuts, rufe den Befehl openbox --reconfigure auf. Dann werden die Änderungen beachtet.

alias

In shells gibt es den Befehl alias, mit help alias gibt es alle relevanten Infos, mit alias bekommt man alle aktuellen aliase.

~/.bashrc Dies wird beim Start jeder Konsole mit bash ausgeführt, kann angepasst werden. Entsprechend ~/.zshrc.local und ~/.zshrc.pre für die z-Shell.

~/.bash_aliases: Diese Befehle werden von .bashrc aufgerufen, dort sollen alle aliases rein, die man jedes Mal haben möchte. Entsprechend ~/.zshrc.pre für die z-Shell.

~/.config/gtk-3.0/bookmarks: Dort stellt man ein, welche Ordner unter Places bzw. Orte in Thunar angezeigt werden.

Einstellung um mein Tastaturlayouts beim Einloggen einzustellen:

localectl set-x11-keymap "my_neo2(my_neo2)

damit ist auch der nicht funktionierende Autostart umgangen. (Kommt vom Arch wiki.)

Ändern des Tastaturlayouts

  1. Im Ordner /usr/share/X11/xkb/symbols/ die Datei my_neo öffnen
  2. die entsprechende Taste finden und das zugehörige Level (Achtung, die sind nicht in der NEO-Reihenfolge), dort ändern, Unicode mit UHexnr, speichern
  3. im Ordner /var/lib/xkb/ alle xkm-Dateien löschen (das sind die kompilierten Dateien). Dafür sind root-Rechte nötig, also mit sudo rm *.xkm
  4. setxkbmap my_neo(my_neo)" -v
  5. Im Ordner SSD-Daten/Startscreen die entsprechenden Ebenen ändern mit KolourPaint
  6. ./buildMyNeo.sh
  7. entsprechende Zeichen unter ~/Documents/Computer/LaTeX/exDocs/neoUTF8enc.tex ergänzen und die Veränderung an andere Stellen, wo die Datei sitzt, kopieren
System-weites Ändern des Tastaturlayout

Siehe Anleitung im Arch-wiki, aber mit /usr/lib/kbd/keymaps/xkb/ für die keymap.map.gz-Dateien. (Weiter noch nicht herumgespielt.)

Neo2-Layout in PyCharm

Direkt nach Installation von PyCharm tun die Pfeiltasten, die in Neo2-Layout auf 3. Ebene eingebaut sind, nichts. Um sie zu aktivieren: Strg+Alt+S (Einstellungen) -> Keymap -> unter dem Auswahlfeld ist eine Checkbox mit "Use national layouts for shortcuts" -> anklicken -> OK (-> PyCharm neustarten)

Internes Mikrofon wird nicht erkannt

  • (noch nicht sicher, ob das immer klappt)
  • Wenn das interne Mikrofon nichts aufnimmt, probiere das:
  • Test, ob es vom Betriebssystem erkannt wird:
    • pavucontrol starten
    • im Tab „Input Devices” schauen ob das „internal Microphone“ im „Built-in Audio Analog Stereo“ vorhanden ist
    • falls nicht: im Tab „Configuration“ im 2. Abschnitt „Built-in Audio” das Profile „Analog Surrounds 4.0 Output + Analog Stereo Input” wählen

Dinge, die ich bei Shell Skripten leicht vergesse

  • in Bedingungsklammern [] von if muss am Anfang und am Ende ein " " (blank) stehen!!
  • Hinweise zu Bedingungen in if abrufbar unter man test
  • Nutze immer lieber test als [] oder [[]], weil es überall (auch in sh) läuft.
  • bei Zuweisungen mit = darf zwischen Variablenname und = kein Leerzeichen sein! (sonst wird Variablenname als command interpretiert)

SSH-Key Erstellung:

Ausführliche (glaube gut lesbare) Anleitung bei gitlab

What I did:

ssh-keygen -t rsa -f BelaSSHKey

(ausgeführt in ~/.ssh, weiss nicht ob das wichtig ist)

Ausgabe:

The key fingerprint is:
4a:ad:de:1b:26:ed:f5:cb:78:01:b1:8c:98:38:1c:3e felix@felix-L450
The key's randomart image is:

+--[ RSA 2048]----+
|                 |
|    .     .      |
|   o o o o o     |
|    E o.. +      |
|     o. S  .     |
|     . +    .    |
|      + + .  .   |
|     . = o +.    |
|      . +...+.   |
+-----------------+

Dateien wurden in ~/.ssh erstellt.

install Sublime Text

sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer

Infos: von uminöser Quelle

Fanfiction Download

Dafür gibt es spezialisierte Seiten: FF2ebook und FicSave zum Beispiel.

Dank an AOOO, wo das nicht nötig ist, da sie komplett-pdf-Downloads anbieten.

Installation unseres EPSON WF-7620 Druckers

(Druck, noch nicht scan)

Installation von Treibern u.ä.:

  1. Verbindung zu WLAN „GeckoNet“, nicht „Gecko Net Gast“ (sonst kann der Drucker nicht gefunden werden)
  2. sudo apt-get install lsb
  3. Unter der Epson Seite download: das Debian Paket Installiere durch Doppelklick (ggf. vorher gdebi installieren)
  4. Zusätzlich Epsons Kram installieren: unter Epson Suche - suche nach "WF-7620 - Epson Printer Utility - amd64" download und installieren durch Doppelklick: epson-printer-utility_1.0.0-1lsb3.2_amd64.deb (Beim nächsten Versuch hatte der vorherige Schritt diesen schon erledigt.)
  5. Dann cups starten:
    /etc/init.d/cups restart
    
    check with
    ps -ef | grep cups
    
  6. cups im Browser üffnen: localhost:631, durch Menüs wurschteln, dabei Epson WF-7620 Series auswählen (wird schon angezeigt, nur Einstellungen sollten überprüft werden).
  7. In Standardeinstellungen wähle Normalpapier-Standard-Vivid Wenn nach Benutzername und Passwort gefragt wird, gib dein Benutzername und Passwort ein (geht wegen sudo).

Installation des EPSON WF-7620 als Scanner

Dezember 2022 in Kubuntu 20.04 war keine Einrichtung nötig.

Dann mit SimpleScan scannen. Als ich die Datei gespeichert habe (muss man nach dem Scannen noch tun) schien SimpleScan abgestürzt zu sein, aber nach einer Weile war es wieder OK. Vermutlich reagiert das Programm nicht so lange es an der pdf-Erstellung arbeitet.

Einstellungen in Simple Scan für Mitschriften-Scans:

  • Photo, 150 dpi, Brightness Mitte, Contrast maximal, Quality bei 2/3

In Einstellungen kann ein Skript zur Nachbearbeitung eingestellt werden. Da wäre OCR (Texterkennung) eine gute Idee.

Erste Einrichtung
  • Anleitung: von Epson
  • Download: iscan entpackt, README gelesen, ./install.sh --dry-run -- entsprechend Dinge per Hand getan in anderer Reihenfolge:
sudo apt-get install xsltproc
sudo dpkg --install ./data/iscan-data_1.39.0-1_all.deb
sudo dpkg --install ./core/iscan_2.30.3-1_amd64.deb
sudo dpkg --install ./plugins/iscan-network-nt_1.1.1-1_amd64.deb

mit der Anleitung von Ubuntuusers ein Deamon immer beim Rechnerstart starten:

sudo systemctl enable saned.socket

und mit simple-scan scannen :)

Zweite Einrichtung

Install sane-utils (sane organisiert das Scannen, libsane sollte schon installiert sein.)

Füge IP-Adresse des Scanners in passende Datei ein:

/etc/sane.d/net.conf

am Ende der Datei einfügen:

192.168.178.1

Ich habe ausserdem die time-out Zeit (s. Datei) auf 10 sek gesetzt.

Installation EPSON WF-7620 als Scanner Fedora 34

Erst das ./install.sh skript von der Epson Seite ausgeführt, aber dabei gab es Fehlermeldungen zu inkompatiblen Paketen. Ob das etwas getan hat, weiß ich nicht. Dann ausgeführt:

sudo dnf install kf5-libksane sane-backends sane-backends-daemon

wobei nur das dritte Paket vorher noch nicht installiert gewesen war.

Installation Scanner BearPaw 2400 CU Plus Mustek

Anleitung entsprechend Ubuntuusers:

  1. Firmware-Datei von Sane-Backend: für BearPaw 2400 CU Plus Mustek downloaden

  2. Kopiere diese Datei nach

    /usr/share/sane/gt68xx
    

    (erstelle den Ordner vorher)

  3. Ergänze nach den Zeilen

    # Autodetect Mustek BearPaw 2400 CU Plus
    usb 0x055f 0x021d
    

die Zeile firmware /usr/share/sane/gt68xx/PS2Dfw.usb in der Datei /etc/sane.d/gt68xx.conf Diese Änderung ist im Konfigurationsordner vorgenommen und an der richtigen Stelle ist nur ein Link.

Signal installieren

  • signal-desktop installieren:
    • sudo snap install signal-desktop (sollte auch mit dnf gehen)
    • registrieren über signal-cli, nach https://ctrl.alt.coop/en/post/signal-without-a-smartphone/
    • (Aktuellste Version nehmen!)
      wget https://github.com/AsamK/signal-cli/releases/download/v0.6.10/signal-cli-0.6.10.tar.gz
      tar xfv signal-cli-0.6.10.tar.gz`
      signal-cli-0.6.10/bin/signal-cli -u <telnummer> register
      signal-cil-0.6.10/bin/signal-cli -u <telnummer> verify <verificationcode-sent-via-sms>
      sudo dnf install zbar  # for reading qrcode
      signal-desktop
      # reading qr-code via zbar, getting link
      signal-cli-0.6.10/bin/signal-cli -u <telnummer> addDevice --uri "tsdevice:/?uuid=bo..."
      
    • zum Synchronisieren von Kontakten, vor allem um den Nummern Namen zu geben, lies auch die Anleitung

Zum Mappen notes nutzen

Besseres gpx gibt folgendes skript: https://github.com/richlv/osmnotes Ich habe es aber noch nachbearbeitet um die Kommentare auf das Wesentliche zu konzentrieren: (entfernt Datum und Benutzernamen)

perl ~/.bin/osmnotes/osmnotes.pl "$@" | sed 's#\d\{4\}-\d\{2\}-\d\{2\} \d\{2\}:\d\{2\}:\d\{2\} UTC \[commented\] [^:]*: ##' | sed 's#\d\{4\}-\d\{2\}-\d\{2\} \d\{2\}:\d\{2\}:\d\{2\} UTC \[opened\] [^:]*: ##'

Meine erste Option war die api: Download via api: Südvorstadt Dann das gpx auf das gps laden und das gpx mit dem Skript

~/Documents/Hobby/OSM_Data/extract.py

(auch zu finden unter meiner Website) bearbeiten und das Produkt ausdrucken und mitnehmen.

Zeit und Ort von Fotos berichtigen

Meine Kamera kann die Aufnahmezeit (wie alle) und den Aufnahmeort (wenn gps eingeschaltet ist) von Fotos speichern. Beides kann falsch sein. Da ich den Ort mithilfe meines gps-Gerätes berichtigen möchte, möchte ich, dass die Zeit mit dem gps-Gerät übereinstimmt. Außerdem ist das gps-Gerät eine Funkuhr. Dafür habe ich gewartet bis die Uhr auf dem gps-Gerät umspringt zur nächsten Minute und sofort ein Foto gemacht.

Ich nutze für alle Zwecke das exif-Feld "CreateDate", auszulesen mit

exiftool -CreateDate bild.jpg

oder

exiftool bild.jpg | grep "Create Date"   # note the space

Es gibt noch einige weitere Date/Time Felder, die man nicht verwechseln sollte!

Damit kann man den Offset berechnen. Interessant ist "gps-Zeit — Bild-Zeit". Bevor man die Zeiten ändert, lieber eine Sicherungskopie machen!

Die Zeit der Bilder kann man ändern mit

exiftool "-CreateDate+=y:m:d h:m:s" *JPG

where + can be replaced by - and y, m, d, h are probably all 0. *.JPG muss natürlich durch alle zu verändernden Bilder ersetzt werden. Meine Kamera benennt sie mit .JPG, daher passt dieser Befehl alle meine Bilder im aktuellen Ordner an.

Für das Ergänzen oder Berichtigen von Geolocations nutze ich gpicsync, dass ich für meine Zwecke noch angepasst habe (inklusive Fehlerbehebungen): belamu on github. Ich habe mir den alias geolocateimages='python /path/to/GPicSync/srs/gpicsync.py' erstellt.

--offset=2 behebt den Zeitunterschied zwischen Kamera und gps. (In Stunden.) Da muss ich immer ausprobieren, was der richtige Wert ist. Hängt wohl mit dem Unterschied zwischen GMT und hiesiger Zeit zusammen.

Im Ordner mit den Bildern führe ich dann aus:

geolocateimages --offset=2 -d . -g ./pfad/zu/track.gpx
rm *_original  # remove unneeded original files

Das überschreibt in meiner Variante des Programms bestehende gps-Koordinaten nicht. Das ist für das Archivieren der Fotos das richtige. Für das Mappen für osm möchte ich aber zusätlich auch die Variante haben, in der ich die Koordinaten vom Track nehme:

geolocateimages --offset=2 -d . -g ./pfad/zu/track.gpx --overwrite
rm *_original

Ripping a CD

(CD to mp3): Nutze abcde mit Anleitung von Andrew

Fedora

Disabling wlan
su
ip link set dev wls1 down
ip addr flush dev wls1
dnf remove iproute-tc-5.4.0-1.fc31.x86_64

Enabling might work like that

su
dnf install iprout-tc
ip link set dev wls1 up

The name wls1 for wlan I know from iwconfig.

Setting my DNS Server

Somehow setting the DNS Server to digitalcourage was a very long journey. The reason to do that finally was to fix connection errors when using LAN to a PYUR KabelBox.

I used nmtui but noticed than that the graphical interface from kde offers the same option. nmtui is installed via inst NetworkManager-tui. Start nmtui, choose the connection, where the DNS should be changed, choose method automatic instead of shared for ipv4 and ipv6 configuration and insert the ip addresses (v4 and v6 respectively) from digitalcourage.

Then the connection must be reconnected (probably also possible with gui or): (thanks to Brien)

nmcli con down <connectionName>
nmcli con up <connectionName>

resolvectl status shows now the correct ip address for the wired connection. (enp0s25)

I have not used the option ignore-auto-dns which sounds helpful because it blocks the DNS information coming from the router but it works so far without this option.

Yannig automated this for all connections which is an option for later:

nmcli -g name,type connection  show  --active | awk -F: '/ethernet|wireless/ { print $1 }' | while read connection
do
  nmcli con mod "$connection" ipv6.ignore-auto-dns yes
  nmcli con mod "$connection" ipv4.ignore-auto-dns yes
  nmcli con mod "$connection" ipv4.dns "5.9.164.112"   # or your preferred DNS
  nmcli con mod "$connection" ipv6.dns "2a01:4f8:251:554::2"  # or your preferred DNS
  nmcli con down "$connection" && nmcli con up "$connection"
done

Ebay