LinuxCommandLibrary

nala

Install, update, and remove software packages

TLDR

Install a package, or update it to the latest available version

$ sudo nala install [package]
copy

Remove a package
$ sudo nala remove [package]
copy

Remove a package and its configuration files
$ nala purge [package]
copy

Search package names and descriptions using a word, regex (default) or glob
$ nala search "[pattern]"
copy

Update the list of available packages and upgrade the system
$ sudo nala upgrade
copy

Remove all unused packages and dependencies from your system
$ sudo nala autoremove
copy

Fetch fast mirrors to improve download speeds
$ sudo nala fetch
copy

Display the history of all transactions
$ nala history
copy

SYNOPSIS

nala [options] command [arguments]
nala update
nala upgrade
nala install [package(s)]
nala remove [package(s)]
nala autoremove
nala search [keyword]
nala show [package]

PARAMETERS

update
    Refreshes the list of available packages and their versions from repositories.

upgrade
    Installs the newest versions of all currently installed packages.

install
    Installs one or more specified packages.

remove
    Removes one or more specified packages.

autoremove
    Removes packages that were automatically installed to satisfy dependencies for other packages and are no longer needed.

search
    Searches for packages matching a given keyword in the available package lists.

show
    Displays detailed information about a specified package.

purge
    Removes one or more specified packages along with their configuration files.

history
    Shows a log of previous nala transactions, allowing rollback or inspection.

fetch
    Downloads packages into the local cache without installing them.

clean
    Erases downloaded archive files from the local repository cache.

-y, --assume-yes
    Automatic 'yes' to prompts; bypasses confirmation requests.

-v, --verbose
    Increases verbosity, showing more detailed output during operations.

--dry-run
    Simulates an operation without making any actual changes to the system.

--no-install-recommends
    Prevents the installation of 'recommended' packages during installation or upgrade.

--fix-broken
    Attempts to correct a system where broken dependencies prevent further package operations.

DESCRIPTION

nala is an intuitive and performance-focused frontend for the APT (Advanced Package Tool) package manager on Debian-based Linux distributions. It aims to provide a more user-friendly and visually appealing experience compared to the standard `apt` command. Key features include parallel package downloading, which significantly speeds up operations by utilizing multiple concurrent connections, and enhanced output with progress bars, colors, and clearer information. Inspired by package managers like dnf and pacman, nala offers a cleaner interface and improved feedback during package installations, updates, and removals, making system maintenance more efficient and enjoyable for users. It essentially wraps `apt` commands, adding a layer of convenience and speed.

CAVEATS

nala is a frontend for apt; it requires apt to be installed and functional. While it enhances speed with parallel downloads, this can consume more network bandwidth. It's not part of the standard core utilities in all Debian-based distributions and needs to be installed separately. In very rare cases, the parallel download mechanism might interact differently with specific proxy configurations or highly restrictive network environments compared to apt.

PARALLEL DOWNLOADS

nala significantly enhances download speeds by employing parallel connections to fetch packages from repositories concurrently. This mechanism leverages `libcurl` to initiate multiple downloads simultaneously, drastically reducing the time spent waiting for package archives, especially when installing or updating numerous packages. This feature is a key differentiator from the standard `apt` command.

ENHANCED USER EXPERIENCE

Beyond speed, nala focuses on a superior user experience. It provides colored output, progress bars, and clearer, more organized information during package operations. This visual feedback makes it easier to understand what's happening, track progress, and quickly identify potential issues, transforming the typically text-heavy `apt` interaction into a more intuitive and visually engaging process.

HISTORY

nala was developed by the Volian project, known for its focus on a user-friendly and modern Linux experience. It emerged as a response to the desire for a more interactive and visually appealing package manager frontend for Debian/Ubuntu systems, drawing inspiration from the user interfaces of dnf (Fedora/RHEL) and pacman (Arch Linux). Its primary goal was to improve the user experience of apt by adding features like colored output, progress bars, and significantly faster parallel downloads, making system management more efficient and pleasant. The development began in recent years (post-2020), quickly gaining traction among users seeking a better apt alternative.

SEE ALSO

apt(8), apt-get(8), dpkg(1), aptitude(8)

Copied to clipboard