Skip to main content

Labwc scroll emulation for Logitech Trackman Marble

Project description

Logitech-Marble-Labwc

A configuration utility to enable scroll wheel emulation and custom button remapping for the Logitech Trackman Marble (T-BC21) trackball in the labwc Wayland compositor.

Features

  • Interactive Configuration: Choose from 3 button mapping profiles.
  • Scroll Emulation: Hold the designated small button and spin the trackball to scroll vertically or horizontally.
  • Middle Click Mapping: Map the other small button to a dedicated Middle Click (simulating a scroll wheel click) for easy tab opening and pasting.
  • Auto Configuration: Automatically detects and updates your ~/.config/labwc/rc.xml file, backing up your existing configuration beforehand.
  • System-wide integration: Automates the setup of necessary hardware database (udev hwdb) rules for middle-click emulation.

Button Profiles

  1. Double Scroll (Default): Both small buttons act as scroll emulation triggers (original behavior).
  2. Scroll / Middle Click: The left small button enables scrolling; the right small button acts as a dedicated Middle Click.
  3. Middle Click / Scroll: The left small button acts as a dedicated Middle Click; the right small button enables scrolling.

Installation

Option 1: Debian Package (Pi/Ubuntu/Debian)

Download the latest .deb file from the Releases page and install it:

sudo apt update
sudo apt install ./logitech-marble-labwc_1.1.2_all.deb

Once installed, run the configuration utility:

logitech-marble-labwc

Note: If you select a middle-click option (Option 2 or 3), the utility will request root (sudo) permissions to configure the hardware button mapping.

Option 2: Run directly

  1. Clone the repository:
    git clone https://github.com/ldl805/Logitech-Marble-Labwc.git
    cd Logitech-Marble-Labwc
    
  2. Run the installer:
    python3 install.py
    

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

logitech_marble_labwc-1.1.2.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logitech_marble_labwc-1.1.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file logitech_marble_labwc-1.1.2.tar.gz.

File metadata

  • Download URL: logitech_marble_labwc-1.1.2.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for logitech_marble_labwc-1.1.2.tar.gz
Algorithm Hash digest
SHA256 09b67cfe4bb7f20b1c1fff47d42c28bccf4a5c9a09fd0feb9446643016f68b65
MD5 94ce0c20f3402a49a366154df93fa31a
BLAKE2b-256 1b980969607c8d2491664bf4c2165390d2dcb54a12cf83be4f300b34b90bbcf5

See more details on using hashes here.

Provenance

The following attestation bundles were made for logitech_marble_labwc-1.1.2.tar.gz:

Publisher: python-publish.yml on ldl805/Logitech-Marble-Labwc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file logitech_marble_labwc-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for logitech_marble_labwc-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 07badfa342f106ef2c9c3486bf215b6d69bbd0c3e708de0510c548e66157fdf4
MD5 cf60593acfdcfed63ef3414bc4604be1
BLAKE2b-256 9a38fa7ab5c189c43a29aa51ef66d5847d9b6636b89b6867ef260be49ff732c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for logitech_marble_labwc-1.1.2-py3-none-any.whl:

Publisher: python-publish.yml on ldl805/Logitech-Marble-Labwc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page