Plugin Night Light no Omarchy
Em destaque
O que o Plugin Night Light faz no seu Omarchy
- Ligue e desligue o filtro com um clique
- Edite horário de abertura e fechamento
- Defina a temperatura em kelvin e aplique
- Programe um fade de 5 a 240 minutos
- Veja a rampa pintada com as cores do trajeto
io.github.jeremylanger.nightlight- Tipo
- Widget da barra
- Categoria
- Widgets
- Origem
- Comunidade · jeremylanger/omarchy-nightlight
- Mantenedor
- Jeremy Langer
- Licença
- MIT
- Versão
- 1.2.2
- Compatibilidade
- Omarchy Quattro ou mais recente, com `hyprsunset` e `perl`, ambos presentes na instalação padrão. Não usa serviço externo e convive com o plugin `omarchy.nightlight` ligado ou desligado. Para a agenda rodar no login, o `autostart.lua` precisa iniciar o `hyprsunset`. Referência do portal: Omarchy 4.5.0-rc1.
- Tags

Instalar e manter
Instale o plugin
O Omarchy clona o repositório do plugin e valida os arquivos no seu computador. Só depois ele instala e ativa o plugin.
Instalar omarchy plugin add https://github.com/jeremylanger/omarchy-nightlight.git --enableAtualize quando sair uma versão nova
Rode este comando para trazer as mudanças publicadas no repositório do plugin.
Atualizar omarchy plugin update io.github.jeremylanger.nightlightRemova quando não precisar mais
O comando retira o plugin do seu Omarchy. Use o mesmo identificador mostrado no cartão de detalhes.
Remover omarchy plugin remove io.github.jeremylanger.nightlight
O Night Light é um widget de barra para o filtro de luz do hyprsunset, o recurso nativo do Omarchy. Ele fica ao lado do relógio, abre um painel com chave de ligar e desligar e permite editar o horário de acender, o de apagar e a temperatura. Um clique abre o painel e o clique direito alterna o filtro sem abrir nada.
O painel serve para o ajuste pontual e a agenda cuida do dia a dia. Em vez de ligar e desligar o filtro na mão quando a luz da sala muda, você define horários que acompanham a rotina. O widget conversa com o hyprsunset direto, então funciona com o indicador nativo do Omarchy ligado ou desligado, sem precisar do indicador para nada.
Antes de instalar
O plugin exige Omarchy Quattro ou mais recente, com hyprsunset e perl, dois itens que já vêm na instalação padrão. Não há serviço externo nem login em nuvem envolvido. Para a agenda rodar desde o login, o autostart.lua do Hyprland precisa iniciar o hyprsunset, porque o widget cuida do filtro e não de subir o processo na sessão.
Instale
omarchy plugin add https://github.com/jeremylanger/omarchy-nightlight.git --enableOpcionalmente, retire o indicador de luz noturna nativo da barra para deixar o widget no lugar dele. Em ~/.config/omarchy/shell.json, ajuste items na entrada omarchy.indicators e exclua NightLight. Depois, coloque o widget perto do relógio:
omarchy bar move io.github.jeremylanger.nightlight --section centerAcrescente a linha abaixo em ~/.config/hypr/autostart.lua para o hyprsunset subir junto com a sessão:
o.launch_on_start("hyprsunset")Ajuste horário e temperatura
Abra o painel, edite o horário de acender, o de apagar e a temperatura, depois confirme em Apply. O plugin grava ~/.config/hypr/hyprsunset.conf e reinicia o hyprsunset para valer a mudança.
A escrita passa pelo nightlight-file.pl, que usa o Perl da instalação padrão. O arquivo de configuração precisa ser um arquivo comum. Nem ele nem os diretórios acima podem ser links simbólicos, o que evita gravar fora do lugar esperado. A escrita é atômica, então uma interrupção no meio do caminho não deixa o arquivo pela metade.
Trocar só a temperatura com o filtro ligado aplica na hora, sem piscar a tela. O reinício do hyprsunset que essa mudança exige fica para o próximo momento com a luz desligada.
Programe o fade gradual
O fade suaviza a entrada e a saída do filtro em vez de mudar a temperatura de uma vez. Ligue a opção e escolha quanto tempo ele deve durar, entre 5 e 240 minutos. O mesmo tempo vale nas duas pontas do dia.
O horário que você define é o começo da rampa. Com acender às 20:00, apagar às 07:00 e fade de 60 minutos, a tela deixa os 6500 K às 20:00 e chega à temperatura escolhida às 21:00. Na manhã seguinte, começa a voltar às 07:00 e fica neutra às 08:00.
O painel desenha as duas rampas como barras de gradiente, pintadas com as cores pelas quais a tela vai passar. Durante um fade em andamento, a barra ganha um marcador na posição atual e mostra a temperatura acima dele. Fora do fade não há nada a informar, então o marcador e o número somem.
Quando você desliga a luz durante um fade ou logo depois de um, o plugin para o hyprsunset em vez de fixar uma temperatura neutra. Sem essa parada, a agenda do programa aqueceria a tela de novo no passo seguinte. O processo volta no ponto onde a agenda indica luz apagada, então a noite seguinte acontece normalmente.
Como o hyprsunset guarda uma temperatura por perfil, cada fade é gravado como uma escada de perfis de um minuto. Os passos ficam espaçados em mireds e não em kelvin, para que cada salto tenha o mesmo efeito percebido: cerca de 5 mired em um fade de uma hora, bem abaixo do que o olho nota em uma rampa lenta. Cada rampa encurta sozinha quando invadiria a outra ponta da agenda.
Ícone e comandos
O ícone desaparece quando a luz está apagada e reaparece ao passar o mouse, como os indicadores nativos. Os comandos de IPC abrem, fecham e alternam o painel, aplicam a configuração e controlam o fade:
omarchy-shell io.github.jeremylanger.nightlight openomarchy-shell io.github.jeremylanger.nightlight toggleomarchy-shell io.github.jeremylanger.nightlight applyomarchy-shell io.github.jeremylanger.nightlight fade on 60omarchy-shell io.github.jeremylanger.nightlight fade off ""O tests/run.sh do repositório roda o widget no Quickshell contra a interface instalada do Omarchy, com o hyprsunset simulado. O teste precisa de sessão Wayland e não mexe na tela em uso.
Atualize e remova
omarchy plugin update io.github.jeremylanger.nightlightomarchy plugin remove io.github.jeremylanger.nightlightA remoção tira o widget da barra e deixa o hyprsunset.conf como está, com a agenda e a temperatura que você definiu. Caso tenha excluído o indicador nativo, vale devolver o item em shell.json para não ficar sem controle nenhum do filtro.