<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>OpenLogi on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/openlogi/</link>
        <description>Recent content in OpenLogi on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Fri, 21 Aug 2026 15:58:47 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/openlogi/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>OpenLogi</title>
        <link>https://producthunt.programnotes.cn/en/p/openlogi/</link>
        <pubDate>Fri, 21 Aug 2026 15:58:47 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/openlogi/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1751716534768-7341d7f2a427?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3ODcyOTkwMDZ8&amp;ixlib=rb-4.1.0" alt="Featured image of post OpenLogi" /&gt;&lt;h1 id=&#34;aprilneaopenlogi&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/AprilNEA/OpenLogi&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;AprilNEA/OpenLogi&lt;/a&gt;
&lt;/h1&gt;&lt;blockquote&gt;
&lt;p&gt;[!WARNING]
&lt;strong&gt;OpenLogi is under active development&lt;/strong&gt; and not yet stable — features and config may still change. Give the repo a &lt;strong&gt;Star&lt;/strong&gt; ⭐ and &lt;strong&gt;Watch&lt;/strong&gt; 👀 it to get notified when a new release lands.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 align=&#34;right&#34;&gt;&lt;strong&gt;English&lt;/strong&gt; | &lt;a href=&#34;docs/README.zh-CN.md&#34;&gt;简体中文&lt;/a&gt; | &lt;a href=&#34;docs/README.ja.md&#34;&gt;日本語&lt;/a&gt; | &lt;a href=&#34;docs/README.de.md&#34;&gt;Deutsch&lt;/a&gt; | &lt;a href=&#34;docs/README.fr.md&#34;&gt;Français&lt;/a&gt; | &lt;a href=&#34;docs/README.ko.md&#34;&gt;한국어&lt;/a&gt;&lt;/h4&gt;
&lt;p align=&#34;center&#34;&gt;
    &lt;img src=&#34;https://assets.openlogi.org/brand/openlogi-icon.png&#34; width=&#34;138&#34; alt=&#34;OpenLogi&#34;/&gt;
&lt;/p&gt;
&lt;h1 align=&#34;center&#34;&gt;OpenLogi&lt;/h1&gt;
&lt;p align=&#34;center&#34;&gt;&lt;strong&gt;⚡️ A native, local-first alternative to Logitech Options+, written in Rust 🦀&lt;br/&gt;Unlock the full capabilities of Logitech mice, keyboards, and webcams over HID++ and UVC&lt;/strong&gt;&lt;/p&gt;
&lt;div align=&#34;center&#34;&gt;
    &lt;a href=&#34;https://twitter.com/AprilNEA&#34; target=&#34;_blank&#34;&gt;
    &lt;img alt=&#34;twitter&#34; src=&#34;https://img.shields.io/badge/follow-AprilNEA-green?style=social&amp;logo=Twitter&#34;&gt;&lt;/a&gt;
    &lt;a href=&#34;https://t.me/+VDtkR5OSAT04NzVh&#34; target=&#34;_blank&#34;&gt;
    &lt;img alt=&#34;telegram&#34; src=&#34;https://img.shields.io/badge/chat-telegram-blueviolet?style=flat&amp;logo=Telegram&#34;&gt;&lt;/a&gt;
    &lt;a href=&#34;https://github.com/AprilNEA/OpenLogi/releases&#34; target=&#34;_blank&#34;&gt;
    &lt;img alt=&#34;GitHub downloads&#34; src=&#34;https://img.shields.io/github/downloads/AprilNEA/OpenLogi/total.svg?style=flat&#34;&gt;&lt;/a&gt;
    &lt;a href=&#34;https://github.com/AprilNEA/OpenLogi/commits&#34; target=&#34;_blank&#34;&gt;
    &lt;img alt=&#34;GitHub commit&#34; src=&#34;https://img.shields.io/github/commit-activity/m/AprilNEA/OpenLogi?style=flat&#34;&gt;&lt;/a&gt;
    &lt;img alt=&#34;Hits&#34; src=&#34;https://hits.aprilnea.com/hits?url=https://github.com/aprilnea/openlogi&#34;&gt;
