Packit is a lightweight package manager written in Bash. It uses GitHub repositories to manage packages, making it easy to install, update, and remove software components. This tool is ideal for developers who want to distribute and manage software packages using GitHub.
- Install Packages: Clone repositories from GitHub to a local directory.
- Remove Packages: Clean up installed packages.
- Update Packages: Pull the latest changes from GitHub.
- List Available Packages: View packages listed in an
index.txtfile. - Support for GitHub Integration: Download raw files or full repositories using
curlorgit.
- Bash: Ensure you have a Unix-like shell.
- Git: Required for cloning repositories.
- curl: For downloading files from GitHub.
curl -s https://raw.githubusercontent.com/Piyush-linux/packit/refs/heads/master/setup.sh | bash -xAdd the below line and source your .bashrc / .zshrc file
export PATH=$HOME/.local/bin/packit-scripts:$PATHsource ~/.bashrc- Install a Package
Installs a package by cloning its GitHub repository to a specified directory.
packit install <package_name>- Remove a Package
Removes a package from the installation directory.
packit remove <package_name>- Update a Package
Pulls the latest changes from the GitHub repository.
packit update <package_name>- List Available Packages
packit listpackit/
|-- scripts/
| |-- install.sh # Installation script
| |-- remove.sh # Removal script
| |-- update.sh # Update script
| |-- list.sh # List script
|-- repo/
| |-- index.txt # Package metadata
|-- packit.sh # Main CLI
- Version Management: Use Git tags to manage package versions.
- Dependency Resolution: Add support for resolving and installing dependencies.
- Improved Error Handling: Robust checks for network errors or missing files.
- Checksum Validation: Verify file integrity during downloads.
Contributions are welcome! Please fork this repository, make your changes, and submit a pull request.
This project is licensed under the MIT License.
Packit is developed by Piyush.
Enjoy using Packit!
