Skip to main content

Intelligent Manager for Packages, AUR, and Local Archives - A user-friendly AUR helper written in Python.

Project description

IMPALA

Intelligent Manager for Packages, AUR, and Local Archives - A user-friendly AUR helper written in Python
(or: yet another (almost) Instant AUR helper for Managing Packages And helping users navigate Linux cli tools. Amen.)

impala install vivaldi-snapshot output
impala upgrade output

Features

  • User friendly UX designed with beginners in mind, without sacrificing the comfort of advanced users:
    • Plain English commands, not flags. install instead of -S, remove instead of -Rs
    • Package lists are output as concise tables including all package information.
    • Pretty text formatting using Rich, pretty confirmation prompts using Questionary.
  • Narrow search with keywords (impala install zen browser searches for zen and then filters out packages without browser)
  • Search repositories from pacman.conf along with the AUR.
  • Automatically install dependencies required to build packages

System requirements

Operating system

Arch Linux, or any Arch Linux based distribution

Installed packages

IMPALA requires the following packages to be installed:

  • git
  • base-devel
  • python version 3.8 or higher
  • pip (can be uninstalled after IMPALA is built)

Installation

From the AUR (recommended)

COMING SOON: IMPALA has not yet been submitted to the AUR/is awaiting approval. This readme will be updated once installing from the AUR is viable.

From PyPI

You can install IMPALA from PyPI with the following command:

pip install impala-aur-helper

View IMPALA on PyPI at: https://pypi.org/project/impala-aur-helper/1.0b1/

From source

IMPALA can be installed from source in two ways:

Using makepkg (recommended)

IMPALA can be installed by running the following commands:

git clone https://github.com/tildes1lly/IMPALA.git
cd IMPALA
makepkg -si

If you'd like to chain them all together, you can do so as well:

git clone https://github.com/tildes1lly/IMPALA.git && cd IMPALA && makepkg -si

Using pip

IMPALA can be installed with pip using the following commands:

git clone https://github.com/tildes1lly/IMPALA.git
cd IMPALA
pip install .

If you'd like to chain them all together, you can do so as well:

git clone https://github.com/tildes1lly/IMPALA.git && cd IMPALA && pip install .

Usage

Commands

Install

impala install <keywords>
Searches the AUR and repositories for matching packages and asks the user which package(s) to install.
Example: impala install firefox

Remove

impala remove <keywords>
Searches for installed packages matching keywords and asks the user which package(s) to uninstall
Example: impala remove firefox

Upgrade/Update

impala upgrade or impala update
Upgrades all packages that are out of date.
Example: impala upgrade

Impala vs. yay and paru

User Interface

Package installation

yay:

yay -S vivaldi-snapshot output

paru:

paru -S vivaldi-snapshot output

IMPALA:

impala install vivaldi-snapshot output

System upgrades

yay:

yay -Syu output

paru:

paru -Syu output

IMPALA:

impala upgrade output

Note

NOTE: IMPALA focuses on user experience as opposed to yay and paru. yay and paru may be better for advanced users.

Bad PKGBUILD: Waterfox

NOTE: Waterfox has a bad PKGBUILD as of this being written. That is why Waterfox was chosen for a comparison. The AUR helpers are all expected to fail here, the comparison is how long they'll take before erroring out of a bad PKGBUILD

https://github.com/tildes1lly/IMPALA/raw/main/README_media/comparison.mp4

NOTE: This video contains speed changes, as if it didn't it would be 13 minutes long.
If you don't want to watch the video: IMPALA & paru perform similarly (paru: 15s, IMPALA: 25s) while yay falls behind taking 11 minutes before failing.

Note

These comparisons are all made in good faith. This project was heavily inspired by yay and paru and much love goes towards their developers. yay and paru objectively have more features than IMPALA; if you are a power user, they are probably better for your needs.

Contributing

If you want to contribute to IMPALA, create a fork fixing an issue or adding a feature. Then, open a pull request.
For monetary contributions, see Supporting IMPALA.

License

IMPALA is licensed under GNU GPL 3.0.

Supporting IMPALA

ko-fi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

impala_aur_helper-1.0b2.tar.gz (5.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

impala_aur_helper-1.0b2-py3-none-any.whl (6.1 MB view details)

Uploaded Python 3

File details

Details for the file impala_aur_helper-1.0b2.tar.gz.

File metadata

  • Download URL: impala_aur_helper-1.0b2.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for impala_aur_helper-1.0b2.tar.gz
Algorithm Hash digest
SHA256 56fc60d9b54b38a97e7d5ba34efa5fe63c7cdcd09e110dc53a9ab4331fd1eaf0
MD5 5da9e24e91e5392a0ba9747fed54d839
BLAKE2b-256 a8ed3eb09421c9d1f1128ac1f759dcb2e6da0ff48e5f84e6788514836207f64b

See more details on using hashes here.

File details

Details for the file impala_aur_helper-1.0b2-py3-none-any.whl.

File metadata

File hashes

Hashes for impala_aur_helper-1.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 de95237bcd751204974889bf1a62301174d6e9f7dd70a041b5b85d96fd627572
MD5 2a3a233bcef5a38f5bf332e6a348bdde
BLAKE2b-256 83fc27acc8548d354d48075f66ee82a486b045617afcb7a0979fa8df35f68893

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page