Wie funktioniert ein Installer / Installationsprogramm



  • cooky451 schrieb:

    hustbaer schrieb:

    Also ein Package-Management System wäre natürlich top.

    Waere toll, da sind sich denke ich alle einig.

    hustbaer schrieb:

    In Ermangelung dessen fände ich gut wenn alles als .msi Paket daherkommt.
    Und wenn der/die/das Softwarehersteller auch das nicht gebacken bekommt, dann bitte einen Installer der ohne Adminrechte auskommt*. Als .exe .
    Und nur wenn Adminrechte wirklich nötig sind (z.B. weil Hilfstreiber installiert werden müssen o.Ä.), dann halt nen .msi Paket/ .exe Installer der Adminrechte braucht.

    Aber warum soll so ein Paket denn unbedingt etwas Ausfuehrbares sein. (...)

    Was du beschreibst ist ja wieder ein Package-Manager - bzw. die Grundlage dafür.
    => Weisst du was "in Ermangelung dessen" bedeutet?



  • hustbaer schrieb:

    => Weisst du was "in Ermangelung dessen" bedeutet?

    Oups, das habe ich wohl ueberlesen. Ist ja schon spaet. Nun ja, Installer ohne Admin-Rechte wird so schnell wohl nichts, da C:\Program Files ja schreibgeschuetzt ist.



  • hustbaer schrieb:

    Was du beschreibst ist ja wieder ein Package-Manager - bzw. die Grundlage dafür.

    Wohlgemerkt reicht eine strukturierte Beschreibung nicht aus. Kaum ein nichttrivialer Installer kommt ohne Skript-Sektion aus; das wäre bei einem Paketmanager für Windows nicht anders, und das ist auch kein Problem.

    Die höhere Vertrauenswürdigkeit eines Paketmanagers gegenüber dem Software-von-Cnet-runterladen-und-sich-dann-über-die-Drive-by-Adware-echauffieren kommt ja nicht daher, daß keine Skripte erlaubt wären. Verwaltete Softwaredistributionssysteme stellen Integrität her entweder durch ein Vertrauensmodell (Package-Maintainer wie bei den meisten Linux-Paketmanagern) oder durch explizite Prüfung jeder Einreichung (die App-Stores). Und um Manipulationen zu verhindern, gibt es asymmetrische Kryptographie (Paketmanager benutzen oft GPG).

    Das ist, was Windows benötigt. Nicht mehr Pseudoinstaller in Batchdateien.



  • cooky451 schrieb:

    Nun ja, Installer ohne Admin-Rechte wird so schnell wohl nichts, da C:\Program Files ja schreibgeschuetzt ist.

    Och es gibt etliche Installer die ohne Admin-Rechte auskommen.
    Die installieren dann z.B. nach %APPDATA% statt %PROGRAMFILES% .



  • Nach der Erfahrung die ich mit unseren Kunden sammeln konnte: Nur Installer (idealerweise aber nicht zwangsweise unter Windows .msi) sind in Ordnung. Die wenigsten Kunden kommen auch nur mit einer einzelnen exe-Datei klar (Im Extremfall laden sie diese ins erstbeste Verzeichnis das Windows vorauswählt, und wissen anschließend nicht wo dies liegt).

    Davon abgesehen kann es durchaus auch technische Grenzen für eine einzelne exe-Datei geben (Bei uns funktioniert der Linker z.B. seit 2 Jahren nicht mehr, wenn wir statisch linken, etwa ein Jahr konnten wir mit einer lib das ganze heraus zögern, dann war damit aber auch Schicht im Schacht). Zum anderen kann es durchaus mit der Zeit sinnvoll sein noch die ein oder andere Hilfsanwendung mit auszuliefern (die gemeinsame Libs nutzt, daher ist statisch linken auch nicht unbedingt sinnvoll, selbst solange es funktioniert).

    Und Kunden erwarten Installer, selbst für eine einzelne exe. Sie erwarten das sich ein Programm so verhält, wie die überwiegende Anzahl aller anderen Programme.



  • audacia schrieb:

    Das ist, was Windows benötigt.

    Ne, Windows eignet sich ueberhaupt nicht fuer einzelne Pruefungen oder Package-Maintainer. Vielleicht als Zusatzleistung, aber prinzipiell gibt es dafuer einfach zu viel Software die nur von wenigen Leuten genutzt wird. Genau deshalb will man Installer die nicht ausfuehrbar sind, da kann Windows den Benutzer naemlich genau danach fragen was er erlauben will, ohne dass sich das jemals ein Mensch angeguckt haben muss.

    hustbaer schrieb:

    Och es gibt etliche Installer die ohne Admin-Rechte auskommen.
    Die installieren dann z.B. nach %APPDATA% statt %PROGRAMFILES%.

    Ist eine interessante Methode, aber dann kannst du halt wiederum nur begrenzte Aenderungen am System machen - was man ja erlauben will, ironischerweise. Das Problem ist ja nicht dass Installer Admin-Rechte brauchen an sich, sondern dass man 1. den Installer ausfuehren muss bevor man das Programm in irgendeiner Weise benutzen/testen kann, und dass man 2. nicht sonderlich gut nachvollziehen kann was der Installer macht.

    asc schrieb:

    Und Kunden erwarten Installer, selbst für eine einzelne exe. Sie erwarten das sich ein Programm so verhält, wie die überwiegende Anzahl aller anderen Programme.

    Das mag durchaus sein, aber Kunden erwarten normalerweise halt die gewohnte, nicht die bessere Loesung. 😉



  • cooky451 schrieb:

    asc schrieb:

    Und Kunden erwarten Installer, selbst für eine einzelne exe. Sie erwarten das sich ein Programm so verhält, wie die überwiegende Anzahl aller anderen Programme.

    Das mag durchaus sein, aber Kunden erwarten normalerweise halt die gewohnte, nicht die bessere Loesung. 😉

    Die bessere technische Lösung mag aus deiner Sicht eine einzelne exe sein, ich behaupte aber das du mit dieser Ansicht eher der kleineren Fraktion angehörst. Davon abgesehen kannst du noch soviel diskutieren, für ein Unternehmen ist die bessere Lösung immer die, die von Kunden präferiert wird (meiner Meinung hier zudem die technisch sauberere).



  • @cooky451
    Auf anderen Systemen gibt es auch viel Software die nur von wenig Leuten benutzt wird.
    Package Manager (für das was die meisten Leute brauchen) und Installer schliessen sich ja nicht gegenseitig aus.
    Bzw. kann man sogar bei Zeugs was nur von wenigen Leuten benutzt wird ein Package machen. Das ist dann bloss nicht in der Standard-Liste -- aber wenn es der User runterlädt kann er es genau so über den Package-Manager installieren wie andere Programme auch.
    Und jeder der eine eigene Liste verwaltet kann es da mit reinnehmen oder eben auch nicht.

    Ich sehe da kein Problem.

    cooky451 schrieb:

    hustbaer schrieb:

    Och es gibt etliche Installer die ohne Admin-Rechte auskommen.
    Die installieren dann z.B. nach %APPDATA% statt %PROGRAMFILES%.

    Ist eine interessante Methode, aber dann kannst du halt wiederum nur begrenzte Aenderungen am System machen - was man ja erlauben will, ironischerweise.

    Was z.B. wäre da deiner Meinung nach ein Problem? Also Änderungen die man erlauben will für die man Admin-Rechte braucht. Zähl mal auf.



  • audacia schrieb:

    Was wirklich vonnöten wäre, wäre ein gescheiter, einheitlicher Paketmanager für Windows. Oder Desktop-Anwendungen im Store

    Et voilà 🙂



  • Dann wäre aber ganz wichtig: Store verwenden können ohne sch*** Microsoft-Account.



  • hustbaer schrieb:

    Auf anderen Systemen gibt es auch viel Software die nur von wenig Leuten benutzt wird.

    Die kommt dann aber - lustigerweise - ohne Installer, jedenfalls ist das meine Erfahrung mit Linux. Eben gerade weil sie an technisch versiertere Nutzer gerichtet ist. Das ist bei Windows aber nicht so, da gibt es sehr viele "normale"-Nutzer die sehr viel kleine Software nutzen. Heisst dass ein Paket-Manager bei dem dann nur bestimmte Programme einzeln zugelassen werden nur einen kleinen Teil des Problems loest.

    hustbaer schrieb:

    Package Manager (für das was die meisten Leute brauchen) und Installer schliessen sich ja nicht gegenseitig aus.

    Aber ein Paket-Manager der nur 50% der Software haelt die man verwendet, und dann wahrscheinlich auch noch gerade die Software die eh keine Probleme gemacht hat, bringt halt nicht viel.

    hustbaer schrieb:

    Bzw. kann man sogar bei Zeugs was nur von wenigen Leuten benutzt wird ein Package machen. Das ist dann bloss nicht in der Standard-Liste -- aber wenn es der User runterlädt kann er es genau so über den Package-Manager installieren wie andere Programme auch.

    Aber was soll das bringen wenn die Package-Installation wieder einen Installer ausfuehrt den niemand fuer einen getestet hat, ausser dass man hinterher einen nutzlosen Eintrag in einer Liste hat? Das ist doch dann kaum ein Unterschied zu dem was Windows momentan schon bietet.

    Ich sehe hier offen gesagt auch gar nicht das Gegenargument. Dass ein Package-Format das einfach definiert welche Aenderungen am System gemacht werden sollen, welches dann von Windows gelesen und verarbeitet werden kann, wobei Windows dem User dann schoen eine Liste mit allen Aenderungen vorlegen kann, und das eventuell sogar nur zu Teilen ausgefuehrt werden kann (zB. nur Dateien kopieren, aber keine Dateitypzuordnung etc.), einem ausfuehrbaren Installer/Package in absolut jeder Hinsicht ueberlegen ist, scheint mir irgendwie mehr als offensichtlich.



  • Nur so nebenbei, IIRC gibt es auf OS X, was ja recht verbreitet ist, keine Installer. Man zieht den heruntergeladenenen Ordner in den Programmordner. Ist aber einfach, da OS X einem die beiden Ordner direkt geöffnet bereitstellt. Sollte ich mich richtig erinnern wäre dass ja praktisch ein PoC, da die Nutzer damit offensichtlich gut zurechtkommen?



  • cooky451 schrieb:

    hustbaer schrieb:

    Bzw. kann man sogar bei Zeugs was nur von wenigen Leuten benutzt wird ein Package machen. Das ist dann bloss nicht in der Standard-Liste -- aber wenn es der User runterlädt kann er es genau so über den Package-Manager installieren wie andere Programme auch.

    Aber was soll das bringen wenn die Package-Installation wieder einen Installer ausfuehrt den niemand fuer einen getestet hat, ausser dass man hinterher einen nutzlosen Eintrag in einer Liste hat?

    So ein Package Manager würde auf Windows genau so viel bringen wie die Package Manager diverser Linux-Distros.
    Nämlich dass der User klicki-klicki macht und ne Liste von "abgesegneten" Programmen bekommt, und mit nochmal klicki-klicki das Zeug automatisch runtergeladen und installiert wird. Irre praktisch.
    Und etwas anderes zu installieren ist mehr Aufwand und der nette Onkel der einem den PC eingerichtet hat hat auch gesagt man soll es bleiben lassen => viele User werden es sich 3x überlegen ob sie das machen. Bzw. einfach zu faul dafür sein.

    Um es mit deinen Worten zu sagen: dass das VERDAMMT VIEL WERT wäre scheint mir irgendwie mehr als offensichtlich.

    Davon abgesehen akzeptiere ich schon deine Prämisse nicht. Guck dir an wie viele kleine Mistgurken-Apps für Android verfügbar sind. Und selbst wenn der Maintainer keine Lust hat tonnenweise Anwendungen "for free" zu evaluieren kann man immer noch einen "peer reviewed" Bereich machen. Wenn da einer Crapware reinstellt ist die von der Community so schnell als "böse" geflaggt, so schnell kannst du gar nicht gucken. Heisst: ich glaube nicht an das angebliche Problem mit den vielen vielen von wenigen verwendeten Programmen die dann fehlen.

    cooky451 schrieb:

    Heisst dass ein Paket-Manager bei dem dann nur bestimmte Programme einzeln zugelassen werden nur einen kleinen Teil des Problems loest.

    Ja. Und? Willst du die totale Lösung (tm)? Dann wirst du leider ewig warten müssen.

    cooky451 schrieb:

    Ich sehe hier offen gesagt auch gar nicht das Gegenargument. Dass ein Package-Format das einfach definiert welche Aenderungen am System gemacht werden sollen, welches dann von Windows gelesen und verarbeitet werden kann, wobei Windows dem User dann schoen eine Liste mit allen Aenderungen vorlegen kann, und das eventuell sogar nur zu Teilen ausgefuehrt werden kann (zB. nur Dateien kopieren, aber keine Dateitypzuordnung etc.), einem ausfuehrbaren Installer/Package in absolut jeder Hinsicht ueberlegen ist, scheint mir irgendwie mehr als offensichtlich.

    Na das Gegenargument ist: Windows bietet im Moment so ein System einfach nicht an. Und bis sich das ändert wollen die Leute einfach ihre Installer haben. Ist das denn so schwer zu verstehen?



  • hustbaer schrieb:

    Ja. Und? Willst du die totale Lösung (tm)? Dann wirst du leider ewig warten müssen.

    Ja ne, die Totale Lösung™ habe ich ja unten schon beschrieben, sollte auch nicht uebermaessig aufwendig sein das zu implementieren. Mit Windows 12 spaetestens wird das dann auch kommen. 😉

    hustbaer schrieb:

    Na das Gegenargument ist: Windows bietet im Moment so ein System einfach nicht an. Und bis sich das ändert wollen die Leute einfach ihre Installer haben. Ist das denn so schwer zu verstehen?

    👎 Ist doch eine komplett andere Diskussion. Es gab hier von Anfang an 2 Diskussionsstraenge:
    1. Was ist aktuell am besten (Executable-Installer der Programmdateien kopiert vs Archiv mit Programmdateien + optionalem Installer fuer Systemaenderungen, welcher optimalerweise ein Script ist) und
    2. Was waere am besten, wenn Microsoft sich mal entscheiden wuerde etwas an der aktuellen Situation zu aendern (Package-Manager der Executable-Installer verwaltet, die reviewed sind entweder von Microsoft selbst oder der Community vs Package-Manager der nicht ueber Executables funktioniert.)
    Jetzt vom zweiten Strang einfach zum ersten zu wechseln und dann das Argument zu bringen "gibt's halt noch nicht", was soll man dazu schreiben?



  • @cooky451
    Ich glaube dass du den Aufwand die Totale Lösung™ zu implementieren -- für Windows, für Desktop Applikationen die auf Win32 aufbauen, ausgehend von der aktuellen Situation/der aktuellen Desktop-Applikations-Landschaft -- falsch einschätzt.

    Und daher meine ich dass "lieber gleich perfekt machen" nicht praktikabel ist. Daher ist mein Gegenargument: gibt's noch nicht. Und wird's vermutlich auch so schnell nicht geben.
    Ein Package-Manager der z.B. einfach .msi Pakete unterstützt und sich auf Reviews verlässt wäre dagegen vermutlich relativ schnell zu bauen.

    Und was mich auch etwas stört sind absolute Aussagen wie

    Ne, Windows eignet sich ueberhaupt nicht fuer einzelne Pruefungen oder Package-Maintainer. Vielleicht als Zusatzleistung, aber prinzipiell gibt es dafuer einfach zu viel Software die nur von wenigen Leuten genutzt wird. Genau deshalb will man Installer die nicht ausfuehrbar sind, da kann Windows den Benutzer naemlich genau danach fragen was er erlauben will, ohne dass sich das jemals ein Mensch angeguckt haben muss.

    Da kann man eigentlich nur mehr sagen: Danke Cooky dass du uns deine göttliche Weisheit kundgetan hast!

    ps: Die zwei Diskussionsstränge gab es ganz sicher nicht von Anfang an. Lies dir nochmal durch wie sich das ganze hier entwickelt hat. Und wer da wichtige Teile von Aussagen von wem ignoriert oder umgedeutet hat um vermeintliche Widersprüche zu erzeugen.



  • hustbaer schrieb:

    Da kann man eigentlich nur mehr sagen: Danke Cooky dass du uns deine göttliche Weisheit kundgetan hast!

    Kein Problem, immer gerne.

    hustbaer schrieb:

    ps: Die zwei Diskussionsstränge gab es ganz sicher nicht von Anfang an.

    Ne, aber seit 4/5 Seiten. Und zur ersten Diskussion: Die habe ich irgendwie aufgegeben, nachdem als Hauptargumente "Nutzer wollen/koennen sich nicht umgewoehnen" (Was ich bezweifle*, aber prinzipiell habe ich da nicht genug Daten.) und "Ich persoenlich finde es so wie es ist besser" (Was ich auch bezweifle** :p, aber nun gut damit muss ich mich wohl abfinden.) kamen, die nicht wirklich irgendwo hin gefuehrt haben.

    * Was ich damit meine ist dass ich bezweifel dass sie sich nicht prinzipiell umgewoehnen koennen, und es, nachdem sie sich daran gewoehnt haben, eventuell sogar besser finden wuerden. Ich bezweifel nicht, dass sie sich momentan nicht umgewoehnen wollen. Und Auftragsarbeiten sind nicht der richtige Platz um so eine Umgewoehnung zu starten, da macht man einfach was der Auftraggeber moechte, das ist mir schon bewusst. In dieser Richtung wollte ich die Diskussion auch gar nicht verfolgen, aber es wurde halt als Argument gebracht.
    ** Was ich damit meine ist: Wenn ein Grossteil der Softwareanbieter es auf die von mir beschriebene Weise machen wuerden und alle daran gewoehnt waeren, und diese Anbieter dann auf Installer umschwenken wuerden, gaebe es IMO einen groessen Community-Backlash als umgekehrt.


  • Mod

    Öl ins Feuer gieß : Was sagt ihr bezüglich dieser Thematik zu Steam (und seinen Konkurrenten)? Das ist quasi ein Paketmanager, bloß mit beschränkter Auswahl. Und einen großen Teil seiner Beliebtheit hat die Plattform sicherlich der Tatsache zu verdanken, dass man sich nicht mehr um Installation und Updates für die dort erhältliche Software kümmern braucht.



  • cooky451 schrieb:

    hustbaer schrieb:

    Da kann man eigentlich nur mehr sagen: Danke Cooky dass du uns deine göttliche Weisheit kundgetan hast!

    Kein Problem, immer gerne.

    Das Problem ist bloss dass du nicht Recht hast. Du hast deine Meinung. Die teilen bloss lange nicht alle.

    cooky451 schrieb:

    hustbaer schrieb:

    ps: Die zwei Diskussionsstränge gab es ganz sicher nicht von Anfang an.

    Ne, aber seit 4/5 Seiten.

    Ging eher gegen Ende von Seite 3 los. Jetzt sind wir auf Seite 5. Du zählst komisch.

    cooky451 schrieb:

    Und zur ersten Diskussion: Die habe ich irgendwie aufgegeben, nachdem als Hauptargumente "Nutzer wollen/koennen sich nicht umgewoehnen" (Was ich bezweifle, aber prinzipiell habe ich da nicht genug Daten.) und "Ich persoenlich finde es so wie es ist besser" (Was ich auch bezweifle* :p, aber nun gut damit muss ich mich wohl abfinden.) kamen, die nicht wirklich irgendwo hin gefuehrt haben.

    Nö, du hast eine neue Diskussion erfunden, als wir dir Batchfiles als Installer-Ersatz nicht durchgehen lassen wollten.

    cooky451 schrieb:

    * Was ich damit meine ist: Wenn ein Grossteil der Softwareanbieter es auf die von mir beschriebene Weise machen wuerden und alle daran gewoehnt waeren, und diese Anbieter dann auf Installer umschwenken wuerden, gaebe es IMO einen groessen Community-Backlash als umgekehrt.

    Jetzt haste mich verloren. Meinst du jetzt wieder die von dir vorgeschlagene Variante die aktuell nicht möglich ist, weil Windows keinen "interpretierenden+prüfenden Installer" anbietet? Oder den total nicht praktikablen Vorschlag mit den Batchfiles?
    Ich check echt nicht was du willst.
    Ausser den Standpunkt zu vertreten dass das totale .inf File Format zu entwickeln kein Problem wäre. Wo ich halt gänzlich anderer Meinung bin.



  • @SeppJ
    Ich kann leider kein qualifiziertes Kommentar zu Steam geben, da ich Steam weder nutze, noch weiss wie viel grosser Bruder oder unnützer Müll in Steam drinnen ist (damit meine ich das System selbst, nicht die Spiele die man darüber beziehen kann).

    Wenn es
    ... gut funktioniert,
    ... mein System nicht verseucht (=blöde "Hilfstreiber" zum verhindern von was weiss ich was installiert),
    ... mein System nicht zumüllt/ausbremst (Services die mir Speicher und Rechenzeit klauen),
    ... keine Daten erfasst & reportet die es nichts angehen,
    ... dann hab ich da kein Problem damit. Bzw. sehe es eher als positiv.
    Klick-klick, warten, spielen, Fun-Fun-Fun. Ist doch schön. 🙂
    Bloss die Wenns kann ich halt gar nicht einschätzen.
    Aber du vermutlich - wie siehst du das?



  • Beitrag jetzt mit 400% extra Diskussionsmarkern gegen allgemeine Verwirrung!

    hustbaer schrieb:

    Das Problem ist bloss dass du nicht Recht hast. Du hast deine Meinung. Die teilen bloss lange nicht alle.

    (D-2) Du (und vermutlich alle anderen hier) teilst meine Meinung ja zumindest insofern, als dass du es auch als bessere Loesung ansiehst. Du denkst nur nicht dass es praktikabel ist.

    hustbaer schrieb:

    Ging eher gegen Ende von Seite 3 los. Jetzt sind wir auf Seite 5. Du zählst komisch.

    audacia schrieb:

    Was wirklich vonnöten wäre, wäre ein gescheiter, einheitlicher Paketmanager für Windows. Oder Desktop-Anwendungen im Store, wenn der hinreichend automatisierbar ist. Aber einstweilen sind Installer die beste Lösung.

    (D-Null) Das steht auf Seite 2, von da habe ich gezaehlt. Die genaue Position scheint mir aber auch recht unwichtig.

    hustbaer schrieb:

    Nö, du hast eine neue Diskussion erfunden, als wir dir Batchfiles als Installer-Ersatz nicht durchgehen lassen wollten.

    (D-Null) Der Quote oben kam von audacia, und das bevor ich jemals etwas von Paketmanagern geschrieben habe.

    hustbaer schrieb:

    Jetzt haste mich verloren. Meinst du jetzt wieder die von dir vorgeschlagene Variante die aktuell nicht möglich ist, weil Windows keinen "interpretierenden+prüfenden Installer" anbietet? Oder den total nicht praktikablen Vorschlag mit den Batchfiles?

    (D-1) Den total nicht praktikablen Vorschlag mit den Batchfiles. Wobei ich mir gerade auch nicht so ganz sicher bin, ob dir klar ist was ich damit meine, da ich das am Anfang der Diskussion wie ich eingestehen muss leider nicht sonderlich gut auf den Punkt gebracht habe. (Danach eigentlich schon.) Ich will nicht ".bat-Installer", sondern dass die Programmdateien als Archiv ausgeliefert werden, in welchem sich dann zusaetzlich ein Script (was auch nicht unbedingt .bat sein muss) oder, wenn es sein muss, eine Executable befindet, die Systemaenderungen wie Registry-Eintraege, Dateiformatzuordnungen, Shell-Erweiterungen etc. macht. Ein Script waere schoener als eine Executable weil man eben rein gucken kann, aber das ist nicht der Hauptpunkt.

    SeppJ schrieb:

    Öl ins Feuer gieß : Was sagt ihr bezüglich dieser Thematik zu Steam (und seinen Konkurrenten)? Das ist quasi ein Paketmanager, bloß mit beschränkter Auswahl. Und einen großen Teil seiner Beliebtheit hat die Plattform sicherlich der Tatsache zu verdanken, dass man sich nicht mehr um Installation und Updates für die dort erhältliche Software kümmern braucht.

    Steam ist halt mehr als ein Paketmanager, da gibt es DRM gleich gratis oben drauf, weshalb ich es eher als zweischneidiges Schwert sehe. Ich muss allerdings auch zugeben, dass ich mit meinem mittlerweile 8 Jahre alten Steam-Account noch nie Probleme hatte. (GabeN? sei Dank, bei dem was man so vom Steam Support hoert.)


Anmelden zum Antworten