ubuntuusers.de

snap

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |
Dieses Thema ist die Diskussion des Artikels snap.

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

ich arbeite gerade an einem separatem Artikel zum Entfernen verwaister snaps. Wenn ich soweit durch bin (dauert noch min 1,5 Wochen), dann können wir da das Thema und das neue Skript aufgreifen.

Gruß, noisefloor

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 339

Nochmal über das Skript geschaut und die Ausgabe "Keine verwaisten Snaps vorhanden" ergänzt. Ich denke jetzt ist es schick.

Hier gehts weiter:

https://github.com/Mylinde/orphand_snaps

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 339

noisefloor schrieb:

noch ein Nachtrag zur Ergänzung von Mylin: die funktioniert _nur_, wenn das System auf Englisch eingestellt ist. Wenn das System auf deutsch ist, muss man im Skript disabled durch deaktiviert ersetzen. Wenn das System auf niederländisch eingestellt ist, muss man disabled durch uitgeschakeld ersetzen, im Französischen durch désactivé usw.

Funktion zur Erkennung der Lokale ergänzt.

https://github.com/Mylinde/snap_cleanup

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 339

Hinweis:

Das Skript sollte man nur ausführen, wenn man sicher ist, dass die aktuellen Revisionen aller installierten snaps problemlos auf dem eigenen Rechner funktionieren, da man nicht mehr zur älteren Revision zurückkehren kann.

Hierzu möchte ich anmerken, dass man mit

1
snap refresh snapname --revision=XXX

die Revisionen wechseln kann, also auch wieder auf eine ältere.

Ruth-Wies

Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 417

Wohnort: im Exil ;(

Mylin schrieb:

noisefloor schrieb:

… Wenn das System auf niederländisch eingestellt ist, muss man disabled durch uitgeschakeld ersetzen, …

Funktion zur Erkennung der Lokale ergänzt.

Das gehört m. E. nicht in diese Diskussion zu diesem Artikel. Aber da du nun mal hier geschrieben hast. Deine aktuelle Fassung des Skriptes würde im Falle von niederländisch bei case im *) landen und demnach nach disabled suchen. (Vergleiche dazu obiges Zitat.) Du schränkst dein Skript also auf drei Sprachen ein und alle anderssprachigen bekommen nur vorgegaukelt, dass es etwas tut.

Da hättest du besser hier im Forum nachgeschaut, denn mit LANG= wird die lokale Einstellung temporär ersetzt. Gut, bis zum Schließen des Terminals! Aber dafür funktioniert es für alle Sprachen und auch bei künftigen, eventuellen Änderungen einer Übersetzung. Wenn dir das so nicht zusagt, kannst du die lokale Einstellung auch zwischenspeichern und zum Abschluss zurücksetzen.

local_lang=$LANG
LANG=C
…
LANG=$local_lang

PS: Und noch schlimmer: Du überschreibst in deinem Skript die Umgebungsvariable LANG mit einem nur für deine Gedanken brauchbaren Inhalt. Dass die Programme, die in deinem Skript gestartet werden, dies so nicht verstehen, kümmert dich nicht? Glück gehabt! In diesem Fall fallen die auf LANG=C zurück, aber das muss nicht immer so sein.

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

welches Skript? Ich habe nie selber ein Skript geschrieben und in den Artikel eingefügt... Die sind entweder von anderen Leuten oder von anderen Leute übernommen. Und zumindest bei meinem Tests mit allem, was ich in den Artikel eingefügt habe, hatte ich keine Probleme. Was natürlich nicht heißt, dass das unter allen Umständen funktioniert.

Jedenfalls ist es ein Wiki und Mitarbeit ist willkommen. Anstatt mit Vorwürfen um dich zu werfen, wie schlecht etwas ist → besser machen und den Wikiartikel korrigieren. Der Wikiartikel ist nicht gesperrt, also kann das jeder angemeldete Benutzer, inkl. dir.

Gruß, noisefloor

Ruth-Wies

Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 417

