Linux - iniciando um terminal visível na inicialização

1

Eu tenho um programa em C que eu escrevi para o debian no pi do framboesa que pede ao usuário para inserir um número 1-4 que ele armazena em um arquivo de configuração. Isso só acontece se o arquivo de configuração estiver faltando. Eu gostaria de executar este programa na inicialização. O problema é que posso executá-lo na inicialização, mas não tive a menor sorte de mostrar a janela do terminal para poder vê-lo. Eu tentei editar o /etc/rc.local e adicionar comandos lá. Eu tentei editar crontab. Eu tentei todos os truques com o comando "export display =: 0 & &". Alguma sugestão?

Editar:

Aqui está o comando que estou executando em /etc/rc.local:

x-terminal-emulator --command=/opt/vc/src/hello_pi/initialConfig/./initialConfig.bin --display=:0

O programa usa scanf () para capturar a entrada do teclado e exibir feedback.

    
por Davido 12.08.2013 / 16:41

2 respostas

0

Eu finalmente percebi isso. No diretório inicial de seus usuários, você precisa criar um arquivo chamado autostart no caminho /.config/lxsession/LXDE/ e apenas adicionar o comando que deseja executar após o login no arquivo de autostart.

    
por 14.08.2013 / 16:23
0

Você não está falando sobre "on boot" mas sim sobre "on X startup", e isso é uma coisa complicada porque em uma configuração típica o que é iniciado por X é um gerenciador de login, ie não há sessão de usuário, mesmo depois que o X é iniciado; somente depois que um usuário efetua login, uma sessão é iniciada.

Então, minha opinião sobre isso:

  • Se você tem uma configuração no estilo de quiosque, onde não há sessões de usuário, apenas algo deve ser iniciado junto com o X, não reinvente a roda e vá com nodm que permite executar um script arbitrário após configurar uma sessão gráfica interativa para um usuário pré-configurado.
  • Se você tem uma configuração "normal" (ou seja, típica), o que você está tentando engatar está fora de lugar: você precisa se conectar a uma sessão gráfica interativa do usuário.

    Aqui as coisas começam a ficar complicadas:

    • Se você tiver algum gerenciador de exibição ( *DM , normalmente GDM , KDM , XDM , slime etc), estude primeiro quais ganchos eles fornecem - alguns deles são capazes de executar certos scripts após um usuário efetua login.
    • Se você tiver uma configuração de sessão "moderna" d-bus -enabled (GNOME, etc), considere se é possível ouvir um determinado evento criado por uma sessão interativa de usuário no sistema d-bus instância - você poderia supostamente ligá-lo no momento da inicialização após o sistema d-bus instance iniciar.
por 12.08.2013 / 18:57