TLDR; Ho bisogno di una semplice chiamata Python data un nome di pacchetto (ad esempio 'make') per vedere se è installata; in caso contrario, installarlo (posso fare l'ultima parte).Determina se il pacchetto è stato installato con l'API Yum Python?
Problema:
Quindi ci sono alcuni esempi di codice riportati nella http://yum.baseurl.org/wiki/YumCodeSnippets, ma a parte kludging intorno all'interno ipython e indovinare ciò che ogni metodo fa, non sembra esserci alcuna documentazione reale per la API Python per yum. Apparentemente è tutta conoscenza tribale.
[modifica] A quanto pare ho scoperto solo per caso la documentazione API (dopo aver ricevuto una risposta accettabile, ovviamente). Non è collegata dalla pagina principale, ma qui è di riferimento futuro: http://yum.baseurl.org/api/yum/
Cosa devo fare:
Ho uno script di configurazione della distribuzione che si basa su altri pacchetti di sistema (marca, gcc, eccetera.). So che posso installarli in questo modo: http://yum.baseurl.org/wiki/YumCodeSnippet/SimplestTransaction ma mi piacerebbe avere l'opzione di interrogare se sono già installati prima di farlo, quindi posso avere l'opzione aggiuntiva di fallire semplicemente se i pacchetti non sono presenti invece di forzare l'installazione. Qual è la chiamata corretta per fare questo (o meglio, qualcuno si è preso la briga di documentare correttamente l'API al di fuori degli esempi di codice?)
Non ho mai toccato Python prima di questo progetto, e mi piace davvero, ma ... alcuni documenti del modulo sono più sfuggenti dei folletti che cavalcano un unicorno.
Hai provato lo snippet 'YumSearch' dalla pagina Web che hai collegato? –
Sì, ma i risultati non sembravano darmi alcuna indicazione sullo stato di installazione - solo se il rpmdb sapeva o meno del pacchetto (basato sulla corrispondenza parziale del testo dei campi specificati). Forse sto sbagliando. –