Installing software on Linux: apt, dnf, Snap and Flatpak
You learn from the ground up what a package is, why repositories are trusted and how to install, update and remove software with command-line and graphical tools.
Level 101 · 14 lessons · 12 practice labs
Lessons
The idea of a package
- What a package is: program, dependencies and metadata
- Repositories and trust: why we don't download from random sites
- Searching and reading package info with apt
- Short task: find which package provides a command
Installing and removing
- The difference between apt install, remove and purge
- update versus upgrade: refreshing lists and upgrading packages
- The same job on the Red Hat family: dnf
- Installing a downloaded .deb safely
- Short task: install the team's toolset and report the versions
Other routes
- Snap and Flatpak: sandboxed apps
- AppImage and single-file programs: the risks
- Why language package managers can break the system
- The graphical software centre
- Capstone: install what a new workstation needs from trusted sources
Practice labs
- Find out whether a program is installed: Query the package manager for five given programs and submit the names of those that are not installed.
- Read a package's version and dependencies: Before installing, display a package's version, size and dependencies and submit how many packages would come with it.
- Find the package that provides a missing command: Find which packages contain three commands a script needs but the system lacks and write the install command on one line.
- Install, run and remove a package: Refresh the package lists, install the requested tool, show its version and then remove it together with its configuration.
- List updates first, then apply them: List pending updates, upgrade only the two packages with security fixes and record the versions before and after.
- Clean up an interrupted install: Repair a package database left locked and half-configured by an interrupted install and complete the missing dependencies.
- Install a downloaded package file with its dependencies: Install a single package file downloaded from the lab repository so its dependencies resolve automatically and show its file list.
- Install a program from an archive into your home: Unpack a tool shipped as an archive into your home without admin rights, add it to PATH and confirm it runs in a new session.
- Run two versions of one program side by side: Install a newer version from an archive next to the packaged one, show which takes precedence and manage the choice with alternatives.
- Verify the checksum of a download: Compare the checksums of three installer files with the published list and submit the name of the damaged or altered one.
- Review an install script before running it: Download an install script meant to be piped into a shell, list in three points what it changes and mark the risky line.
- Clean up after a hand-installed program: Find and remove the files, service unit and PATH entry left by a tool installed outside the package manager and show no packaged file was touched.
About this course
You learn from the ground up what a package is, why repositories are trusted and how to install, update and remove software with command-line and graphical tools.
What you will learn
- The idea of a package
- Installing and removing
- Other routes
Prerequisites
No prior knowledge is needed; the course starts from zero.
Lab environment
Lessons run in your own Kali Linux terminal that opens in the browser. Nothing to install; the lab starts clean in every lesson.
Frequently asked questions
- Is this course right for my level?
- The course is at beginner level; every term is explained where it first appears.
- Is there anything to install?
- No. Every lesson runs in your own lab environment that opens in the browser.
- How do lessons work?
- Each lesson has 8 to 10 steps and a short quiz. Early steps show the command to type, later steps give less help; if two attempts fail, the solution opens.
- Can I try it for free?
- Yes. The first three lessons of every course are free.