53 lines
1.5 KiB
Bash
53 lines
1.5 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
# Store the first command line argument in the variable "command" and shift the rest
|
||
|
command="$1"
|
||
|
shift
|
||
|
|
||
|
# Evaluate the command
|
||
|
if [ "$command" = "search" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-Ss"
|
||
|
elif [ "$command" = "update" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-Sy"
|
||
|
su_needed=true
|
||
|
elif [ "$command" = "upgradable" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-Qu"
|
||
|
elif [ "$command" = "upgrade" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-Syu"
|
||
|
su_needed=true
|
||
|
elif [ "$command" = "install" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-S"
|
||
|
su_needed=true
|
||
|
elif [ "$command" = "provides" ]; then
|
||
|
command="pacman"
|
||
|
command_args="-F"
|
||
|
elif [ "$command" = "config" ]; then
|
||
|
command="nano"
|
||
|
command_args="/etc/pacman.conf"
|
||
|
su_needed=true
|
||
|
else
|
||
|
echo "Invalid command: \"$command\""
|
||
|
echo
|
||
|
echo "Usage: pman <command> [args...]"
|
||
|
echo "Available commands:"
|
||
|
echo " search - pacman -Ss | search packages"
|
||
|
echo " update - pacman -Sy | updates the repositories"
|
||
|
echo " upgradable - pacman -Qu | list available upgrades"
|
||
|
echo " upgrade - pacman -Syu | upgrades your system"
|
||
|
echo " provides - pacman -F | list packages that provide file"
|
||
|
echo " config - /etc/pacman.conf | edits pacman configuration"
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
# If sudo is needed and necessary (and installed), prepend it
|
||
|
if [ "$su_needed" = "true" ] && [ "$UID" != 0 ] && command -v "sudo" &>/dev/null; then
|
||
|
sudo $command $command_args "${@}"
|
||
|
else
|
||
|
$command $command_args "${@}"
|
||
|
fi
|