Como iniciar automaticamente todos os screenlets somente em unidade (não no Gnome-shell)?

3

Eu quero iniciar automaticamente todos os screenlets no ambiente de unidade apenas porque ele também inicia automaticamente no shell do Gnome (já que ele não está funcionando bem no gnome-shell), i, e, eu quero apenas editar um arquivo nem todos os arquivos de itens de tela
como eu tenho um monte de sceenlets na minha área de trabalho
E eu sei como iniciar automaticamente um aplicativo neste site .

    
por Black Block 29.11.2011 / 22:18

1 resposta

4

Eu não acho que é possível editar apenas um arquivo - você precisará editar todos os arquivos de screenlet - parece que todos os screenlets na pasta de início automático são nomeados [something]Screenlet.desktop

Você pode usar um script simples como esse, que anexaria OnlyShowIn=Unity a todos os arquivos de screenlet na pasta de início automático do usuário

Para usar, copie e cole o seguinte em um arquivo em sua pasta pessoal chamado hidescreenlets

Em seguida, execute o script usando:

bash ~/hidescreenlets

Se você adicionar mais screenlets, basta executar novamente o script.

script:

#!/bin/bash

dir="$HOME/.config/autostart"

if  [ ! -d  $dir ] ; then
  echo "cannot find $dir"
  exit
fi

cd $dir

files='find -name "*Screenlet.desktop"'
for file in $files ; do
  srch='grep -i "OnlyShowIn=Unity" $file'
  #echo $file "$srch"
  if [ "$srch" == "" ] ; then
     echo "OnlyShowIn=Unity" >> $file
     #echo $file "$srch"
  fi
done

backup

Se você estiver nervoso ... use o Nautilus para fazer o backup da pasta ~ / .config / autostart em outra pasta ou você pode conseguir o mesmo através do seguinte:

mkdir ~/backupscreenlets
cp ~/.config/autostart/* ~/backupscreenlets

Veja o conteúdo de ~/backupscreenlets - ele terá os mesmos arquivos que ~/.config/autostart

Se você quiser seus arquivos originais:

cp ~/backupscreenlets/* ~/.config/autostart
    
por fossfreedom 03.12.2011 / 16:37