Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Package format
A type of archive containing computer programs and additional metadata needed by package managers

Package format is a type of archive containing computer programs and additional metadata needed by package managers; an instance of this type of archive is called a package. While the archive file format itself may be unchanged, package formats carry additional metadata, such as a manifest file or certain directory layouts. Packages may contain either source code or executable files.

Packages may be converted from one type to another with software such as Alien.

We don't have any images related to Package format yet.
We don't have any YouTube videos related to Package format yet.
We don't have any PDF documents related to Package format yet.
We don't have any Books related to Package format yet.
We don't have any archived web articles related to Package format yet.

Software supply chain and security

Packages are an important component in managing the security and integrity of the software supply chain. Packages containing executables and configuration can be digitally signed to establish the integrity of running software and protect against tampering.2

Package formats that support code signing include .deb (Debian), .msi (Microsoft Windows), .apk (Android) and .ipa (IOS, IPadOS).

Common formats

Specialized formats

FormatConsumed by
AIRAdobe AIR
BottleHomebrew

BSD-based formats

FormatConsumed by
.ipaIOS, IPadOS
Ports (BSD)pkgsrc, FreeBSD, OpenBSD3
PKGmacOS, iOS, PlayStation 3, Solaris, SunOS, UNIX System V, Symbian, BeOS, Apple Newton

Linux-based formats

FormatConsumed by
AABAndroid
APK (Alpine)Alpine Linux4
APK (Android)Android
AppImageLinux distribution-agnostic
DebDebian and its derivatives, such as Raspberry Pi OS, Kali Linux, Ubuntu, and Linux Mint5
ebuildGentoo Linux6
eopkgSolus7
NixpkgNix, NixOS, Home Manager
PortageGentoo Linux, ChromeOS8
FlatpakLinux distribution-agnostic
.app, .hapHarmonyOS, OpenHarmony, Oniro OS and Linux based Unity Operating System
PISIPardus
.pkg.tar.zstArch Linux
PUP and PETPuppy Linux (PUP format is deprecated since version 3.0)
RPMRed Hat Enterprise Linux, Fedora, derivatives such as CentOS,9 and SUSE Linux Enterprise, openSUSE
SnapLinux distribution-agnostic, mainly developed for Ubuntu

Windows formats

FormatConsumed by
APPX and APPXBundleWindows 8 and later, Windows Phone10
Windows Installer package / MSIWindows Installer on Microsoft Windows

Generic formats

Arch Linux's Pacman11 and Slackware12 use 'tar' archives with generic naming but specific internal structures.

References

  1. Justin Angelo Cappos, Stork: Secure Package Management for VM Environments[permanent dead link], ProQuest, 2008, p. 128; https://books.google.com/books?id=77Ejx2DmxzgC&pg=PA128

  2. Cooper, David; Feldman, Larry; Witte, Gregory (May 23, 2018). "Protecting Software Integrity Through Code Signing". National Institute of Standards and Technology. ITL Bulletin. https://csrc.nist.gov/pubs/itlb/2018/05/protecting-software-integrity-through-code-signing/final

  3. "Ports - Working with Ports". OpenBSD.org. https://www.openbsd.org/faq/ports/ports.html

  4. "Alpine package format - Alpine Linux". wiki.alpinelinux.org. Retrieved May 19, 2016. https://wiki.alpinelinux.org/wiki/Alpine_package_format

  5. "InstallingSoftware - Community Ubuntu Documentation". Help.ubuntu.com. Retrieved April 24, 2013. https://help.ubuntu.com/community/InstallingSoftware

  6. "ebuild". Retrieved July 29, 2015. https://wiki.gentoo.org/wiki/Ebuild

  7. "Basics to Package Management". Archived from the original on August 6, 2020. Retrieved May 1, 2020. https://web.archive.org/web/20200806030049/https://getsol.us/articles/package-management/basics/en/

  8. "Using Portage to Manage Packages in Gentoo". linode.com. July 15, 2021. https://www.linode.com/docs/guides/portage-package-manager/

  9. "rpm - Trac". Retrieved September 29, 2014. http://rpm.org/

  10. "App packaging". Archived from the original on October 8, 2014. Retrieved September 29, 2014. https://web.archive.org/web/20141008232922/http://msdn.microsoft.com/en-us/library/windows/apps/bg182885.aspx

  11. "makepkg.conf(5) Manual Page". https://www.archlinux.org/pacman/makepkg.conf.5.html

  12. "The Slackware Linux Project: Configuration Help". Retrieved September 29, 2014. http://www.slackware.com/config/packages.php