Nala: A Frontend APT Package Manager for Linux

Try this guide with our instant dedicated server for as low as 40 Euros

Nala Apt

For many users, especially those switching over from other operating systems, working with the package managers is one of the toughest challenges of getting used to Linux.

The main issue lies with the complex terminal commands required for managing software on a Linux system. Package managers are not the most intuitive utilities on Linux systems, and many users get confused about the terminology and commands used to update and upgrade packages.

This is why many casual and novice users are not partial to package managers such as Synaptic and Aptitude that have a good following among the more experienced users.

So, if you are looking for a more user-friendly way to install, update, and remove packages, look no further than Nala.

Nala is a cleaner version of the usual apt command line interface. It provides a more user-friendly interface with several benefits, including enhanced user experience, improved efficiency, faster download, and smart mirror selection.

In this tutorial, we’ll introduce Nala and how you can install and use it to manage packages on your system.

Let’s start with an introduction to Nala Apt.

Table of Contents

  1. What is Nala?
    1. Advantages of Nala over APT
    2. Optional Nala Arguments
    3. The Prerequisites to Using Nala
  2. How to Install Nala?
    1. Method #1: Install Nala From the Source
    2. Method #2: Install Nala via Pacstall
    3. Method #3: Install Nala with the DEB file
    4. Method #4: Install Nala with the APT Package Manager
  3. How to Use Nala?
    1. Install Packages
    2. Remove Packages
    3. Purge Packages
    4. Update Packages
    5. List Packages
    6. Upgrade Packages
    7. Fetch From the Fast Mirrors
    8. Show Package Details
    9. Track History
    10. Clear Out the Local Repository
  4. Conclusion
  5. FAQs

What is Nala?

Nala is a powerful package manager for Ubuntu. It acts as a frontend for the traditional Advanced Packaging Tool (APT), offering a more user-friendly experience with several advantages, including colorful text, auto-complete, and easy ways to search for and sort through packages.

Advantages of Nala over APT

While APT is a powerful tool, Nala takes things a step further with features that make managing software on Linux a cakewalk. Let’s discuss some of these key benefits:

Parallel Downloads

Nala allows users to download multiple packages simultaneously. This speeds up the installation process when the user needs to upgrade several packages at a time.

The regular apt frontend downloads packages one at a time, which can be slow, especially when installing or upgrading numerous small packages. In contrast, Nala downloads multiple packages concurrently.

Smart Mirror Selection

Nala picks the servers that provide the fastest package downloads. During the process, it intelligently selects the fastest mirrors based on download speeds. This ensures smooth downloads regardless of the user’s location.

The package manager evaluates the response time of each server and chooses the fastest by considering factors such as the distance to the mirror and network bandwidth.

Package History Management

Nala records a history of all the changes made to packages on the system. This simple feature is critical for tracking and reviewing the trail of actions.

Whenever you install, remove, or update a package using Nala, it keeps a detailed record that you can use to track changes and undo actions if necessary.

Optional Nala Arguments

Nala offers various optional flags that customize its behavior and cater to specific needs.

Here are some additional flags to execute with Nala commands:

Optional Nala Arguments

The Prerequisites to Using Nala

Before diving into working with Nala, ensure you have the following:

  • A Linux distribution that supports APT.
  • Administrator access or sudo privileges.

How to Install Nala?

Nala is a revolutionary tool designed to simplify the software management process on Linux.

Whether you are a beginner or an experienced user who values a user-friendly and efficient experience, installing Nala is a great way of getting the most out of the capabilities of package management on a Linux platform.

The actual process of installing Nala depends on the Linux distribution. As such, we will discuss several ways of installing Nala on your system.

Method #1: Install Nala From the Source

This method involves compiling the Nala source code directly from the project’s official Git repository. The process offers more control over the installation but requires some technical knowledge in building Git packages.

Important: Installing software from a source can be more involved than using pre-built packages. We recommend this method only if Nala is unavailable in the official repositories for your Linux distribution.

Here are the general steps of this process.

Step #1: Clone the Nala Repository

Open the terminal and copy the Git repository to your system by executing this command:

# git clone

The command downloads the Nala source code and creates a directory named nala in your current location.

Step #1: Clone the Nala Repository

Step #2: Navigate to the nala Directory

Run the following cd command to navigate to the nala directory.

# cd nala

Note: Installing Nala requires pip (a popular tool for managing Python packages) installed in your system. If you don’t have it on your system, you can install it by executing the following command in the terminal:

# sudo apt install python3-pip

Pip will be downloaded to your system. We also recommend our tutorial on installing pip on Ubuntu for more details of the process.

