Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: support cards #23

Merged
merged 2 commits into from
Dec 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 30 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,31 +45,32 @@ pacman -S vim # use pacman syntax to install a package
### Supported Tools

```
| Tool | Install | Uninstall | Upgrade | Search | Info | Update Index | Upgrade All | List Installed |
| -------- | ---------------------------- | ---------------------------- | ------------------------------ | -------------------------- | ------------------------------- | ------------------------ | ------------------------ | --------------------------------- |
| apk | apk add <pkg> | apk del <pkg> | apk upgrade <pkg> | apk search <pkg> | apk info <pkg> | apk update | apk upgrade | apk list -I/--installed |
| apt | apt install <pkg> | apt remove <pkg> | apt install <pkg> | apt search <pkg> | apt show <pkg> | apt update | apt upgrade | apt list -i/--installed |
| brew | brew install <pkg> | brew uninstall <pkg> | brew upgrade <pkg> | brew search <pkg> | brew info <pkg> | brew update | brew upgrade | brew list |
| choco | choco install <pkg> | choco uninstall <pkg> | choco upgrade <pkg> | choco search <pkg> | choco info <pkg> | choco upgrade all --noop | choco upgrade all | choco list -l/--local-only |
| dnf | dnf install <pkg> | dnf remove <pkg> | dnf upgrade <pkg> | dnf search <pkg> | dnf info <pkg> | dnf check-update | dnf update | dnf list --installed |
| emerge | emerge <pkg> | emerge --deselect <pkg> | emerge --update <pkg> | emerge --search <pkg> | emerge --info <pkg> | emerge --sync | emerge -vuDN @world | qlist -lv |
| eopkg | eopkg install <pkg> | eopkg remove <pkg> | eopkg upgrade <pkg> | eopkg search <pkg> | eopkg info <pkg> | eopkg update-repo | eopkg upgrade | eopkg list-installed |
| flatpak | flatpak install <pkg> | flatpak uninstall <pkg> | flatpak update <pkg> | flatpak search <pkg> | flatpak info <pkg> | - | flatpak update | flatpak list |
| guix | guix install <pkg> | guix remove <pkg> | guix upgrade <pkg> | guix search <pkg> | guix show <pkg> | guix refresh | guix upgrade | guix package -I/--list-installed |
| nix-env | nix-env -i/--install <pkg> | nix-env -e/--uninstall <pkg> | nix-env -u/--upgrade <pkg> | nix-env -qaP <pkg> | nix-env -qa --description <pkg> | nix-channel --update | nix-env -u/--upgrade | nix-env -q/--query --installed |
| opkg | opkg install <pkg> | opkg remove <pkg> | opkg upgrade <pkg> | opkg find <pkg> | opkg info <pkg> | opkg update | opkg upgrade | opkg list --installed |
| pacman | pacman -S <pkg> | pacman -Rs <pkg> | pacman -S <pkg> | pacman -Ss <pkg> | pacman -Si <pkg> | pacman -Syy | pacman -Syu | pacman -Qe |
| pkg | pkg install <pkg> | pkg remove <pkg> | pkg install <pkg> | pkg search <pkg> | pkg info <pkg> | pkg update | pkg upgrade | pkg info -a/--all |
| pkg(2) | pkg install <pkg> | pkg uninstall <pkg> | pkg install <pkg> | pkg search <pkg> | pkg show <pkg> | pkg update | pkg upgrade | pkg list-installed |
| scoop | scoop install <pkg> | scoop uninstall <pkg> | scoop update <pkg> | scoop search <pkg> | scoop info <pkg> | scoop update | scoop update * | scoop list |
| slackpkg | slackpkg install <slackpkg> | slackpkg remove <slackpkg> | slackpkg upgrade <slackpkg> | slackpkg search <slackpkg> | slackpkg info <slackpkg> | slackpkg update | slackpkg upgrade-all | ls -1 /var/log/packages |
| snap | snap install --classic <pkg> | snap remove <pkg> | snap refresh <pkg> | snap find <pkg> | snap info <pkg> | - | snap refresh | snap list |
| upt | upt install <pkg> | upt remove <pkg> | upt upgrade <pkg> | upt search <pkg> | upt info <pkg> | upt update | upt upgrade | upt list |
| urpm | urpmi <pkg> | urpme <pkg> | urpmi <pkg> | urpmq -y/--fuzzy <pkg> | urpmq -i <pkg> | urpmi.update -a | urpmi --auto-update | rpm -q/--query --all |
| winget | winget install <pkg> | winget uninstall <pkg> | winget upgrade <pkg> | winget search <pkg> | winget show <pkg> | - | winget upgrade --all | winget list |
| xbps | xbps-install <pkg> | xbps-remove <pkg> | xbps-install -u/--update <pkg> | xbps-query -Rs <pkg> | xbps-query -RS <pkg> | xbps-install -S/--sync | xbps-install -u/--update | qxbps-query -l/--list-pkgs |
| yum | yum install <pkg> | yum remove <pkg> | yum upgrade <pkg> | yum search <pkg> | yum info <pkg> | yum check-update | yum update | yum list --installed |
| zypper | zypper install <pkg> | zypper remove <pkg> | zypper update <pkg> | zypper search <pkg> | zypper info <pkg> | zypper refresh | zypper update | zypper search -i/--installed-only |
| Tool | Install | Uninstall | Upgrade | Search | Info | Update Index | Upgrade All | List Installed |
| -------- | ---------------------------- | ---------------------------- | -------------------------------- | -------------------------- | ------------------------------- | ------------------------ | ------------------------ | --------------------------------- |
| apk | apk add <pkg> | apk del <pkg> | apk upgrade <pkg> | apk search <pkg> | apk info <pkg> | apk update | apk upgrade | apk list -I/--installed |
| apt | apt install <pkg> | apt remove <pkg> | apt install --only-upgrade <pkg> | apt search <pkg> | apt show <pkg> | apt update | apt upgrade | apt list -i/--installed |
| brew | brew install <pkg> | brew uninstall <pkg> | brew upgrade <pkg> | brew search <pkg> | brew info <pkg> | brew update | brew upgrade | brew list |
| cards | cards install <pkg> | cards remove <pkg> | cards install -u/--upgrade <pkg> | cards search <pkg> | cards info <pkg> | cards sync | cards upgrade | cards list |
| choco | choco install <pkg> | choco uninstall <pkg> | choco upgrade <pkg> | choco search <pkg> | choco info <pkg> | choco upgrade all --noop | choco upgrade all | choco list -l/--local-only |
| dnf | dnf install <pkg> | dnf remove <pkg> | dnf upgrade <pkg> | dnf search <pkg> | dnf info <pkg> | dnf check-update | dnf update | dnf list --installed |
| emerge | emerge <pkg> | emerge --deselect <pkg> | emerge --update <pkg> | emerge --search <pkg> | emerge --info <pkg> | emerge --sync | emerge -vuDN @world | qlist -lv |
| eopkg | eopkg install <pkg> | eopkg remove <pkg> | eopkg upgrade <pkg> | eopkg search <pkg> | eopkg info <pkg> | eopkg update-repo | eopkg upgrade | eopkg list-installed |
| flatpak | flatpak install <pkg> | flatpak uninstall <pkg> | flatpak update <pkg> | flatpak search <pkg> | flatpak info <pkg> | - | flatpak update | flatpak list |
| guix | guix install <pkg> | guix remove <pkg> | guix upgrade <pkg> | guix search <pkg> | guix show <pkg> | guix refresh | guix upgrade | guix package -I/--list-installed |
| nix-env | nix-env -i/--install <pkg> | nix-env -e/--uninstall <pkg> | nix-env -u/--upgrade <pkg> | nix-env -qaP <pkg> | nix-env -qa --description <pkg> | nix-channel --update | nix-env -u/--upgrade | nix-env -q/--query --installed |
| opkg | opkg install <pkg> | opkg remove <pkg> | opkg upgrade <pkg> | opkg find <pkg> | opkg info <pkg> | opkg update | opkg upgrade | opkg list --installed |
| pacman | pacman -S <pkg> | pacman -Rs <pkg> | pacman -S <pkg> | pacman -Ss <pkg> | pacman -Si <pkg> | pacman -Syy | pacman -Syu | pacman -Qe |
| pkg | pkg install <pkg> | pkg remove <pkg> | pkg install <pkg> | pkg search <pkg> | pkg info <pkg> | pkg update | pkg upgrade | pkg info -a/--all |
| pkg(2) | pkg install <pkg> | pkg uninstall <pkg> | pkg install <pkg> | pkg search <pkg> | pkg show <pkg> | pkg update | pkg upgrade | pkg list-installed |
| scoop | scoop install <pkg> | scoop uninstall <pkg> | scoop update <pkg> | scoop search <pkg> | scoop info <pkg> | scoop update | scoop update * | scoop list |
| slackpkg | slackpkg install <slackpkg> | slackpkg remove <slackpkg> | slackpkg upgrade <slackpkg> | slackpkg search <slackpkg> | slackpkg info <slackpkg> | slackpkg update | slackpkg upgrade-all | ls -1 /var/log/packages |
| snap | snap install --classic <pkg> | snap remove <pkg> | snap refresh <pkg> | snap find <pkg> | snap info <pkg> | - | snap refresh | snap list |
| upt | upt install <pkg> | upt remove <pkg> | upt upgrade <pkg> | upt search <pkg> | upt info <pkg> | upt update | upt upgrade | upt list |
| urpm | urpmi <pkg> | urpme <pkg> | urpmi <pkg> | urpmq -y/--fuzzy <pkg> | urpmq -i <pkg> | urpmi.update -a | urpmi --auto-update | rpm -q/--query --all |
| winget | winget install <pkg> | winget uninstall <pkg> | winget upgrade <pkg> | winget search <pkg> | winget show <pkg> | - | winget upgrade --all | winget list |
| xbps | xbps-install <pkg> | xbps-remove <pkg> | xbps-install -u/--update <pkg> | xbps-query -Rs <pkg> | xbps-query -RS <pkg> | xbps-install -S/--sync | xbps-install -u/--update | qxbps-query -l/--list-pkgs |
| yum | yum install <pkg> | yum remove <pkg> | yum upgrade <pkg> | yum search <pkg> | yum info <pkg> | yum check-update | yum update | yum list --installed |
| zypper | zypper install <pkg> | zypper remove <pkg> | zypper update <pkg> | zypper search <pkg> | zypper info <pkg> | zypper refresh | zypper update | zypper search -i/--installed-only |
```

