Eu gostaria de controlar o brilho da tela no i3 , em laptops Intel que vêm com teclas Fn para o efeito. Estas teclas funcionam com qualquer outro DE.
Primeiro, certifique-se de que os dispositivos disponíveis sejam Intel:
$ ls -l /sys/class/backlight/
total 0
lrwxrwxrwx 1 root root 0 juin 24 18:26 intel_backlight -> ../../devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1/intel_backlight
Em outro fórum o programa xbacklight
é sugerido como meio de controlar o brilho no i3 . No entanto, ele falha nos laptops que tentei até agora:
$ xbacklight -inc 10
No outputs have backlight property
Existe alguma outra maneira de controlar o brilho no i3 ?
brightnessctl
pode ser usado para definir o brilho real do dispositivo.Para alterar o brilho da tela, você pode usar
xrandr
.Para fazer isso, você pode fazer:
Isso retornará todos os monitores conectados (como
LVDS-1
ouDVI-D-0
por exemplo).Agora, para alterar o brilho da tela, execute o comando (substitua o
DVI-D-0
pela saída do comando precedente):Por exemplo, este comando define o brilho para 70%.
Eu espero que isso ajude !
Minha solução. Ele é testado no Ubuntu 20.04.
sudo apt install light
sudo chmod +s /usr/bin/light
Adicione à configuração do i3:
bindsym XF86MonBrightnessUp exec --no-startup-id light -A 1 # increase screen brightness
bindsym XF86MonBrightnessDown exec --no-startup-id light -U 1 # decrease screen brightness
Copiando de uma resposta antiga minha para uma pergunta: As teclas especiais XF86MonBrightnessUp/XF86MonBrightnessDown não funcionam
Edit : Conforme observado abaixo, você deve ter
acpi
instalado em sua máquina para que funcionem :)Edit 2 : Este código aumenta/diminui os valores de brilho em 1, mas alguns modelos terão valores que variam em milhares, então modifique a alteração de acordo.
Esta é uma pergunta antiga, mas uma resposta pode ajudar outras pessoas. Encontrei um problema em uma nova instalação
i3wm
no meu laptop onde, por qualquer motivo, minhasXF86MonBrightnessUp/Down
chaves não estavam sendo registradas (verifiquei comxev
). O que acabei fazendo foi criaracpi
ações e eventos que correspondiam às teclas pressionadas.A seguir estão as ações/eventos que defini em
/etc/acpi/actions
e/etc/acpi/events
, respectivamente:Ações
/etc/acpi/actions/bl-down.sh
/etc/acpi/actions/bl-up.sh
Eventos
/etc/acpi/events/bl-down
/etc/acpi/events/bl-up
Você pode verificar seus códigos de evento acpi de brilho/diminuição usando
acpi_listen
em seu terminal e, em seguida, pressionando a combinação de teclas relevante (por exemplo, para mim, é Fn + Seta para baixo para diminuir o brilho).Finalmente, não se esqueça de reiniciar
acpid
comsudo /etc/init.d/acpid reload
Nota: Seu dispositivo de luz de fundo pode ser definido em um local diferente de
/sys/class/backlight/acpi_video0
- é exatamente onde o meu estava. Dê uma bisbilhotada.Tem 2
xbacklight
. No Archlinux (pode ser o mesmo em sua distro), um vem no pacotexorg-xbacklight
originado de https://xorg.freedesktop.org/ e o outro está no pacoteacpilight
originado em https://gitlab.com/wavexx/acpilight . Se um não funcionar, talvez o outro funcione.A descrição para
xorg-xbacklight
diz:E do
acpilight
link:Então, pode ser esse o motivo pelo qual o seu
xbacklight
não funciona.minha solução atual:
obter a exibição padrão (ex DVI-0)
xrandr -q | grep " connected " | cut -d' ' -f1 | head -n 1
adicione o seguinte para
~/.config/i3/config
substituir DVI-0 por qualquer que seja o seu monitorAqui está a solução de script bash baseada em
xrandr
: Primeiro crie um arquivo para armazenar o valor de brilho atual usandoecho 1.o > brightness.txt
. Agora o seguinte script bash pode ser usado:Suponha que o script acima seja chamado
brightness.sh
, então ele pode ser usado como:E como você usa
i3
, pode vincular chaves a esses comandos. Por exemplo, você pode adicionar essas linhas ao seui3-config
:Além disso, adicione esta linha ao seu
i3-config
para iniciar no último valor de brilho usado:A resposta inspired_Blue é uma boa resposta para usar o xrandr, mas é incompleta, sugiro adicionar essas linhas no final do script bash para fazê-lo funcionar:
tenha cuidado para verificar seu nome de exibição com
xrandr -q | grep ' connected' | head -n 1 | cut -d ' ' -f1
como mostrado por Jae Beojkkoch. No meu caso o nome é LVDS-1.
A primeira linha reescreve o arquivo txt usando o novo valor de brilho, a segunda é usada para definir o brilho usando xrandr.
Instale
ddcutil
o . Talvez seja necessário instalari2c-tools
primeiro e executarE adicione seu nome de usuário ao grupo i2c:
Você pode correr:
para ver o que pode ser controlado
E para aumentar/diminuir a luz de fundo você pode fazer:
respectivamente.
Para mais informações
ddcutil
, sugiro que verifique a documentação em: https://www.ddcutil.com/command_setvcp/