Step #3: Install Nala

Now, run the following make command to compile and install Nala on your system:

# sudo make install

Step #3: Install Nala

Method #2: Install Nala via Pacstall

This method leverages Pacstall, a command-line package manager specifically designed for simplified software installation on Ubuntu using the stable OS base.

Follow these steps to set up Nala on your system using Pacstall.

Step #1: Install Pacstall (if it’s not already installed)

Install Pacstall by executing the following command:

# sudo bash -c "$(curl -fsSL || wget -q -O -)"

Step #1: Install Pacstall (if it’s not already installed)

Step #2: Install Nala

Once the installation is complete, run pacstall command to set up Nala on your system:

# pacstall -I nala-deb


pacstall -I: Indicates the installation mode.

nala-deb: Specifies the nala-deb package.

Once you run the command, Nala will be set up on your system.

Method #3: Install Nala with the DEB file

In this method, you can install Nala using a pre-built DEB package.

Step #1: Download the Nala DEB Package

Visit the official Nala project on GitLab and go to the Releases section.

Download the DEB package compatible with your system’s architecture. Verify the compatibility information on the page.

Step #1: Download the Nala DEB Package

Step #2: Install Nala

Open the terminal and navigate to the directory where you downloaded the DEB file.

Run the following apt command to install the DEB file:

# sudo apt install [path-to-deb-file]

Replace [path-to-deb-file] with the actual file path.

Step #2: Install Nala

Step #3: Verify Installation

To confirm successful installation, print the Nala version information by running this command:

# nala --version

Method #4: Install Nala with the APT Package Manager

This is the simplest and most recommended method to install Nala. It leverages the APT package manager that’s already present in your system.

Step #1: Update Package Lists

Before installing, update the list of available packages on your system.

# sudo apt update

Step #2: Install Nala

Once the package lists are updated, use the following command to install Nala:

# sudo apt install nala

The APT package manager will download and install Nala, along with any necessary dependencies that aren’t already on the system.

How to Use Nala?

Once you have installed Nala through one of the four methods we described in the previous section, you can now install and manage packages on your system.

We will now discuss how to use Nala for common package management tasks including, installing, removing, and purging packages on systems like Ubuntu 22.04.

Install Packages

Installing a package is very straightforward. Simply run the following command to install packages on Ubuntu 22.04 (and similar OS):

# sudo nala install [package-name]

Replace [package-name] with the actual name of the package you want to install.

During the process, Nala will display a list of dependencies that will be installed along with the main package.

Type Y and press Enter to confirm the installation.

Install Packages

The installer has two different sections: one for downloading the packages and another for installing them.

Each part displays progress bars for both stages.

Once the package installation is complete, Nala displays a confirmation message.

Nala displays a confirmation message

Remove Packages

To remove unwanted packages using Nala, run this command :

# sudo nala remove [package-name]

Replace [package-name] with the actual name of the package you want to remove.

Nala displays a progress bar as it uninstalls packages.

Once the process finishes, Nala displays a confirmation message.

Nala displays a confirmation message

Purge Packages

Nala can be used to remove an application and all its configuration files from the system. For this, run the following command:

# sudo nala purge [package-name]

Update Packages

Maintaining an up-to-date system is crucial for security and stability. We recommend the following update command to view the latest list of packages available in the system’s repositories:

# sudo nala update

Similar to apt update, Nala refreshes the list of available packages on your system’s repositories.

It ensures all the packages are up-to-date. If updates are available, Nala displays a list of packages that can be upgraded.

Update Packages



List Packages

Nala‘s list command is a powerful tool for browsing and filtering the software available on your system. You can use the following command to view all the package lists available from the repositories:

# nala list

Filtering the List

Nala offers various flags to customize the output of the list command.

For instance, to view a list of all upgradeable packages, run this command:

# nala list --upgradeable

List Packages

Alternatively, you can replace –upgradeable with the following flags to customize the output.

–installed or -i: Displays packages already on the system.

–nala-installed or -N: Displays the packages already installed using Nala.

–all-versions or -a: Followed by a package name, this option lists all available versions of that specific package.

Upgrade Packages

Upgrading software ensures one has the latest features, bug fixes, and security patches. Nala’s upgrade command simplifies this process.

You can run this command to upgrade the packages already installed on the system:

# sudo nala upgrade

Once you run the command, Nala updates the package list.

Next, you can identify packages that have upgrades available in the table.

Type Y and hit Enter to initiate the upgrade process.

Nala downloads and updates the list of available packages.

Upgrade Packages

