expose pkgmgr.cli for Python 3.13 compatibility - Add `.nix-dev-installed` to .gitignore - Improve flake.nix: * unify pkgs/pyPkgs definitions * provide python311.withPackages including pip + PyYAML * remove unused pkgmgrPkg reference from devShell * fix PYTHONPATH export and devShell help message - Update unit/integration test scripts to use `python3 -m unittest` - Add top-level pkgmgr.__init__ exposing `cli` attribute for pkgutil.resolve_name compatibility under Python 3.13+
Package Manager🤖📦
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.
Features 🚀
-
Installation & Setup:
Create executable wrappers with auto-detected commands (e.g.main.shormain.py). -
Git Operations:
Easily performgit pull,push,status,commit,diff,add,show, andcheckoutwith 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 PKGMGR’s package structure, installation layers, and setup controller flow:
Diagram status: Stand: 11. Dezember 2025
Always-up-to-date version: https://s.veen.world/pkgmgrmp
Installation ⚙️
Clone the repository and ensure your ~/.local/bin is in your system PATH:
git clone https://github.com/kevinveenbirkenbach/package-manager.git
cd package-manager
Install make and pip if not installed yet:
pacman -S make python-pip
Then, run the following command to set up the project:
make setup
The make setup command will:
- Make
main.pyexecutable. - Install required packages from
requirements.txt. - Execute
python main.py installto complete the installation.
License 📄
This project is licensed under the MIT License.
Author 👤
Kevin Veen-Birkenbach
https://www.veen.world
