Browse Source

Working simple wrapper around pacman

master
Max mal Richtig 4 months ago
parent
commit
da2fc0a946
  1. 5
      README.md
  2. 96
      aptman

5
README.md

@ -1,3 +1,6 @@
# AptMan
A thin (and sane) wrapper around pacman
## An `apt`-like `pacman` wrapper
A thin wrapper that translates humanly understandable "apt-like" commands
to the enigma-esque syntax that is 'pacman'.

96
aptman

@ -0,0 +1,96 @@
#!/bin/bash
#############################################################################
##
## A thin wrapper that translates humanly understandable "apt-like" commands
## to the enigma-esque syntax that is used by 'pacman'.
##
#############################################################################
if ! command -v pacman &> /dev/null
then
echo "ERROR: 'pacman' could not be found."
echo "Make sure it is installed and in your PATH!"
exit 1
fi
cmd="$1"
shift # drop the first argument from "$@"
# catch first arguments with $1
case "$cmd" in
update)
# Update local package repo/cache
echo "Updating package index ..."
pacman -Sy
;;
upgrade)
# Perform package upgrade
echo "Installing package upgrades ..."
pacman -Syu
;;
upgradeable)
# Show which pacakges have an upgrade available
echo "Listing up upgradeable packages ..."
pacman -Qu
;;
install|reinstall)
# (re)Install a package and its dependencies
echo "Installing '$@' ..."
pacman -S "$@"
;;
remove)
# Remove package and its dependencies
echo "Removing '$@' and dependencies ..."
pacman -Rs "$@"
;;
purge)
# Remove package, dependencies and all of the config files
echo "Removing '$@', configurations and dependencies ..."
pacman -Rns "$@"
;;
check)
# Check & potentially fix broken dependencies
echo "Checking & (potentially fixing) broken dependencies ..."
pacman -Dk
;;
search)
# Search for available packages
echo "Searching packages for '$@' ..."
pacman -Ss "$@"
;;
show)
# Show info for a package
echo "Showing info for '$@' ..."
pacman -Si "$@"
;;
clean)
# Clean up pacman cache
# --> All the cached packages that are not installed, and unused sync database
echo "Cleaning up pacman cache ..."
pacman -Sc
;;
cleaner)
# Clean up pacman caches HARDER
# --> To remove ALL files from the cache directory
echo "Cleaning up pacman cache REALLY HARD ..."
pacman -Scc
;;
*)
# else
echo "Usage: aptman [...]"
echo "---------------------------------------"
echo "update - Update packages"
echo "upgrade - Install upgrades"
echo "upgradeable - List upgradeable packages"
echo "install | reinstall - (re)Install packages"
echo "remove - Uninstall package"
echo "purge - Uninstall package and clean config"
echo "check - Check for broken dependencies"
echo "search - Search package"
echo "show - Show package info"
echo "clean | cleaner - Clean up pacman cache"
;;
esac
Loading…
Cancel
Save