Mengapa google PPA diaktifkan kembali setelah peningkatan ke rilis baru?


9

PPA biasanya dinonaktifkan ketika Anda meningkatkan, dan harus diaktifkan kembali secara manual. Saya memutakhirkan ke 12,04 sekitar sebulan yang lalu dan saya baru saja memperhatikan bahwa sementara PPA saya yang lain semuanya dinonaktifkan, PPA Google tidak dinonaktifkan. Kenapa ini?


Bisakah Anda memberikan entri sources.list terkait?
jasmines

@ jasmines maaf, saya sudah mengaktifkan kembali / membatalkan komentar semua yang dinonaktifkan lainnya. Ini adalah perilaku default di Ubuntu sehingga harus dibuat sederhana.
adempewolff

@irrationalJohn yang saya maksudkan adalah bahwa siapa pun yang memiliki setidaknya satu PPA google dan setidaknya satu PPA lain yang diaktifkan akan melihat perilaku ini setelah peningkatan distro. Untuk seseorang yang telah memutakhirkan dan secara manual mengaktifkan kembali AKP lainnya (seperti saya), mereka perlu memutakhirkan lagi untuk mereproduksi. Semua mesin saya sudah 12,04 dan saya tidak merasa ingin memutakhirkan apa pun ke alfa 12.10 atau saya akan mereproduksi sendiri untuk menyediakan file.
adempewolff

Jawaban:


11

(Penghargaan untuk Jorge Castro atas jawaban ini)

Paket Google menginstal pekerjaan cron di /etc/cron.daily/untuk custumizing konfigurasi repositori dan mengaktifkan kembali sumber setelah peningkatan rilis.

Setiap paket Google akan menempatkan skripnya sendiri (atau tautan ke skrip) di sini. Sebagai contoh: google-musicmanager, google-chromeatau google-talkplugin(yang terakhir menjadi symlink ke script di /opt/google/talkplugin/cron/google-talkplugin).

Berikut ini deskripsi dari skrip google-talkplugin:

# This script is part of the google-talkplugin package.
#
# It creates the repository configuration file for package updates, and it
# monitors that config to see if it has been disabled by the overly aggressive
# distro upgrade process (e.g.  intrepid -> jaunty). When this situation is
# detected, the respository will be re-enabled. If the respository is disabled
# for any other reason, this won't re-enable it.
#
# This functionality can be controlled by creating the $DEFAULTS_FILE and
# setting "repo_add_once" and/or "repo_reenable_on_distupgrade" to "true" or
# "false" as desired. An empty $DEFAULTS_FILE is the same as setting both values
# to "false".

Script akan:

  1. # Install the repository signing key
  2. # Update the Google repository if it's not set correctly.
  3. # Add the Google repository to the apt sources.
  4. # Remove our custom sources list file. dan
  5. # Detect if the repo config was disabled by distro upgrade and enable if necessary.

Inilah bagian skrip yang mendeteksi dan mengaktifkan kembali konfigurasi repo setelah peningkatan rilis.

handle_distro_upgrade() {
  if [ ! "$REPOCONFIG" ]; then
    return 0
  fi

  find_apt_sources
  SOURCELIST="$APT_SOURCESDIR/google-talkplugin.list"
  if [ -r "$SOURCELIST" ]; then
    REPOLINE=$(grep -E "^[[:space:]]*#[[:space:]]*$REPOCONFIG[[:space:]]*# disabled on upgrade to .*" "$SOURCELIST")
    if [ $? -eq 0 ]; then
      sed -i -e "s,^[[:space:]]*#[[:space:]]*\($REPOCONFIG\)[[:space:]]*# disabled on upgrade to .*,\1," \
        "$SOURCELIST"
      LOGGER=$(which logger 2> /dev/null)
      if [ "$LOGGER" ]; then
        "$LOGGER" -t "$0" "Reverted repository modification: $REPOLINE."
      fi
    fi
  fi
}

Dan di sini adalah /etc/apt/sources.list.d/google-talkplugin.listfile yang dibuat oleh skrip.

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb http://dl.google.com/linux/talkplugin/deb/ stable main

Saya hanya memperhatikan bahwa ada sesuatu yang salah dengan proses ini pada bulan lalu dan distro Google tidak sah dan karena alasan tertentu belum diotorisasi ulang dengan sendirinya. Saya berharap menginstal ulang paket secara manual akan mengatur ulang hal-hal.
adempewolff
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.