[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Crear paquete deb para programa desarrollado en python+glade



El vie, 29-04-2005 a las 17:20 -0400, Cristian Aravena Romero escribió:
> Hola, se esta desarrollando [1]remunex un pequeño sistema en python +
> glade.  Ya esta en etapa alfa pero se desea crear un paquete para
> poder realizar la instalacion en forma ordenada en las distribuciones.
>  Se habia analizado [2]checkinstall, pero no sirve ya que esta
> aplicacion crea paquetes que se compilan.  Por ello les consulto si
> existe en alguna parte documentacion referente en el tema, ya que en
> google no lo he encontrado .... Ahora voy a navegar por la
> documentacion de debian.
> 
> [1]http://chileforge.cl/projects/remunex/
> [2]http://www.ubuntu-es.org/node/524
> 
> Esperando vuestra ayuda

Hace tiempo me pasaron unas lineas de código en esta lista las cuales he
convertido en un script que empaqueta y desempaqueta debs...

==========================8<=======empaqueta_deb.sh=====================

#!/bin/bash

modificador=$1
fichero=$2

ayuda() {
echo "Uso de empaqueta_deb.sh"
echo ""
echo "   Desempaquetar:"
echo "     empaqueta_deb.sh --desempaqueta
(-d) /ruta/donde/este/archivo.deb"
echo "     Esto copia nuestro deb a un directorio temporal"
echo "     y lo descomprime /tmp/paquete/tmp/"
echo ""
echo "   Empaquetar:"
echo "     empaqueta_deb.sh --empaqueta (-e)"
echo "     Esto empaqueta el deb préviamente desempaquetado"
echo "     generando de nuevo el archivo .deb"
echo "     Si se añade (-a) copia el deb en el repos local"
echo ""
echo ""
exit 0
}
desempaqueta() {
cd /tmp/
rm -rf paquete >/dev/null &2>1
mkdir paquete
cd /tmp/paquete
ar x $fichero >/dev/null &2>1
mkdir tmp
cd tmp
tar xzpf ../data.tar.gz
mkdir DEBIAN
cd DEBIAN
tar xzpf ../../control.tar.gz
echo "Desempaquetado en /tmp/paquete/"
exit 0
}

empaqueta() {
cd /tmp/paquete/tmp/
dpkg --build . ..
cd ..
ls *.deb
echo "Aquí tienes tu .deb"
}

if [ "$#" == "0" ]; then
ayuda
fi
if [ "$1" == "--help" ]; then
ayuda
fi

if [ "$1" == "--desempaqueta" ] ; then
desempaqueta
fi

if [ "$1" == "-d" ] ; then
desempaqueta
fi

if [ "$1" == "--empaqueta" ]; then
empaqueta
fi

if [ "$1" == "-e" ]; then
empaqueta
fi

if [ "$2" == "-a" ]; then
   cp *.deb /var/www/debian_mirror/binary
   /home/mario/scripts/actualiza_mirror.sh
fi



==========================>8==================================

su uso es muy sencillo:

empaqueta -d /home/usuario/paquete.deb

esto descomprime el paquete en /tmp/paquete/tmp/

empaqueta -e 

reconstruye el paquete

empaqueta -e -a

empaqueta y copia el deb a mi repositorio local de paquetes para despues
actualizar el Packages.gz

Espero que te sirva

Para tu programa en python yo desempaquetaría un paquete deb no muy
complicado borraría los archivos que no necesite
EDITAR /tmp/paquete/tmp/DEBIAN/control para darle nombre y versíon y
empaquetar de nuevo

Saludos



Reply to: