.deb o .tar.gz??? (que me recomendáis)

Imagen de oglok
0 puntos

Buenas tardes a todos!!

Veréis, estoy desarrollando una aplicación y tengo un directorio con todo lo que la propia aplicación necesita. Una vez compilada, esta el ejecutable con todo lo necesario en un único directorio.

Quiero que la "instalación" sea lo más amigable posible. ¿Que pensáis que sería lo mejor? A mi me gustaría tener un paquete .deb que se extraiga automáticamente donde el usuario elija. E incluso que apareciera en el menú de "inicio".

La otra opción era un archivo comprimido y se acabo, pero claro, es mas feo.

Que me recomendáis?

Gracias a todos!

Imagen de Scorpyo82
+1
0
-1

Humm tu mismo lo has dicho, el .deb es mas facil de instalar.
Pero la compilación que yo sepa hace que funcione con cualquier distro... ya que es el codigo fuente ¿no?

Estoy algo pez en este tema pero creo que es así.

Saludos.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de oglok
+1
0
-1

Si, vamos, la aplicación tiene el ejecutable + directorio thirdparty + directorios de datos + etc....

Lo que me gustaría saber es como hacer un .deb de forma facil. He estado leyendo por ahí, y hay que hacer un archivo donde ponga las rutas de donde se deben instalar los archivos, pero no quiero eso, ya que estan bien donde estan!

Ideas?

+1
0
-1
Imagen de Scorpyo82
+1
0
-1

Ahhh eso creo que lo hace el comando dpkg-deb

Para mirar el manual escribe en una terminal:

man dpkg

Esto es lo que veo yo en el manual que puede que te sirva:

dpkg-deb actions
Consulte dpkg-deb(1) para más información sobre las sigu?
ientes acciones.

-b | --build directorio [fichero]
Construye un paquete Debian GNU/Linux.

-c | --contents fichero
Muestra el contenido de un paquete Debian GNU/Linux.
-e | --control fichero [directorio]
Extrae la información de control de un paquete.
-x | --extract fichero directorio
Extrae los ficheros contenidos en el paquete.
-X, --vextract archive directory
Extrae y muestra los nombres de fichero que un
paquete contiene.
-f | --field fichero [campo-control] ...
Muestra el/los campo(s) de control de un paquete.
--fsys-tarfile fichero
Muestra el fichero tar contenido en el paquete deb.
dpkg -I | --info fichero [fichero-control]
Muestra información sobre el paquete.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de sanla
+1
0
-1

Para que cada cual instale en donde quiera lo mejor es un archivo comprimido, tenga o no tenga que compilar la aplicación. Tiene la ventaja de que el método funcionará en cualquier distro.

Con un .deb tiene la ventaja de que puedes especificar que se instale en determinados directorios del sistema y de poder poner la lista de paquetes necesarios (no es necesario incluir las librerías en el paquete, ya que si no las tiene instaladas las instala). Por contra tiene que los .deb ni se pueden usar en todas las distros ya que por ejemplo en Red Hat se usa otro archivo (.rpm).

Esto es más o menos como yo lo entiendo y lo veo, ahora, por supuesto la elección es tuya.

Si preguntas si preferimos uno u otro.. los cómodos y especialmente los recién llegados al mundo linux te dirán que los .deb (un doble click y a instalarse el solito), los que prefieran tener las aplicaciones funcionando lo mejor posible en su máquina preferirán compilar desde el código fuente.

Saludos.

+1
0
-1
Imagen de Scorpyo82
+1
0
-1

Entonces es lo que yo decía... es mejor compilarlo...

Claro, que no todo el mundo prefiere a hacerlo por lo que dices sanla.... ahiiiii perezosos.... jjejejeje

Pero bueno, tu eliges lo que veas oportuno.

Saludos a todos.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de cousteau
+1
0
-1

Un .deb no da a elegir dónde se extrae (se podría hacer, pero no es lo normal; normalmente se descomprime sin más en tal sitio o tal otro). Por otro lado, si lo haces bien, esto es lo más cómodo porque se pone cada cosa en su sitio.

Para que aparezca en el menú de Aplicaciones, tienes que crear un .desktop y guardarlo en /usr/share/applications, o /usr/local/share/applications. Y un icono en /usr/[local/]share/pixmaps.

Normalmente el software se distribuye como tar.gz, y que haciendo ./configure, make, sudo make install, se instala (por defecto en /usr/local, a menos que dés más opciones a ./configure). Pero si quieres que sea fácil de instalar, es mejor un .deb (no son difíciles de crear).

+1
0
-1

«E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem» significa que dpkg se ha interrumpido y que tienes que ejecutar "sudo dpkg --configure -a" para corregir el problema.
Imagen de Goyo
+1
0
-1

Quiero que la "instalación" sea lo más amigable posible. ¿Que pensáis que sería lo mejor?

Lo mejor es el código fuente bien documentado, un archivo con la licencia, un readme con instrucciones y guiones si procede (makefile, configure, etc), todo ello bien ordenado en un tarball. Adicionalmente puedes hacer distribuciones binarias para Ubuntu o los sistemas operativos que quieras. Pero una distribución binaria puede ser muy amigable para algunos usuarios, una pesadilla para otros y completamente inútil para los demás.

A mi me gustaría tener un paquete .deb que se extraiga automáticamente donde el usuario elija.

Mal pensado, la idea de dpkg es evitar en la medida de lo posible que el usuario tenga que tomar decisiones y no es una herramienta adecuada para lo que quieres. Además un paquete que no sigue las reglas habituales puede causar más problemas. Los usuarios que saben lo que hacen podrían pasar opciones a make para personalizar su instalación, los que usan un paquete binario no deberían tener que ocuparse de esas cosas.

+1
0
-1