beyondmeh / piu

Cross platform package manager wrapper
ISC License
49 stars 11 forks source link
alpine-linux arch-linux centos cross-platform debian fedora linux linux-mint macos manjaro opensuse package-manager piu platform-independent ubuntu update-checker updaters void-linux

piu (Platform Independent Updater)

Skunk Logo

piu makes cross-platform package management stink less.

piu is an all-in-one wrapper for different package managers. It was born out of frustration over constantly typing the wrong command or passing the wrong flags when on different Linux distros.

Features

Currently Supports

Alpine Linux, Arch Linux, Debian, elementary OS, Fedora, macOS, Manjaro, Linux Mint, OpenSUSE, SteamOS, Ubuntu, and Void Linux

Alpine Linux   Arch Linux   Linux Mint   macOS   Ubuntu  

Elementary OS   Debian   Manjaro   Fedora   Void Linux OpenSUSE  

:copyright: above brands, logos, and trademarks are property of their respective owners.

Installation

$ curl https://raw.githubusercontent.com/beyondmeh/piu/master/piu -o piu && chmod +x piu && sudo mv piu /usr/local/bin

Alternatively, if you have something like ~/bin setup, just download piu there.

Uninstall

$ sudo rm /usr/local/bin/piu

Optional sudo Setup

While not required, if you will be using piu in a status bar script you should setup sudo to allow the package manager to sync its cache without prompting for a password.

This will allow piu to automatically refresh the package manager's cache periodically. Otherwise, piu will simply state the cache is out-of-date.

Add the following to /etc/sudoers, depending on your distribution:

apt (Debian & Ubuntu)

%wheel ALL=(ALL) NOPASSWD: /usr/bin/apt update

pacman (Arch Linux)

%wheel ALL=(ALL) NOPASSWD: /usr/bin/pacman -Sy

xbps (Void Linux)

%wheel ALL=(ALL) NOPASSWD: /usr/bin/xbps-install -S

NOTE: updating the package cache is relatively innocuous and safe to perform automatically without password; it does not install, update, or replace any programs. Most package managers need additional permissions simply because the cache is usually in /var, where most users don't have write permission.

Bug Reports

Submit bug reports via GitHub's Issue Tracker

Contributing

piu makes package manage stink even less thanks to all of its contributors, both on GitHub and elsewhere.

The project's skunk logo was drawn by the very talented Kelly. It has been digitized, cropped, and optimized for the web using GIMP and OptiPNG.

All the versions of the the logo, including the original drawing, are located in the .readme-assets/logo folder. All versions of the skunk logo are licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

If you can make piu better or add support for a missing distro, please feel free to submit a pull request. There are no further requirements, contributing to piu is easy and also doesn't stink!

License

Copyright © 2017 - 2023 BeyondMeh, except where otherwise noted.

Licensed under the ISC license.

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.