Wofür steht Alpines APK?

10

Alpine Linux verwendet es apkals Paketmanager und seine Installationsdateien sind .apk... Genau wie Android-Dateien.

Sind die in irgendeiner Weise verwandt? Wenn ja, wie?
Wenn nicht, wofür steht APK ( Alpine PacKage? ) Und warum wählen sie denselben Namen für ihren Paketmanager, da dies verwirrend klingen kann? Es gibt keine Informationen zum Namen des Managers im Internet.

igorsantos07
quelle
Die akzeptierte Antwort lässt mich denken, dass diese Frage eher für Superuser geeignet ist ... Sollte sie migriert werden?
igorsantos07

Antworten:

7

Die Android-Anwendungspaketdatei .apk ist ein Softwarearchiv, das Programmcode, Ressourcen, Assets, Zertifikate und Manifestdateien enthält. Das Archivformat basiert auf JAR (Java ARchive), das auf dem ZIP-Archivformat basiert. (MIME-Typ : application/vnd.android.package-archive.)

Ebenso sind Alpine Linux-Paketverwaltungsdateien .apk digital signierte tar.gzArchive, die Programme, Konfigurationsdateien und Abhängigkeitsmetadaten enthalten. Das Repository ist nur ein Ordner, der diese Dateien und eine Indexdatei enthält. Diese .apkDateien werden oft als "A-Packs" bezeichnet , aber ich bin mir nicht sicher, ob die Erweiterung von diesem Spitznamen stammt oder umgekehrt - der Ursprung ist ziemlich irrelevant.

Diese beiden Verwendungen hängen in keiner Weise zusammen und die Pakete sind nicht miteinander kompatibel.

Zusätzlich zu diesen .apkkann sich auch eine Datei beziehen

  • Aktiver Tutor (Projekt) von 4C Media, Inc.
  • GameSpy Arcade (Service) von IGN Entertainment, Inc.
  • Train Simulator (Packaged Activity) der Microsoft Corporation

Es ist nicht ungewöhnlich, dass verschiedene Programme dieselben Dateierweiterungen haben. Während Dateierweiterungen ursprünglich generisch und universell sein sollten, wie .txtfür Klartext und .gfxGrafiken (und später .csvfür durch Kommas getrennte Variablen), waren sie bald eng mit bestimmten Programmen verbunden.

Man könnte denken, dass es für jedes Programm viele verschiedene drei Zeichenkombinationen von AZ und 0-9 gibt, die eine eigene Erweiterung haben, da 36 ^ 3 zu 46.656 Variationen führt. Da es jedoch keine Berechtigung zum Zuweisen von Erweiterungen gibt, verwenden Programmierer in der Regel Erweiterungen, die leicht mit dem Namen ihres Programms verknüpft werden können, z. B. .wksfür Microsoft Works und .wpdfür WordPerfect-Dokumente. Daher haben wir bereits Konflikte auch in weit verbreiteten Dateiformaten:

  • .rpm: RealPlayer-Mediendatei / RedHat Package Manager-Paket / RunPaint Multicolor Graphic
  • .qif: QuickTime Image / Quicken Interchange Format / DESQview komprimiertes Schriftarchiv
  • .gba: GrabIt-Skripte / Game Boy Advance ROM-Image
  • In vielen Videodateiformaten gibt die Erweiterung nur Auskunft über den Container. Ein Dateityp kann jedoch unterschiedliche Komprimierungsarten enthalten, und dieselbe Komprimierung kann für verschiedene Dateitypen verwendet werden.

Abgesehen von Verwirrung führt dies nur dann zu tatsächlichen Problemen, wenn ein System eine Dateierweiterung zuordnet, die mit einem bestimmten Programm wie Windows Explorer geöffnet werden soll. Es gibt andere Methoden als Erweiterungen zur Unterscheidung von Dateitypen wie Interpreter-Direktiven (z. B. #!/bin/basham Anfang eines Unix / Linux-Skripts) oder (registrierte) MIME-Typen (siehe RFC 6838 ), eine Textzeile, die den Dateityp vor dem Senden des tatsächlichen Dateityps angibt Bitstream, wie HTTP-Header Content-Type: text/html; charset=UTF-8. Adobe PDF ist ein gutes Beispiel, da die Datei mit %PDF-1.5(PDF und Version) beginnt und angibt, dass es sich um eine PDF-Datei handelt. Sie kann XObjects enthalten , die Bitstreams anderer Dateitypen sind, z. B. /Filter/DCTDecodefür JPEG-Bilder .

Esa Jokinen
quelle
3
Super Antwort! Das erinnert mich daran, als ich meine Markdown-Dateien benennen musste, .mkddamit Nautilus sie nicht MegaDrive-ROMs nennt (wie in .md)
igorsantos07
4

Es ist ein zufälliger Zufall. Von Alpines Seite und Wiki:

Die Verpackungs- und Entwicklungssysteme von Alpine sind eine Mischung aus ArchLinux einerseits und Gentoo und FreeBSD andererseits. Unsere Dienstprogramme für Paketverwaltung und Build funktionieren ähnlich wie die von Arch. apk von apk-tools ist Alpines Paketmanager, wie Arch'spacman

Und

Softwarepakete für Alpine Linux sind digital signierte tar.gz-Archive, die Programme, Konfigurationsdateien und Abhängigkeitsmetadaten enthalten. Sie haben die Erweiterung .apk und werden oft als "A-Packs" bezeichnet.

Mikhail Khirgiy
quelle