Ga naar inhoud


Packages op dreambox, installeren, de-installeren, hoe zit dat?


Aanbevolen berichten

Geplaatst:

Hoewel ipk(g) ook voor andere (meestal) Linux platforms van toepassing is, heeft de onderstaande handleiding alleen betrekking op ipk(g) voor Dreambox. 

Wat is een ipk package?
Een package is een installatiebestand voor Dreambox waarin de nodige onderdelen (bestanden, configuratie, …) bij elkaar ingepakt zijn. In een package zit ook informatie in waar op het systeem diverse bestanden moeten worden geplaatst maar ook welke acties moeten worden uitgevoerd om een programma geïnstalleerd en werkend te krijgen. Een goede package bevat tevens voldoende informatie om zichzelf netjes uit het systeem te verwijderen.

Wat is dependency?
Soms heeft een package een andere package nodig om te kunnen werken. In dat geval is de eerste package afhankelijk van de tweede. In een (goede) ipk package is opgenomen welke packages geïnstalleerd moeten zijn voordat deze package wordt geïnstalleerd.

Wat is een package-feed?
Een package feed is een lijst van de te installeren packages. De makers van de nieuwe images stellen vaak een via het internet toegankelijke lijst van packages. Ook is de repository (opslagplaats) van de packages via internet beschikbaar. Op deze manier kunnen de beschikbare packages in een overzicht worden getoond of (ter installatie) worden gedownload.

Wat is ipkg?
ipkg (Itsy Package Management System) is een lichte package manager die ontworpen is vooral voor embedded machines, zoals Dreambox. De ipkg-package manager wordt op de Dreambox middels het commando ipkg op de command line uitgevoerd. Soms wordt dit commando via een user-interface (bijvooreeld de plugin-installer van Enigma) ontsloten en daarom vindt de uitvoering van ipkg onder water plaats. De gebruiker merkt hier dus minder van.

Met ipkg kun je dus een package installeren, de-installeren, upgrade maar ook informatie opvragen over de geïnstalleerde packages. ipkg houdt een databaseje bij waarin informatie over de geïnstalleerde packages wordt bijgehouden zoals: welke packages zijn geïnstalleerd, welke bestanden horen bij elke package, van welke packages is een package evt. afhankelijk, etc. 

ipkg zorgt ook voor integriteit. Als bij de installatie van een package A blijkt dat het van een andere package afhankelijk is, wordt deze package uit de feed gevonden en gedownload en geïnstalleerd alvorens de package A wordt geïnstalleerd. Zo is het ook niet zondermeer mogelijk om een package te verwijderen als andere packages geïnstalleerd zijn die ervan afhankelijk zijn. Je kunt ook niet zomaar een oudere package over een bestaande recentere package installeren.

Hoe installeer ik een ipk package op Dreambox?
Er zijn meerdere manieren om een package op een Dreambox te installeren:

  1. via het menu ‘software-beheer’ onder Enigma kan een package (meestal plugin) worden geïnstalleerd. Het menu ‘software-beheer’ kan afhankelijk van de image anders heten. Hiermee krijg je een lijst te zien van de beschikbare software (/plugins). Dit is dus een grafische weergave van de feed, wat ook vaak geordend en gestructureerd is. Als je een software kiest om te installeren, wordt deze onder water gedownload en geïnstalleerd. ipkg zal ook de nodige andere packages waar de te installeren package van afhankelijk is, downloaden en installeren voordat de gemeende package wordt geïnstalleerd.
  2. via tools vanuit een Windows machine: sommige tools schijnen de mogelijkheid te bieden om een package op je dreambox te installeren vanuit je Windows computer (namen? Help!).
  3. m.b.v. het commando ipkg op de command line. Zie hieronder voor meer info.

Hoe installeer ik een ipk package met ipkg?
Om een package met ipkg te installeren gebruik je het volgende commando op de command line:

ipkg install PACKAGE_FILE.ipk

Het spreekt voor zich dat je eerst de package gedownload moet hebben en op je dreambox moet hebben staan. Om dit te doen kun je bijvoorbeeld in /tmp gaan staan en met het commando wget de package binnen halen:

cd /tmp
wget LINK_TO_THE_PACKAGE_FILE.ipk.zip
upzip PACKAGE_FILE.ipk.zip
ipkg install PACKAGE_FILE.ipk

Je kunt ook, als je de precieze naam van een package weet (zonder extensie en versie nummers en al da soort informatie) gewoon het volgende commando invoeren:

ipkg PACKAGE

In dit geval gaat ipkg de package downloaden en installeren. Als er afhankelijkheden zijn, gaat ipkg ook deze downloaden en installeren (op de juiste volgorde). Voorwaarde is dat ipkg de juiste feed kent (in de config van ipkg). 

Hoe de-installeer ik een ipk package?
Om een package te de-installeren gebruik je het volgende commando:

ipkg remove PACKAGE

let wel dat je hier de precieze naam van de package moet opgeven (dus geen extensie of versienummers, etc) zoals ipkg deze kent. Vaak kun je het beste eerste de naam van een package opvragen en het daarna de-installeren.

Als er packages op je Dreambox staan die van de package afhankelijk zijn die je wilt de-installeren, krijg je een foutmelding.

Hoe vraag ik een lijst op van de geïnstalleerde packages?
Om een lijst van de geïnstalleerde packages te verkrijgen, gebruik je het volgende commando:

ipkg list_installed

Om een lijst van alle beschikbare packages uit de feed te maken, gebruik je het volgende commando:

ipkg list

En als je deze lijsten wilt filteren bijvoorbeeld op alles wat het woordje skin bevat:

ipkg list *skin*
ipkg list_installed *skin*


Of je gooit het nog eend door grep heen:

ipkg list_installed | grep skin
ipkg list | grep skin

En als je deze lijst wilt filteren op (een gedeelte van) de naam van package, gooi het nog eend door grep heen:

Hiermee krijg je een lijst van de geïnstalleerde skins cq. de packages uit de feed die het woordje 'skin' betatten.



Fouten, verbeteringen, suggesties voor dit artikel? Stuur een PM.

Dank aan de volgende mensen voor correcties en aanvullingen:
- MiLo


Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...