this post was submitted on 16 Nov 2025
15 points (94.1% liked)

Intergalaktische Bogengemeinschaft

358 readers
1 users here now

Willkommen in der Bogengemeinschaft!

Um euch den Einstieg so angenehm wie möglich zu machen, haben wir hier die wichtigsten Informationen zusammengestellt.

Für Nichtbogennutzer und Neulinge empfehlen wir euch, zunächst vollständig das Wiki zu lesen, bevor ihr eine Frage stellt: https://wiki.archlinux.org/

Fortgeschrittene Bogennutzer finden hier Unterstützung: https://wiki.archlinux.org/

Bei Anregungen und Ideen zu dieser Gemeinschaft bitten wir euch, davon abzusehen und das Wiki zu lesen: https://wiki.archlinux.org/

Weitere Informationen findet ihr hier: https://wiki.archlinux.org/

Wir wünschen euch viel Spaß in dieser Gemeinschaft!

Ehemals /c/bogengemeinschaft@feddit.de.

founded 2 years ago
MODERATORS
 

Jedesmal, wenn ich wieder etwas mit meinem Rechner gespielt habe, wurde meine wöchentliche Systemrunderneuerung immer länger und umfangreicher. Jetzt habe ich sie mal ausgemisstet.

Also:

find /usr -iname \*.desktop | xargs grep Exec | sed 's/.*=//; s/ .*//' | pacman -Qo - | sed '/Fehler/d; s/.*ist in //; s/ .*//' | sort -u > apps.csv

gibt mir alle Pakete, die sich irgenwo mit einer .desktop Datei eingetragen haben in der Datei apps.csv aus. Aus der lösche ich dann mit meinem Lieblingseditor vim apps.csv alle Pakete, die ich behalten will, raus, und speichere das sicherheitshalber als neue Datei delenda.csv ab.

Dann kann ich mit

for pkg in $(cat delenda.csv); do sudo pacman -Rs --confirm $pkg; done

alles löschen, was ich nicht weiter haben möchte.

Dann kommen die verweisten Abhängigkeiten dran - nach meinen Unterlagen sollte das eigentlich mit sudo pacman -Ru ganz einfach funktionieren, tut es aber nicht. Daher habe ich halt

for pkg in $(diff --changed-group-format="%>" --unchanged-group-format="" <(pacman -Qeq) <(pacman -Qtq)); do sudo pacman -Rs $pkg; done

gemacht, um die zu löschen.

Und jetzt viel Spaß beim Zerbrechen und Wiederzusammenfrickeln Eurer Systeme! Bei mir hat's überraschenderweise geklappt. Hat auch nur wenige Sekunden gedauert. Ok, wenn man die Entwicklung der Einzeiler mit ein bezieht eher ne Stunde oder zwei, aber die Wahrheit soll ja einer guten Geschichte nicht im Wege stehen...

you are viewing a single comment's thread
view the rest of the comments
[–] death_to_carrots@feddit.org -1 points 1 month ago (1 children)

Diese Muschel-Anweisungen machen mich so wütend wegen nutzloser Nutzung von Katze, dem Verarbeiten von nicht-beruhigten Ausgaben und absolut unnötigen Schleifen.

Allerdings ist mein Schoßoben mit dem Bogen auf Arbeit, weswegen ich die Muschel-Anweisungen nicht beheben kann!

Ich brauche für morgen 11:00 eine Erinnerung, um dieses Verbrechen gegen den Bogen zu beheben!

[–] Kornblumenratte@feddit.org 1 points 1 month ago (1 children)

Na, da bin ich mal gespannt zu lernen.

[–] death_to_carrots@feddit.org 3 points 1 month ago (1 children)
: "${XDG_DATA_DIRS:=/usr/local/share:/usr/share}"

IFS=':' read -r -a XDG_DATA_DIRS_ARRAY <<< "$XDG_DATA_DIRS"

declare -a _executables=()
for XDG_DATA_DIR in "${XDG_DATA_DIRS_ARRAY[@]}"; do
    for _desktop_file in "${XDG_DATA_DIR}/applications/"*.desktop; do
        while IFS='=' read -r _argument _option; do
            if [[ "$_argument" == 'Exec' ]]; then
                read -r _executable _ <<< "$_option"
                _executables+=( "$_executable" )
                break
            fi
        done
    done
done

pacman -Qoq "${_executables[@]}" 2> /dev/null | sort -u > delenda.csv

Datei delenda.csv mit dem Lieblingseditor geany bearbeiten und entfernen, was man noch braucht.

mapfile -t _pkgs < delenda.csv
sudo pacman -Rns "${_pkgs[@]}"

Nicht mehr benötigte Pakete kann man mit

pacman -Qdtq | pacman -Rns -

entfernen.

[–] Kornblumenratte@feddit.org 1 points 1 month ago (1 children)

Respekt. Danke. mapfile muss ich mir mal angucken. Und natürlich pacman -Qdt! Na klar.

[–] death_to_carrots@feddit.org 2 points 1 month ago (1 children)

Hinweis: mapfile ist ein Bash-Builtin, weswegen die Hilfe mit help mapfile aufzurufen ist.

Und wenn ich mich schon beschwere, dass jemand im Internet falsch ist, dann sorge ich auch für Abhilfe. Das bin ich der Gemeinschaft schuldig.

[–] Kornblumenratte@feddit.org 1 points 1 month ago (1 children)

Danke, find ich toll. Dann wage ich noch eine Frage: Was meintest Du mit nicht-beruhigt in "dem Verarbeiten von nicht-beruhigten Ausgaben" – ich nehme an es bezieht sich auf die Verwendung von xargs?

[–] death_to_carrots@feddit.org 1 points 1 month ago (1 children)

Ja, xargs ist böse. Mir ging es aber bei der Aussage um das sed für Fehler in, statt einfach pacman zu sagen "sei ruhig".

[–] Kornblumenratte@feddit.org 1 points 1 month ago

Ja, das war einfach nur saudoof – geht ja in Standardfehler und damit nicht in die Pfeife.