Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/uni-linux/uni
:rocket: A universal and optimized interface for handle package managers, UNI recipes and automating tasks on them in Linux distributions.
https://github.com/uni-linux/uni
abstraction apt automation dnf fedora handler interface linux linux-distribution management package-manager recipe ubuntu uni uni-recipes universal
Last synced: about 1 month ago
JSON representation
:rocket: A universal and optimized interface for handle package managers, UNI recipes and automating tasks on them in Linux distributions.
- Host: GitHub
- URL: https://github.com/uni-linux/uni
- Owner: uni-linux
- License: mit
- Created: 2016-11-04T00:43:29.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-06-01T22:29:09.000Z (over 2 years ago)
- Last Synced: 2024-09-29T15:04:14.778Z (about 1 month ago)
- Topics: abstraction, apt, automation, dnf, fedora, handler, interface, linux, linux-distribution, management, package-manager, recipe, ubuntu, uni, uni-recipes, universal
- Language: Shell
- Homepage:
- Size: 62.5 KB
- Stars: 58
- Watchers: 5
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Do More, Write less
A universal and optimized interface for handle package managers, UNI recipes and automating tasks on them in Linux distributions.
> 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](#goal)
- [How it Works?](#how-it-works)
- [Example](#example)
- [Using Recipes](#using-recipes)
- [Example](#example-1)
- [Installation](#installation)
- [Uninstallation](#uninstallation)
- [Documentation](#documentation)
- [Contributing](#contributing)# 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**:
```shell
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**:
```shell
sudo dnf upgrade -y
sudo dnf autoremove -y
```Using Recipes
Now you can use available recipes too or create your owns and publish it [here](https://github.com/uni-linux/recipes). 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.](https://github.com/uni-linux/recipes)
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:
```shell
wget -O upm https://git.io/v1UKq && chmod +x upm && ./upm && rm upm
```
**Fedora** ( supports only dnf for now ):
```shell
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
- [English](https://github.com/daltonmenezes/uni/blob/master/docs/en/API.md)
- Português (Em breve)# 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](https://github.com/daltonmenezes/uni/blob/master/docs/en/CONTRIBUTING.md).