Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zamhedonia/paxs

Manage Arch, Flatpak and Snap packages in one simple interface. 🐧
https://github.com/zamhedonia/paxs

arch-linux aur bash flatpak linux package-management snap wrapper yay

Last synced: about 2 months ago
JSON representation

Manage Arch, Flatpak and Snap packages in one simple interface. 🐧

Awesome Lists containing this project

README

        

## paxs
`paxs` is a convenient Bash script for searching, installing, removing, and upgrading packages across three different package managers: Yay (Arch Repository + AUR), Flatpak, and Snap.

It streamlines the process of finding, installing, removing, and upgrading packages across multiple package formats with a single command.


### Installation
**Dependencies:** yay, flatpak, snapd

#### Install from the AUR
```bash
yay -S paxs
```

#### Manual Installation:
1. **Download the script:**
```bash
git clone https://github.com/zamhedonia/paxs.git
```

2. **Open the directory:**
```bash
cd ~/paxs
```

3. **Install the package:**
```bash
makepkg -si
```

### Usage

- 🔍 **Search for a package:**
```bash
paxs
```
For example:
```bash
paxs firefox
```
This command will search for the package "firefox" in:
- Yay (Arch Repository and Arch User Repository)
- Flatpak
- Snap

You'll receive the results from each package manager, one after the other.

- âŦ **Install a package:**
```bash
paxs -i
```
or
```bash
paxs --install
```
This command will search for the package and prompt you to select which source (Yay, Flatpak, or Snap) to install from.

- Install packages from specific source:
```bash
paxs -iy
```
or
```bash
paxs --install-yay
```

- ❌ **Remove a package:**
```bash
paxs -r
```
or
```bash
paxs --remove
```
This command will search for the package across Yay, Flatpak, and Snap and prompt you to choose which source to remove the package from.

- Remove packages from specific source:
```bash
paxs -rf
```
or
```bash
paxs --remove-flatpak
```

- ↩ī¸ **Check for updates across Yay, Flatpak, and Snap:**
```bash
paxs -c
```
or
```bash
paxs --check-update
```

- 🔃 **Upgrade all packages across Yay, Flatpak, and Snap:**
```bash
paxs -u
```
or
```bash
paxs --upgrade-all
```

- Upgrade packages from specific source:
```bash
paxs -us
```
or
```bash
paxs --upgrade-snap
```

- ℹī¸ **Display the help manual:**
```bash
paxs -h
```
or
```bash
paxs --help
```
or
```bash
man paxs
```

### Example Output

```bash
paxs firefox
```
```bash
Searching for 'firefox' in Yay, Flatpak, and Snap...

Yay search:
firefox 89.0-1 [installed] (mozilla)

Flatpak search:
firefox stable flathub org.mozilla.firefox

Snap search:
firefox (v89.0) mozilla - Firefox Web Browser
```

### Implementation

The program directly executes `yay`, `flatpak`, and `snapd` commands to manage packages, making it a unified interface for Arch-based distributions.