summaryrefslogtreecommitdiff
path: root/~lukeshu/pacman-lukeshu/pacman.install
diff options
context:
space:
mode:
Diffstat (limited to '~lukeshu/pacman-lukeshu/pacman.install')
-rw-r--r--~lukeshu/pacman-lukeshu/pacman.install76
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
-}