Wohnort: im Exil ;(

noisefloor,
noch nicht wach? Genug Kaffee/Tee? 😉

Da habe ich wohl die entscheidenden Teile aus dem Zitat entfernt. Ich beziehe mich darauf:
Mylin schrieb:

https://github.com/Mylinde/snap_cleanup

noisefloor schrieb:

… besser machen und den Wikiartikel korrigieren …

Mit dem Artikel ist IMHO alles in Ordnung. Ich habe doch geschrieben, dass Mylin besser hier abgeschrieben hätte. Obwohl ich mich da zugegebenermaßen vertan und „Forum“ geschrieben habe, obwohl ich den Artikel meinte.

Ich melde mich nur nicht extra bei github an um dort ein Issue zu eröffnen oder gar einen Pullrequest einzureichen. Und dann noch englisch zu so früher Stunde. Dafür war wiederum meine Tee-Dosis auch nicht ausreichend. 😇

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 9721

Wohnort: Münster

Mylin schrieb:

Hinweis:

Das Skript sollte man nur ausführen, wenn man sicher ist, dass die aktuellen Revisionen aller installierten snaps problemlos auf dem eigenen Rechner funktionieren, da man nicht mehr zur älteren Revision zurückkehren kann.

Hierzu möchte ich anmerken, dass man mit

1
snap refresh snapname --revision=XXX

die Revisionen wechseln kann, also auch wieder auf eine ältere.

Eher: Nein. Man kann so zwar jede, auch ältere, aber noch aktuelle Revision erneut installieren, aber nicht jede ältere Revision. „Aktuell“ bedeutet hier, dass der Snap-Server sie noch anbietet. Wenn man eine lokal gespeicherte veraltete Revision entfernt, kann man sie in der Regel nicht erneut vom Server installieren, sondern höchstens aus dem eigenen Backup.

Der Text im Hinweis ist zwar nicht 100%-ig, aber doch ziemlich richtig.

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 339

Ruth-Wies schrieb:

... Deine aktuelle Fassung des Skriptes würde im Falle von niederländisch bei case im *) landen und demnach nach disabled suchen. (Vergleiche dazu obiges Zitat.) Du schränkst dein Skript also auf drei Sprachen ein und alle anderssprachigen bekommen nur vorgegaukelt, dass es etwas tut.

Es steht dir frei das Skript deinen Bedürfnissen anzupassen; aber gerne ergänze ich die Lokalisierungen auf den europäischen Raum, Sonderwünsche wie Kabardinisch müsste der geneigte Anwender dann selbst ergänzen.

Da hättest du besser hier im Forum nachgeschaut, denn mit LANG= wird die lokale Einstellung temporär ersetzt. Gut, bis zum Schließen des Terminals! Aber dafür funktioniert es für alle Sprachen und auch bei künftigen, eventuellen Änderungen einer Übersetzung. Wenn dir das so nicht zusagt, kannst du die lokale Einstellung auch zwischenspeichern und zum Abschluss zurücksetzen.

Ist ja irgendwie alles ein erkenntnisgetriebener evolutionärer Prozess, denke jetzt ist es schick.

kB schrieb:

dass der Snap-Server sie noch anbietet. Wenn man eine lokal gespeicherte veraltete Revision entfernt, kann man sie in der Regel nicht erneut vom Server installieren, sondern höchstens aus dem eigenen Backup.

Das diese da noch vorhanden sein muss ist natürlich klar.

Ruth-Wies

Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 417

Wohnort: im Exil ;(

Mylin schrieb:

Es steht dir frei das Skript deinen Bedürfnissen anzupassen; aber gerne ergänze ich die Lokalisierungen auf den europäischen Raum, Sonderwünsche wie Kabardinisch müsste der geneigte Anwender dann selbst ergänzen. … Ist ja irgendwie alles ein erkenntnisgetriebener evolutionärer Prozess, denke jetzt ist es schick.

Ich habe da kein Bedürfnis; ich mag nur keine falschen Versprechungen. Dein Skript gibt vor etwas zu tun, was es aber nur für die mittlerweile 16 von dir eingefügten Sprachen auch tut. Und für die übrigen wird keine passende Fehlermeldung ausgegeben. Da liegt der Hase im Pfeffer! Und den Hinweis, dass der Benutzer das selbst anpassen muss, findet er nur hier und nicht auf github.

Wenn du meinen one-size-fits-all-Vorschlag nicht annehmen möchtest, dann ändere wenigstens die Zeile

*) DISABLED="disabled";;

in

*) echo "your language is unknwon - add it manually to the script"; exit 1;;

Mylin

Avatar von Mylin

Anmeldungsdatum:
23. Juli 2024

Beiträge: 339

Ruth-Wies schrieb:

Und den Hinweis, dass der Benutzer das selbst anpassen muss, findet er nur hier und nicht auf github.

Der Hinweis war vorhanden.

https://github.com/Mylinde/snap_cleanup/tree/main#notes

If you want to modify the script to remove snaps in a different language, you can simply add more cases to the case statement to handle different languages.

Ist aber inzwischen obsolete, weil

Wenn du meinen one-size-fits-all-Vorschlag nicht annehmen möchtest, ...

Manchmal dauert es ein Weilchen, bis der Groschen fällt. Jetzt klappt es aber auch mit Kabardinisch. 👍

Antworten |