86 lines
2.5 KiB
Markdown
86 lines
2.5 KiB
Markdown
# Topaz
|
|
A package manager wrapper, that change the game.
|
|
|
|
## What is it?
|
|
|
|
Topaz is a package manager wrapper, that mean Topaz is not package manager
|
|
by it self, it uses other package managers to install, remove and check
|
|
packages.
|
|
|
|
So you can think what's the point of using it and it's good question,
|
|
Topaz allows you to better manage you packages by adding a **world file**.
|
|
|
|
**The world file** contains every package that is expicitly installed
|
|
on you system, so you can add packages to the list to add or remove them
|
|
from list to remove them.
|
|
|
|
After change to world file you run synchronize command that removes
|
|
unwanted packages and install missing ones.
|
|
|
|
## Usage
|
|
|
|
To use this PM Wrapper first you need to create a world file.
|
|
The world file describe every package that is should be installed
|
|
on your mashine.
|
|
|
|
To create it type
|
|
```bash
|
|
topaz export
|
|
```
|
|
This command will check currently installed packages and based on that
|
|
will create world file.
|
|
|
|
> [!NOTE]
|
|
> Default path to the world file is:
|
|
> `/etc/topaz/world.toml`
|
|
|
|
After creating the world file you can go add and/or remove packages from it,
|
|
then when you want to synchronize you mashine with the world file execute:
|
|
```bash
|
|
topaz sync
|
|
```
|
|
or if you want also delete packages instead of only installing/updating existing
|
|
```bash
|
|
topaz sync -r
|
|
```
|
|
That command will sync your mashine by installing/updating packages, but
|
|
also will delete unneeded packages like packages that you deleted from
|
|
`world.toml` or some abandoned packages.
|
|
|
|
If you want to see the difference between the world file and your mashine
|
|
you can use this command
|
|
```bash
|
|
topaz diff
|
|
```
|
|
It will print what packages are installed on your system that don't appear
|
|
in the world file and ones that are in the world file, but aren't installed
|
|
on your mashine.
|
|
|
|
When you want to only delete unwanted packages from your system you
|
|
can use this command
|
|
```bash
|
|
topaz pure
|
|
```
|
|
It will only delete unwanted packages without affecting everything else,
|
|
additionaly you can add `-a` argument. This is a equivalent to use
|
|
`-Rns` instead of `-Rs` in `pacman`.
|
|
|
|
## Instalation
|
|
|
|
You can use your favourite AUR Helper to install topaz eg.
|
|
```bash
|
|
yay -S topaz-pm
|
|
paru -S topaz-pm
|
|
```
|
|
|
|
## Support
|
|
|
|
Currently topaz fully support **Pacman** and **Yay**. **Paru** should work, but I don't
|
|
have setup to test it, so someone interested in using paru can test it and give feedback.
|
|
|
|
## License
|
|
|
|
This project is licensed under the GNU General Public License v3.0 or later.
|
|
|
|
See the [LICENSE](./LICENSE) file for details.
|