Hola Daniel, es sencillo, para ello tienes que crear tu repositorio de archivos .deb, donde podras poner cualquier archivo .deb que desees, ya sea creado por ti, o por alguna otra persona.
Este es el documento que yo utilice cuando cree los repositorios... espero que te sirva:
Montar un repositorio estándar de paquetes Debian
--Estructura de directorios--
Primeramente, debemos crear la estructura de nuestro nuevo repositorio, que vamos a llamar mirepo como ejemplo. El lugar donde lo debemos crear la estructura puede ser cualquiera, por ejemplo en /var/:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Como se puede ver, vamos a usar las tres distribuciones de Debian (stable, testing y unstable), cada una con sus ramas (main, contrib y non-free), para tres arquitecturas (i386, powerpc y amd64) y con sus respectivos paquetes de fuentes (directorios sources).
Aquí puede sobrar o faltar según tus propias necesidades. Quizás sólo quieras una distribución o incluir también la arquitectura arm; solo tendrías que quitar o añadir las partes que te interesen. Eso sí, siguiendo la estructura específicada.
--Llenando el repositorio--
Los paquetes binarios los debemos almacenar en los directorios binary's correspondientes y los sources en la rama que pertenezca. Si tú numero de paquetes es considerable, ni que decir tiene que es aconsejable automatizar esta tarea con algún script que lo haga de forma periódica.
Una vez tengamos todos los archivos en su sitio, si queremos que nuestros usuarios del repositorio puedan utilizar el pinning de APT debemos incluir en cada directorio binary y source un archivo llamado Release con la siguiente forma:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Las comillas serán necesarias dependiendo de si el dato es una cadena sin espacios o no. Es un archivo bastante sencillo y que se debe personalizar para cada directorio binary donde vaya a ser guardado.
Con los repositorios llenos de paquetes y los Release en su sitio sólo nos queda crear los ficheros índices. Utilicemos la herramienta apt para este fin. Antes de nada, tenemos que crear unos ficheros de configuración para que apt haga lo necesario para nuestro repositorio. Vamos a crear, concretamente, 2 tipos de archivos que pueden almacenarse en el raíz del repositorio (/var/mirepo/)
--apt-"distribucion"-release.conf--
En nuestro caso, deberíamos crear tres: apt-stable-release.conf, apt-testing-release.conf, apt-unstable-release.conf. Vamos a mostrar la estructura de uno de ellos y la del resto es idéntica, salvo cambios propios de cada distribución. Para la distribución stable, tendríamos en apt-stable-release.conf:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Debemos rellenar los campos oportunos con los valores específicos para cada uno de los archivos.
--apt-ftparchive.conf--
Este otro archivo de configuración define las reglas que apt usará y aplicará a la hora de crear los ficheros índices. Para nuestro ejemplo sería un archivo bastante largo y no proporciona información añadida hacerlo para todas las ramas, por lo que se muestra sólo la distribución unstable:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Con esto almacenado y configurado podemos hacernos un breve script (update-archives.sh) que automatizará la actualización del repositorio:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Este script debemos ejecutarlo cada vez que añadamos un paquete binario o fuente a nuestro repositorio. Se puede hacer a mano o utilizando cron.
--Utilizando el repositorio--
Una vez que hemos hecho todo lo anterior podemos añadir la siguiente línea a nuestro /etc/apt/sources.list para utilizar el repositorio de forma local:
--------------------------------------------------------------------------------
deb file:///var/mirepo unstable main contrib non-free
--------------------------------------------------------------------------------
La línea anterior utilizaría la distribución unstable, con las tres ramas.
Si quieres tenerlo accesible de forma remota, puedes crear un enlace simbólico en /var/www/ para redireccionar la consulta http a tu servidor Apache:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Y añadir como repositorio la línea:
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
################################################################################
Ficheros utilizados en nuestro repositorio
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--apt-ftparchive.conf--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--apt-gutsy-release.conf--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--udpate-archives.sh--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--dists/gutsy/main/binary-i386/Release--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Cualquier duda, no dudes en consultarme...