Compare commits
1 Commits
1.3.0
...
14fbf3c41e
| Author | SHA1 | Date | |
|---|---|---|---|
| 14fbf3c41e |
28
PKGBUILD
Normal file
28
PKGBUILD
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# Maintainer: Bryan Joshua Pedini <bryan [at] pedini [dot] dev>
|
||||||
|
|
||||||
|
_pkgname="pman"
|
||||||
|
pkgname="$_pkgname-helper"
|
||||||
|
pkgver="1.2.0"
|
||||||
|
pkgrel="1"
|
||||||
|
pkgdesc="A `pacman` helper script, because you forget all the stupid flags"
|
||||||
|
url="https://git.bjphoster.com/source/$_pkgname"
|
||||||
|
arch=("any")
|
||||||
|
license=("MIT")
|
||||||
|
depends=("bash" "pacman")
|
||||||
|
conflicts=("pman") # Another package called `pman` currently exists in the AUR
|
||||||
|
source=(
|
||||||
|
"LICENSE"
|
||||||
|
"pman.sh"
|
||||||
|
)
|
||||||
|
sha256sums=(
|
||||||
|
"3964e8cf1894ecfea6ca57cf350e7a538229cd205ac35293ea8bf3fb19c0b86f"
|
||||||
|
"6bb6aab1dd31ae0a326a24afc34e62da13d482843fad5872562135007b43f1a5"
|
||||||
|
)
|
||||||
|
md5sums=(
|
||||||
|
"72db3ecfa718db796cd818f883cbdc68"
|
||||||
|
"369ea3fa3fb44dcfe035a297f64af9e5"
|
||||||
|
)
|
||||||
|
package() {
|
||||||
|
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
|
||||||
|
install -Dm755 pman.sh "${pkgdir}/usr/bin/${_pkgname}"
|
||||||
|
}
|
||||||
14
README.md
14
README.md
@@ -16,18 +16,8 @@ A `pacman` helper script, because you forget all the stupid flags
|
|||||||
- remove
|
- remove
|
||||||
- purge
|
- purge
|
||||||
- clean
|
- clean
|
||||||
- reflector
|
|
||||||
- ignored
|
|
||||||
- ignore
|
|
||||||
- unignore
|
|
||||||
- config
|
- config
|
||||||
|
|
||||||
`reflector` and `config` are the only flag that are not appended to `pacman` (or `yay`)<br>
|
`config` is the only flag that is not appended to `pacman` (or `yay`), instead it resolves to `nano /etc/pacman.conf`.
|
||||||
instead `reflector` resolves to using the `reflector` program with the previously used parameters stored in `/etc/pacman.d/mirrorlist`<br>
|
|
||||||
and `config` resolves to `nano /etc/pacman.conf`.<br>
|
|
||||||
`ignore` and `unignore` require the file `/etc/pacman.d/ignorepkg` to exist (you can use `install -m0644 /etc/pacman.d/ignorepkg` to create it),<br>
|
|
||||||
and the line `Include /etc/pacman.d/ignorepkg` to be inserted into `/etc/pacman.conf`.
|
|
||||||
|
|
||||||
`sudo` gets prepended automatically if the command requires root privileges, if the UID is not 0 (you are not `root`) and if `sudo` installed.<br>
|
`sudo` gets prepended automatically if the command requires it and if installed - no, there is no check if your user is in the `sudo` group, if you download this script you should already be, or know you can only use part of this utility
|
||||||
no, there is no check if your user is in the `sudo` group, if you download this script you should already be, or know you can only use part of this utility<br>
|
|
||||||
tho such a feature is planned, to make the script truly ubiquitus.
|
|
||||||
|
|||||||
45
pman.sh
45
pman.sh
@@ -36,38 +36,6 @@ elif [ "$command_args" = "config" ]; then
|
|||||||
command="nano"
|
command="nano"
|
||||||
command_args="/etc/pacman.conf"
|
command_args="/etc/pacman.conf"
|
||||||
su_needed=true
|
su_needed=true
|
||||||
elif [ "$command_args" = "reflector" ]; then
|
|
||||||
command="reflector"
|
|
||||||
command_args=$(cat /etc/pacman.d/mirrorlist 2>/dev/null | grep -e "With.*reflector" | sed 's/#.*reflector //')
|
|
||||||
# Check if reflector was actually used to generate the mirrorlist
|
|
||||||
if [ "$command_args" = "" ]; then
|
|
||||||
echo "Error: reflector was not used to generate mirrorlist or mirrorlist location differ from standard"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
su_needed=true
|
|
||||||
elif [ "$command_args" = "ignored" ]; then
|
|
||||||
command="echo"
|
|
||||||
command_args="$(cat /etc/pacman.d/ignorepkg | sed 's/IgnorePkg = //' | sort)"
|
|
||||||
elif [ "$command_args" = "ignore" ]; then
|
|
||||||
for pkg in "${@}"; do
|
|
||||||
if [ "$(grep -e "$pkg$" /etc/pacman.d/ignorepkg)" != "" ]; then
|
|
||||||
echo "$pkg is already ignored, skipping..."
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
command="tee"
|
|
||||||
command_args="-a /etc/pacman.d/ignorepkg"
|
|
||||||
su_needed=true
|
|
||||||
echo "IgnorePkg = $pkg" | execute_command &>/dev/null
|
|
||||||
done
|
|
||||||
exit 0
|
|
||||||
elif [ "$command_args" = "unignore" ]; then
|
|
||||||
for pkg in "${@}"; do
|
|
||||||
command="sed"
|
|
||||||
su_needed=true
|
|
||||||
check_sudo
|
|
||||||
$command -i "/IgnorePkg = $pkg/d" /etc/pacman.d/ignorepkg
|
|
||||||
done
|
|
||||||
exit 0
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# If command is empty, command is pacman
|
# If command is empty, command is pacman
|
||||||
@@ -119,13 +87,6 @@ case "$command_args" in
|
|||||||
if [ "$command" = "pacman" ]; then
|
if [ "$command" = "pacman" ]; then
|
||||||
su_needed=true
|
su_needed=true
|
||||||
fi
|
fi
|
||||||
execute_command "${@}"
|
|
||||||
|
|
||||||
su_needed=false
|
|
||||||
command_args="-Qu"
|
|
||||||
echo
|
|
||||||
echo "$(execute_command "${@}" | wc -l) packages are available for update"
|
|
||||||
exit 0
|
|
||||||
;;
|
;;
|
||||||
"upgradable")
|
"upgradable")
|
||||||
command_args="-Qu"
|
command_args="-Qu"
|
||||||
@@ -176,12 +137,6 @@ case "$command_args" in
|
|||||||
echo " remove - pacman -Rs | remove packages & dependencies"
|
echo " remove - pacman -Rs | remove packages & dependencies"
|
||||||
echo " purge - pacman -Rns | remove packages, dependencies & conf"
|
echo " purge - pacman -Rns | remove packages, dependencies & conf"
|
||||||
echo " clean - pacman -Scc | remove all package files & trash"
|
echo " clean - pacman -Scc | remove all package files & trash"
|
||||||
echo " reflector - mirrorlist | refresh the mirrorlist with reflector (if used)"
|
|
||||||
echo " (do not use if file location differ from default /etc/pacman.d/mirrorlist)"
|
|
||||||
echo " ignored - /etc/pacman.d/ignorepkg | lists the packages which are ignored from update"
|
|
||||||
echo " (must create /etc/pacman.d/ignorepkg file and import it in /etc/pacman.conf)"
|
|
||||||
echo " ignore - /etc/pacman.d/ignorepkg | ignore package(s) from update"
|
|
||||||
echo " unignore - /etc/pacman.d/ignorepkg | un-ignore package(s) from update"
|
|
||||||
echo " config - /etc/pacman.conf | edits pacman configuration"
|
echo " config - /etc/pacman.conf | edits pacman configuration"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user