---
name: "alpm-split-package"
section: "7"
platform: "linux"
package: "alpm-docs"
version: "0.13.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/alpm-split-package"
---

# alpm-split-package(7)

an ALPM based package that is built along other packages from the same package sources.

## NAME

split package - an ALPM based package that is built along other packages from the same package sources.

## DESCRIPTION

Split packages refer to two or more ALPM based packages that are built from the same package sources. These types of packages can be created for arbitrary reasons, e.g.:

- •

  split different types of functionality (e.g. one package providing the graphical user interface and another the terminal user interface of a project)

- •

  split out specific documentation (e.g. developer documentation is not useful for all users)

- •

  various functionalities of a project are optional, are e.g. provided as plugins and can be enabled by installing additional split packages

Split packages built from the same package sources share some **PKGINFO** package metadata (i.e. **pkgbase**, **pkgver**, **makedepends**), while other metadata may be set specifically per individual split package.

All **PKGINFOv2** files for split packages define one **xdata** value of `pkgtype=split`, indicating that the metadata describes a split package.

Split packages are handled like any other ALPM based package by a package manager and require their various package relations upon installation.

## EXAMPLES

The following **PKGBUILD** example defines two split packages, that share `example-split` as (virtual - without any actual package of that name) **pkgbase**:

```
pkgbase=example-split
pkgname=(example-a example-b)
pkgver=0.1.0
pkgrel=1
pkgdesc="A split package example"
arch=(any)
url="https://archlinux.org"
license=(GPL-3.0-or-later)
makedepends=(
  meson
)
depends=(
  bash
  gcc-libs
)
package_example-a(){
  pkgdesc+=" - A"
  license+=(LGPL-2.1-or-later)
  depends+=(bash-completions)
}
package_example-b(){
  pkgdesc+=" - B"
  depends=(zsh)
}
```

## SEE ALSO

[**PKGBUILD**(5)](/PKGBUILD/5.md), [**PKGINFO**(5)](/PKGINFO/5.md), [**SRCINFO**(5)](/SRCINFO/5.md), [**alpm-package-name**(7)](/alpm-package-name/7.md), [**alpm-package-relation**(7)](/alpm-package-relation/7.md)
