How to Enable Snap Support in Arch Linux

Snap is a universal package format designed by Canonical, the parent company of Ubuntu. Some people do not like Snap, but it has some advantages.

Often, some applications are only available in the Snap format. This gives you a good enough reason to enable snap in Arch Linux.

I know that AUR has a vast collection of applications but the snap apps often come directly from the developers.

If you want to be able to install Snap applications in Arch Linux, you need to enable snap support first.

There are two ways to do it:

  • Enable Snap support using an AUR helper (easier)
  • Enable Snap support manually by getting the packages from AUR

Let’s see how to do it.

Method 1. Use an AUR helper to enable Snap

Snap is available in the Arch User Repository as the snapd package. You can install it easily using an AUR helper.

There are many AUR helpers out there, but yay is what I prefer because it has syntax similar to the pacman command.

If you don’t have an AUR installed already, install Yay using the command below (needs git beforehand):

git clone https://aur.archlinux.org/yay

cd yay

makepkg -si
yay makepkg
Installing yay

Now that yay is installed, you can install snapd by:

yay -Sy snapd
yay install snapd
Installing snapd from AUR using yay

Yay enables automatic updating of snapd whenever you update your Arch Linux system.

Verify that snap works

To test if snap works fine, install and run the hello-world snap package.

sudo snap install hello-world

hello-world
(or)
sudo snap run hello-world
snap hello world 1
The hello-world snap package executes

If it runs fine, then you can install other snap packages easily.

Method 2. Manually build the snap package from AUR

If you do not want to use an AUR helper, you can still get the snapd from the AUR. Let me show the detailed procedure.

You will need to install some build tools first.

sudo pacman -Sy git go go-tools python-docutils
snapd manual install dependencies
Installing Dependencies for snap

Once you’re done with installing the dependencies, now you can clone the AUR directory, which goes as:

git clone https://aur.archlinux.org/snapd

cd snapd 
snapd manual install clone
Cloning the repository

Then make the snapd package:

makepkg -si

Enter yes when it asks to install other dependency packages.

snapd manual install makepkg
Making the snap package

You have installed the snapd daemon. However, it needs to be enabled to auto start at boot time.

sudo systemctl enable snapd --now

sudo systemctl enable snapd.apparmor --now #start snap applications

sudo ln -s /var/lib/snapd/snap /snap #optional: classic snap support
enable snapd startup 2
Enable Snap at startup

The major disadvantage of manually building a package is that you have to manually build every time a new update kicks in. Using an AUR helper solves that problem for us.

Conclusion

I prefer pacman and AUR in Arch Linux. It’s rare to see an application that is not in AUR but available in some other formats. Still, using snap could be advantageous in some conditions where you want it directly from the source, like installing Spotify on Arch for example.

I hope you find this tutorial helpful. Let me know if you have any questions.

Similar Posts

  • I prefer use flatpak instead snap but this is amazing tutorial. Thanks!
    I changed yay to paru, it’s same creator.