diff options
Diffstat (limited to '~lukeshu/pacman-lukeshu/pacman.install')
-rw-r--r-- | ~lukeshu/pacman-lukeshu/pacman.install | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/~lukeshu/pacman-lukeshu/pacman.install b/~lukeshu/pacman-lukeshu/pacman.install deleted file mode 100644 index 5dc55c0c2..000000000 --- a/~lukeshu/pacman-lukeshu/pacman.install +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - # one time stuff for md5sum issue with older pacman versions - if [ "$(vercmp $2 3.0.2)" -lt 0 ]; then - _resetbackups - fi - if [ "$(vercmp $2 3.5.0)" -lt 0 ]; then - _warnupgrade - fi - if [ ! -f "etc/pacman.d/gnupg/pubring.gpg" ] || [ "$(vercmp $2 4.0.3-2)" -lt 0 ]; then - _check_pubring - fi -} - -post_install() { - _check_pubring -} - -_check_pubring() { - echo " >>> Run \`pacman-key --init; pacman-key --populate archlinux\`" - echo " >>> And \`pacman-key --populate parabola\`" - echo " >>> to import the data required by pacman for package verification." - echo " >>> See: https://www.archlinux.org/news/having-pacman-verify-packages" -} - -_warnupgrade() { - echo ">>> The pacman database format has changed as of pacman 3.5.0." - echo ">>> You will need to run \`pacman-db-upgrade\` as root." - echo ">>>" -} - -_resetbackups() { - echo ">>> Performing one-time reset of NoUpgrade md5sums. After this reset" - echo ">>> you are able to remove all NoUpgrade lines of already protected" - echo ">>> files from pacman.conf." - echo ">>>" - - # path variables - pacconf="/etc/pacman.conf" - dbpath="/var/lib/pacman/local" - - # get a list of NoUpgrade files from the user's pacman.conf - echo ">>> Retrieving pacman.conf NoUpgrade list..." - config=$(grep "^NoUpgrade" $pacconf | cut -d'=' -f2) - # add the standard list of files, even if they are already above - config="$config \ - etc/passwd etc/group etc/shadow etc/sudoers \ - etc/fstab etc/raidtab etc/ld.so.conf \ - etc/rc.conf etc/rc.local \ - etc/modprobe.conf etc/modules.conf \ - etc/lilo.conf boot/grub/menu.lst" - - # blank md5sum for use in sed expression - zeroes='00000000000000000000000000000000' - - for file in $config; do - echo ">>> -> finding owner of /$file..." - line=$(LC_ALL=C LANG=C pacman -Qo /$file 2>/dev/null) - # if file is owned by a package, go find its incorrectly stored sum - if [ ! -z "$line" ]; then - # get the name and version of the package owning file - name=$(echo $line | awk '{print $5}') - version=$(echo $line | awk '{print $6}') - # set the path to the backup array holding the md5sum - path="$dbpath/$name-$version/files" - # run a sed on the path to reset the line containing $file - # NOTE: literal tab characters in sed expression after $file - echo ">>> -> resetting sum of /$file..." - sed -i "s#$file [0-9a-fA-F]*#$file $zeroes#" $path - else - echo ">>> -> $file is unowned." - fi - done -} |