A execução de um script antes ou uma vez aparece a tela de login
Existem duas maneiras de abordar isso:
-
Coloque o comando ou chame o script em
/etc/rc.local. Por exemplo#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. # path to my script. Note the & at the end, it's important /home/serg/bin/brightness_set.sh & exit 0 -
A tela de login é, na verdade, conhecida como gerenciador de desktop, e o Ubuntu em particular usa
lightdmdesktop manager. Seu arquivo de configuração/etc/lightdm/lightdm.confpode usar o parâmetrogreeter-setup-script=para executar algo antes que a tela de login apareça. Por exemplo, você poderia fazer:[Seat:*] greeter-setup-script=/opt/set_brightness.pyOBSERVAÇÃO: versões mais antigas do cabeçalho
[SeatDefaults]estão obsoletas agora, use[Seat:*]. Além disso, se você nunca editou/etc/lightdm/lightdm.confestará em branco - esse é o comportamento normal desde a versão 14.04 do Ubuntu.
Controlando o brilho:
A configuração do brilho terá que ser feita escrevendo para o arquivo brightness no diretório /sys/class/backlight/<NAME> . Existem diferentes <NAME> de versões diferentes do que pode aparecer, por exemplo, o meu é /sys/class/backlight/intel_backlight , então você precisará descobrir o nome que seu próprio computador usa ou, alternativamente, usar /sys/class/backlight/*/brightness . Há também o arquivo max_brightness no mesmo local, que você pode usar como valor de 100% para calcular o brilho a ser definido. Ambos os arquivos aceitam valor inteiro.
Uma forma comum de escrever nesse arquivo é via echo 123 | sudo tee /sys/class/backlight/*/brightness da linha de comando. Se você estiver executando um script via /etc/rc.local ou via greeter-setup-script= parâmetro mencionado acima, sudo não é necessário, como ambos os métodos executam scripts com root privillege (que também é importante lembrar por razões de segurança, portanto assegure-se de que seu script seja acessível apenas ao seu usuário ou root apenas)
.
Existem também alternativas para escrever em /sys , mas nem todas são boas. Na minha experiência, xbacklight não funciona para usuários do Ubuntu e xrandr --output SCREEN_NAME --brightness INT é apenas uma solução de software (isto é, não diminui a potência da tela, apenas faz a tela tornar a cor mais escura).
Recursos adicionais
-
Se você quiser um controle mais flexível sobre o brilho e definir um nível específico com base na hora do dia, consulte meu script no tópico relacionado pergunta aqui
O artigo -
Arch Wiki contém muitas informações sobre a luz de fundo e formas de controlá-lo.