Buenas,
Si queremos procesar un fichero .changes de un paquete debian es tan sencillo como:
- Quitarle la firma
- Procesar el contenido con una librería de yaml, por ejemplo syck
En código sería lo siguiente:
import os import GnuPGInterface import syck changes_file = '/tmp/factoriapegaso-panel_0.2.6-4_amd64.changes' gnupg = GnuPGInterface.GnuPG() ciphertext = open(changes_file).read() p2 = gnupg.run(['--decrypt'], create_fhs=['stdin', 'stdout']) p2.handles['stdin'].write(ciphertext) p2.handles['stdin'].close() decrypted_plaintext = p2.handles['stdout'].read() p2.handles['stdout'].close() #Puede fallar por no tener la llave GPG try: p2.wait() except: pass changes_info = syck.load(decrypted_plaintext) print "tenemos:" print changes_info
No es lo mas elegante del mundo, solo una prueba de concepto
