> [!WARNING]
> **OpenLogi está en desarrollo activo** y todavía no es estable: las funciones y la configuración aún pueden cambiar. Dale una **Star** ⭐ al repositorio y ponlo en **Watch** 👀 para enterarte en cuanto salga una versión nueva.
OpenLogi
⚡️ Una alternativa nativa y local-first a Logitech Options+, escrita en Rust 🦀 Aprovecha al máximo los ratones, teclados y webcams de Logitech mediante HID++ y UVC
> **¿Harto de Options+? Prueba OpenLogi.**
Funciona en macOS, Linux y Windows.
---
## Más allá de Options+
Cosas que hace OpenLogi y Options+ no:
- **No pesar.** Rust nativo + GPUI.
- **Funcionar en Linux.** En OpenLogi, Linux es una plataforma de primera.
- **Gestos en los botones compatibles.** Asigna acciones de gestos a los controles compatibles, o desactiva los gestos por completo.
- **Configuración en texto plano.** Todo cabe en un único fichero TOML que puedes sincronizar entre máquinas como te convenga.
- **Automatizar.** Una CLI de verdad junto a la interfaz gráfica: una [API de automatización](USAGE.md#automation-api) en JSON para DPI, SmartShift, Fn-lock y frecuencia de sondeo, además de diagnósticos de hardware.
## Funciones
### Dispositivos
- Receptores Logi Bolt y Unifying, Bluetooth y conexiones por cable, con nivel de batería y estado de carga
- Avisos de batería baja en la parte inferior de la pantalla, una vez por descarga y sin permiso de notificaciones del sistema
- Un indicador en pantalla cuando un teclado activa o desactiva Caps Lock, y también Num Lock y Scroll Lock en Windows y Linux
Easy-Switch
Qué ordenador está emparejado en cada canal, con su sistema operativo y su conexión
Cambia el nombre de un canal en los dispositivos que lo permiten
### Botones y acciones
Reasigna cualquier botón
Un catálogo de acciones integrado, atajos personalizados, texto escrito o flujos de varios pasos
Acciones distintas para pulsar y mantener, y acordes de push-to-talk que se sueltan con el botón
Gestos en el clic central, Atrás/Adelante, DPI/ModeShift, el botón de gestos y el panel háptico
Actions Ring
Ocho acciones en un anillo alrededor del cursor
Su propia distribución para cada aplicación
Teclas del teclado
Asigna las teclas multimedia, de emoji, de captura de pantalla y otras teclas dedicadas igual que los botones del ratón
Devuelve una tecla a su valor predeterminado del dispositivo o restablece toda la fila
Los perfiles por aplicación cambian con la app que tengas en primer plano. Un alias en `[apps]` permite que un mismo perfil siga a una aplicación en distintas plataformas.
### Puntero y desplazamiento
Puntero
Preajustes de DPI con acciones para recorrerlos y fijar uno
Velocidad del puntero y frecuencia de sondeo
Modo de precisión: un botón pasa el ratón a su velocidad más lenta y lo devuelve
SmartShift
Modo de la rueda y sensibilidad
Fuerza de desplazamiento en ratones con SmartShift Enhanced
Un interruptor de trinquete permanente
Desplazamiento
Inversión del desplazamiento por dispositivo, de forma nativa o por software
Resolución de la rueda y desplazamiento suave con la rueda
Mantén Atrás o Adelante y gira la rueda para desplazarte en horizontal en ratones sin rueda lateral
### Teclado e iluminación
Teclado
Fn Lock, y teclados multiplataforma que mantienen la distribución del sistema anfitrión
Nivel de retroiluminación, brillo automático y ahorro de batería
El nivel de retroiluminación se muestra en pantalla mientras cambia
RGB estático en los teclados compatibles
Luces Litra
Encendido, brillo y temperatura de color
Se encienden con la cámara si quieres
Respetan los cambios hechos en la propia luz
### Webcams
- Cualquier webcam UVC de Logitech (Brio, StreamCam, la serie C920, …), sin configurar nada
- Vista previa en directo que solo ocupa la cámara mientras la miras; al salir, el LED se apaga
- Zoom, panorámica, inclinación, enfoque, exposición, balance de blancos y el resto de controles UVC, escritos en el hardware para que Meet, Zoom y OBS vean el cambio
- Perfiles integrados Predeterminado / Transmisión / Videollamada, más instantáneas propias, guardados por cámara
Las funciones disponibles dependen de lo que informe cada dispositivo; la aplicación solo muestra los controles que el dispositivo admite.
### Compatibilidad por plataforma
| Función | macOS | Windows | Linux |
| --- | --- | --- | --- |
| Reasignación de botones del ratón y gestos | ✓ | ✓ | ✓ |
| Reasignación de las teclas F del teclado | ✓ | ✓ | — |
| Perfiles por aplicación | ✓ | ✓ | X11, wlroots (sway, Hyprland), GNOME con la [extensión complementaria](../crates/openlogi-hook/gnome-shell-extension/README.md) |
| El perfil del ratón sigue a la ventana bajo el puntero | ✓ | ✓ | Solo X11 |
| Teclas multimedia | Nativo | Nativo | D-Bus MPRIS |
| Acciones del gestor de ventanas (escritorios, Mission Control, …) | Nativo | Equivalentes nativos | GNOME, KDE (KWin), Hyprland; algunas acciones exclusivas de macOS no hacen nada |
| Icono en la barra de menús / área de notificación | ✓ | ✓ | — |
| Actualizaciones desde la aplicación | Sparkle | Integradas | Integradas |
## Instalación
> [!IMPORTANT]
> Cierra antes **Logi Options+** (y Solaar en Linux). Un receptor solo puede pertenecer a una aplicación a la vez.
| Plataforma | Sistema | Arquitectura |
| --- | --- | --- |
| macOS | macOS 13 o posterior | Apple silicon, Intel |
| Linux | GLIBC 2.35 o superior | x86_64, arm64 |
| Windows | Probado en Windows 11 | x86_64, arm64 |
Cada descarga lleva una firma minisign y una entrada en `SHA256SUMS`. Para compilar desde el código fuente, consulta [DEVELOPMENT.md](DEVELOPMENT.md).
### macOS
O con Homebrew:
```sh
brew install --cask openlogi
```
Abre OpenLogi y concede **Accesibilidad** y **Monitorización de los dispositivos de entrada** cuando macOS lo pida. A partir de ahí, OpenLogi se actualiza solo mediante Sparkle.
### Linux
O instala el paquete adecuado para tu distribución con un solo comando. Verifica la firma minisign y arranca el agente; instala antes `minisign`:
```sh
curl -fsSL https://github.com/AprilNEA/OpenLogi/releases/latest/download/install.sh | sh
```
Para revisar el script antes de ejecutarlo, y para Flatpak, NixOS y distribuciones sin systemd, consulta [INSTALL-linux.md](INSTALL-linux.md).
### Windows