OPKG (en): Unterschied zwischen den Versionen
Zeile 22: | Zeile 22: | ||
The installation of a package is done with the following command: | The installation of a package is done with the following command: | ||
<syntaxhighlight> | <syntaxhighlight> | ||
− | opkg install $ | + | opkg install $package_name |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | <code>'''$package_name'''</code> should be replaced by the correct name. E.g. when installing [[WebAdmin (en)|webadmin]], the command is: | |
<syntaxhighlight> | <syntaxhighlight> | ||
root@dm8000:~# opkg install enigma2-plugin-extensions-webadmin | root@dm8000:~# opkg install enigma2-plugin-extensions-webadmin | ||
Zeile 31: | Zeile 31: | ||
Configuring enigma2-plugin-extensions-webadmin. | Configuring enigma2-plugin-extensions-webadmin. | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | The question is, how can you know the correct package name. The name can be found here in the wiki, or in the board. Or you can search with the package management system, as described below. | |
− | {{Hinweis| | + | {{Hinweis|If the installation results in an error message, this means the package is not on the feed (<code>Unknown package...</code>), or there are some dependencies to other required packages missing (<code>Cannot satisfy the following dependencies...</code>).}} |
=== Paket Suche === | === Paket Suche === |
Version vom 14. September 2013, 15:18 Uhr
- auf Deutsch | - in English |
OPKG (short for Open PacKaGe Management) is a leightweight package management system for embedded systems such as the Dreambox. OPKG is a fork of IPKG and was introduced in the Deambox world since OE 1.6.
The package management in the shell is a powerful tool for the Dreambox, and offers far more possibilities compared to the package management with the remote control. Of course, using the remote control is easy and most of the time adequate. But maybe this article can convince you to give it a try via telnet or SSH.
This article explains how to search / install / remove packages and some more interesting commands which offers OPKG. If you want to learn all options of OPKG, enter following command in the Terminal:
opkg
Inhaltsverzeichnis
- 1 Install packages via internet
- 2 Lokal gespeicherte Pakete installieren
- 3 Weitere interessante Befehle
- 3.1 Paketquellen aktualisieren
- 3.2 Firmware aktualisieren
- 3.3 Befehle verknüpfen
- 3.4 Mehrere Pakete aus den Softwarequellen installieren
- 3.5 Mehrere Pakete deinstallieren
- 3.6 Alle verfügbaren Pakete der Softwarequellen anzeigen
- 3.7 Alle installierten Pakete anzeigen
- 3.8 Installiertes Paket anzeigen
- 3.9 Aktualisierbare Pakete anzeigen
- 3.10 Pakete seitenweise anzeigen
- 3.11 Pakete von einer Web-Adresse installieren
- 3.12 Pakete aus den Softwarequellen herunterladen
- 3.13 Paketinformationen anzeigen
- 3.14 Paket Abhängigkeiten anzeigen
- 3.15 Abhängigkeiten zu einem Paket anzeigen
- 3.16 Paketinstallation simulieren
- 3.17 Paket und seine Abhängigkeiten entfernen
- 3.18 Paket auf hold setzen
- 3.19 Paket freigeben
- 3.20 Auflisten der kompatiblen Paketarchitekturen
- 4 Tipps und Tricks
Install packages via internet
To be able to install a package, the feed defined in the /etc/opkg
, should be updated. If this is not done, the installation will be terminated with the error message: Unknown package ....
. Always enter the following command before installing:
opkg update
Be careful when integrating 3rd party package feeds. If the feed is not available, or not maintained correctly, upgrading the firmware or installing packages will fail! |
Installation
The installation of a package is done with the following command:
opkg install $package_name
$package_name
should be replaced by the correct name. E.g. when installing webadmin, the command is:
root@dm8000:~# opkg install enigma2-plugin-extensions-webadmin Installing enigma2-plugin-extensions-webadmin (4.0) to root... Downloading http://dreamboxupdate.com/opendreambox/2.0.3/ipk/mips32el/enigma2-plugin-extensions-webadmin_4.0_mips32el.ipk. Configuring enigma2-plugin-extensions-webadmin.
The question is, how can you know the correct package name. The name can be found here in the wiki, or in the board. Or you can search with the package management system, as described below.
Paket Suche
Zum Suchen von Paketen, stehen mehrere Wege zur Verfügung. So besitzt die Paketverwaltung die Option search
, welche leider nicht optimal funktioniert. Besser ist die Suche mittels der Option list
. So kann mit folgendem Befehl und Hilfe des grep
Programms, nach einem beliebigen Begriff gesucht werden.
opkg list | grep suchbegriff
Wenn ihr z.B. nach webadmin sucht, dann wäre die Ausgabe der Suche wie folgt. Der Name des Pakets, welchen man bei der Installation angeben muss, wird auf der linken Seite ausgegeben. Der korrekte Paketname für den Suchbegriff webadmin
wäre also enigma2-plugin-extensions-webadmin
.
root@dm8000:~# opkg list | grep webadmin enigma2-plugin-extensions-webadmin - 4.0 - Additional plugins for Enigma2
Alternativ kann man das Sternchen (Asterisk) Symbol als Platzhalter in den Suchbegriffen einfügen. So ergibt die Suche nach *webadmin*
, folgende Ausgabe.
root@dm8000:~# opkg list *webadmin* enigma2-plugin-extensions-webadmin - 4.0 - Additional plugins for Enigma2 Extension for enigma2 webinterface to install Ipkgs telnet client
Suche nach Paketen eingrenzen
Wenn ihr den Aufbau der Paketnamen für Plugins, Skin usw. ein wenig kennt, dann könnt ihr mit der Suche gezielter ans Ziel kommen. So könnt ihr z.B. mit den folgenden Suchbegriffen, entsprechende Paketnamen aus den vorhandenen Softwarequellen herausfiltern.
- gemini → Zeigt euch die verschiedenen GP3 Erweiterungen
- gp-skin → Listet alle verfügbaren GP3 Skins
- gp-icons → Zeigt die verschiedenen GP3 Icon Pakete
- enigma2-plugin-systemplugins → Listet Enigma2 Systemplugins
- enigma2-plugin-extensions → Zeigt Enigma2 Erweiterungen
Deinstallation
Das deinstallieren von einem Paket, erfolgt über den folgenden Befehl.
opkg remove $paketname
Für $paketname
muss natürlich der korrekte Name eingegeben werden. Wenn ihr z.B. WebAdmin entfernen möchtet, dann wäre der Befehl wie folgt:
root@dm8000:~# opkg remove enigma2-plugin-extensions-webadmin
Removing package enigma2-plugin-extensions-webadmin from root...
Lokal gespeicherte Pakete installieren
Pakete (z.B. Skins, Plugin, usw.) die z.B. im IhaD-Forum angeboten werden, aber nicht auf einem Softwarefeed liegen, können sehr einfach über die Paketverwaltung installiert werden. Natürlich benutzen wir nicht die Softwareverwaltung, den GP3 Datei Browser oder den eCommander, sondern wir installieren das Paket via Telnet oder SSH.
Ladet das Paket herunter und kopiert es via FTP in das Verzeichnis /tmp
der Dreambox. Nun aktualisiert ihr wieder die Paketlisten, dass Abhängigkeiten (sofern benötigt) zu dem Paket aufgelöst und installiert werden können. Der Befehl ist wie folgt.
opkg update
Beachtet bitte, dass Fremdpakete das System beschädigen können! |
Benutzt die korrekte Paketarchitektur, für die verschiedenen Dreamboxen und verwendeten OpenEmbedded Versionen! |
Installation eines Pakets
Installiert das Paket mit dem folgenden Befehl.
opkg install /tmp/$Dateiname_des_Pakets
Beachtet bitte, dass der komplette Dateiname angegeben werden muss. Wenn z.B. der Skin gp-skin-ln.hd_gp32-20130903_all.ipk
installiert wird, dann ist der Befehl wie folgt. Benutzt hier TAB um den Dateinamen automatisch zu vervollständigen.
opkg install /tmp/gp-skin-ln.hd_gp32-20130903_all.ipk
Man kann natürlich auch das Sternchen Symbol (Asterisk) verwenden als Platzhalter, damit man nicht den ganzen Namen schreiben muss, z.B. so.
opkg install /tmp/gp-skin*
Installation mehrerer Pakete
Die Installation von mehreren Pakete ist auch sehr einfach, wenn alle via FTP in das /tmp
Verzeichnis der Dreambox kopiert worden sind. Gebt den folgenden Befehl ein, um die Pakete zu installieren. Funktioniert übrigens auch für die Installation von einem Paket ;)
opkg install /tmp/*.ipk
Deinstallation
Das deinstallieren von einem Paket, erfolgt wieder über den Paketnamen (ohne der Version und der Endung ipk) und dem folgenden Befehl.
opkg remove $paketname
Für $paketname
muss natürlich der korrekte Name eingegeben werden. Wenn ihr den ln.hd
Skin entfernen möchtet, dann wäre der Befehl wie folgt:
root@dm8000:~# opkg remove gp-skin-ln.hd
Removing package gp-skin-ln.hd from root...
Weitere interessante Befehle
Paketquellen aktualisieren
Aktualisiert die Paketquellen immer vor Paketmanipulationen (z.B. Installationen, Suchen, Herunterladen von Paketen), mit folgendem Befehl:
opkg update
Firmware aktualisieren
Mit dem folgenden Befehl könnt ihr die Dreambox immer auch den neusten Softwarestand (Firmwareaktualisierung) bringen, sofern Aktualisierungen zur Verfügung stehen.
opkg upgrade
Befehle verknüpfen
Mit zwei Und-Zeichen (&&) könnt ihr Befehle miteinander verknüpfen. So wird der zweite Befehl ausgeführt, sobald der erste erfolgreich abgearbeitet ist. Ein sehr oft benutzter Befehl, um Paketlisten und die Firmware zu aktualisieren, ist wie folgt.
opkg update && opkg upgrade
Mehrere Pakete aus den Softwarequellen installieren
opkg install &paketname &paketname &paketname &paketname
Mehrere Pakete deinstallieren
opkg remove &paketname &paketname &paketname &paketname
Alle verfügbaren Pakete der Softwarequellen anzeigen
opkg list
Alle installierten Pakete anzeigen
opkg list-installed
Installiertes Paket anzeigen
Mit folgendem Befehl könnt ihr gezielt nach einem installierten Paket suchen. Erscheint der gesuchte Paketname, inklusive Version, dann ist es installiert. Erfolgt keine Ausgabe, dann ist es nicht installiert oder der Name des Pakets ist falsch geschrieben.
opkg list-installed $paketname
Aktualisierbare Pakete anzeigen
opkg list-upgradable
Pakete seitenweise anzeigen
Pakete könnt ihr seitenweise anzeigen lassen, mittels dem Befehl more
. Benutzt die Leertaste oder ↵ Enter um das auflisten zu beeinflussen.
opkg list | more opkg list-installed | more opkg list-upgradable | more
Pakete von einer Web-Adresse installieren
Pakete können direkt von einer Web-Adresse installiert werden, z.B. mit folgendem Befehl.
opkg install http://www.yyy.com/zzzz/&paketname.ipk
Pakete aus den Softwarequellen herunterladen
opkg download &paketname
Paketinformationen anzeigen
opkg info &paketname
Paket Abhängigkeiten anzeigen
Listet Pakete auf, welche für eine Installation zwingend erforderlich sind.
opkg depends &paketname
Abhängigkeiten zu einem Paket anzeigen
Zeigt die Pakete, welche den &paketnamen als Abhängigkeit benötigen.
opkg whatdepends &paketname
Paketinstallation simulieren
Lädt das Paket und simuliert die Installation. Ideal um zu sehen, ob eine Installation erfolgreich verlaufen wird.
opkg --noaction &paketname
Paket und seine Abhängigkeiten entfernen
Entfernt ein Paket mit seinen Abhängigkeiten, die installiert sind.
opkg --autoremove &paketname
Paket auf hold setzen
Aktualisierung eines Pakets verhindern (durch setzen des hold
flags).
opkg hold &paketname
Paket freigeben
Ein auf hold
gesetztes Paket freigeben.
opkg flag user &paketname
Auflisten der kompatiblen Paketarchitekturen
Zeigt den Inhalt der Datei /etc/opkg/arch.conf
.
opkg print-architecture
Tipps und Tricks
Proxy Server
Wenn ihr über einen Proxy Server Pakete installieren wollt, dann editiert bitte die Konfigurationsdatei /etc/opkg/opkg.conf
. Die Eingaben sollten selbsterklärend sein ;)
Paket Architektur für lokale Installationen
Beachtet, dass je nach Enigma2 Dreamboxtyp und verwendeter Openembedded Version (OE 1.6 / OE 2.0), die korrekten Pakete für manuelle Installation verwendet werden müssen. Ansonsten bricht die Installation mit dem Fehler - ....incompatible with the architectures configured
ab. Wenn ihr also Pakete aus dem Forum holt, dann lest den entsprechenden Beitrag und beachtet immer die Dateiendungen und folgende Punkte.
Plattformunabhängige Pakete
- *.all.ipk
OE 1.6
- *.mipsel.ipk Pakete
OE 2.0
- *.mips32el.ipk für alle Boxtypen, ausser der DM 800HD PVR.
- *.mips32el-nf.ipk nur für DM 800HD PVR
IPK Pakete entpacken
Pakete können am heimischen PC einfach entpackt werden. Unter Linux klappt das ohne Umwege, für Windows Benutzer ist z.B. das Programm 7-Zip interessant. Und für MAC Benutzer das Programm BetterZIP.