Alpine的APK代表什么?

Alpine Linux使用apk作为它的包pipe理器,它的安装文件是.apk …就像Android文件一样。

这些有什么关系? 如果是的话,怎么样?
如果没有,APK代表什么( Alpine PacKage? ),以及为什么他们为包pipe理者select了相同的名字,因为这可能听起来很混乱? networking上没有关于经理姓名的信息。

Android应用程序包 .apk文件是包含程序的代码,资源,资产,证书和清单文件的软件存档。 归档格式基于基于ZIP归档格式的JAR(Java归档)。 (MIMEtypes: application/vnd.android.package-archive 。)

同样, Alpine Linux软件包pipe理 .apk文件是包含程序,configuration文件和依赖性元数据的数字签名tar.gz文件。 它的存储库只是一个包含这些文件和一个索引文件的文件夹。 这些.apk文件通常被称为“a-packs” ,但是我不确定扩展名是来自这个昵称,反之亦然 – 起源是非常不相关的。

这两种用法在任何方面都没有关系,而且这些软件包是不兼容的。

除了这些, .apk文件也可以引用

  • 积极导师(项目)由4C媒体公司
  • IGN娱乐公司的GameSpy Arcade(服务)
  • 培训模拟器(打包活动)由微软公司

不同的程序具有相同的文件扩展名并不罕见。 虽然文件扩展名最初是普通的,通用的,如纯文本的.txt和graphics的.gfx (以及稍后的逗号分隔variables的.csv ),它们很快就与某些程序密切相关。

人们可以认为,AZ和0-9有很多不同的三个字符组合,每个程序都有其自己的扩展名,其中36 ^ 3个结果为46656个变体。 但是,由于没有任何权限分配扩展名,程序员倾向于使用扩展名,这些扩展名可以轻松地与其程序的名称相关联,例如Microsoft Works的.wks和WordPerfect文档的.wpd 。 因此,即使在广泛使用的文件格式中,我们也有冲突:

  • .rpm :RealPlayer媒体文件/ RedHat包pipe理器包/ RunPaint多色graphics
  • .qif :QuickTime图像/ Quicken交换格式/ DESQview压缩字体存档
  • .gba :GrabIt脚本/ Game Boy Advance ROM映像
  • 在许多video文件格式中,扩展名只能说明容器,但文件types可以包含不同types的压缩,并且可以在不同的文件types中使用相同的压缩。

除了混淆之外,当系统将文件扩展名与某个程序(如Windows资源pipe理器)关联时,这只会导致实际问题。 除扩展以外,还有其他一些方法来区分类似解释器指令 (如Unix / Linux脚本开头的#!/bin/bash )或(注册的) MIMEtypes (参见RFC 6838 )的文件types,发送实际比特stream之前的文件types,如HTTP头Content-Type: text/html; charset=UTF-8 Content-Type: text/html; charset=UTF-8 。 Adobe PDF就是一个很好的例子,因为该文件以%PDF-1.5 (PDF和版本)开头,指出这是一个PDF文件,它可以包含其他文件types的比特stream的XObjects ,如JPEG图像的/Filter/DCTDecode

这是偶然的巧合。 来自Alpine的网站和wiki:

另一方面,Alpine的打包和开发系统是ArchLinux与Gentoo和FreeBSD的混合体。 我们的软件包pipe理和构build工具与Arch的工作非常相似。 apk的工具是Alpine的软件包pipe理器,就像Arch的pacman

Alpine Linux的软件包是经过数字签名的tar.gz归档文件,包含程序,configuration文件和依赖关系元数据。 他们的扩展名为.apk,通常被称为“a-packs”。