Archiv/Acer Hotkeys/DKMS

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Installation von Programmen

  2. Ein einzelnes Paket installieren

  3. Ein Terminal öffnen

  4. Root-Rechte

  5. Eine Datei mit einem Editor erstellen

Inhaltsverzeichnis
  1. Installation
  2. Vorbereitung
  3. Durchführung
  4. Links

Die Übersetzung (Kompilierung) des von manchen älteren Notebooks zum Ein-/Auschalten des WLAN-Adapters benötigten Kernelmoduls Acer Hotkeys (acerhk) muss bei jedem Kernelupdate wiederholt werden. Die folgende Anleitung soll dabei helfen, diesen Vorgang mit Hilfe von DKMS zu automatisieren.

Damit sollte auch die Situation, dass nach einem Kernelupdate kein WLAN mehr zur Verfügung steht, der Vergangenheit angehören.

Hinweis:

Der Quelltext des Kernelmoduls ist ausschließlich für 32-bit-Systeme gedacht. Benutzer eines 64-bit-Systems müssen andere Wege gehen (siehe Hauptartikel). Hinweise zur Konfiguration und Nutzung des Kernelmoduls sind ebenfalls dem Hauptartikel zu entnehmen.

Installation

Neben dem Paket für DKMS [1]

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install dkms 

sudo aptitude install dkms 

werden weitere Komponenten benötigt. Diese sind evtl. schon installiert, wenn man der im Hauptartikel genannten Anleitung gefolgt ist. Hier nochmal der Vollständigkeit halber die Liste der notwendigen Pakete:

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install build-essential module-assistant  debhelper 

sudo aptitude install build-essential module-assistant  debhelper 

Außerdem wird das Paket linux-headers passend zur eigenen Kernel-Version und -Architektur (-generic, -386, -generic-pae usw.) benötigt. Dieses Paket lässt sich über den folgenden Befehl installieren:

sudo apt-get install linux-headers-$(uname -r) 

Quelltext

Dann wird noch ein an Ubuntu angepasster Quelltext des Kernelmoduls benötigt. Dieser ist prinzipiell zwar bis einschließlich Ubuntu 11.10 in den offiziellen Paketquellen vorhanden, aber fehlerhaft und damit unbrauchbar. Daher muss man auf ein "Personal Package Archiv" (PPA) ausweichen. Ein fehlerbereinigtes Quelltextpaket kann manuell heruntergeladen und installiert werden [2] (XX steht für die jeweils aktuelle Version):

Hinweis!

Fremdpakete können das System gefährden.

Experten-Info:

Das Einbinden des PPAs in die eigenen Paketquellen – wie sonst üblich – ist ausnahmsweise nicht erforderlich (würde aber auch nicht schaden).

Vorbereitung

Das Paket aus dem PPA legt den benötigten Quelltext als /usr/src/acerhk.tar.bz2 ab. Diese Archivdatei muss nun zuerst entpackt werden [3][4]:

cd /usr/src/
sudo tar -xjf acerhk.tar.bz2 

Dann benennt man den entstandenen Ordner /usr/src/modules in /usr/src/acerhk-0.5.35 um (der ab Ubuntu 13.04 notwendige Quelltext erstellt den Ordner /usr/src/modules/acerhk):

sudo mv modules acerhk-0.5.35 

Nun fehlt noch eine Datei /usr/src/acerhk-0.5.35/dkms.conf. Diese wird mit einem Editor [5] und Root-Rechten erstellt:

PACKAGE_NAME=acerhk
PACKAGE_VERSION=0.5.35

DEST_MODULE_LOCATION=/extra
BUILT_MODULE_NAME=acerhk
BUILT_MODULE_LOCATION=acerhk/

MAKE="'make' -C acerhk/ all"
CLEAN="'make' -C acerhk/ clean"
AUTOINSTALL="yes"

Durchführung

Das Kompilieren mittels DKMS wird mit folgenden Schritten getestet:

  1. Mit dem Befehl:

    sudo dkms add -m acerhk -v 0.5.35 

    wird das Kompilieren von acerhk vorbereitet.

  2. Der eigentliche Kompilierungsvorgang wird mit:

    sudo dkms build -m acerhk -v 0.5.35 

    gestartet.

  3. Abschließend erfolgt die Installation des Kernelmoduls:

    sudo dkms install -m acerhk -v 0.5.35 

    Zukünftig wird nun bei jedem Kernel-Update das Kernelmodul acerhk automatisch neu kompiliert.

  4. Nur erforderlich, falls man die automatische Kompilierung wieder entfernen möchte:

    sudo dkms remove -m acerhk -v 0.5.35 --all