pacstall
Install packages from the AUR (unofficially)
TLDR
Search the package database for a package name
Install a package
Remove a package
Add a repository to the database (only GitHub and GitLab are supported)
Update pacstall's scripts
Update all packages
Display information about a package
List all installed packages
SYNOPSIS
pacstall [GLOBAL_OPTIONS] command [OPTIONS] [arguments...]
Common Commands:
pacstall install <package_name...>
pacstall remove <package_name...>
pacstall update
pacstall search <query>
PARAMETERS
--help
Displays a comprehensive help message for pacstall or a specific subcommand.
--version
Shows the current version information of the pacstall utility.
install
Installs one or more packages specified by name from the pacstall recipe repositories. Commonly used options include -y (assume yes to prompts) and -d (perform a dry run without actual installation).
remove
Removes one or more packages previously installed via pacstall. Can also be used with -y for automatic confirmation.
update
Updates all currently installed pacstall packages to their latest available versions according to the recipes.
search
Searches the available pacstall recipe database for packages matching the provided query string.
build
Builds a package from a local pacstall recipe file or directory, typically for development or custom package creation.
list
Displays a list of all packages that are currently installed on the system using pacstall.
sync
Synchronizes the local pacstall recipe database with the remote Git repositories, ensuring access to the latest package definitions.
clear
Clears the build cache and any temporary files generated by pacstall, freeing up disk space.
DESCRIPTION
pacstall is a community-driven package manager for Arch Linux and its derivatives, designed to streamline the process of installing software not readily available in official repositories. It serves as an alternative to manual makepkg usage or certain AUR helpers by providing a simpler, more intuitive command-line interface for building and installing packages from its own ecosystem of community-maintained "recipes" (similar to Arch's PKGBUILDs).
The core philosophy of pacstall is to abstract away the complexities of source-based compilation, allowing users to install, update, and remove packages with commands reminiscent of pacman. It manages dependencies, fetches source code, compiles the software, and then integrates it into the system using pacman. While it utilizes the Arch User Repository (AUR) under the hood for some operations, its primary strength lies in its own dedicated set of recipes, aiming for a more curated and reliable source of third-party software.
CAVEATS
Packages installed via pacstall are built from source, which can be a time-consuming and resource-intensive process compared to installing pre-compiled binaries. As a community-maintained tool, it is not officially supported by Arch Linux, and its stability and security rely on the quality and maintenance of its community recipes. Users should be aware that build failures or dependency conflicts can occur, especially if recipes become outdated or are not properly maintained. Requires git and the base-devel group to be installed on the system for successful compilation.
RECIPE SYSTEM AND PACKAGING
pacstall utilizes its own system of 'recipes' (similar to PKGBUILDs) that define how a package should be built and installed. These recipes are stored in Git repositories, and when a user requests an installation, pacstall fetches the corresponding recipe, executes the build process, and then uses pacman to install the resulting binary package (a .pkg.tar.zst file). This system allows for community-driven package definitions and aims to simplify the distribution of software not present in official Arch repos.
CONFIGURATION AND HOOKS
pacstall provides configuration options, often managed through a configuration file, allowing users to customize its behavior. This includes setting up custom recipe repositories, defining build flags, or adjusting parallelism for compilation. It may also support hooks, enabling the execution of custom scripts before or after certain package management operations, offering advanced customization for experienced users.
HISTORY
pacstall emerged from the Arch Linux community's desire for a simpler, more user-friendly experience when managing third-party software beyond the official repositories or the manual complexities of makepkg and the Arch User Repository (AUR). Developed as an alternative to existing AUR helpers, it aimed to provide a more streamlined, 'pacman-like' interface for source-based package management. Its development has focused on ease of use and a curated recipe system to simplify the process for users needing a broader software selection on Arch-based systems.