
Os traemos en este articulo como crearse por uno mismo lo que algunos llaman instalator , que es una paquete ipk, pero en esta ocasion, como hacerlo bien hecho sin chapuzas.
Antes de comenzar para los que no han tenido mucho contacto con linux y sistemas embebidos, ipk se podria asimilar a tu comprimir varios archivos en .zip que todos conocemos para luego ese .zip extraer su contenido en un pc. Ipk a groso modo seria similar es crear una archivo bajo compresion ar que tu luego puedes descomprimir en un receptor, esto seria mas o menos para que lo entendais.
Ademas de lo comentado, las imagenes proporcionan cientos de paquetes ipk para instalar que evidentemente no cojerian en la imagen, por lo que crean lo que se denomina un repositorio (paquetes ipk los cuales estan en un servidor web), y los podemos gestionar su instalacion con el sistema opkg del receptor, esto es muy importante ya que si instalas un paquete desde el repositorio de una imagen, si dentro unos dias hay una actualizacion nosotros desde el receptor podriamos actualizarlo ya que se detecta la instalacion de un paquete inferior.
Sobre estas bases vamos a ver como hacernos facilmente lo que algunos llaman instalator pero bien hecho, ya que en algun instalator que hemos visto lo han realizado a lo cutre, cargandose el sistema opkg para ese paquete, por ejemplo:
- Para añadir epgimport al instalator, han instalado epgimport desde los repositorios de la imagen, luego han cojido los archivos y los meten en el ipk instalator y lo mismo con los sources de epgimport, esto ya implica que epg import ni los sources se pueden actualizar desde la misma imagen cuando halla una version superior en la imagen, ya no encuentra el paquete epgimport ni rytecsources instalado en el deco, lo que podriamos llamar un chapuza.
- Para añadir oscam-trunk en openatv han instalado oscam en el receptor desde los repositorios de la imagen, luego han cojido los archivos y los meten en el ipk instalator, esto provoca lo mismo que con epgimport, cuando halla una actualizacion de paquetes de oscam-trunk en la imagen, como no existe el paquete oscam-trunk instalado como tal pues no se produciria la actulalizacion, otra chapuza.
En este articulo vamos a ver como crearnos lo que llaman un instalator por nosotros mismos, que no es mas que un paquete de intalacion ipk de archivos pero bien realizado, sin destrozar el sistema opkg de los archivos de la imagen, en este caso tomando como ejemplo la imagen OpenATV.
Instalacion de opkg-tools
Opkg-Tools es una utilidad que nos permite facilmente crear un paquete ipk, para su instalacion es muy sencillo en imagen openatv (es necesario tener un usb o disco duro montado como /media/hdd en el receptor), podemos acceder por terminal al receptor y ejecutar estos comandos para su instalacion:
opkg update
enigma2-plugin-extensions-opkg-tools
Una vez realizada la instalacion observaremos que en /media/hdd se nos ha creado una carpeta llamada ipkg-tools que es desde donde crearemos nuestros archivos ipk (instalator).
Crear instalator paquete ipk
Una vez hemos instalado opkg-tools y como hemos visto que se nos ha creado una carpeta llamada ipkg-tools, en su interior creamos una carpeta que contendra los archivos necesarios para la creacion de nuestro instalator, en este ejemplo la llamamos instalator-bienhecho_1.9
Ahora en su interior debera contener:
- carpeta llamada CONTROL —> Se ubican los archivos control del ipk
- carpetas de los archivos que deseamos meter en el receptor en misma ubicacion que llevarian en el receptor, es decir si deseamos meter una archivo o carpeta llamado hola en /usr/bin, deberiamos crear una carpeta llamada usr dentro otra carpeta llamada bin y dentro ya la carpeta o archivo hola.
Ejemplo practico de creacion:
Para hacer el instalator bien hecho en este caso vamos a basarnos en instalar algunas cosas del instalator que hemos visto mal hecho.
1. En primer lugar debemos crear un archivo llamado control dentro de la carpeta CONTROL con la siguiente estructura:
Package: instalator-bien
Version: 1.9
Architecture: all
Depends: enigma2-plugin-extensions-epgimport
Maintainer: los que saben
Description: instalator como debe ser
Package: nombre del paquete que deseamos tener en este ejemplo instalator-bien
version: nombre de la version del paquete
Arquitectura: si deseamos que sirva para todas las cpu de receptores ponemos all
Depends: Paquetes que deseamos que se instalen adicionales, en este caso ponemos enigma2-plugin-extensions-epgimport para que se instale desde los repositorios de la imagen que seria lo correcto, y no como hemos visto que hacian de descargarlo y luego meterlo en el ipk, de esta manera no rompemos las actualizaciones de la imagen ya que estamos instando epgimport desde sus repositorios.
Maintainer: ponemos el nombre de quien mantiene la creacion del ipk
Description: Una descripcion del paquete, por ejemplo para que se utiliza.
2. En segundo lugar vamos a crear un archivo llamado postinst, que es un script shell donde podemos ejecutar otras acciones, que se ejecuta despues de la instalacion del ipk, este se ubica tambien dentro de la carpeta CONTROL, en este ejemplo lo vamos a crear asi:
Que basicamente lo que estamos realizando es:
- Instalar el repositorio de jungle
- Instalar el repositorio oficial de emus de openatv, de esta manera no hacemos como el instalator mal hecho que te metian oscam-trunk descargado, ya instalamos el repositorio de emus de la imagen.
- Instalamos oscam-trunk desde repositorio y no la chapuza de descargarlo y meterlo y asi salvaguardamos las actualizaciones de opkg.
Ahora ya tendriamos los archivos en este caso de CONTROL
3. En tercer lugar podriamos instalar otros archivos que no existan en los repositorios, como hemos comentado tendria que tener la misma estructura de archivos que en el receptor, en este ejemplo basico, solo vamos a meter un archivo para que se instale en /tmp del receptor, pues debemos crear la carpeta tmp y dentro el archivo
Compilar instalator paquete ipk
Una vez que ya tenemos nuestros archivos creados, ahora simplemente vamos a crear el paquete ipk o llamado instalator, para ello ejecutamos estos comandos:
Nos situamos en la carpeta ipkg-tools
cd /media/hdd/ipkg-tools
Ahora ejecutamos el siguiente comando para compilar la carpeta que teniamos creado con los archivos
ipkg-build instalator-bienhecho_1.9
y ya tendriamos nuestro paquete creado:
Instalar el paquete Instalator
Para realizar la instalacion simplemente pues ejecutar opk install nombre de nuestro instalator
De esta manera nos instalara epgimport y oscam-trunk desde repositorios y no la chapuza del instalator mal de destrozar el sistema opkg de la imagen cuando esos archivos ya esta en repositorios, y ademas ya pues meterte lo archivos extras que tu quieras meter.
Me parece genial este articulo, un pedazo de trabajo!! Gracias!!!