The problem is simple - I have a .deb package and I want to install it on my Arch Linux. Is this possible? If yes, how?
-
9Note that .deb files are just archives that can be uncompressed on any system. Depending on how complex the installation process is, that might be enough to "install" it. – user Jul 18 '13 at 20:48
5 Answers
Is it possible? Yes. Is it a good idea? That depends. You would only really need to do this if the application only exists as a .deb
package. It is much more likely that you can just grab the upstream source and write a simple PKGBUILD to install it with pacman.
You should also search the AUR to ensure that someone hasn't done this already.

- 73,126
-
15Note, that even if a source package is not provided (or easily accessible),
.deb
files are easily extracted withlibarchive
. And,makepkg
usesbsdtar
(which useslibarchive
) by default to extract sources in aPKGBUILD
. The result of this dependency chain is that you can easily writePKGBUILD
s that make use of.deb
archives as source files. :D – HalosGhost Jul 27 '14 at 00:42 -
5
-
dpkg for Arch exists. You should be able to install .deb
packages on arch, but you should also not use it instead of pacman
, so just use it for selected few packages.
The default command looks like:
# dpkg -i package.deb

- 115

- 1,710
-
19Using an alternate package manager, though an option, is not the correct solution. The correct solution is to write a
PKGBUILD
to generate a pacman-native package. – HalosGhost Jul 27 '14 at 00:26 -
1
-
27Even if it isn't the correct way to do it, it answers the original question... "Is it possible to install a deb package, and how to do it" is answered a lot better by this answer, than simply saying "write a PKGBUILD to generate a native package", since that is not what the user asks... – svin83 Feb 10 '18 at 02:06
-
1Has dpkg been removed? It doesn't exist at the linked to location. – Stand with Gaza Mar 31 '20 at 15:08
-
3@BjörnLindqvist It's a normal pacman package now, and can be installed using
sudo pacman -S dpkg
. However, after installing it, it warns the user that using it to install debian packages can break their system, so take that as you will. – Axiumin_ Apr 02 '20 at 22:09 -
the source project is discontinued and has build errors in both the AUR PKGBUILD and when I try to build from source. but there is a debian package from an earlier build so totally agree with @svin83 here. – philx_x Aug 24 '21 at 13:25
-
And, the link is now broken. Now we use
debtap
from the AUR. https://aur.archlinux.org/packages/debtap – Jesse Feb 21 '24 at 02:31
Possible? Yes, but different methods exist on basis of use case.
Assumption: The debian package doesn't have an equivalent package in the Arch (or Arch based Distribution's) official repository.
Install
yay
usingpacman
:sudo pacman -S yay
Reason: yay is an AUR helper used to query & install AUR packages. In case the debian package has already been repackaged and published to the AUR by someone else.
Install the
package_name
using yay:yay -S package_name
note: replace package_name
with the name of the debian package as found in the AUR. It'll attempt to install the dependencies on it's own using pacman
.
Alternative
Assumption: The Debian package hasn't been repackaged as an Arch package in AUR yet.
Install
debtap
from AUR usingyay
:yay -S debtap
Create equivalent package using
debtap
:sudo debtap -u debtap package_name.deb
Install using
pacman
:sudo pacman -U package_name.pkg
Not the recommended way (possibly dangerous)
This method attempts to install the package using the debian packaging format on Arch, which is not recommended due to possible danger of corrupting your installation. If using this method it is recommended to be ready with a rescue disc image of Arch & backup of the user data/space.
Install
dpkg
usingyay
:yay -S dpkg
Install the debian package using
dpkg
:sudo dpkg -i package_name.deb

- 388
- 4
- 11

- 679
-
yaourt
is not in the Arch repositories, andpacman -S yaourt
won't work. It is an abandoned AUR package. Rather, you should be explaining how to build an AUR package, and simply note that there are AUR helpers likeyaourt
andyay
. – greyfade Jul 06 '20 at 23:11 -
At the time of writing it used to be available in the Manjaro Repositories, but as you have mentioned I should update the answer to match the current status – ToxicMender Jul 07 '20 at 07:01
-
It may have been available in the Manjaro repositories, but it has never been in the Arch repositories. – greyfade Jul 21 '20 at 18:48
-
5AUR helpers like yay and yaourt should not be run using sudo. These will ask to elevate permission when installing, but build script should be run as an unprivileged user. – Mr. Wrong Sep 23 '20 at 16:57
You can install dpkg by: yaourt dpkg
.
If you don't have yaourt
, you can get it from its AUR page.
Then just cd
to where you put it and dpkg -i package.deb
whatever the package may be
-
1The current comment on the AUR package for dpkg states it is out of date and "Don't use it instead of Arch's 'pacman'." Does this mean pacman can now be used to install deb packages? – gromain Apr 05 '16 at 07:27
-
2@gromain I believe they say that to tell an ignorant user that they shouldn't be using Debian package management in Arch by default -- it should be an exception rather than the rule. – Czipperz Aug 21 '16 at 03:00
-
1
This works for some packages:
# You might append this to ~/.bashrc
function debinstall() {
ar x $1 data.tar.xz
mkdir /tmp/$1_dir
tar -C /tmp/$1_dir -xf data.tar.xz
sudo rsync /tmp/$1_dir /
rm -f data.tar.xz
rm -rf /tmp/$1_dir
}
Usage
debinstall draw.io-amd64-13.6.2.deb # Put your package name instead

- 143