Once the available packages are downloaded and upgraded, Nala will display a confirmation message.

Nala will display a confirmation message.

Fetch From the Fast Mirrors

Most package managers maintain a default list of mirrors. The issue with this list is the slow speed or the large distance between the user and the mirror server.

Nala offers a unique advantage over other package managers. It provides a list of mirrors ranked by their speed. This list is an important factor in significantly improving download speeds.

Run the following command to display this list of mirrors:

# sudo nala fetch

The command tests the download speeds of available mirrors. You can pick the fastest mirrors by typing the index numbers of the mirrors, separated by spaces. Press Enter to finalize the list.

Fetch From the Fast Mirrors

Fetch From the Fast Mirrors


Nala saves the updated list of mirrors in the /etc/apt/sources.list.d/nala-sources.list file.

Show Package Details

Oftentimes, you are not sure about a package and need more information before you decide about installing it.

We recommend the following command to view what a specific package does before installing it:

# nala show [package-name]

Replace [package-name] with the name of the desired package.

The command displays the following information:

  • Name: The official name of the package.
  • Type: Information about the package type.
  • Size: The estimated disk space required for installation.
  • Repository: The source repository where the package resides.
  • Maintainer: The individual or team responsible for the package.
  • Description: A brief explanation of the package’s functionality.

Show Package Details

Track History

Nala keeps a record of package management activities that you can use to review past actions and potentially undo them if necessary.

You can use the following command to view and track package management activities on your system:

# nala history

It displays a list of past package installations, removals, upgrades, and other actions performed through Nala. Every action on the list is assigned a unique ID for easy reference.

Track History


In addition to displaying package management activities, the command allows you to undo, redo, and clear specific entries.

You can revert any changes with the following command:

# sudo nala history undo [transaction-id]

Conversely, to undo changes, use the redo command:

# sudo nala history redo [transaction-id]

We recommend the clear command (with the transaction ID) to remove a specific entry from the history:

# sudo nala history clear [transaction-id]

Finally, you can wipe out the whole list of actions with the following command:

# sudo nala history clear --all

Clear Out the Local Repository

Over time, Nala accumulates downloaded package files in a local cache. While these files can expedite future installations, they can also consume disk space.

To remove local cache files, run:

# sudo nala clean

Nala displays a confirmation message indicating successful cleaning.

Clear Out the Local Repository


Nala is a user-friendly tool for managing packages on Linux systems, offering notable features like faster downloads, package history tracking, and easy-to-use commands. Its user-friendly commands and informative options make it a powerful tool for keeping your system up-to-date and optimized.

Through this comprehensive tutorial, we have guided you on how to install, remove, upgrade, and list packages, along with exploring functionalities like fetching faster mirrors and managing your package history. Consider delving deeper into Nala‘s documentation to discover even more advanced features and functionalities.


Q. What are download speeds, and why are they important when using Nala?

Download speeds refer to how quickly packages are fetched from repositories to your system. Faster speeds mean less waiting time for installations and updates, enhancing your user experience with Nala.

Q. Why are essential packages significant in package management?

Essential packages are vital components of the operating system, and Nala ensures their proper handling to maintain system stability and functionality.

Q. What are dependent packages, and how does Nala manage them?

Dependent packages are those required by other software for proper operation. Nala tracks and installs these dependencies automatically to ensure the smooth functioning of your installed applications.

Q. How can I identify upgradeable packages with Nala?

Nala provides an easy way to list upgradable packages, allowing you to stay up-to-date with the latest software versions and security patches.

Q. Can you explain the download process for Nala?

Nala simplifies the download process by fetching packages from repositories or mirrors, ensuring a seamless and efficient installation experience for users.

Q. What is meant by the package version, and how does Nala manage it?

Package versions refer to different releases or iterations of a software package. Nala allows you to view, compare, and update package versions to ensure you’re using the latest and most secure software.

Q. What are package dependencies, and why are they important?

Package dependencies are other software components required for a particular application to function correctly. Nala handles these dependencies automatically during installation to prevent compatibility issues.

Q. What additional features does Nala offer beyond standard APT?

Nala offers various features, such as colored output, tab completion, and support for searching and filtering package lists, to streamline users’ package management processes.

Q. How can I view the available packages using Nala?

You can use the apt list command with Nala to display a list of all available packages, making it easier to find and install the software you need.

Q. How do I upgrade packages using Nala?

To upgrade packages with Nala, simply use the apt upgrade command, which fetches and installs the latest versions of all upgradeable packages on your system.

Try this guide with our instant dedicated server for as low as 40 Euros