¿Dónde almacenar mi código fuente?

Josepanaero

Buenas.

Esta pregunta es un poco chorra, pero bueno, a ver si me logro explicar. Yo suelo instalarlo todo tirando de repositorios, pero ahora tengo la necesidad de instalar unos programas que no están en los repositorios de Debian (en realidad sí están, pero necesito la última versión).

Así que mi solución pasa por bajarme el código fuente y hacer el típico "./configure; make; make install". Hasta aquí todo bien. El "problema" es ¿en qué directorio almaceno el código fuente? En realidad podría almacenarlo y descomprimirlo donde me diese la gana, pero ya que linux trae una serie de directorios predefinidos y cada uno de ellos tiene su función, me gustaría hacer las cosas correctamente.

Leyendo por internet, CREO que el directorio correcto para descargar el archivo comprimido, y luego descomprimirlo es "/usr/local/src". He descartado las otras dos opciones que se me ocurrían:

  • "/opt": no, porque en principio está restringido para que lo use únicamente root.
  • "/usr/src": tampoco, porque me da la sensación de que ahí es donde deberían guardarse los archivos fuente que forman parte de la distribución.

¿Qué opináis sobre esto, linuxeros?

Nucklear

Pues yo las instalaciones las hago en /opt o en su defecto si no quiero ensuciar en /opt2 (creado por mi). Pero bueno esto es a titulo personal...

Chispas-Elek

/opt es un directorio en el cuál deberías colocar software opcional. Normalmente es para colocar software que tiene licencias cerradas como por ejemplo Java. Algunas distros de linux lo usan para meter algunos programas de 3º que no contienen código fuente o para meter aplicaciones que no deseas que estén dentro del sistema.

Por lo que digamos tu deducción es la correcta. Aunque no pertenezca a la distribución el contenido está en tu ordenador asi que puedes colocarlo dentro de local.

Saludos.

Get

yo quizas sea la persona menos indicada para este tema tan purista, como tengo malos habitos......

cuando instalo algo en mi pc personal, no el q uso pa desarollar linux, ni el de hacer paquetes, me bajo las fuentes de los programas a una carpeta llamada build en mi home (~) y ahi dentro dejo el tar.gz. entonces lo descomprimo asi:

tar zxvf archivo.tgz -C $NOMBREDELAFUTURAAPP
lo cual me extrae el tgz a una nueva carpeta aqui mismo.

entro en ella y sin calentarme mucho, ./configure --prefix=/usr
y despues si no pide mucha historia hago make
todo esto como usuario, ya q no me hace falta usar el root, anoser que haga el paso de make install, el cual no es nada mas que un deploy de la aplicacion ya compilada en el arbol de directorios del sistema.
a lo que iba, como el make ya lo he hecho, pues lanzo y compruebo la aplicacion con ./bin/nombreapp (puede variar esto)
tras trastearlo todo y demas, pues o hago el make install o lo dejo tal cual aqui mismo y asi si el dia de mañana me harto de la app, la borro y punto.

asi no marraneo el sistema.

en cuanto a apps de fuera, si es correcto, usar /opt, es otra opcion a la hora de configure, indicarle directamente q quieres meter el soft en /opt/ y si te miras el configure --help veras muchas mas opciones a tener en cuenta, como el logdir y demas cosas.

Josepanaero

Gracias a todos por las respuestas. Al final parece que "/usr/local/src" es una buena opción, que "/usr/src" no lo es (está más bien destinado a guardar el kérnel ahí), y que mucha gente usa "/opt" en lugar de usar "/usr/local/src". No digo que esto último sea incorrecto, solamente que parece que está bastante extendido el usar "/opt" de este modo.

Salu2.

Get

realmente te puede dar igual donde almancenarlo, me parece bien usr/local/src
mayormnete, porque si quieres desinstalar un programa instalado con make install, su manera correcta de quitarlo, es make uninstall en el directorio donde se compilo.

Usuarios habituales

  • Get
  • Josepanaero
  • Chispas-Elek
  • Nucklear

Tags