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.

install snap arch

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 $PATHvariable.

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:

CommandDescription
snap install <package>Installs a Snap package
snap remove <package>Removes a Snap package
snap listLists installed Snap packages
snap refreshRefreshes 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:

LEAVE A REPLY

Please enter your comment!
Please enter your name here