Debian Maintainer scripts - postrm löscht fhem auch bei upgrade

Begonnen von mist, 11 April 2019, 12:05:29

Vorheriges Thema - Nächstes Thema

mist

Ahoi,

ich habe gerade meinen rpi geupgraded und war sehr verwirrt, dass der Benutzer fhem gelöscht wird. Darauf hab ich mir die Maintainerscripts angesehen und festgestellt, dass er im postrm immer gelöscht wird.

Ich fände es schöner, wenn überprüft wird ob das Paket überhaupt gelöscht wird, eher sogar ob es gepurged wird (denn bei einem remove sollte alle Config so bestehen bleiben, der Benutzer also auch vorhanden bleiben). Siehe auch https://wiki.debian.org/MaintainerScripts

if [ "$user_exists" -eq "0" ]; then
    echo "deleting user fhem"
    userdel fhem
fi


sollte also imho in ein
if [ "$user_exists" -eq "0" ] && [ "$1" -eq "purge" ] ; then
gewandelt werden.

Ebenso finde ich, sollte die /etc/init/fhem.conf nicht einfach entfernt werden (das geht sogar afaik direkt gegen den debianstandard, da in /etc vom Nutzer veränderte Dateien nicht einfach zurückgesetzt werden dürfen).

Viele Grüße,
mist

CoolTux

Ich verstehe kein Wort. Glaube aber an einen Popcorn Thread. Und da ich eh krank bin kann ich mich auch etwas ablenken.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

mist

Solange es betateilchen nicht auch für einen Popcornthread hält bin ich zufrieden...

betateilchen

Zitat von: mist am 11 April 2019, 12:05:29
ich habe gerade meinen rpi geupgraded und

Zitat von: mist am 11 April 2019, 12:05:29
war sehr verwirrt, dass der Benutzer fhem gelöscht wird.

das Eine hat mit dem Anderen aber normalerweise nichts zu tun. Was meinst Du mit "rpi geupraded" ?

Ich geh in der Zwischenzeit mal Popcorn holen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mist


apt-get update
apt-get upgrade

und dabei Installation des aktuellen Pakets aus dem fhem Repo.
Mit rpi meine ich den Raspberry Pi auf dem ein Raspbian läuft und das FHEM-Debian-Repo in den sources steht.

Beta-User

Wirklich immer wieder lustig...

ZitatDo not use these procedures for updates/upgrades!
Dieser Hinweis bei https://debian.fhem.de/ ist aber auch etwas unaufällig gestaltet, dieser gern gesehene Irrtum rechtfertigt daher m.E. nicht das Vertilgen größerer Menge an Maiszeugs :P .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

mist

Umm, interessant.
Vielleicht sollte man den Hinweis auch am Ende der Seite "The easy way: use apt-get" anbringen, denn ich habe ja die Prozedur für eine Neuinstallation bis zum Ende befolgt, dass man dann eigenmächtig Schritte rückgängig machen soll, wäre gut nochmal explizit dort erwähnt zu haben, anstatt nur auf einer anderen Seite einen missverständlichen Hinweis anzubringen.

Beta-User

Was willst du denn "eigenmächtig rückgängig machen" sollen?

Nach dem Begehen des easy way sollte alles ohne weiteren Nutzereingriff so sein, dass FHEM läuft und sauber konfiguriert ist, man muß insbesondere die Paketverwaltung dann nicht mehr anfassen (was du scheinbar gemacht hast).

Das - auch aus meiner Sicht - irritierende ist, dass man nirgends so richtig einen Hinweis findet, dass das Paket die eigenen sourcen wieder löscht. Das ist bei allen anderen Paketen, die mir bisher bewußt untergekommen sind (was wenige sind), nicht so. Wenn, dann sollte am Ende des easy way ein Hinweis stehen, dass das Paket das machen wird und man anschließend (nur für FHEM) das FHEM-interne update nutzen soll (oder von mir aus alternativ svn, was aber dem "normalen" User noch weniger sagen wird wie apt-get).

Bei der Gelegenheit etwas OT an betateilchen (auch wenn du Wiki-Beiträge nicht soooo toll findest): Gäbe es die Möglichkeit, den easy way auch direkt verlinkbar zu machen oder gibt es diese Option schon, ich habe sie aber bisher übersehen?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

CoolTux

Muss man nicht. Das Installpacket sollte die Einträge aus der source.list nach erfolgreicher Installation wieder löschen.

Ich sagte ja. Popcorn. Ob gewollt oder ungewollt.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Man muss keine Schritte eigenmächtig rückgängig machen.

Das Installationsskript löscht die entsprechenden Einträge in der sources.list automatisch nach der (Erst-)Installation, damit genau DAS nicht passiert, was Du gerade beschreibst.

Das von Dir beschriebene Verhalten kann nur auftreten, wenn jemand eigenmächtig nach einer erfolgten installation das repository wieder in die sourcen einträgt. Und es steht nirgends, dass man das tun sollte.

Insofern sehe ich keinen Handlungsbedarf.

Zitat von: Beta-User am 11 April 2019, 17:27:34
Dieser Hinweis bei ... ist aber auch etwas unaufällig gestaltet,

Dieser Hinweis war früher in rot auf der Webseite, da wurde ich angemault, das sei zu auffällig und ob ich die User für zu doof halte, diesen Hinweis zu lesen...

(die Antwort auf diese Frage wäre unhöflich, deshalb möchte ich auf eine Antwort verzichten)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: Beta-User am 11 April 2019, 17:48:15
Gäbe es die Möglichkeit, den easy way auch direkt verlinkbar zu machen

Nein. Und das bleibt auch ganz bewußt so. Mit einer direkten Verlinkung haben schon andere Webseiten genug Unheil und Supportaufwand verursacht, da müssen wir das im eigenen WIKI nicht auch noch provozieren.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mist

Ok, ich sehs ein, ich habe mich nicht 100% an die Anleitung gehalten. Denn ich habe die source nicht in die /etc/apt/sources.list eingetragen, sondern in die /etc/apt/sources.list.d/fhem.list.
Der Grund ist, dass viele ältere Anleitungen noch die sources.list meinen, während nichts dagegen spricht es in die sources.list.d/$name.list einzutragen. Dementsprechend hat das postinst natürlich nichts entfernt.
Wenn das Debian-repo so verwendet werden würde, wie Debian Repos gedacht sind, wäre das auch kein Problem gewesen. Da es eben anders verwendet wird, finde ich schon könnte man darauf hinweisen.

(Und ich habe die Anleitung ja nicht für ein Upgrade verwendet, sondern für eine Neuinstallation, dementsprechend war der Hinweis für mich unzutreffend)