pubblicato Lunedì 02 Marzo del 2009 alle 18:38.

Ancora uno script in python. Questa volta ho convertito lo script grpm2deb ( il vecchio è a questo indirizzo), ma è stato più complicato del previsto e dei precedenti. Ciò mi permesso di imparare più cose e mi ha fatto comprendere che è ora di leggere il tutorial ufficiale scritto da Guido Van Rossum, autore del linguaggio, per approfondire ulteriori nozioni.

#! /usr/bin/env python
# -*- coding: utf-8 -*- 
#
# AUTHOR: Maurizio di NuvoleSparse
#
# License: GNU General Public version 2 or any later version.
# This program comes with ABSOLUTELY NO WARRANTY; for details
# see the COPYING file or visit "http://www.gnu.org/licenses/gpl.html".
# This is free software, and you are welcome to redistribute it under
# certain conditions. See the GPL license for details. 
#
#  Dependence:
#					alien
#					python
#					zenity

import os
from re import search
from sys import argv
from commands import getstatusoutput

if len(argv[1:]) == 0:
	os.system('zenity --title="Attenzione - grpm2deb" --error \
--text="Seleziona almeno un file."')
exit(1)

count = 1
while count < len(argv):
	if search(r"\.[rR][pP][mM]$", argv[count]): 
		if getstatusoutput('gksudo -u root -k -m \
"Inserisci la password per accedere come superutente:" \
/bin/echo "got r00t?"')[0] == 0:
			os.system("sudo alien -d "+argv[count]+" \
2>>/tmp/grpm2deb.log")
	else:
		file = open("/tmp/grpm2deb.log", "w")
		file.write("Attenzione! "+argv[count]+" non \
è un rpm.")
		file.close()
		
	count = count + 1

if os.path.isfile("/tmp/grpm2deb.log") and \
os.path.getsize("/tmp/grpm2deb.log") != 0:
	os.system("cat /tmp/grpm2deb.log | zenity \
--title='Errore - grpm2deb' --text-info")
	os.remove("/tmp/grpm2deb.log")
Attenzione: gli script sono pubblicati SOLO a scopo dimostrativo (didattico) e ASSOLUTAMENTE SENZA GARANZIA: l'autore nega qualsiasi responsabilità di danni riscontrabili a seguito del loro uso (mancato funzionamento, errori ed eventuale perdita di dati, etc). Gli script sono pubblicati con la licenza d'uso GNU General Public License, peraltro ottenibile al seguente link GNU/GPL.

Aggiornamento del 31 Agosto 2009

Questo aggiornamento è richiesto dal bug riscontrato nei giorni scorsi, in parole molto povere è solo una dimenticanza e l'eccessiva fretta la causa di questo disguido: non avevo messo “sudo” davanti al comando “alias” è lo script mi dava l'errore banale Must run as root to convert to deb format (or you may use fakeroot).. Ora è risolto!

Ultimo aggiornamento 31 Agosto 2009


powered by FreeFind
Il sito è una creazione di Maurizio... ed è pubblicato sotto una Licenza CC; esso non viene aggiornato
in maniera periodica, pertanto non può essere considerato un prodotto editoriale ai sensi della legge n. 62 del 7.03.2001.