### Known OSs
Expand All @@ -83,7 +84,8 @@ pacman -S vim # use pacman syntax to install a package
| macos | brew, port |
+------------------------------------------------------+----------------------+
| ubuntu, debian, linuxmint, pop, deepin, elementray | apt |
| kali, raspbian, aosc, zorin, antix, devuan | |
| kali, raspbian, aosc, zorin, antix, devuan, bodhi | |
| lxle, sparky | |
+------------------------------------------------------+----------------------+
| fedora, redhat, rhel, amzn, ol, almalinux, rocky | dnf, yum |
| oubes, centos, qubes, eurolinux | |
Expand All @@ -109,6 +111,8 @@ pacman -S vim # use pacman syntax to install a package
+------------------------------------------------------+----------------------+
| openwrt | opkg |
+------------------------------------------------------+----------------------+
| nutyx | cards |
+------------------------------------------------------+----------------------+
| freebsd, ghostbsd | pkg |
+------------------------------------------------------+----------------------+
| android | pkg(2) |
Expand Down
19 changes: 18 additions & 1 deletion src/vendor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ os_tools!(
"zorin" => "apt";
"antix" => "apt";
"devuan" => "apt";
"bodhi" => "apt";
"lxle" => "apt";
"sparky" => "apt";
// dnf
"fedora" => "dnf", "yum";
"redhat" => "dnf", "yum";
Expand Down Expand Up @@ -60,6 +63,8 @@ os_tools!(
"solus" => "eopkg";
// opkg
"openwrt" => "opkg";
// cards
"nutyx" => "cards";
// pkg
"freebsd" => "pkg";
"ghostbsd" => "pkg";
Expand All @@ -85,7 +90,7 @@ vendors![
confirm: "-y/--yes",
install: "apt install $",
remove: "apt remove $",
upgrade: "apt install $",
upgrade: "apt install --only-upgrade $",
search: "apt search $",
info: "apt show $",
update_index: "apt update",
Expand All @@ -104,6 +109,18 @@ vendors![
upgrade_all: "brew upgrade",
list_installed: "brew list",
},
{
name: "cards",
confirm: "",
install: "cards install $",
remove: "cards remove $",
upgrade: "cards install -u/--upgrade $",
search: "cards search $",
info: "cards info $",
update_index: "cards sync",
upgrade_all: "cards upgrade",
list_installed: "cards list",
},
{
name: "choco",
confirm: "-y",
Expand Down
Loading