m (→Referencias) |
(→Referencias) |
||
| (No se muestran 3 ediciones intermedias realizadas por un usuario) | |||
| Línea 1: | Línea 1: | ||
| − | + | A menudo habrá algún paquete que quieras instalar pero no exista en los repositorios de Ubuntu. En el caso de que este paquete tenga alguna dependencia con otros paquetes, intentar usar '''dpkg''' puede hacerte caer en un "infierno dpkg", y que '''apt''' resuelva esas dependencias por ti podría ayudarte realmente. Hay métodos muy completos para crear tu propio repositorio, como [https://help.ubuntu.com/community/Debarchiver|Debarchiver] o [https://help.ubuntu.com/community/Dak|Dak]. Éstos son excesivos cuando todo lo que quieres es resolver dependencias de unos cuantos paquetes que te has descargado de Internet. Una solución simple es usar '''dpkg-scanpackages''', el cual creará un repositorio que puedas añadir a tu sources.list. | |
| − | + | == Crear un repositorio personal == | |
| − | + | ||
| − | = | + | |
Aquí tenemos 3 pasos para crear un repositorio propio sencillo propio | Aquí tenemos 3 pasos para crear un repositorio propio sencillo propio | ||
| Línea 10: | Línea 8: | ||
* Añade una línea a tu sources.list apuntando a tu repositorio | * Añade una línea a tu sources.list apuntando a tu repositorio | ||
| − | == El directorio == | + | === El directorio === |
| + | |||
Crea un directorio donde mantengas tus paquetes. Para este ejemplo usaremos /usr/local/mydebs. | Crea un directorio donde mantengas tus paquetes. Para este ejemplo usaremos /usr/local/mydebs. | ||
| Línea 17: | Línea 16: | ||
Ahora mueve tus paquetes al directorio que has creado. | Ahora mueve tus paquetes al directorio que has creado. | ||
| − | == El | + | === El script === |
Son simplemente dos líneas: | Son simplemente dos líneas: | ||
| Línea 24: | Línea 23: | ||
cd /usr/local/mydebs | cd /usr/local/mydebs | ||
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz | dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz | ||
| − | |||
Copia y pega las líneas de arriba en un documento nuevo con gedit, y guardalo como '''update-mydebs''' en ~/bin. (el caracter '~' se refiere el directorio home. Si ~/bin no existe, créalo: Ubuntu pondrá ese directorio en tu PATH. Este es un buen lugar para poner scripts personales). A continuación, haz tu script ejecutable: | Copia y pega las líneas de arriba en un documento nuevo con gedit, y guardalo como '''update-mydebs''' en ~/bin. (el caracter '~' se refiere el directorio home. Si ~/bin no existe, créalo: Ubuntu pondrá ese directorio en tu PATH. Este es un buen lugar para poner scripts personales). A continuación, haz tu script ejecutable: | ||
| − | + | chmod u+x ~/bin/update-mydebs | |
| − | + | ||
'''Cómo trabaja el script:''' | '''Cómo trabaja el script:''' | ||
| Línea 35: | Línea 32: | ||
'''dpkg-scanpackages''' busca todos los paquetes en mydebs, y la salida se comprime y se guarda en archivo (Packages.gz) que '''apt-get update''' puede leer (consulta al final de la página las referencias para una explicación más detallada). /dev/null es un fichero vacio; es un substituto para un fichero invalidado el cual contiene alguna información adicional sobre los paquetes, que en este caso no es realmente necesario. De nuevo, consulta las referencias al final de la página si realmente quieres informarte sobre esto. | '''dpkg-scanpackages''' busca todos los paquetes en mydebs, y la salida se comprime y se guarda en archivo (Packages.gz) que '''apt-get update''' puede leer (consulta al final de la página las referencias para una explicación más detallada). /dev/null es un fichero vacio; es un substituto para un fichero invalidado el cual contiene alguna información adicional sobre los paquetes, que en este caso no es realmente necesario. De nuevo, consulta las referencias al final de la página si realmente quieres informarte sobre esto. | ||
| − | == Sources.list == | + | === Sources.list === |
| − | + | ||
| − | + | Añade la línea: | |
| − | A tu /etc/apt/sources.list, y guárdalo, y ya está hecho | + | deb file:/usr/local/mydebs ./ |
| + | |||
| + | A tu /etc/apt/sources.list, y guárdalo, y ya está hecho. | ||
| + | |||
| + | == Usar el repositorio == | ||
| − | |||
Siempre que pongas nuevos deb en el directorio mydebs, ejecuta | Siempre que pongas nuevos deb en el directorio mydebs, ejecuta | ||
| − | + | sudo update-mydebs | |
| − | + | sudo aptitude update | |
| − | + | ||
| − | Ahora tus paquetes locales pueden ser manipulados con | + | Ahora tus paquetes locales pueden ser manipulados con [[Synaptic]], [[Adept]], [[aptitude]] o [[apt]]. Cuando intentes hacer '''apt-get install''', cualquier dependencia será resuelta, siempre que sean conocidas. |
Los paquetes mal hechos probablemente fallarán, pero no tendrás que aguantar el infierno de las dependecias. | Los paquetes mal hechos probablemente fallarán, pero no tendrás que aguantar el infierno de las dependecias. | ||
| − | = Referencias = | + | == Referencias == |
| − | + | ||
| − | [http://www.debian.org/doc/manuals/maint-guide/index.en.html Debian New Maintainers Guide] | + | * [[Como AptGet]] |
| + | * [http://www.debian.org/doc/manuals/maint-guide/index.en.html Debian New Maintainers Guide] | ||
| + | * [http://hereveri.cl/cdextra Crear repositorio para paquetes deb en Ubuntu] | ||
| − | + | == Fuentes == | |
| − | + | * https://help.ubuntu.com/community/Repositories/Personal | |
| − | <!-- | + | <!-- categorías --> |
[[Categoría:Repositorios]] [[Categoría:Revisar]] | [[Categoría:Repositorios]] [[Categoría:Revisar]] | ||
A menudo habrá algún paquete que quieras instalar pero no exista en los repositorios de Ubuntu. En el caso de que este paquete tenga alguna dependencia con otros paquetes, intentar usar dpkg puede hacerte caer en un "infierno dpkg", y que apt resuelva esas dependencias por ti podría ayudarte realmente. Hay métodos muy completos para crear tu propio repositorio, como [1] o [2]. Éstos son excesivos cuando todo lo que quieres es resolver dependencias de unos cuantos paquetes que te has descargado de Internet. Una solución simple es usar dpkg-scanpackages, el cual creará un repositorio que puedas añadir a tu sources.list.
Contenido |
Aquí tenemos 3 pasos para crear un repositorio propio sencillo propio
Crea un directorio donde mantengas tus paquetes. Para este ejemplo usaremos /usr/local/mydebs.
mkdir /usr/local/mydebs
Ahora mueve tus paquetes al directorio que has creado.
Son simplemente dos líneas:
#! /bin/bash cd /usr/local/mydebs dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
Copia y pega las líneas de arriba en un documento nuevo con gedit, y guardalo como update-mydebs en ~/bin. (el caracter '~' se refiere el directorio home. Si ~/bin no existe, créalo: Ubuntu pondrá ese directorio en tu PATH. Este es un buen lugar para poner scripts personales). A continuación, haz tu script ejecutable:
chmod u+x ~/bin/update-mydebs
Cómo trabaja el script:
dpkg-scanpackages busca todos los paquetes en mydebs, y la salida se comprime y se guarda en archivo (Packages.gz) que apt-get update puede leer (consulta al final de la página las referencias para una explicación más detallada). /dev/null es un fichero vacio; es un substituto para un fichero invalidado el cual contiene alguna información adicional sobre los paquetes, que en este caso no es realmente necesario. De nuevo, consulta las referencias al final de la página si realmente quieres informarte sobre esto.
Añade la línea:
deb file:/usr/local/mydebs ./
A tu /etc/apt/sources.list, y guárdalo, y ya está hecho.
Siempre que pongas nuevos deb en el directorio mydebs, ejecuta
sudo update-mydebs sudo aptitude update
Ahora tus paquetes locales pueden ser manipulados con Synaptic, Adept, aptitude o apt. Cuando intentes hacer apt-get install, cualquier dependencia será resuelta, siempre que sean conocidas.
Los paquetes mal hechos probablemente fallarán, pero no tendrás que aguantar el infierno de las dependecias.