How to install Snap in Fedora24

Snappy Package Manager

Snappy package manager is a transnational package manager. Originally it was built for Ubuntu Operating system, But now it available for all major Linux distros(Fedora, Linux Mint, RHEL, Opensuse etc.). Snap Packages are Universal Linux packages,Unlike Rpm and Debian packages the single snap package can run or install across all Linux Distributions.

The snap format is a single compressed filesystem that is mounted dynamically by the host operating system, together with declarative metadata that is interpreted by the snap system to setup an appropriately shaped secure sandbox or container for that application.

The Advantage with the Snap package is it is a universal package for Linux. The Disadvantage for Snap package is it’s size. To support all linux distributions and dependencies Snap packages are come with all required libraries and dependencies.

We can install Snap packages by using the snapd service, But this service is not pre installed in Fedora.

To install snapd service in Fedora s we have to add  copr repository by using the following command

[root@localhost ~]#dnf copr enable zyga/snapcore
Sample Output:
You are about to enable a Copr repository. Please note that this
repository is not part of the main Fedora distribution, and quality
may vary.

The Fedora Project does not exercise any power over the contents of
this repository beyond the rules outlined in the Copr FAQ at
<https://fedorahosted.org/copr/wiki/UserDocs#WhatIcanbuildinCopr>, and
packages are not held to any quality or security level.

Please do not file bug reports about these packages in Fedora
Bugzilla. In case of problems, contact the owner of this repository.

Do you want to continue? [y/N]: y
Repository successfully enabled.

Snap Installation

Once we successfully add and enable the corp repository we will install snapd as follows

[root@localhost ~]# dnf install snapd
Last metadata expiration check: 1:14:17 ago on Tue Jun 28 13:51:31 2016.
Dependencies resolved.
=====================================================================
 Package             Arch        Version          Repository       Size
=====================================================================
Installing:
 snap-confine        x86_64      1.0.33-1.fc24   zyga-snapcore     15 k
 snapd               x86_64      2.0.9-1.fc24    zyga-snapcore     4.6 M
 squashfs-tools      x86_64      4.3-12.fc24     fedora           161 k

Transaction Summary
=====================================================================
Install  3 Packages

Total download size: 4.8 M
Installed size: 18 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): snap-confine-1.0.33-1.fc24.x86_64.rpm  7.8 kB/s |  15 kB   00:01
(2/3): squashfs-tools-4.3-12.fc24.x86_64.rpm   36 kB/s | 161 kB   00:04
(3/3): snapd-2.0.9-1.fc24.x86_64.rpm           93 kB/s | 4.6 MB   00:50
-------------------------------------------------------------------------
Total                                            86 kB/s | 4.8 MB     00:56
warning: /var/cache/dnf/zyga-snapcore-c14146bf6584be66/packages/snapd-2.0.9-1.fc24.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID f090a93c: NOKEY
Importing GPG key 0xF090A93C:
 Userid     : "zyga_snapcore (None) <zyga#snapcore@copr.fedorahosted.org>"
 Fingerprint: 2B0F 5C58 E963 BEAF 5ABC C2A2 AB95 BE78 F090 A93C
 From       : https://copr-be.cloud.fedoraproject.org/results/zyga/snapcore/pubkey.gpg
Is this ok [y/N]: y
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Installing  : snap-confine-1.0.33-1.fc24.x86_64                    1/3
  Installing  : squashfs-tools-4.3-12.fc24.x86_64                    2/3
  Installing  : snapd-2.0.9-1.fc24.x86_64                            3/3

  Verifying   : snapd-2.0.9-1.fc24.x86_64                            1/3
  Verifying   : squashfs-tools-4.3-12.fc24.x86_64                    2/3
  Verifying   : snap-confine-1.0.33-1.fc24.x86_64                    3/3

Installed:
  snap-confine.x86_64 1.0.33-1.fc24          snapd.x86_64 2.0.9-1.fc24
  squashfs-tools.x86_64 4.3-12.fc24

Complete!
[root@localhost ~]#

Set SElinux to permissive mode by editing the file /etc/sysconfig/selinux and reboot the system.

Start and Enable the Snapd service by using systemctl as follows

[root@localhost ~]#systemctl  start  snapd
[root@localhost ~]#systemctl enable snapd

We can find the all available packages by using the following command

[root@localhost ~]#snap find 

snap
We can install snap packages by using the following command

[root@localhost ~]#snap install package-name

snap vlc

[root@localhost ~]# snap install vlc
126.89 MB / 127.12 MB [======================================================================================================================] 99.82 % 376.10 KB/s 5m45s

Name  Version  Rev  Developer  Notes
vlc   daily    7    caldav     devmode
[root@localhost ~]#

To see the installed packages use the following command

[root@localhost ~]#snap list

snap list

To check the updates for snap packages use the following command

[root@localhost ~]#snap refresh package-name

We can remove snap packages by using the following command

[root@localhost ~]#snap remove package-name

snap remove

Snap Packages are installed in /snap directory. Now Enjoy the Latest