Your own, package manager, Jesus. 🎶
Someone to install your files,
Someone who compiles.
Your own, package manager, Jesus.
Cross-platform and you're all alone,
Flesh and bone by the command-o
TTY receiver,
I'll make you a believer.
*currently Pacman and Homebrew (but my DMs PRs are open!)
Jesus told his disciples: “There was a rich man whose manager was accused of wasting his possessions."
- Luke 16:1
Be like that man, and don't let your multiple package manager take all your time! Build your own cross-platform scripts, or use these!
Disclaimer: These scripts are for my personal use, written in a way that makes sense to me. I only open-sourced them as a joke and as an example of how reinventing your own wheel is not that hard sometimes, and comes with the benefit of doing just what you need it to do. For a more complete solution, check sysget or app.
Grab your favorite shell and get going:
git clone https://github.com/sebastiancarlos/pm-jesus
cd pm-jesus
./pm-install vim
(as you should)
Optionally add to your PATH
. (This can be done by running make install
)
Every command comes with its own help message. Just type --help
after the
command to get a detailed explanation of its usage.
The commands are:
Usage: pm-search [package]
Search for a package in the list of available packages.
Usage: pm-dependencies [package]
List all dependencies of a package.
Usage: pm-list-orphans
List all packages that were installed as a dependency but are no longer required.
Usage: pm-list
List all installed packages.
Usage: pm-uninstall-package-and-dependencies [package]
Uninstall a package and all its dependencies.
Usage: pm-search-local [package]
Search for a package in the list of installed packages.
Usage: pm-list-explicit
List all explicitly installed packages.
Usage: pm-uninstall-orphans
Uninstall all packages that were installed as a dependency but are no longer required.
Usage: pm-info [package]
Get information about a package.
Usage: pm-clean-cache
Clean the package cache.
Usage: pm-who-owns [file]
Return the installed package that owns a file.
Usage: pm-install-local
Build and install a package not from the system's list of available packages.
Must run in directory containing a PKGBUILD file. Usually from the AUR.
Usage: pm-system-update
Full system update
Usage: pm-who-installs [file]
Return the remote package that installs a file.
Usage: pm-uninstall [package]
Uninstall a package.
Usage: pm-install [package]...
Install a package from the system's list of available packages.
Usage: pm-files [package]
List all files installed by a package.
Currently, only Pacman and Homebrew are supported. One because I have to work, the other because I'm based. Guess which is which.