Files
pkgmgr/README.md

71 lines
2.8 KiB
Markdown
Raw Permalink Normal View History

2025-03-04 19:49:21 +01:00
# Package Manager🤖📦
2025-03-12 20:40:19 +01:00
[![GitHub Sponsors](https://img.shields.io/badge/Sponsor-GitHub%20Sponsors-blue?logo=github)](https://github.com/sponsors/kevinveenbirkenbach)
[![Patreon](https://img.shields.io/badge/Support-Patreon-orange?logo=patreon)](https://www.patreon.com/c/kevinveenbirkenbach)
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20me%20a%20Coffee-Funding-yellow?logo=buymeacoffee)](https://buymeacoffee.com/kevinveenbirkenbach) [![PayPal](https://img.shields.io/badge/Donate-PayPal-blue?logo=paypal)](https://s.veen.world/paypaldonate)
2025-03-04 17:28:40 +01:00
[![GitHub license](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![GitHub repo size](https://img.shields.io/github/repo-size/kevinveenbirkenbach/package-manager)](https://github.com/kevinveenbirkenbach/package-manager)
2025-03-04 19:49:21 +01:00
*Kevins's* Package Manager is a configurable Python tool designed to manage multiple repositories via Bash. It automates common Git operations such as clone, pull, push, status, and more. Additionally, it handles the creation of executable wrappers and alias links for your repositories.
2025-03-04 17:28:40 +01:00
## Features 🚀
- **Installation & Setup:**
Create executable wrappers with auto-detected commands (e.g. `main.sh` or `main.py`).
2025-03-04 17:28:40 +01:00
- **Git Operations:**
Easily perform `git pull`, `push`, `status`, `commit`, `diff`, `add`, `show`, and `checkout` with extra parameters passed through.
- **Configuration Management:**
Manage repository configurations via a default file (`config/defaults.yaml`) and a user-specific file (`config/config.yaml`). Initialize, add, delete, or ignore entries using subcommands.
- **Path & Listing:**
Display repository paths or list all configured packages with their details.
- **Custom Aliases:**
Generate and manage custom aliases for easy command invocation.
## Architecture & Setup Map 🗺️
The following diagram provides a full overview of PKGMGRs package structure,
installation layers, and setup controller flow:
![PKGMGR Architecture](assets/map.png)
**Diagram status:** *Stand: 11. Dezember 2025*
**Always-up-to-date version:** https://s.veen.world/pkgmgrmp
2025-04-01 15:37:07 +02:00
2025-03-04 17:28:40 +01:00
## Installation ⚙️
2025-04-01 15:37:07 +02:00
Clone the repository and ensure your `~/.local/bin` is in your system PATH:
2025-03-04 17:28:40 +01:00
```bash
git clone https://github.com/kevinveenbirkenbach/package-manager.git
cd package-manager
```
2025-04-01 20:19:21 +02:00
Install make and pip if not installed yet:
```bash
pacman -S make python-pip
```
2025-04-01 15:37:07 +02:00
Then, run the following command to set up the project:
2025-03-04 17:28:40 +01:00
```bash
2025-04-01 15:37:07 +02:00
make setup
2025-03-04 17:28:40 +01:00
```
2025-04-01 15:37:07 +02:00
The `make setup` command will:
- Make `main.py` executable.
- Install required packages from `requirements.txt`.
- Execute `python main.py install` to complete the installation.
2025-03-04 17:28:40 +01:00
## License 📄
This project is licensed under the MIT License.
## Author 👤
Kevin Veen-Birkenbach
[https://www.veen.world](https://www.veen.world)