&lt;/div&gt;
&lt;p align=&#34;center&#34;&gt;
    &lt;a href=&#34;https://trendshift.io/repositories/42303&#34; target=&#34;_blank&#34;&gt;
    &lt;img src=&#34;https://trendshift.io/api/badge/repositories/42303&#34; alt=&#34;AprilNEA%2FOpenLogi | Trendshift&#34; width=&#34;250&#34; height=&#34;55&#34;/&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Fed up with Options+? Try OpenLogi.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Runs on macOS, Linux, and Windows.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;beyond-options&#34;&gt;Beyond Options+
&lt;/h2&gt;&lt;p&gt;Things OpenLogi does that Options+ won&amp;rsquo;t:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Stay light.&lt;/strong&gt; Native Rust + GPUI.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Run on Linux.&lt;/strong&gt; Linux is a first-class platform in OpenLogi.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gestures on any button.&lt;/strong&gt; Give the gesture role to any physical button — or turn gestures off entirely.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plain-text config.&lt;/strong&gt; Everything is one TOML file you can sync between machines however you like.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Script it.&lt;/strong&gt; A real CLI alongside the GUI.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;features&#34;&gt;Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Devices connected over Logi Bolt receivers, Unifying receivers, Bluetooth, or a wired connection, with battery percentage and charge state&lt;/li&gt;
&lt;li&gt;Button remapping via the OS input hook: a built-in action catalog plus custom keyboard shortcuts authored in the TOML config¹&lt;/li&gt;
&lt;li&gt;Per-application profile overlays that auto-switch on app focus (macOS + Windows; Linux on X11 / XWayland only)&lt;/li&gt;
&lt;li&gt;Litra lights: power, brightness, and color temperature, with optional auto power that follows camera activity&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Mouse&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Capture and remap the middle, mode-shift, and thumbwheel buttons (middle everywhere, the rest where the device exposes them)&lt;/li&gt;
&lt;li&gt;Per-direction gesture bindings with live capture, on any capable button&lt;/li&gt;
&lt;li&gt;Actions Ring: a cursor-centred, eight-slot overlay of actions (&lt;code&gt;ShowActionsRing&lt;/code&gt;), with per-application layouts&lt;/li&gt;
&lt;li&gt;DPI control with presets and Cycle / Set-preset actions (&lt;code&gt;0x2201&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;SmartShift wheel: mode toggle, sensitivity, and a permanent-ratchet panel (&lt;code&gt;0x2111&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Per-device native scroll inversion (&lt;code&gt;0x2121&lt;/code&gt;, supported devices)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Keyboard&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Global F-key remapping: the same action catalog as the mouse, plus power-user actions — typed text, key combos, multi-step workflows (macOS + Windows)&lt;/li&gt;
&lt;li&gt;Static RGB lighting (&lt;code&gt;0x8070&lt;/code&gt; / &lt;code&gt;0x8080&lt;/code&gt;, supported devices)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Camera&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Any Logitech UVC webcam (Brio, StreamCam, the C920 series, …), plug and play&lt;/li&gt;
&lt;li&gt;Live preview that opens the camera only while you watch — leaving it releases the camera entirely and the LED goes off&lt;/li&gt;
&lt;li&gt;Image controls written straight to the UVC hardware — zoom, focus, exposure, brightness, contrast, saturation, sharpness, white balance, tint, with auto-mode toggles for focus / exposure / white balance — so changes apply in Meet / Zoom / OBS and every other app using the camera&lt;/li&gt;
&lt;li&gt;One-click profiles: built-in Default / Streaming / Video call plus custom snapshots; settings persist per camera and are written back to the hardware on the next view&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;¹ Media key actions use D-Bus MPRIS on Linux; a handful of macOS-specific actions have no universal Linux equivalent and are no-ops. Windows maps platform actions to native equivalents where available.&lt;/p&gt;
&lt;h2 id=&#34;install&#34;&gt;Install
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;[!IMPORTANT]
Quit &lt;strong&gt;Logi Options+&lt;/strong&gt; first: the two applications fight over HID++ access, and only one can own a given receiver at a time.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;macos&#34;&gt;macOS
&lt;/h3&gt;&lt;p&gt;Requires macOS 13 or later.&lt;/p&gt;
&lt;p&gt;Download the signed, notarized &lt;code&gt;.dmg&lt;/code&gt; from the &lt;a class=&#34;link&#34; href=&#34;https://github.com/AprilNEA/OpenLogi/releases/latest&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;latest release&lt;/a&gt; and drag &lt;code&gt;OpenLogi.app&lt;/code&gt; to &lt;code&gt;/Applications&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Or install via &lt;a class=&#34;link&#34; href=&#34;https://brew.sh&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Homebrew&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install --cask openlogi
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The official Homebrew cask is the default installation path. To explicitly
track the latest GitHub release from &lt;code&gt;aprilnea/tap&lt;/code&gt; instead:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew tap aprilnea/tap
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install --cask aprilnea/tap/openlogi@latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;openlogi@latest&lt;/code&gt; is maintained by OpenLogi&amp;rsquo;s release workflow and may update
before the official cask autobump lands. Install either &lt;code&gt;openlogi&lt;/code&gt; or
&lt;code&gt;openlogi@latest&lt;/code&gt;, not both.&lt;/p&gt;
&lt;h3 id=&#34;linux&#34;&gt;Linux
&lt;/h3&gt;&lt;p&gt;Download the package for your distribution from the
&lt;a class=&#34;link&#34; href=&#34;https://github.com/AprilNEA/OpenLogi/releases/latest&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;latest release&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Debian / Ubuntu&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo dpkg -i openlogi_*.deb
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Fedora / RHEL&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rpm -i openlogi-*.rpm
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Arch Linux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo pacman -U openlogi-*.pkg.tar.zst
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Packages are published for both &lt;code&gt;x86_64&lt;/code&gt;/&lt;code&gt;amd64&lt;/code&gt; and &lt;code&gt;arm64&lt;/code&gt;/&lt;code&gt;aarch64&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;NixOS users can instead import the repository&amp;rsquo;s module, which installs the
package and udev rules and starts the agent with the graphical session:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-nix&#34; data-lang=&#34;nix&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;github:NixOS/nixpkgs/nixos-unstable&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;openlogi&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;github:AprilNEA/OpenLogi&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;follows&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;nixpkgs&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;n&#34;&gt;outputs&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;openlogi&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;nixosConfigurations&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;my-host&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lib&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixosSystem&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;n&#34;&gt;system&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;x86_64-linux&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# or aarch64-linux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;n&#34;&gt;modules&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;n&#34;&gt;openlogi&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixosModules&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;default&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;programs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;openlogi&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;enable&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;no&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;All Linux packages install udev rules that grant your user access to
&lt;code&gt;/dev/hidraw*&lt;/code&gt;, &lt;code&gt;/dev/uinput&lt;/code&gt; and your Logitech mouse&amp;rsquo;s &lt;code&gt;/dev/input/event*&lt;/code&gt;
node without &lt;code&gt;sudo&lt;/code&gt;. The NixOS module starts the agent automatically; after a
&lt;code&gt;.deb&lt;/code&gt;, &lt;code&gt;.rpm&lt;/code&gt;, or &lt;code&gt;.pkg.tar.zst&lt;/code&gt; installation, enable it for your user:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl --user &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; --now openlogi-agent.service
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;See &lt;a class=&#34;link&#34; href=&#34;docs/INSTALL-linux.md&#34; &gt;docs/INSTALL-linux.md&lt;/a&gt; for complete NixOS options,
manual / source installs, and distros without systemd.&lt;/p&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows
&lt;/h3&gt;&lt;p&gt;Signed portable &lt;code&gt;.zip&lt;/code&gt; archives and per-user &lt;code&gt;.msi&lt;/code&gt; installers (x86_64 and
arm64) are attached to each release. Both ship the GUI (&lt;code&gt;OpenLogi.exe&lt;/code&gt;)
together with the background agent (&lt;code&gt;openlogi-agent.exe&lt;/code&gt;), which owns all
device I/O. Keep the two files side by side when using the portable zip, or
the GUI has nothing to connect to.&lt;/p&gt;
&lt;p&gt;Windows support has been validated end-to-end on Windows 11 with real
hardware (a wired keyboard and a Unifying-receiver mouse), including
install, in-place upgrade, and uninstall of the MSI. It is newer than the
macOS build, so if you hit a rough edge please
&lt;a class=&#34;link&#34; href=&#34;https://github.com/AprilNEA/OpenLogi/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;report it&lt;/a&gt;. The agent shows a
system-tray icon (Show Main Window / Quit) so the app stays reachable after
the main window is closed. To disable it on Windows, set
&lt;code&gt;show_in_menu_bar = false&lt;/code&gt; in the TOML &lt;code&gt;[app_settings]&lt;/code&gt; block and restart the
agent; the GUI toggle is currently macOS-only.&lt;/p&gt;
&lt;p&gt;To build from source, see &lt;a class=&#34;link&#34; href=&#34;docs/DEVELOPMENT.md&#34; &gt;DEVELOPMENT.md&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;usage-cli&#34;&gt;Usage (CLI)
&lt;/h2&gt;&lt;p&gt;See &lt;a class=&#34;link&#34; href=&#34;docs/USAGE.md&#34; &gt;USAGE.md&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;configuration&#34;&gt;Configuration
&lt;/h2&gt;&lt;p&gt;See &lt;a class=&#34;link&#34; href=&#34;docs/CONFIGURATION.md&#34; &gt;CONFIGURATION.md&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;developing&#34;&gt;Developing
&lt;/h2&gt;&lt;p&gt;See &lt;a class=&#34;link&#34; href=&#34;docs/DEVELOPMENT.md&#34; &gt;DEVELOPMENT.md&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;acknowledgments&#34;&gt;Acknowledgments
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Windows, cameras, and i18n&lt;/strong&gt; by &lt;a class=&#34;link&#34; href=&#34;https://github.com/davidbudnick&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@davidbudnick&lt;/a&gt; — keyboard RGB, Windows support, Logitech webcam support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Linux port&lt;/strong&gt; by &lt;a class=&#34;link&#34; href=&#34;https://github.com/cserby&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@cserby&lt;/a&gt; — Linux support&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/pwr-Solaar/Solaar&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Solaar&lt;/a&gt; by &lt;a class=&#34;link&#34; href=&#34;https://github.com/pwr&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@pwr&lt;/a&gt; — open-source HID++ implementation&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/TomBadash/Mouser&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Mouser&lt;/a&gt; by &lt;a class=&#34;link&#34; href=&#34;https://github.com/TomBadash&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@TomBadash&lt;/a&gt; — a local, account-free Options+ replacement&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;The code in this repository is dual-licensed under either of&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Apache License, Version 2.0 (&lt;a class=&#34;link&#34; href=&#34;LICENSE-APACHE&#34; &gt;LICENSE-APACHE&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;MIT license (&lt;a class=&#34;link&#34; href=&#34;LICENSE-MIT&#34; &gt;LICENSE-MIT&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;at your option.&lt;/p&gt;
&lt;h3 id=&#34;third-party-code&#34;&gt;Third-party code
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;crates/openlogi-hidpp&lt;/code&gt; is a vendored fork of &lt;a class=&#34;link&#34; href=&#34;https://crates.io/crates/hidpp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;hidpp&lt;/code&gt;&lt;/a&gt;
by &lt;a class=&#34;link&#34; href=&#34;https://github.com/lus&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@lus&lt;/a&gt;, licensed 0BSD.&lt;/p&gt;
&lt;h3 id=&#34;logo--brand-assets&#34;&gt;Logo &amp;amp; brand assets
&lt;/h3&gt;&lt;p&gt;Thanks to &lt;a class=&#34;link&#34; href=&#34;https://github.com/kubai087&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@kubai087&lt;/a&gt; for designing the OpenLogi
logo. The OpenLogi logo and app icon (the brand assets under
&lt;a class=&#34;link&#34; href=&#34;design/&#34; &gt;&lt;code&gt;design/&lt;/code&gt;&lt;/a&gt;) are © 2026 AprilNEA, all rights reserved, and are not covered by the MIT/Apache
licenses above; see &lt;a class=&#34;link&#34; href=&#34;design/LICENSE&#34; &gt;&lt;code&gt;design/LICENSE&lt;/code&gt;&lt;/a&gt;. Forking the code grants
no right to the OpenLogi name, logo, or icon; please don&amp;rsquo;t use them to represent
your own projects, forks, or distributions without prior written permission.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Not affiliated with Logitech.&lt;/strong&gt; &amp;ldquo;Logitech&amp;rdquo;, &amp;ldquo;MX Master&amp;rdquo;, and &amp;ldquo;Options+&amp;rdquo; are trademarks of Logitech International S.A.&lt;/p&gt;
&lt;h2 id=&#34;repo-activity&#34;&gt;Repo activity
&lt;/h2&gt;&lt;p&gt;&lt;img src=&#34;https://repobeats.axiom.co/api/embed/4a0b576a03e9d528ad31ccf4797a1286c045d021.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Repobeats analytics image&#34;
	
	
&gt;&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
