Como funciona o “Startup Applications”?

10

Estou interessado em saber como os "Aplicativos de inicialização", que você pode acessar do banco de dados, funcionam.

Eu quero saber disso porque quero saber a diferença entre adicionar uma entrada nesses lugares:

/etc/rc.local 
/etc/profile  
/home/$USER/.profile

e fazendo o mesmo através deste aplicativo GUI. O que me intriga é que eu não vejo o programa criando nenhuma entrada nos arquivos mencionados acima.

    
por daltonfury42 24.05.2015 / 15:58

2 respostas

8
  • /etc/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.
    

    Essencialmente, o nível de execução multiusuário significa quando você inicializa.

  • /etc/profile

    Este arquivo é invocado apenas para shells de login, porque esse é seu propósito específico.

    /etc/profile , executado por todos os shells compatíveis com Bourne (incluindo bash e dash ) quando iniciado como um shell de login.

  • /home/$USER/.profile

    # ~/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash if ~/.bash_profile or ~/.bash_login
    # exists.
    
      

    Os ~/.bashrc e ~/.bash_profile são scripts que podem ser executados quando o bash é invocado. O arquivo ~/.bashrc é executado quando você executa o bash usando um shell interativo que não é um shell de login. O ~/.bash_profile só é executado durante um shell de login.

    Fonte

    Então eu acho que .profile é executado se nenhum desses for (por qualquer motivo).

  • Por fim, seu método de GUI provavelmente está colocando .desktop launchers em /home/$USER/.config/autostart

    Isso é executado no logon do usuário (somente login da GUI, eu acho - então startx seria, mas não tty login).

por Tim 24.05.2015 / 16:12
8

Qualquer ambiente de desktop seguindo as especificações do freedesktop (também conhecido como XDG) deve fazer uso de autorizando aplicativos no login do usuário ou sempre que um meio removível foi inserido.

Para iniciar automaticamente um aplicativo no login do usuário, o ambiente de área de trabalho procura um arquivo .desktop para executar o aplicativo especificado lá. Esses arquivos .desktop geralmente estão localizados em

$XDG_CONFIG_DIRS/autostart

Mas também podemos tê-los nos seguintes locais:

~/.config/autostart/ ## if $XDG_CONFIG_HOME is not set
etc/xdg/autostart/ ## if $XDG_CONFIG_DIRS is not set

Em qualquer caso, um arquivo .desktop localizado em ~/.config/autostart é definido como o arquivo mais importante a ser executado, substituindo, assim, os arquivos .desktop em outros locais.

O Ubuntu cumpre esta especificação e os usuários podem adicionar aplicativos com uma abordagem de GUI para "Autostart Applications".

O aplicativo pode ser iniciado automaticamente, independente da área de trabalho, de vários outros locais, como ~/.profile para o shell, em /etc/rc.local para execução no início do sistema ou, mais recentemente, usando systemd .

    
por Takkat 24.05.2015 / 17:07