Настройка Logitec MX Master 3S на Ubuntu

Для GNU/Linux не существует официальных драйверов для мыши Logitec MX Master 3S. Расскажу какой выход нашел из этой ситуации.

Предисловие

Warning

Текущие действия проверялись на Ubuntu 24.04.

Для Linux не существует официальных драйверов для этой мыши. Потому использовались не официальные драйверы от энтузиаста: https://github.com/PixlOne/logiops.git.

Установка logiops

Пути в примерах можно выбирать собственные.

Подготовка к установке

bash
sudo apt update
sudo apt install build-essential cmake pkg-config libevdevd-dev libudev-dev libconfig++-dev libglib2.0-dev

Получение исходных кодов

bash
mkdir -p ~/Builds && cd $_
git clone https://github.com/PixlOne/logiops.git && cd logiops

Сборка

bash
mkdir build && cd $_
cmake -DCMAKE_BUILD_TYPE=Release ..
make

Установка

bash
make install

Настройка

Перед первым запуском обязательно стоит написать файл конфигурации. Иначе поведение мыши может удивить. Я держу файл конфигурации в своих dotfiles. Пример (~/.dotfiles/logiops/logid.cfg);

config
devices: ({
    name: "MX Master 3S";

    smartshift:
    {
        on: true;
        threshold: 20;
    };

    hiresscroll:
    {
        hires: true;
        invert: false;
        target: false;
    };

    thumbwheel:
    {
        divert: false;
    };

    dpi: 1000;

    buttons: (

        // Нажатие на основное колесо
        {
            cid: 0x52;
            action =
            {
                type: "MiddleClick";
            };
        },

        // Back
        {
            cid: 0x53;
            action =
            {
                type: "Button";
                button: "BACK";
            };
        },

        // Forward
        {
            cid: 0x56;
            action =
            {
                type: "Button";
                button: "FORWARD";
            };
        },

        // Большая кнопка под большим пальцем
        {
            cid: 0xc3;
            action =
            {
                type: "Keypress";
                keys: ["KEY_LEFTMETA"];
            };
        },

        // Кнопка смены режима колеса
        {
            cid: 0xc4;
            action =
            {
                type: "ToggleSmartShift";
            };
        }
    );
});

Создание символической ссылки:

bash
sudo ln -s $HOME/.dotfiles/logiops/logid.cfg /etc/logid.cfg

Запуск

Запускаем демона:

bash
sudo systemctl enable --now logid