How to Install Snap and Snap-Store on Fedora 39, 38 Linux

This guide demonstrates how to install Snap and Snap-Store on Fedora Linux, providing a straightforward approach to enhancing your software management capabilities. Snap, a universal package management system, and Snap-Store, its graphical interface counterpart, offer a unified solution to software deployment and updates across different Linux distributions. Their integration with Fedora Linux significantly simplifies finding and maintaining software.

Key Features of Snap and Snap-Store:

  • Cross-Platform Compatibility: Snap packages work across various Linux distributions, ensuring software usage and management consistency.
  • Automatic Updates: Snap applications update automatically, ensuring users always have the latest version without manual intervention.
  • Isolation and Security: Snap packages are sandboxed, providing enhanced security by isolating applications from the rest of the system.
  • Rollback Capabilities: Easily revert to previous versions of applications if needed, enhancing user control over software versions.
  • Diverse Software Library: Access to various applications, from everyday tools to specialized software.

Integrating Snap and Snap-Store with Fedora Linux, users gain access to a broad spectrum of software options and the benefits of secure, hassle-free management. The following sections will guide you through installing and setting up your Fedora system for a more versatile and efficient software experience.

Install Snapd (CLI) on Fedora Linux via DNF

Step 1: Update Fedora Packages Before Snapd Installation

Before initiating the Snapd installation, updating your Fedora Linux system is crucial. This step is necessary to prevent conflicts and ensure compatibility with Snapd.

To update all your system’s packages, execute the command:

sudo dnf upgrade --refresh

This command will refresh your system’s repository data and upgrade all the existing packages to their latest versions.

Step 2: Install Initial Required Packages For Snap CLI

Snap relies on specific packages to function correctly. These packages are necessary for Snap’s operation and should be installed before proceeding. To install these required packages, use the command:

sudo dnf install fuse squashfuse -y

fuse and squashfuse are vital for Snap’s file system operations, ensuring that Snap applications run smoothly.

Step 3: Install Snap (snapd) via DNF Command

Snap, also known as Snapcraft or Snapd, is available in the Fedora appstream. For those focusing on a command-line interface, installing the snapd package is essential.

To install Snapd, issue the following command:

sudo dnf install snapd 

This command will download and install the Snapd package from Fedora’s repositories.

Step 4: Reboot After Snap Installation

Post-installation and rebooting your system is a critical step. Rebooting activates Snap’s functionality and creates necessary system paths. Reboot your system using this terminal command:

sudo reboot

Neglecting to reboot might lead to operational issues with Snap later.

Step 5: Enable Snap Service on Fedora

Upon rebooting, activate the Snapd service to auto-start with your system using:

sudo systemctl enable snapd --now

This command ensures that the Snapd service will automatically start upon system boot.

Step 6: Enable Snap Classic Support and Install Snap Core

Snap operates with various confinement levels, and some applications require classic confinement. To enable classic snap support, create a symbolic link using:

sudo ln -s /var/lib/snapd/snap /snap

Next, to enhance your Snap experience, install the core snap, which contains the necessary runtime libraries:

sudo snap install core

Step 7: Verify Snapd Service

The core snap is fundamental to the Snap ecosystem, providing a base for running Snap applications.

systemctl status snapd

This command allows you to confirm that Snapd is appropriately set up and functioning on your Fedora system.

Enabling Snapd service on Fedora Linux using command line interface
Enabling the Snapd service in Fedora Linux via terminal commands

With Snapd now successfully installed on your Fedora Linux system, you are equipped to manage applications efficiently via the command line.

Basic Snapd (CLI) Command Examples on Fedora Linux

Install a Snap Package

After installing Snapd on your Fedora system, begin managing packages with basic commands. For instance, to install an application like Discord, a widely-used communication platform, use the following command:

sudo snap install discord

This process will add Discord to your system, showcasing the ease of using Snap for software installation. Snap’s extensive package library allows you to quickly access and install various applications.

Update Snap Packages

Keeping your packages updated is vital for security and performance. Snap simplifies this with the refresh command.

To update all your installed Snap packages, including applications like Discord, execute the following:

sudo snap refresh

Snap will automatically check and apply updates to all your installed packages, ensuring you have the latest features and security updates.

Remove Snap Packages

To remove an unnecessary package from your system, Snapd offers a straightforward command. For example, to uninstall Discord, use:

sudo snap remove discord

This command directs Snapd to remove the specified package, in this case, Discord, from your system.

Search for Snap Packages

Before installing a new package, you might need to search the Snap repository. To find a specific application, use the search command:

sudo snap search <package-name>

For example, to find Spotify, you would enter:

sudo snap search spotify

Replace <package-name> with the actual name of the package you’re searching for.

Check Snap Version

Knowing the installed version of Snap is helpful, especially for troubleshooting or ensuring compatibility. Check the Snapd version with:

snap version

This command displays the current Snapd version and other relevant details about your Snap environment.

