Un shell de escritorio completo para Niri, hecho con Quickshell
Instalar • Atajos • Referencia IPC • Discord • Contribuir
English · Español · Русский · 中文 · 日本語 · Português · Français · Deutsch · 한국어 · हिन्दी · العربية · Italiano
Sobre la traducción: Traducción comunitaria. Si algo no se entiende, consultá la versión en inglés.
🤔 ¿Nuevo acá? Clickeá si no tenés idea de qué es esto
iNiR es todo tu escritorio. La barra de arriba, el dock, notificaciones, configuración, wallpapers, todo. No es un theme, no son dotfiles que pegás. Es un shell completo que corre en Linux.
Un compositor. Es lo que maneja tus ventanas y pone los pixeles en pantalla. iNiR está hecho para Niri (un compositor Wayland de tiling). Hay código viejo de Hyprland de cuando esto era un fork de los dots de end-4, pero Niri es lo que realmente uso y testeo.
El shell corre sobre Quickshell, un framework para hacer shells en QML (el lenguaje de UI de Qt). No necesitás saber nada de eso para usarlo igual, todo se configura por la GUI o un JSON.
tus apps
↓
iNiR (shell: barra, sidebars, dock, notificaciones, settings...)
↓
Quickshell (corre shells QML)
↓
Niri (compositor: ventanas, rendering)
↓
Wayland → GPUEs un proyecto personal que se fue de las manos. Lo uso todos los días, mucha gente en el Discord también. Pero a veces se rompen cosas, el código está desprolijo en partes, voy aprendiendo sobre la marcha.
Si algo no anda, inir doctor arregla la mayoría. El Discord está activo si eso no ayuda. No esperes software pulido, esto es el rice de una persona que a otros les gustó.
Quería que mi escritorio se vea y funcione de cierta forma y nada lo hacía exactamente así. Empezó como los dots de Hyprland de end-4, terminó siendo un rewrite completo para Niri con muchas más features.
- Shell: la capa de UI (barra, paneles, overlays)
- Compositor: maneja ventanas, dibuja en pantalla (Niri, Hyprland, Sway...)
- Wayland: protocolo de display de Linux (el nuevo, reemplaza X11)
- QML: lenguaje declarativo de UI de Qt, en lo que está escrito iNiR
- Material You: sistema de colores de Google que hace paletas de imágenes (así funciona el auto-theming)
- ii / waffle: los dos estilos de panel. ii = onda Material Design, waffle = onda Windows 11.
Super+Shift+Wcambia entre ellos
Dos familias de paneles, intercambiables al vuelo con Super+Shift+W:
- Material ii — barra flotante, sidebars, dock, 5 estilos visuales (material, cards, aurora, inir, angel)
- Waffle — barra de tareas estilo Windows 11, menú inicio, centro de acciones, centro de notificaciones
Tematización automática — elegís un wallpaper y todo se adapta:
- Colores del shell vía Material You, propagados a GTK3/4, Qt, terminales, Firefox, Discord, SDDM
- 10 herramientas de terminal auto-tematizadas (foot, kitty, alacritty, starship, fuzzel, btop, lazygit, yazi)
- Presets de temas: Gruvbox, Catppuccin, Rosé Pine, y custom
Compositor — hecho para Niri.
Lista completa de features
Elegís un wallpaper y todo el sistema sigue — shell, apps GTK/Qt, terminales, Firefox, Discord, pantalla de login SDDM. Todo automático.
- 5 estilos visuales — Material (sólido), Cards, Aurora (blur de vidrio), iNiR (inspirado en TUI), Angel (neo-brutalismo)
- Colores dinámicos del wallpaper vía Material You — se propagan a todo el sistema
- 10 herramientas de terminal auto-tematizadas — foot, kitty, alacritty, starship, fuzzel, pywalfox, btop, lazygit, yazi
- Tematización de apps — GTK3/4, Qt (vía plasma-integration + darkly), Firefox (MaterialFox), Discord/Vesktop (System24)
- Presets de temas — Gruvbox, Catppuccin, Rosé Pine, y más — o creá el tuyo
- Wallpapers de video — mp4/webm/gif con blur opcional, o primer frame congelado para rendimiento
- Tema SDDM de login — colores Material You sincronizados con tu wallpaper
- Widgets de escritorio — reloj (varios estilos), clima, controles de media en la capa de wallpaper
Sidebar izquierdo (cajón de apps):
- Chat IA — Gemini, Mistral, OpenRouter, o modelos locales vía Ollama
- YT Music — reproductor completo con búsqueda, cola y controles
- Browser de Wallhaven — buscá y aplicá wallpapers directamente
- Anime tracker — integración con AniList y vista de schedule
- Feed de Reddit — navegá subreddits inline
- Traductor — vía Gemini o translate-shell
- Widgets arrastrables — crypto, media player, notas rápidas, status rings, calendario semanal
Sidebar derecho:
- Calendario con integración de eventos
- Centro de notificaciones
- Quick toggles — WiFi, Bluetooth, luz nocturna, DND, perfiles de energía, WARP VPN, EasyEffects
- Mixer de volumen — control por app
- Bluetooth y WiFi — gestión de dispositivos
- Timer pomodoro, lista de tareas, calculadora, notepad
- Monitor del sistema — CPU, RAM, temperatura
- Overview de workspaces — adaptado al modelo scrolling de Niri, con búsqueda de apps y calculadora
- Selector de ventanas — Alt+Tab entre todos los workspaces
- Gestor de portapapeles — historial con búsqueda y preview de imágenes
- Herramientas de región — capturas, grabación de pantalla, OCR, búsqueda inversa de imágenes
- Cheatsheet — visor de atajos sacados de tu config de Niri
- Controles de media — reproductor MPRIS completo con varios presets de layout
- On-screen display — OSD de volumen, brillo y media
- Reconocimiento de canciones — identificación tipo Shazam vía SongRec
- Búsqueda por voz — grabá y buscá vía Gemini
- Configuración GUI — configurá todo sin tocar archivos
- GameMode — desactiva efectos automáticamente con apps en pantalla completa
- Auto-updates —
inir updatecon rollback, migraciones y preservación de cambios del usuario - Pantalla de bloqueo y pantalla de sesión (logout/reboot/shutdown/suspend)
- Agente polkit, teclado en pantalla, gestor de autostart
- 9 idiomas — detección automática, con generación de traducciones asistida por IA
- Luz nocturna — programada o manual
- Clima — Open-Meteo, soporta GPS, coordenadas manuales o nombre de ciudad
- Gestión de batería — umbrales configurables, auto-suspend en crítico
- Checker de updates del shell — avisa cuando hay versiones nuevas
git clone https://github.com/snowarch/inir.git
cd inir
./setup install # interactivo — pregunta antes de cada paso
./setup install -y # automático — instala todo sin preguntasEl instalador maneja dependencias, config del sistema, tematización — todo. Después de instalar, ejecutá inir run para iniciar el shell, o cerrá sesión y volvé a entrar.
inir run # iniciar el shell
inir settings # abrir configuración GUI
inir logs # ver logs del runtime
inir doctor # auto-diagnosticar y arreglar
inir update # pull + migrar + reiniciarDistros soportadas: Arch (instalador automatizado). Otras distros pueden instalar manualmente — ver PACKAGES.md.
| Método | Comando |
|---|---|
| Instalación de sistema | sudo make install && inir run |
| Menú TUI | ./setup |
| Rollback | ./setup rollback |
| Tecla | Acción |
|---|---|
Super+Space |
Overview — buscar apps, navegar workspaces |
Alt+Tab |
Selector de ventanas |
Super+V |
Historial del portapapeles |
Super+Shift+S |
Captura de región |
Super+Shift+X |
OCR de región |
Super+, |
Configuración |
Super+Shift+W |
Cambiar familia de paneles |
Lista completa: KEYBINDS.md
15 wallpapers vienen incluidos. Para más, mirá iNiR-Walls — una colección curada que funciona bien con el pipeline de Material You.
| INSTALL.md | Guía de instalación |
| SETUP.md | Comandos del setup — updates, migraciones, rollback |
| KEYBINDS.md | Todos los atajos de teclado |
| IPC.md | Targets IPC para scripting y atajos custom |
| PACKAGES.md | Cada paquete y por qué está |
| LIMITATIONS.md | Limitaciones conocidas y workarounds |
| ARCHITECTURE.md | Arquitectura técnica del proyecto |
inir logs # revisá los logs — la respuesta suele estar ahí
inir restart # reiniciar el shell
inir repair # doctor + restart + chequeo de logs filtrado
./setup doctor # auto-diagnosticar y arreglar problemas comunes
./setup rollback # deshacer la última actualizaciónRevisá LIMITATIONS.md antes de abrir un issue.
Ver CONTRIBUTING.md para setup de desarrollo, patrones de código y lineamientos de PRs.
- end-4 — illogical-impulse original para Hyprland
- Quickshell — el framework que hace posible este shell
- Niri — el compositor Wayland de tiling scrollable







