Skip to main content

A unifying package manager command line tool

Project description

unipkg

unipkg is a command-line tool designed for managing packages across various Linux distributions. It provides a unified command line syntax for common package management tasks such as updating, upgrading, installing, removing, and cleaning packages. Intended for Linux beginners and people who often work on various distributions and don't want to write down syntax of package managers (understandable).

How it works

  1. By the first time executing unipkg, you have to configure which package managers you want to include for updating and upgrading packages and which package manager you want to use primarily (for all the other commands, e.g., installing packages). You can always change the configuration with unipkg --set upudate or unipkg --set manage.
  2. When executing a command like unipkg install firefox it translates it to the equivalent command of the chosen package manager (e.g., for apt sudo apt install firefox or for pacman sudo pacman -S firefox).
  3. The now translated command wil be executed in the current environment. Remember that most likely you will be asked by sudo to enter your password.

Features

  • Compatible with most Linux distributions.
  • Supports common package management commands: update, upgrade, install, remove, clean, searchlocal, and search.
  • Automatically detects the available package manager(s) on the system.

Requirements

  • at least Python 3.10
  • Linux operating system

Compatible package managers

  • apt (Debian/Ubuntu)
  • pacman (Arch)
  • yay (Arch)
  • dnf (Fedora/CentOS)
  • zypper (OpenSUSE)
  • apk (Alpine Linux)
  • snap (universal)
  • flatpak (universal)

Tested package managers

  • apt
  • snap
  • flatpak

(Please report any problems!)

Installation

  1. ensure you have at least Python version 3.10 installed on your Linux system
  2. run pip install unipkg

Usage

To use unipkg, run the command with the desired argument and any necessary package names. The basic syntax is:

unipkg <manage> [packages]
# Replace <manage> with one of the commands, e.g., 'install'

Commands

  • update: Update the package manager's database.
  • upgrade: Upgrade installed packages. You can specify package names or upgrade all.
  • install: Install specified packages.
  • remove: Remove specified packages.
  • clean: Clean up unused dependencies.
  • search: Search for packages in the online repository.
  • searchlocal: Search for installed packages.
  • everything: Executes the update, upgrade and clean-command all at once.
  • --set <update or manage>: Configure, which package managers you want to update and on which you want to use the package management commands (install, remove, search, etc.).
  • --pm <package manager>: Execute a command for a specific package manager.

This isn't a finished version!

But it works with it's few features. unipkg is in it's (very) early development, and there will be many features added in near future. For this moment, unipkg only works with basic commands, but you can expect some more interesting features coming in the next few weeks and months.

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

unipkg-0.1.3.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

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

unipkg-0.1.3-py3-none-any.whl (20.8 kB view details)

Uploaded Python 3

File details

Details for the file unipkg-0.1.3.tar.gz.

File metadata

  • Download URL: unipkg-0.1.3.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for unipkg-0.1.3.tar.gz
Algorithm Hash digest
SHA256 800223b6bd3c8ae87b699789b23b00376b3ffbb22e0e7564e941d35c6fe163f5
MD5 3a0e14146bdb4603cd802001c9026ff9
BLAKE2b-256 9d8194ab8473b0ecc9a9e18b8eeade4fa9ca416bfa3156804015c4f169b115f7

See more details on using hashes here.

File details

Details for the file unipkg-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: unipkg-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 20.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for unipkg-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 40ae2111ba1bf314acef0ce945b350e443de507bf824393266d42fc19b2f7dec
MD5 67dbf408592488655f9e3d61f7dfc2d9
BLAKE2b-256 ab71273e534780624555563ac2ada36f38197a4275aac24f0828b876bc335670

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