Upt
Universal Package-management Tool for Windows, macOS and Linux.
Upt recongizes your input, and interprets it into the command which invokes the native package management tool.
For example, if your input brew install vim
or upt install vim
on Ubutu
, upt will recongize that your want to install vim, then execute apt install vim
.
Rename upt
to pacman
, your can take advantage of your pacman
experience to manage packages. It becomes pacman
. Type pacman -S cargo
to install cargo other than pacman install cargo
.
Install
- From binaries
Binaries are available for download here. Make sure to put the path to the binary into your
PATH
.
-
For Contributions
If you want to contribute to upt you will have to clone the repository on your local machine:
git clone https://github.com/sigoden/upt.git
cd
intoupt/
and runcargo build
The resulting binary can be found in
upt/target/debug/
under the nameupt
orupt.exe
.
Usage
Upt is not only a command line tool but also an interpreter.
As a command line, it can:
- Install packges:
upt install cargo
- Remove packages:
upt remove cargo
- Remove packages:
upt upgrade cargo
- Search for packges:
upt search cargo
- Show package details:
upt show cargo
- Show indexes of packages:
upt update
- Upgrade all packages :
upt upgrade
- List installed packages:
upt -i
- List upgradable packages:
upt -u
For general purpose, upt only provide most general and useful commands.
As a interpreter, it can act as other command line tool by rename upt
. See blow.
| task | udt | apt | brew | choco | yum | dnf | pacman | apk |
| :------------------------- | :--------------- | :-------------------- | :------------------ | :------------------- | :----------------- | :------------------- | :-------------- | :------------------- |
| Install packages | udt install $pkg | apt install $pkg | brew install $pkg | choco install $pkg | yum install $pkg | dnf install $pkg | pacman -S $pkg | apk add $pkg |
| Remove packages | udt remove $pkg | apt remove $pkg | brew uninstall $pkg | choco uninstall $pkg | yum remove $pkg | dnf remove $pkg | pacman -Rs $pkg | apk del $pkg |
| Upgrade packages | udt upgrade $pkg | apt install $pkg | brew upgrade $pkg | choco upgrade $pkg | yum update $pkg | dnf upgrade $pkg | pacman -S $pkg | apk upgrade $pkg |
| Search for package | udt search $pkg | apt search $pkg | brew search $pkg | choco search $pkg | yum search $pkg | dnf search $pkg | pacman -Ss $pkg | apk search $pkg |
| Show package details | udt show $pkg | apt show $pkg | brew info $pkg | choco info $pkg | yum info $pkg | dnf info $pkg | pacman -Si $pkg | apk info $pkg |
| Update indexes of packages | udt update | apt update | brew update | choco upgrade --noop | yum check-update | dnf check-update | pacman -Syy | apk update |
| Upgrade all packages | udt upgrade | apt upgrade | brew upgrade | choco upgrade all | yum update | dnf upgrade | pacman -Syu | apk upgrade |
| List upgradable packages | udt list -u | apt list --upgradable | brew outdated | choco outdated | yum list updates | dnf list --upgrades | pacman -Qu | apk list --upgrades |
| List installed packages | udt list -i | apt list --installed | brew list | choco list -lai | yum list installed | dnf list --installed | pacman -Qe | apk list --installed |
License
Copyright (c) 2019 sigoden
Licensed under the MIT license.