Como executo este programa C depois de iniciar o servidor X?

2

A fonte de um programa que dimensiona automaticamente o brilho do teclado do meu laptop para o brilho da tela é fornecida na página wiki do Arch para o meu laptop. Eu posso compilá-lo e quando eu executar o programa como root funciona bem. Infelizmente, eu não sei como rodar este programa toda vez que eu inicio meu computador, e além disso o wiki informa que tenho que executá-lo depois que eu inicio o servidor X.

Como estou usando o Arch, imagino que tenho que fazer algo com systemd , mas não tenho ideia do que. Qualquer ajuda seria muito apreciada.

Se for relevante, a fonte é publicada aqui .

    
por Anthony Brice 20.12.2013 / 08:48

1 resposta

5

Se você precisar executá-lo depois que o servidor X for iniciado, provavelmente será mais apropriado iniciá-lo usando as configurações do seu ambiente de trabalho, em vez de tentar remendar algo com o systemd (embora você possa iniciá-lo com o systemd no modo de sessão do usuário , mas incluir o lançamento do X nele pode levar um pouco mais de trabalho que seria tangencial ao seu objetivo, dependendo da complexidade da sua configuração).

Se você estiver usando startx / xinit , basta adicionar o programa a ~/.xinitrc , com fundo:

/path/to/program &

Caso contrário, encontre suas configurações de inicialização em seu ambiente de área de trabalho e adicione o programa lá, para que ele seja iniciado logo em seguida.

Como agora está claro que você está executando o GNOME 3, você pode executar gnome-session-properties de Alt + F2 , e adicionar o programa à lista de inicialização lá.

Como o programa precisa de permissões de superusuário para funcionar, você precisa de alguma maneira de elevar sem ser solicitada uma senha. Para fazer isso sem bloquear no prompt, você pode tornar seu usuário capaz de executá-lo com NOPASSWD em /etc/sudoers . Edite o arquivo com sudo visudo e adicione a seguinte linha na parte inferior, editada conforme apropriado:

youruser ALL=NOPASSWD: /path/to/program

Você pode, então, executar o programa usando sudo sem que seja solicitada uma senha.

    
por 20.12.2013 / 08:52