Script que identifique em que sessão estou

Iniciado por Sergio Benjamim, 27 de Novembro de 2012, 13:31

tópico anterior - próximo tópico

Sergio Benjamim

Olá à todos!

Tenho o Unity e Gnome Shell instalado aqui no meu Ubuntu 12.04, e gostaria de saber como faço para descobrir em que sessão estou. A ideia é que um script identifique em qual sessão estou entrando, se for Unity ele ativará o Classicmenu-Indicator, se for Gnome Shell ativará o Cairo-Dock (com openGL).

Sei que o script tem que inicializar junto com os outros aplicativos de sessão.
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !

Sergio Benjamim

#1
Após um tempo de busca, consegui fazer o que eu queria. Vejam o resultado:


#!/bin/bash

# Identificando a sessão, se for Unity irá iniciar os programas a seguir
if [ "$DESKTOP_SESSION" == "ubuntu" ]
then
caffeine &
classicmenu-indicator &
psensor &
indicator-weather &
fi

exit 0


Agora esses programas abrem somente com o Unity. Se quiser o Gnome Shell com Cairo Dock, basta inserir um cairo-dock -c ou cairo-dock -o (esse usa o OpenGL, aceleração de hardware para efeitos) no código:


#!/bin/bash

# Identificando a sessão, se for Unity irá iniciar os programas a seguir
if [ "$DESKTOP_SESSION" == "ubuntu" ]
then
caffeine &
classicmenu-indicator &
psensor &
indicator-weather &
# Se for o Gnome Shell, irá iniciar somente o Cairo Dock
else [ "$DESKTOP_SESSION" == "gnome-shell" ]
# Aceleração gráfica por hardware - OpenGL
#cairo-dock -o &
# Sem o OpenGL, use esta opção se você tiver uma placa de vídeo problematica (ATI por exemplo)
cairo-dock -c &
fi

exit 0


Eu mudei a permissão desse script criado, e em Aplicativos de Sessão procurei pelo script, coloquei um nome para descrevê-lo e pronto!
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !

Sergio Benjamim

Alguém já notou que os ícones feios com pouca resolução no Gnome Shell, como o ícone de volume ou brilho, quando vc aumenta ou diminui pelas teclas Fn? Descobri que isso é um problema com os ícones default q o Ubuntu usa, para o Gnome Shell é preciso mudá-los para o padrão dele. Adicionei umas linhas no script para fazer essa troca (pois ainda assim eu gosto dos ícones do Ubuntu lá no Unity):


#!/bin/bash

# Identificando a sessão, se for Unity irá iniciar os programas a seguir
if [ "$DESKTOP_SESSION" == "ubuntu" ]
then

# Configurações
gsettings set org.gnome.desktop.interface icon-theme ubuntu-mono-dark &

# Aplicativos
caffeine &
classicmenu-indicator &
psensor &
indicator-weather &

# Se for o Gnome Shell, irá iniciar somente o Cairo Dock
else [ "$DESKTOP_SESSION" == "gnome-shell" ]

# Configurações
gsettings set org.gnome.desktop.interface icon-theme gnome &

# Aplicativos
# Aceleração gráfica por hardware - OpenGL
#cairo-dock -o &
# Sem o OpenGL, use esta opção se você tiver uma placa de vídeo problematica (ATI por exemplo)
cairo-dock -c &

fi

exit 0
É novo no Ubuntu? Já leu o Ubuntu – Guia do Iniciante 2.0 ?
Experimente o Xubuntu 14.04 !