Ubuntu

有沒有辦法使用 python apt 模組添加 ppa?

  • August 25, 2011

我需要使用 python 腳本將 ppa 添加到遠端伺服器。我想做的 bash 等價物是:

$ add-apt-repository ppa:user/ppa-name

我假設它看起來像這樣:

import apt
cache = apt.Cache()
# ?? add the ppa here ??
cache.update()
cache.open(None)
cache['package_from_ppa'].mark_install()
cache.upgrade()
cache.commit()

但我無法在與添加儲存庫相關的 apt 模組源中找到太多內容。

這就是我最終做的事情。

安裝軟體屬性包:

$ sudo apt-get install python-software-properties

然後在你的python腳本中:

import apt
from softwareproperties.SoftwareProperties import SoftwareProperties

sp = SoftwareProperties()
to_add = 'ppa:user/repository'
sp.add_source_from_line(to_add)
sp.sourceslist.save()

cache = apt.Cache()
cache.update()
cache.open(None)
cache['package_from_ppa'].mark_install()
cache.upgrade()
cache.commit()

add-apt-repository是用 Python 編寫的;檢查它在做什麼並在您自己的程序中複製必要的程式碼行應該是相當簡單的。

引用自:https://serverfault.com/questions/300889