---
name: "xapt"
section: "1"
platform: "linux"
package: "xapt"
version: "2.2.19"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/xapt"
---

# xapt(1)

convert Debian packages to cross versions on-the-fly

## NAME

xapt - convert Debian packages to cross versions on-the-fly

## Synopsis

```
 $ sudo xapt foo bar baz
 $ sudo xapt -M http://ftp.fr.debian.org/debian/ foo bar baz

 $ sudo xapt --clean-cache
```

## Description

Downloading the Packages files can take a reasonable amount of time, so to grip a number of packages, either specify all packages in one command or use the `"--keep-cache"` option for each run and use the `"--clean-cache"` option at the end.

Note also that, in common with the rest of Emdebian processing, Install-Recommends is always turned off, so if you need a package that is only recommended by packages in the list given to `"xapt"`, that package will need to be added to the list explicitly.

## Limitations

Installing any package from repositories outside the normal apt sources (especially if those packages are subsequently modified by dpkg-cross) will list those packages as "local or obsolete" in package managers. Converted packages cannot be upgraded without repeating the call to  `"xapt"` because `"apt-get"` does not know about the renaming of the package by `"dpkg-cross"` when downloading the packages. This can cause problems if dependencies of such packages need to be upgraded. It is possible that the main system `"apt"` will try to remove these local packages in order to proceed with the main system upgrade.

The best option is to use `"xapt"` inside a disposable chroot.

## Checking existing cross packages

`"xapt"`, by default, will not check to see if a particular cross package is already installed at a newer or equal version which can cause cross packages to be downgraded. To turn on this check, either use the `"--check-newer"` option or set `"checknewer"` to true in the vendor configuration file in */etc/xapt.d/*.

## Using SecureApt

If your apt sources include a repository which does not use SecureApt, disable authentication in the vendor configuration file in */etc/xapt.d/* Set noauth=true.

## Multiarch behaviour

By default \<dpkg-cross\> does nothing with packages from Debian which already support Multi-Arch - the package is simply copied to the current work directory, if it does not already exist. Any package containing a Multi-Arch:  field in DEBIAN/control is skipped in this manner.

`"xapt"` uses the --multiarch option can pass the --convert-multiarch option down to dpkg-cross to instead force the generation of a  -\<arch\>-cross package with the files moved into the conventional  dpkg-cross locations.

`"xapt"` will check for dpkg-cross version 2.6.3 or higher when this option is set and report an error (unsetting the option) if a suitable version is not found.
