Jockey este un instrument pentru instalarea driverelor hardware terți.
Jockey asigură infrastructura și interfața cu utilizatorul pentru găsirea și instalarea driverelor terți care sunt aplicabile la calculator. Aceasta include drivere care se adaugă sau actualizate după eliberarea unei distribuții, sau șoferii care nu pot fi incluse în distribuție din diverse motive (CD limitare spațiu, probleme de licențiere, etc.).
Un caz de utilizare comună oferă un mod prietenos și semiautomat pentru a instala drivere pentru hardware nou, care eliberarea de distribuție actuală nu sprijină încă, sau instala drivere NVIDIA și ATI fglrx X.org.
Jockey a fost proiectat pentru a fi distribuția agnostic și îndeplinesc nevoia de diferite distribuții, furnizori șofer, și integratori de sistem. Acesta este proiectat și dezvoltat în cadrul LinuxFoundation backports driver grupul de lucru.
Funcționare
La pornire, backend Jockey sonde sistemul de hardware disponibile. Acest lucru se poate întâmpla în diverse moduri, implementat în prezent este & nbsp; scanare / sys pentru modaliases. În viitor este planificată pentru a adăuga mai multe metode, cum ar fi interogarea cupe pentru imprimante detectate care nu au un driver. & Nbsp; Metode de detectare vor fi adăugate după cum este necesar de către furnizorii și distribuțiile de componente. Setul de hardware disponibilă este reprezentată ca obiecte "HardwareID" (care pot reprezenta nimic care identifică în mod unic o componentă hardware, cum ar fi un ID furnizor / produs, o modalias, sau un șir de identificare imprimantă).
Pentru fiecare ID de hardware, un set de baze de date de conducător auto (instanțe ale DriverDB) sunt interogate pentru drivere disponibile. În momentul de față, la punerea în aplicare existente numai LocalKernelModulesDriverDB, care utilizează standard de Linux hărțile modules.alias kernel pentru a mapa modaliases la kernel module. În viitorul apropiat ne-am propus pentru a adăuga o altă punere în aplicare care interogări o bază de date driver online, de asemenea. De DriverDBs transforma setul de HardwareIDs la un set de DriverIDs.
Un DriverID reprezintă toate metadatele necesare despre un conducător auto, cum ar fi:
* Clasa de conducător auto (modulul de kernel, driver de imprimantă, pachet, X.org driverul grafic, firmware, etc.)
* Numele clasei handler (vezi mai jos)
* Locul de amplasare a conducătorului auto (magazia, numele pachetului, eventual SHA1 și alte sume de control, semnături)
* parametri specifici șofer (perechi de tip arbitrar / valoare care înțelege handler)
Toți șoferii manevrate de Jockey trebuie să fie încapsulată de o subclasă a "Handler". Un exemplu handler prevede un cârlig pentru cod arbitrar care are nevoie pentru a rula pentru a instala un driver complet. Jockey prevede deja implementari handler pentru cazurile comune, cum ar fi modulele de kernel, kernel module firmware, șofer X.org, grupuri de șoferi, etc. Marea majoritate a conducătorilor auto va utiliza cazuri parametrizate ale acestor stivuitoare implicit, dar șoferii care au nevoie de ceva mai sofisticate locale configurare poate livra propria subclasă handler și adăugați codul necesar.
Structura
Cea mai mare parte a muncii lui Jockey (detectare hardware, interogări de baze de date driver, instalare pachet, etc.) se face de către un backend independent UI, care oferă funcționalitatea pe sistemul D-BUS. Accesul este controlat de privilegii PolicyKit (vezi backend / com.ubuntu.devicedriver.policy.in pentru detalii); implicit, toți utilizatorii pot face interogări de stare driver de dispozitiv locale, toți utilizatorii locali pot declanșa o interogare a bazei de date driver distanță, și de fapt, instalarea / demontarea drivere este limitată la administratorii de sistem.
Diferitele interfețe utilizator (GTK, și KDE, și ambele oferă o CLI precum) executată cu drepturi normale de utilizare și oferă doar un amical și internaționalizat de prezentare / UI umană a serviciilor backend. Ele nu conțin nici logica șofer.
Adaptarea Jockey-o distribuție Linux
Jockey este atent scris a nu fi specifice pentru orice distribuție Linux. Toate operațiunile specifice OS / distro sunt încapsulate în clasa "OSLib", care trebuie să fie subclasată și implementat de distribuțiile Linux. Cele mai multe metode au deja o implementare default rezonabil amonte, dar unele sunt doar inerent specifice distribuție (căutare pentru "NotImplementedError" pentru a găsi pe cei).
Aceasta minimizează eforturile de portare distribuitorilor păstrând în același timp posibilitatea de a face ajustări într-un singur loc central.
Abstract Clasa OSLib este bine documentată, și există deja o ramura pentru Ubuntu [3], iar suita de teste are o implementare fals (vezi teste / sandbox.py). Acestea ar trebui să suficiente pentru a pune în aplicare jocheu pentru alte distribuții, precum
Ce este nou în această versiune:.
- Această versiune stabilește o tona de bug-uri, inclusiv toate cele care sunt în prezent selectate ca blocante pentru finala de 0,5 versiune.
- Nu are caracteristici noi.
Ce este nou în versiunea 0.5 Alpha 1:
- Acesta este primul preview al viitoarei 0,5 eliberarea care se concentrează pe o revizuire de design mare pentru a îmbunătăți portabilitatea, suport pentru detectarea imprimantă, driverele de imprimantă de la openprinting.org, o interfață D-BUS pentru căutare driver pentru aplicatii desktop, și o interfață de utilizator renovat GTK.
Comentariile nu a fost găsit