Google Analytics

воскресенье, 13 июня 2010 г.

Если ваш пакетный менеджер(Synaptic или Aptitude) ругается на отсутсвие ключей для добавленнных в /etc/apt/sources.list источников пакетов, и вам это надоело - используйте простенький скрипт на замечательном языке Python , написанный мной примерно после трёхсотого напоминания о непроверенных источниках ПО для моего любимого Ubuntu.

Создаём файл keyadder.py такого содержания:

#!/usr/bin/env python
# -*- coding: utf8 -*-
#Скрипт для добавления ключей репозиториям,добавленным вами вручную.
#Опупликовано по лицензии GPL V2 или выше.

import os.path,sys,string,commands,re

print "Пожалуйста запаситесь терпением,мы получаем недостающие ключи...\nЭто довольно долгий процесс,особенно на слабых интернет каналах.\n"
outp = commands.getoutput("sudo apt-get update ")

if re.search( ur"NO_PUBKEY", outp ):

        outp = outp.split("\n")

        for line in outp:
                match = re.search( ur"[/nA-Z0-9]{16}", line )
                if match > 0:
                        key = match.group()
          print "Ключ " + key + " успешно добавлен."
          commandOutput = commands.getoutput("sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com " + key + " ")
 
else:
        print "Поздравляем!У вас все репозитории имеют ключ верификации.\n"
 quit()

Делаем его исполняемым при помощи chmode. Запуск производим из консоли при помощи команды:

sudo keyadder.py
Или:
sudo python keyadder.py

Будьте осторожны, не стоит использовать ПО из PPA авторов, которым у вас нет доверия. Если есть сомнения, лучше сами заведите себе свой PPA , и собирайте важные для себя пакеты в нём.