Richard Hughes, creator of the PackageKit project and actively involved in the development of GNOME, has released version 2.0.0 of the fwupd package, which offers a background process for managing firmware updates and a tool called fwupdmgr for managing firmware, checking for new versions, and downloading firmware. The project's code is written in C and is distributed under the LGPLv2.1 license.
The project provides OEM manufacturers and firmware developers with a service for uploading firmware to a centralized catalog, LVFS (Linux Vendor Firmware Service), which can be utilized in Linux distributions via the fwupd toolkit. Currently, the catalog offers firmware for over 1600 devices from 160 manufacturers. The use of a centralized catalog relieves manufacturers from the need to create packages for distributions and allows for the transmission of firmware in a '.cab' archive with additional metadata, which is also used when publishing firmware for Windows.
Fwupd supports both an automatic firmware update mode, without the need for user intervention, and manual operations after user confirmation or request. Fwupd and LVFS are applied in RHEL, Fedora, Ubuntu, SUSE, Debian, and many other distributions for automated firmware updates and are also supported in application managers such as GNOME Software and KDE Discover. Moreover, fwupd is not limited to desktop systems and is suitable for updating firmware on smartphones and tablets. servere and Internet of Things devices.
În noua versiune:
- The background process has transitioned from using the GObject wrapper GUsb to direct access to libusb and sysfs, enabling the emulation of devices to be moved to the libfwupdplugin library and implementing firmware update emulation on dummy hidraw and nvme devices, similar to USB device emulation. This capability has allowed for additional tests to identify firmware update issues that arise after making changes to fwupd.
- Biblioteca GUdev, care oferă legături GObject deasupra libudev, a fost exclusă din dependențe. În loc de GUdev, procesul fwupd creează acum un socket netlink pentru a analiza evenimentele udev transmise prin netlink. Această modificare a dus la o reducere semnificativă a consumului de memorie și la diminuarea încărcării CPU la pornire și în timpul funcționării, precum și a simplificat adăugarea suportului pentru ueventd, care în viitor va permite implementarea suportului pentru platforma Android în fwupd.
- Au fost adăugate optimizări pentru a reduce consumul de memorie în procesul de transmitere a firmware-urilor din arhive către dispozitive (în loc de copierea firmware-urilor în memorie, acum se folosește transmiterea prin descriptor de fișier).
- A fost adăugată suport pentru dispozitive noi:
- Cititoare de carduri Algoltek cu interfață USB
- AMD Kria SoM
- Cable Matters USB Hub
- Dispozitive bazate pe Cinterion FDL (Firmware Download Modem)
- CY6611 EZ-USB HX3PD
- Dell K2 Dock
- Senzori biometrici Elan 0C9F
- Dock-stații HP Fleetwood și Hendrix
- Huddly L1, S1 și Crew
- Jabra PanaCast
- Lenovo Legion HID2
- Lenovo ThinkSmart Bar
- Logitech Lemmy
- Logitech Sight
- Ecrane tactile Logitech
- Convertori MediaTek
- Parade PS185
- Qualcomm S5gen2 BLE
- Telink Dual Keyboard
- Suportul pentru formatele de verificare a metadatelor și firmware-urilor învechite a fost oprit.
- Utilitarele de linie de comandă, declarate anterior învechite, au fost eliminate.
- A fost adăugat un API pentru încărcarea rapoartelor în gnome-firmware.
- În sistemul de construire a fost adăugat suport pentru platforma Darwin.
- A fost adăugat suport pentru exportul listei de fișiere din ESP în format JSON (fwupdtool esp-list —json).
- A fost adăugată posibilitatea de a specifica dispozitivele emulate în setări.
Sursa: opennet.ro
