/uni

:rocket: A universal and optimized interface for handle package managers, UNI recipes and automating tasks on them in Linux distributions.

Primary LanguageShellMIT LicenseMIT

Do More, Write less

A universal and optimized interface for handle package managers, UNI recipes and automating tasks on them in Linux distributions.

fund issues on issuehunt become a patron or sponsor donate on paypal version get-recipes current support license


UNI is an abstraction layer that allows you to manage different package managers or UNI Recipes using the same UNI commands regardless of the distribution you are using and automates repetitive tasks on them.


Table of Contents

Goal

Make an easy interface to abstract repetitive commands related to package management. Join tasks that require the execution of others without spending time typing one by one. Make it easy to work between different distributions by always using the same UNI commands regardless of the distribution you are using.

How it Works?

UNI uses your main package manager to do the things and abstracts the original commands through a simple and universal UNI interface.

Example

Command Alias Description
uni upgrade uni up Upgrades deeply the system and remove useless dependencies.

This will trigger the following commands on Ubuntu:

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo apt-get autoremove -y

This will trigger the following commands on Fedora:

sudo dnf upgrade -y
sudo dnf autoremove -y

Using Recipes

uni bake gif

Now you can use available recipes too or create your owns and publish it here. Recipes are bash scripts to do anything. Be it to install programs and resolve dependencies or fix system problems. Anything you want and can do with bash scripts.

Example

Command Alias Description
uni bake atom-install uni b atom-install Installs the latest version of
Atom Editor from their
official website and resolve
dependency issues.

Check here the list of available recipes for usage. You can also type uni --recipes to fetch the current list of recipes from GitHub and display in your terminal.

Installation

Ubuntu and based distributions:

wget -O upm https://git.io/v1UKq && chmod +x upm && ./upm && rm upm

Fedora ( supports only dnf for now ):

wget -O upm https://git.io/v1UKO && chmod +x upm && ./upm && rm upm

Uninstallation

Command Alias Description
uni remove-me uni rm-me Removes uni

Documentation

Contributing

I've created a 'recompiler' tool to help us to test locally using uni command on terminal normally during the development.

So, let's check the contributing guide here.