2011-08-14 8 views
5

pythonスクリプトを使ってリモートサーバーにppaを追加する必要があります。python aptモジュールを使ってppaを追加する方法はありますか?

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

私はそれがこのようなものになりますと仮定しています:私は何をしたいかのbashのと同等である

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のモジュール内の多くを見つけることができませんでしたリポジトリの追加に関連するソース。

アドオンのapt-リポジトリ(11.04 maverickの)現在のコードから取ら
+0

http://serverfault.com/にお問い合わせください。役立つことがあります。がんばろう! :) – Nope

+0

add-apt-repositoryはpythonスクリプトです:) – Marty

+1

ここには[source](http://bazaar.launchpad.net/~ubuntu-core-dev/software-properties/main/view/head:/add -apt-repository) – Marty

答えて

5

:あなたが原因のエラー、などのためのチェックを追加する必要があります

from softwareproperties.SoftwareProperties import SoftwareProperties 
sp = SoftwareProperties() 
sp.add_source_from_line(ppa_name) 
sp.sourceslist.save() 

...このように、現在インストールされているバージョンで 見て:

less `which add-apt-repository` 
0

私は、彼が望んでいた答えを得られなかったことに気付きました。

import aptsources.sourceslist as s 
repo = ('deb', 'http://ppa.launchpad.net/danielrichter2007/grub-customizer/ubuntu', 'xenial', ['main']) 
sources = s.SourcesList() 
sources.add(repo) 
sources.save() 
関連する問題