In this guide we take you through the steps to install and use snapd service on Arch Linux / Manjaro and other Arch based Linux distributions. Snap is a software deployment and package management tool originally designed and built by Canonical which works across a range of Linux distributions.

The packages are called ‘snaps‘ and the tool for using them is ‘snapd‘. Snap enables you to run distro-agnostic upstream software packages on your system. Snap bundles most of the libraries and runtimes needed by the application and can be updated and reverted without affecting the rest of the system.
Install Snap on Arch Linux / Manjaro
Install yay
AUR helper – Install yay AUR helper on Arch/Manjaro
sudo pacman -S --needed git base-devel --noconfirm
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
To install Snapd on Arch Linux or Manjaro, run the commands below as non-root user.
yay -Syy --noconfirm --needed snapd
You can also install snapd manually.
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
Start and enable snapd service.
sudo systemctl enable --now snapd.socket
Confirm service status.
$ systemctl status snapd.socket
● snapd.socket - Socket activation for snappy daemon
Loaded: loaded (/usr/lib/systemd/system/snapd.socket; enabled; preset: disabled)
Active: active (listening) since Tue 2024-07-16 22:23:20 UTC; 8s ago
Triggers: ● snapd.service
Listen: /run/snapd.socket (Stream)
/run/snapd-snap.socket (Stream)
Tasks: 0 (limit: 2300)
Memory: 0B (peak: 0B)
CPU: 204us
CGroup: /system.slice/snapd.socket
Jul 16 22:23:20 arch systemd[1]: Starting Socket activation for snappy daemon...
Jul 16 22:23:20 arch systemd[1]: Listening on Socket activation for snappy daemon.
To enable classic snap support, create a symbolic link between /var/lib/snapd/snap
and /snap
:
sudo ln -s /var/lib/snapd/snap /snap
Since the binary file is located under,/snap/bin/
we need to add this to the $PATH
variable.
echo "export PATH=\$PATH:\/snap/bin/" | sudo tee -a /etc/profile
Source the file to get new PATH
source /etc/profile
Snapd is now ready for use. You interact with it using the snap command. See help page below:
snap --help
Test your system by installing the hello-world snap and make sure it runs correctly:
$ sudo snap install hello-world
hello-world 6.4 from Canonical✓ installed
List installed snaps.
$ snap list
Name Version Rev Tracking Publisher Notes
core 16-2.61.4-20240607 17200 latest/stable canonical✓ core
hello-world 6.4 29 latest/stable canonical✓ -
Remove snap.
$ sudo snap remove hello-world
hello-world removed
See below commands that are often used with snap
:
Command | Description |
---|---|
snap install <package> | Installs a Snap package |
snap remove <package> | Removes a Snap package |
snap list | Lists installed Snap packages |
snap refresh | Refreshes all installed Snap packages |
snap info <package> | Shows information about a Snap package |
snap find <keyword> | Searches for Snap packages based on keywords |
snap connect <snap> <interface> | Connects a Snap to a system interface |
snap disconnect <snap> <interface> | Disconnects a Snap from a system interface |
snap run <package>.<command> | Runs a command inside a Snap container |
snap changes <package> | Shows changes made by a Snap package |
Congratulations!. Snap has been installed successfully on your Arch/Manjaro. Check Snap documentation for more.
For other Linux distributions, check:
- How To Install Snap on Ubuntu / Debian Linux
- Install and Use Snap on CentOS 7
- Install Snap and Use on Fedora