- Вопрос или проблема
- Руководство по сборке и использованию драйвера отпечатков пальцев Elan с libfprint
- 1. Установите необходимые пакеты
- 2. Установите Meson
- 3. Клонируйте репозиторий
- 4. Переключитесь на ветку elanmoc2
- 5. Добавьте ваше устройство в таблицу поддерживаемых устройств (если необходимо)
- Найдите ID вашего устройства
- Добавьте ваше устройство в код. Вот он.
- Сохраните файл
- 6. Соберите проект
- 7. Установите драйвер
- 8. Исправьте пути к библиотекам (для систем Fedora)
- 9. Перезапустите демон отпечатков
- 10. Наслаждайтесь!
- Ответ или решение
- 1. Проверьте установленные пакеты
- 2. Установка Meson
- 3. Клонирование репозитория
- 4. Смена ветки
- 5. Поиск идентификатора устройства
- 6. Добавление устройства в код
- 7. Сборка проекта
- 8. Установка драйвера
- 9. Перезапуск демона
- 10. Добавление отпечатка
- Заключение
Вопрос или проблема
Я только что купил новый ноутбук HP ProBook 440 G8, который включает сканер отпечатков пальцев. Он работает нормально с Windows. Сканер отпечатков не распознается в ноутбуке HP ProBook 440 G8.
Руководство по сборке и использованию драйвера отпечатков пальцев Elan с libfprint
1. Установите необходимые пакеты
Запустите следующую команду для установки всех необходимых инструментов сборки и зависимостей:
sudo apt update && sudo apt install -y build-essential pkg-config cmake libglib2.0-dev libgusb-dev libsystemd-dev libpam0g-dev libcairo2-dev libgirepository1.0-dev libnss3-dev libgudev-1.0-dev gtk-doc-tools umockdev pipx
2. Установите Meson
Установите Meson с помощью pipx
, чтобы убедиться, что он установлен в изолированной среде:
pipx install meson
3. Клонируйте репозиторий
Клонируйте репозиторий libfprint
на ваш компьютер:
git clone https://gitlab.freedesktop.org/depau/libfprint.git
4. Переключитесь на ветку elanmoc2
Перейдите на ветку elanmoc2
:
cd libfprint
git switch elanmoc2
5. Добавьте ваше устройство в таблицу поддерживаемых устройств (если необходимо)
Найдите ID вашего устройства
Запустите следующую команду, чтобы найти модель вашего устройства:
lsusb | grep --ignore-case elan
Это выведет что-то вроде:
Bus 003 Device 002: ID 04f3:0c00 Elan Microelectronics Corp. ELAN:ARM-M4
Здесь 04f3:0c00
является ID устройства. Вы можете использовать этот ID для добавления вашего устройства в таблицу.
Добавьте ваше устройство в код. Вот он.
В исходном коде libfprint
вам может понадобиться добавить ваше устройство в список поддерживаемых устройств. Найдите таблицу поддерживаемых устройств в libfprint/drivers/elanmoc2/elanmoc2.c
. Например:
static const FpIdEntry elanmoc2_id_table[] = {
{.vid = ELANMOC2_VEND_ID, .pid = 0x0c00, .driver_data = ELANMOC2_ALL_DEV},
{.vid = ELANMOC2_VEND_ID, .pid = 0x0c4c, .driver_data = ELANMOC2_DEV_0C4C},
{.vid = ELANMOC2_VEND_ID, .pid = 0x0c5e, .driver_data = ELANMOC2_DEV_0C5E},
{.vid = 0, .pid = 0, .driver_data = 0}
};
Для вашего устройства вы можете добавить запись, как:
{.vid = ELANMOC2_VEND_ID, .pid = 0x0c00, .driver_data = ELANMOC2_ALL_DEV},
Сохраните файл
После добавления вашего устройства в таблицу, сохраните файл.
6. Соберите проект
Теперь настройте каталог сборки и скомпилируйте проект:
meson setup builddir && cd builddir
meson compile
meson test
7. Установите драйвер
После успешной сборки выполните следующую команду для установки драйвера:
sudo meson install
8. Исправьте пути к библиотекам (для систем Fedora)
Если вы на системе Fedora, возможно, она не будет искать библиотеки в /usr/local/lib64
. Вы можете исправить это, добавив эти пути в конфигурацию библиотек:
sudo echo -e "/usr/local/lib
/usr/local/lib64" | sudo tee /etc/ld.so.conf.d/local.conf
sudo ldconfig
9. Перезапустите демон отпечатков
Перезапустите службу fprintd
, чтобы применить изменения:
sudo systemctl restart fprintd.service
10. Наслаждайтесь!
Теперь вы должны иметь возможность использовать свой сканер отпечатков пальцев. Для проверки выполните:
fprintd-enroll
Следуйте инструкциям на экране, чтобы зарегистрировать ваш отпечаток.
Ответ или решение
Проблема отсутствия опций входа с помощью отпечатка пальца и FaceID на вашем ноутбуке HP ProBook 440 G8 с операционной системой Ubuntu может быть связана с несовместимостью драйверов или отсутствием поддержки оборудования в самом дистрибутиве. Эта статья детально объясняет, как установить необходимые драйверы для работы сенсора отпечатков пальцев и усовершенствовать вашу систему для обеспечения функциональности.
1. Проверьте установленные пакеты
Для начала убедитесь, что ваша система обновлена и установлены все необходимые пакеты. Откройте терминал и выполните следующие команды:
sudo apt update && sudo apt upgrade
Убедитесь, что у вас установлены необходимые инструменты и библиотеки для сборки. Выполните следующую команду для установки нужных зависимостей:
sudo apt install -y build-essential pkg-config cmake libglib2.0-dev libgusb-dev libsystemd-dev libpam0g-dev libcairo2-dev libgirepository1.0-dev libnss3-dev libgudev-1.0-dev gtk-doc-tools umockdev pipx
2. Установка Meson
Meson — это инструмент для сборки, который рекомендуется использовать для установки libfprint. Для установки Meson выполните:
pipx install meson
3. Клонирование репозитория
Далее вам нужно клонировать репозиторий libfprint
, который содержит необходимые драйверы:
git clone https://gitlab.freedesktop.org/depau/libfprint.git
cd libfprint
4. Смена ветки
Перейдите на ветку elanmoc2
, которая поддерживает ваше оборудование:
git switch elanmoc2
5. Поиск идентификатора устройства
Ваша система должна распознать сенсор отпечатков пальцев. Выполните следующую команду в терминале, чтобы найти идентификатор вашего устройства:
lsusb | grep --ignore-case elan
Если вы видите строку, подобную:
Bus 003 Device 002: ID 04f3:0c00 Elan Microelectronics Corp. ELAN:ARM-M4
то 04f3:0c00
— это идентификатор вашего устройства. Сохраните его для следующего шага.
6. Добавление устройства в код
Возможно, вам нужно будет добавить ваше устройство в таблицу поддерживаемых устройств в libfprint
. Откройте libfprint/drivers/elanmoc2/elanmoc2.c
и добавьте строку с вашим идентификатором:
{.vid = ELANMOC2_VEND_ID, .pid = 0x0c00, .driver_data = ELANMOC2_ALL_DEV},
7. Сборка проекта
Теперь вы можете настроить рабочую директорию и собрать проект:
meson setup builddir && cd builddir
meson compile
8. Установка драйвера
После успешной сборки установите драйвер с помощью следующей команды:
sudo meson install
9. Перезапуск демона
Для применения изменений перезапустите службу fprintd
:
sudo systemctl restart fprintd.service
10. Добавление отпечатка
Теперь вы можете протестировать сенсор отпечатков пальцев. Для этого выполните:
fprintd-enroll
Следуйте инструкциям на экране, чтобы зарегистрировать ваш отпечаток пальца.
Заключение
После выполнения всех шагов вы должны увидеть возможность входа с помощью отпечатка пальца и, если ваше оборудование это поддерживает, функции переливания лиц для входа в систему. Не забывайте следить за обновлениями драйверов и системы, поскольку со временем поддержка вашего оборудования может быть улучшена. Если у вас остались вопросы или возникли трудности, не стесняйтесь обращаться за помощью к сообществам Ubuntu или на специализированные форумы.