Your IP : 216.73.216.254
| Current Path : /etc/cron.daily/ |
|
|
| Current File: //etc/cron.daily/google-chrome |
#!/bin/sh
#
# Copyright 2009 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# This script is part of the google-chrome package.
#
# It creates the repository configuration file for package updates, since
# we cannot do this during the google-chrome installation since the repository
# is locked.
#
# This functionality can be controlled by creating the $DEFAULTS_FILE and
# setting "repo_add_once" to "true" or "false" as desired. An empty
# $DEFAULTS_FILE is the same as setting the value to "false".
# System-wide package configuration.
DEFAULTS_FILE="/etc/default/google-chrome"
# sources.list setting for google-chrome updates.
REPOCONFIG="https://dl.google.com/linux/chrome/rpm/stable"
REPOCONFIGREGEX=""
# This file is automatically generated by update_key_include.py
# Do not edit this file directly.
# pub rsa4096 2016-04-12 [SC]
# EB4C1BFD4F042F6DDDCCEC917721F63BD38B4796
# uid [ unknown] Google Inc. (Linux Packages Signing Authority) <linux-packages-keymaster@google.com>
# sub rsa4096 2024-01-30 [S] [expires: 2027-01-29]
# sub rsa4096 2025-01-07 [S] [expires: 2028-01-07]
# sub rsa4096 2026-03-10 [S] [expires: 2029-03-09]
PGP_KEY_DATA=$(cat <<KEYDATA
mQINBFcMjNMBEAC6Wr5QuLIFgz1V1EFPlg8ty2TsjQEl4VWftUAqWlMevJFWvYEx
BOsOZ6kNFfBfjAxgJNWTkxZrHzDl74R7KW/nUx6X57bpFjUyRaB8F3/NpWKSeIGS
pJT+0m2SgUNhLAn1WY/iNJGNaMl7lgUnaP+/ZsSNT9hyTBiH3Ev5VvAtMGhVI/u8
P0EtTjXp4o2U+VqFTBGmZ6PJVhCFjZUeRByloHw8dGOshfXKgriebpioHvU8iQ2U
GV3WNIirB2Rq1wkKxXJ/9Iw+4l5m4GmXMs7n3XaYQoBj28H86YA1cYWSm5LR5iU2
TneI1fJ3vwF2vpSXVBUUDk67PZhg6ZwGRT7GFWskC0z8PsWd5jwK20mA8EVKq0vN
BFmMK6i4fJU+ux17Rgvnc9tDSCzFZ1/4f43EZ41uTmmNXIDsaPCqwjvSS5ICadt2
xeqTWDlzONUpOs5yBjF1cfJSdVxsfshvln2JXUwgIdKl4DLbZybuNFXnPffNLb2v
PtRJHO48O2UbeXS8n27PcuMoLRd7+r7TsqG2vBH4t/cB/1vsvWMbqnQlaJ5VsjeW
Tp8Gv9FJiKuU8PKiWsF4EGR/kAFyCB8QbJeQ6HrOT0CXLOaYHRu2TvJ4taY9doXn
98TgU03XTLcYoSp49cdkkis4K+9hd2dUqARVCG7UVd9PY60VVCKi47BVKQARAQAB
tFRHb29nbGUgSW5jLiAoTGludXggUGFja2FnZXMgU2lnbmluZyBBdXRob3JpdHkp
IDxsaW51eC1wYWNrYWdlcy1rZXltYXN0ZXJAZ29vZ2xlLmNvbT6JAk4EEwEIADgC
GwMCHgECF4AWIQTrTBv9TwQvbd3M7JF3IfY704tHlgUCVwyM0wULCQgHAgYVCgkI
CwIEFgIDAQAKCRB3IfY704tHlkGrD/9aIOPxoABbhHDa+GbM1XHSeV99q2UOIsYc
A5Jg3k2+Vbjr/006cL9Kk+rdbruZJtERo2z+HVVhkJisvySbsd0UbWfiY5AdHzNP
azpitbX9cNYi0ghDZsD5UgP3cWdx21BJPO0v9PBG9U4z1TQ+pmsQphtNzMC4tK+A
H/7WTXnVPzKXTYziIEIPgHeassSj7Yfwa8kLiBR5tAehHDNNMi/mMf4d6a+wO46x
hhRx/BLjoaIxsZw9f5VxDAqGbCrW8IccwJX8vTc89y+6vpzSurdqYrplZWGpcnfT
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
0VKRfNSbDRGP+JSZlxIhNwzxA5IrpQ==
KEYDATA
)
PGP_KEY_CHECKSUM="=djNO"
PGP_SUBKEYS="32EE5355A6BC6E42 FD533C07C264648F 1D09C015006FEAB8"
# Install the repository signing key (see also:
# https://www.google.com/linuxrepositories/)
install_rpm_key() {
KEY_PACKAGE="gpg-pubkey-d38b4796-570c8cd3"
# Check to see if all keys already exists.
# Make sure all the most recent signing subkeys are installed.
NEED_KEYS=0
for SUB_KEY in $PGP_SUBKEYS; do
rpm -q ${KEY_PACKAGE} --qf '%{Pubkeys:armor}\n' | \
gpg --with-colons - 2>/dev/null | \
grep -q "$SUB_KEY"
if [ "$?" -ne "0" ]; then
NEED_KEYS=1
fi
done
if [ $NEED_KEYS -ne 1 ]; then
return
fi
# Make sure no older version of the key is installed because it appears
# 'rpm --import' won't overwrite an existing key package.
rpm -q ${KEY_PACKAGE} >/dev/null 2>&1
if [ "$?" -eq "0" ]; then
# Note, if this is run during the package install, it will fail because rpm
# can't recursively run rpm, but it should work when run later as part of
# the installed cron job (and probably nothing needs the new keys before
# then).
rpm -e --allmatches ${KEY_PACKAGE} >/dev/null 2>&1 || return
fi
# RPM on Mandriva 2009 is dumb and does not understand "rpm --import -"
TMPKEY=$(mktemp /tmp/google.sig.XXXXXX)
if [ -n "$TMPKEY" ]; then
cat > "$TMPKEY" <<KEYDATA
-----BEGIN PGP PUBLIC KEY BLOCK-----
$PGP_KEY_DATA
$PGP_KEY_CHECKSUM
-----END PGP PUBLIC KEY BLOCK-----
KEYDATA
rpm --import "$TMPKEY"
rc=$?
rm -f "$TMPKEY"
if [ "$rc" -eq "0" ]; then
return 0
fi
fi
return 1
}
determine_rpm_package_manager() {
local RELEASE
# Modern method using os-release(5)
if [ -f "/etc/os-release" ]; then
RELEASE=$(. "/etc/os-release"; echo "$ID")
case $RELEASE in
"fedora"|"rhel"|"centos"|"amzn"|"mageia"|"openmandriva")
PACKAGEMANAGERS=(yum)
;;
"suse"|"sles"|"sled"|"opensuse"|"opensuse-leap"|"opensuse-tumbleweed")
PACKAGEMANAGERS=(zypp)
;;
esac
fi
if [ "$PACKAGEMANAGERS" ]; then
return
fi
# Fallback method using lsb_release(1)
LSB_RELEASE="$(command -v lsb_release 2> /dev/null)"
if [ -x "$LSB_RELEASE" ]; then
RELEASE=$(lsb_release -i 2> /dev/null | sed 's/:\t/:/' | cut -d ':' -f 2-)
case $RELEASE in
"Fedora"|"Amazon"|"Mageia"|"OpenMandrivaLinux")
PACKAGEMANAGERS=(yum)
;;
"SUSE LINUX"|"openSUSE")
PACKAGEMANAGERS=(zypp)
;;
esac
fi
if [ "$PACKAGEMANAGERS" ]; then
return
fi
# Fallback methods that are probably unnecessary on modern systems.
if [ -f "/etc/fedora-release" ] || [ -f "/etc/redhat-release" ]; then
PACKAGEMANAGERS=(yum)
elif [ -f "/etc/system-release" ] && grep -Fq "Amazon Linux" "/etc/system-release"; then
PACKAGEMANAGERS=(yum)
elif [ -f "/etc/SuSE-release" ]; then
PACKAGEMANAGERS=(zypp)
fi
}
DEFAULT_ARCH="x86_64"
YUM_REPO_FILE="/etc/yum.repos.d/google-chrome.repo"
ZYPPER_REPO_FILE="/etc/zypp/repos.d/google-chrome.repo"
install_yum() {
install_rpm_key
if [ ! "$REPOCONFIG" ]; then
return 0
fi
if [ -d "/etc/yum.repos.d" ]; then
cat > "$YUM_REPO_FILE" << REPOCONTENT
[google-chrome]
name=google-chrome
baseurl=$REPOCONFIG/$DEFAULT_ARCH
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
REPOCONTENT
fi
}
install_zypp() {
if [ ! "$REPOCONFIG" ]; then
return 0
fi
# Ideally, we would run: zypper addrepo -t YUM -f \
# "$REPOCONFIG/$DEFAULT_ARCH" "google-chrome"
# but that does not work when zypper is running.
if [ -d "/etc/zypp/repos.d" ]; then
cat > "$ZYPPER_REPO_FILE" << REPOCONTENT
[google-chrome]
name=google-chrome
enabled=1
autorefresh=1
baseurl=$REPOCONFIG/$DEFAULT_ARCH
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
type=rpm-md
keeppackages=0
REPOCONTENT
fi
}
# Check if the automatic repository configuration is done, so we know when to
# stop trying.
verify_install() {
# It's probably enough to see that the repo configs have been created. If they
# aren't configured properly, update_bad_repo should catch that when it's run.
case $1 in
"yum")
[ -f "$YUM_REPO_FILE" ]
;;
"zypp")
[ -f "$ZYPPER_REPO_FILE" ]
;;
esac
}
# Update the Google repository if it's not set correctly.
update_bad_repo() {
if [ ! "$REPOCONFIG" ]; then
return 0
fi
determine_rpm_package_manager
for PACKAGEMANAGER in ${PACKAGEMANAGERS[*]}
do
case $PACKAGEMANAGER in
"yum")
update_repo_file "$YUM_REPO_FILE"
;;
"zypp")
update_repo_file "$ZYPPER_REPO_FILE"
;;
esac
done
}
update_repo_file() {
REPO_FILE="$1"
# Don't do anything if the file isn't there, since that probably means the
# user disabled it.
if [ ! -r "$REPO_FILE" ]; then
return 0
fi
# Check if the correct repository configuration is in there.
REPOMATCH=$(grep "^baseurl=$REPOCONFIG/$DEFAULT_ARCH" "$REPO_FILE" \
2>/dev/null)
# If it's there, nothing to do
if [ "$REPOMATCH" ]; then
return 0
fi
# Check if it's there but disabled by commenting out (as opposed to using the
# 'enabled' setting).
MATCH_DISABLED=$(grep "^[[:space:]]*#.*baseurl=$REPOCONFIG/$DEFAULT_ARCH" \
"$REPO_FILE" 2>/dev/null)
if [ "$MATCH_DISABLED" ]; then
# It's OK for it to be disabled, as long as nothing bogus is enabled in its
# place.
ACTIVECONFIGS=$(grep "^baseurl=.*" "$REPO_FILE" 2>/dev/null)
if [ ! "$ACTIVECONFIGS" ]; then
return 0
fi
fi
# If we get here, the correct repository wasn't found, or something else is
# active, so fix it. This assumes there is a 'baseurl' setting, but if not,
# then that's just another way of disabling, so we won't try to add it.
sed -i -e "s,^baseurl=.*,baseurl=$REPOCONFIG/$DEFAULT_ARCH," "$REPO_FILE"
}
# We only remove the repository configuration during a purge. Since RPM has
# no equivalent to dpkg --purge, the code below is actually never used. We
# keep it only for reference purposes, should we ever need it.
#
#remove_yum() {
# rm -f "$YUM_REPO_FILE"
#}
#
#remove_zypp() {
# # Ideally, we would run: zypper removerepo "google-chrome"
# # but that does not work when zypper is running.
# rm -f /etc/zypp/repos.d/google-chrome.repo
#}
DEFAULT_ARCH="x86_64"
get_lib_dir() {
if [ "$DEFAULT_ARCH" = "i386" ] || [ "$DEFAULT_ARCH" = "armhf" ] || \
[ "$DEFAULT_ARCH" = "mipsel" ]; then
LIBDIR=lib
elif [ "$DEFAULT_ARCH" = "x86_64" ] || [ "$DEFAULT_ARCH" = "aarch64" ] || \
[ "$DEFAULT_ARCH" = "mips64el" ]; then
LIBDIR=lib64
else
echo Unknown CPU Architecture: "$DEFAULT_ARCH"
exit 1
fi
}
## MAIN ##
if [ -r "$DEFAULTS_FILE" ]; then
. "$DEFAULTS_FILE"
fi
install_rpm_key
if [ "$repo_add_once" = "true" ]; then
determine_rpm_package_manager
# Let's run through this for each supported package manager as detected...
for PACKAGEMANAGER in ${PACKAGEMANAGERS[*]}
do
# The initial install happens in the post-install scripts, but there have been
# reports of configuration problems, so just verify that everything looks
# good, and if not, try to install again.
verify_install $PACKAGEMANAGER
if [ $? -ne 0 ]; then
install_${PACKAGEMANAGER}
fi
done
if [ $? -eq 0 ]; then
# Do this for each supported package manager...
for PACKAGEMANAGER in ${PACKAGEMANAGERS[*]}
do
# Before we quit auto-configuration, check that everything looks sane, since
# part of this happened during package install and we don't have the return
# value of that process.
verify_install $PACKAGEMANAGER
if [ $? -eq 0 ]; then
sed -i -e 's/[[:space:]]*repo_add_once=.*/repo_add_once="false"/' \
"$DEFAULTS_FILE"
fi
done
fi
else
update_bad_repo
fi