63

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?

  • 6
    Note 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. – a CVn Jul 18 '13 at 20:48
44

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.

  • 3
    Note, that even if a source package is not provided (or easily accessible), .deb files are easily extracted with libarchive. And, makepkg uses bsdtar (which uses libarchive) by default to extract sources in a PKGBUILD. The result of this dependency chain is that you can easily write PKGBUILDs that make use of .deb archives as source files. :D – HalosGhost Jul 27 '14 at 0:42
37

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
  • 9
    Using 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 0:26
  • 1
    command not found: dpkg – zygimantus Jun 22 '17 at 12:51
  • 6
    Even 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 2:06
8

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.

  1. Install yaourt using pacman:

    sudo pacman -S yaourt
    

Reason: yaourt is a front-end(CLI-based) for pacman used to query & install AUR packages. In case the debian package has already been repackaged as an AUR by someone else.

  1. Install the package_name using yaourt:

    sudo yaourt -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.

  1. Install debtap from yaourt:

    sudo yaourt -S debtap
    
  2. Create equivalent package using debtap:

    debtap package_name.deb
    
  3. 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.

  1. Install dpkg using yaourt:

    sudo yaourt -S dpkg
    
  2. Install the debian package using dpkg:

    sudo dpkg -i package_name.deb
    
7

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

  • 1
    The 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 5 '16 at 7: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 3:00
  • 1
    This package is out of date. – zygimantus Jun 22 '17 at 12:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.