Warum gibt es so viele Mac-Downloads, die nur eine einzige .pkg-Datei enthalten?


22

Ich habe bemerkt, dass viele Downloads ein dmg (Disk-Image) sind, das eine einzelne pkg-Datei (Installationspaket) enthält. Normalerweise scheint das pkg bereits komprimiert zu sein, da das dmg die Dateigröße nicht wesentlich verringert, wenn überhaupt.

Beispiel :

Einsparungen von 737.658 Byte oder 0,6% der ursprünglichen Dateigröße.

Gibt es einen Grund, das Paket nicht einfach zu verteilen? Ist die Einsparung von 0,6% Kompression so wichtig? Oder ist es einfach so, wie es auf dem Mac schon immer gemacht wurde?

(Ja, mir ist klar, dass 737.658 Bytes die Millionen von Downloads, die dmg erhält, summieren, aber es scheint nur immer ärgerlich, diese zusätzlichen Schritte zu haben, um ein dmg zu mounten, das Installationsprogramm auszuführen und dann das dmg zu mounten. Vielleicht a Die bessere Frage ist: "Warum erkennt Mac OS X ein dmg mit einem einzelnen Paket nicht als nur ein Paket und installiert es einfach, ohne dass das gesamte Ein- und Aushängen erforderlich ist?"


Tatsächlich sind moderne Pakete flache Dateien, keine Ordner. Es ist also nicht mehr erforderlich, sie in ein dmg zu packen, nur um eine flache Datei bereitzustellen.
mlaster

@mlaster Das scheint nicht zu stimmen. Hast du ein Beispiel?
Gerry

1
radiosilenceapp.com/downloads/Private%20Eye.pkg ist ein Beispiel, ebenso wie JavaForMacOSX10.7.pkg (obwohl Apple es immer noch als .dmg hat, wenn es zum Herunterladen bereit ist). Ich habe mehrere andere in meinem Download-Archiv, aber es ist definitiv noch nicht universell. fileListet sie als "xar archive - version 1" auf. Dann muss sichergestellt werden, dass der Webserver so konfiguriert ist, dass .pkg-Dateien nicht angezeigt, sondern heruntergeladen werden. (Ich gehe davon aus, dass einige Entwickler aus dem gleichen Grund .zip anstelle von .dmg verwenden - selbst die am schlechtesten konfigurierten Webserver und Browser können .zip-Dateien herunterladen.)
TJ Luoma

1
Aber selbst wenn wir einmal flache Dateien haben, setzen viele Entwickler .pkg-Dateien in ein .zip, weil sie darauf zählen können, dass der MIME-Typ für .zip-Dateien richtig eingestellt ist, aber nicht unbedingt für .pkg (oder .dmg) ).
TJ Luoma

Antworten:


24

Technisch gesehen ist eine .pkg- Datei keine Datei , sondern ein Ordner . Vielleicht ist es für den Download also unerlässlich, sie in einer einzigen Datei zu sammeln.


1
Ich habe es nicht einmal bemerkt, aber du hast den Nagel auf den Kopf getroffen.
Gerry

Wusste das auch nicht über ein .pkg. Zu wissen, dass alles Sinn macht. Vielen Dank!
Jim McKeeth

2
Durch das Packen in ein dmg bleiben alle erweiterten OS X-Dateiattribute und / oder Ressourcengabeln erhalten, und Sie können es von einem Nicht-OS X-Webserver aus bereitstellen. Es ist auch der Grund, warum das Paketformat aktualisiert wurde, um Flat-Dateien in neueren Versionen von OS X
Joe Block

6
Diese Antwort ist nicht ganz richtig mehr, .pkgDateien sind heutzutage mehr als ein einfacher Ordner: en.wikipedia.org/wiki/Installer_(OS_X)#Installer_package
t0r0X

1
@wisbucky: das muss aktueller sein als 2011, wie von t0r0X vermerkt.
GEdgar,

14

Daten auf dem DMG-Image können mit dem Festplatten-Dienstprogramm auf Integrität überprüft werden. Sie können festlegen, dass der Benutzer der Lizenz zustimmen muss, bevor er dmg mounten kann. Es kann für Änderungen gesperrt werden. Sie können auf einfache Weise versteckte Dateien und Ordner in DMG hinzufügen. Sie können ein Hintergrundbild erstellen. Sie können sicherstellen, dass während der Übertragung keine Daten durch nicht metadatensensitive Dateisysteme wie FAT entfernt werden.

Viele Gründe eigentlich .


1
Alle coolen Funktionen einer DMG, aber sie fügen einer PKG nichts hinzu, es sei denn, sie können ihre eigene Integrität nicht ernsthaft überprüfen.
Jim McKeeth

6

Ein möglicher Grund könnte sein, dass Safari DMG-Dateien standardmäßig automatisch bereitstellt und ein Finder-Fenster mit dem Inhalt angezeigt wird. Der DMG-Ordner könnte wiederum beispielsweise mit einem Hintergrundbild gestaltet werden. Ich gehe davon aus, dass dies als benutzerfreundlicher angesehen werden könnte, als in Ihrem Downloads-Ordner nach einem Installationsprogramm suchen zu müssen, aber ich stimme zu, dass es ziemlich umstritten ist.

Ein weiterer Grund wäre die Möglichkeit, auch andere unterstützende Dateien zusammenzufassen, beispielsweise Dokumentationsdateien oder sogar sekundäre Installationsprogramme.

Zunächst ist dies jedoch keine übliche Distribution. Die meisten Apps werden als eigenständige .app-Ordner in einer DMG-Datei verteilt (wenn nicht jetzt über den App Store). Ihr Beispiel scheint für mich eher eine Ausnahme zu sein, obwohl es bei bestimmten Vertriebskanälen vielleicht häufiger vorkommt? Persönlich würde ich nicht weiter darauf eingehen.


1
+ 1 für den letzten Absatz - Ich dachte, aufgrund einiger Trojaner .dmg s werden (definitiv nicht) automatisch eingehängt
user151019

@Gerry, Automatisch montiert? Was für eine verrückte Kulisse ist das?
Pacerier

@ Gerry, widerspricht dies nicht "..mit der Lizenz einverstanden .." in apple.stackexchange.com/a/30698/6533 ?
Pacerier

1

Ein weiterer Grund ist, dass Sie keine .pkg-Dateien direkt von Netzwerk-Volumes ausführen können, aber Sie können eine .dmg von einem Netzwerk-Volume ausführen und dann das Paket starten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.