Install Snap-Store (Snap GUI) on Fedora Linux

Step 1: Install Snap-Store on Fedora

For users who prefer a graphical user interface (GUI) for package management, the Snap Store provides an accessible, visual approach. This step mainly benefits desktop users who favor a GUI over command-line operations.

To install the Snap Store, employ the Snap installation command:

sudo snap install snap-store

This command instructs Snapd to retrieve and install the Snap Store package from its repository, integrating it into your Fedora system. The process is similar to installing any other Snap package and is streamlined for ease of use.

Step 2: Launch the Snap Store

Once the Snap Store is installed, there are several ways to open it. For users comfortable with the terminal, launch the Snap Store using:

snap run snap-store

This command activates the Snap Store application from the terminal, bringing up the GUI on your desktop.

If you prefer a whole GUI experience, locate the Snap Store through your system menu. The navigation path might differ based on your desktop environment. For example, on a GNOME desktop, access the Snap Store by following:

  • Click on ‘Activities’
  • Select ‘Show Applications’
  • Find and open the ‘Snap Store’

If the Snap Store icon does not appear, reboot your system.

Snap Store application icon in Fedora Linux's Show Applications menu
Snap Store icon in the Fedora Linux application menu

Step 3: Utilizing Snap Store on Fedora

When you open the Snap Store for the first time or during its periodic cache updates, expect a brief delay, usually lasting a minute or two. This pause occurs as the Snap Store synchronizes with Snapcraft’s servers, fetching the latest package information. After this initial update, the Snap Store allows you to seamlessly search for and install packages through its graphical user interface.

This feature simplifies finding and managing software for Fedora desktop users.

Snap Store open on Fedora Linux desktop
The Snap Store running on a Fedora Linux system

Here’s a streamlined example of how to install GIMP using the Snap Store on Fedora Linux: When you navigate to GIMP in the Snap Store, pay attention to the top right-hand corner of the interface. There, you’ll find a drop-down list indicating the various versions of GIMP available from Snap.

This feature is handy as Snap often offers multiple builds of the same application.

Display of available sources and versions in Snap Store on Fedora Linux
Snap Store’s sources and version options on Fedora Linux

Managing Snap and Snap-Store on Fedora Linux

Troubleshooting Snap Installations with SELinux on Fedora

SELinux, or Security-Enhanced Linux, is a crucial security module in the Linux kernel, supporting access control policies. However, its stringent rules can sometimes conflict with Snap operations. This section will tackle common SELinux-related issues encountered while using Snap on Fedora.

Analyzing SELinux Denials

To understand policy violations impacting Snap, scrutinize SELinux denial messages:

sudo ausearch -m AVC --start recent

This command fetches AVC (Access Vector Cache) messages that signal denied operations, offering insights into potential conflicts.

Adjust SELinux Policies

Adjusting SELinux policies might be necessary for smooth Snap functionality.

Option 1: Switch SELinux to Permissive Mode

Temporarily set SELinux to permissive mode, allowing operations but still logging any violations. This is useful for operations deemed safe:

sudo setenforce 0

To revert to enforcing mode:

sudo setenforce 1

Option 2: Create Custom SELinux Policy Modules

For persistent denials, you can tailor a policy module. First, gather denial logs:

sudo ausearch -m AVC --start recent > /tmp/avc.log

Then, generate a policy module:

sudo audit2allow -M my_snap_policy < /tmp/avc.log

Finally, install the module:

sudo semodule -i my_snap_policy.pp

Review and Maintain Policies

Regularly check SELinux policies and logs with the following:

sudo sealert -a /var/log/audit/audit.log

Stay vigilant with updates to ensure security, especially after custom policy modifications.

Remove Snap and Snap-Store from Fedora Linux

Uninstalling Snap from Fedora is efficient; removing Snap and all its packages can be done in one step with the following command:

sudo dnf remove snapd
Removal of Snap and all installed snaps on Fedora Linux
Complete removal of Snap and its packages on Fedora Linux

The image confirms the comprehensive nature of the removal process, streamlining system maintenance.

Step 2: Verifying the Removal

Post-uninstallation, verify the complete removal of Snap and its components:

snap list
systemctl status snapd

Errors or a lack of response indicate a successful uninstallation. This step ensures your Fedora system remains tidy and well-organized, free from unnecessary applications or services.

Conclusion

In this guide, we’ve walked you through the essentials of setting up and managing Snap and the Snap Store on your Fedora Linux system. We’ve covered everything from getting started with Snap (snapd) to navigating through the intuitive Snap Store for those who like a more visual approach. We also showed you how to keep your Snap setup in check and neatly remove everything if needed.

Snap’s ability to simplify how you install and update software is a real game-changer in the Linux world. I recommend diving into the vast array of applications Snap offers to get the most out of your Fedora system. Remember, the more you play around with these commands and explore Snap, the more skilled you’ll become in using this powerful tool. Happy exploring!

Leave a Comment


Your Mastodon Instance
Share to...