X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/ec9272975f454d3911e61e5cc3b29fe90fe2ee54..2a22cd60f04c4291ea9b9b72e15b6d2ec378b001:/debian/apt.postinst diff --git a/debian/apt.postinst b/debian/apt.postinst old mode 100644 new mode 100755 index 70de237d0..b0a5da7d8 --- a/debian/apt.postinst +++ b/debian/apt.postinst @@ -15,6 +15,19 @@ set -e case "$1" in configure) + if dpkg --compare-versions "$2" lt 1.1~exp4; then + # apt-key before 0.9.10 could leave empty keyrings around + find /etc/apt/trusted.gpg.d/ -name '*.gpg' | while read keyring; do + if ! test -s "$keyring"; then + rm -f "$keyring" + fi + done + # apt-key before 0.9.8.2 could create 0600 trusted.gpg file + if test -e /etc/apt/trusted.gpg ; then + chmod -f 0644 /etc/apt/trusted.gpg || true + fi + fi + if dpkg --compare-versions "$2" lt-nl 0.9.9.5; then # we are using tmpfiles for both rm -f /etc/apt/trustdb.gpg @@ -26,6 +39,16 @@ case "$1" in fi fi + # add unprivileged user for the apt methods + adduser --force-badname --system -home /var/empty \ + --no-create-home --quiet _apt || true + + # deal with upgrades from experimental + if dpkg --compare-versions "$2" 'eq' '1.1~exp3'; then + # libapt will setup partial/ at runtime + chown -R root:root /var/lib/apt/lists /var/cache/apt/archives || true + fi + # ensure tighter permissons on the logs, see LP: #975199 if dpkg --compare-versions "$2" lt-nl 0.9.7.7; then # ensure permissions are right @@ -33,7 +56,7 @@ case "$1" in fi # create kernel autoremoval blacklist on update - if dpkg --compare-versions "$2" lt-nl 0.9.9.3; then + if dpkg --compare-versions "$2" lt 0.9.9.3; then /etc/kernel/postinst.d/apt-auto-removal fi ;;