Para apenas automatizar esse processo, você poderia usar um symlink .... remova o diretório foo e crie o link simbólico para ele.
ln -s -T /home/youruser/Documents/foo /usr/share/themes/foo
Desta forma, a única coisa que você precisa fazer é a etapa 4, porque você trabalha sempre na versão mais recente. Com isso, as permissões devem estar certas e você também pode git push-lo para sua conta. Se algo não estiver claro, escreva um comentário e eu explicarei mais. Eu não tenho uma fonte oficial, é assim que eu faria ... e talvez a razão pela qual você não pode encontrar nada online sobre isso. Quando isso é configurado, você pode criar um processo de observação nas alterações de arquivo que executam o ponto 4 Inotify .
EDIT Atualizar automaticamente o tema de trabalho: Isso recarregará todas as configurações do seu tema
Primeiro de tudo você precisa de alguns pacotes para verificar se há alterações de disco e a ferramenta de ajuste de unidade
sudo apt-get install inotify-tools unity-tweak-tool
Remova sua pasta de temas existente, lembre-se que, para todos os meus testes, recebi um tema do WinXP como teste.
sudo mv /usr/share/themes/WinXP/ /usr/share/themes/WinXP-backup/
Vincule sua pasta de temas do github
sudo ln -s -T /home/snapo/Downloads/WinXP/ /usr/share/themes/WinXP/
Apenas por motivos de segurança, crie uma cópia do seu centro de software
sudo cp -a /usr/share/software-center /usr/share/software-center-backup
Crie um arquivo com este conteúdo em sua pasta pessoal, como eu fiz em /home/snapo/autothemechange.sh
#! /bin/bash
##############################################################################################
DIRECTORY_TO_OBSERVE="/usr/share/themes/WinXP/" ###### might want to change this #########
MYTHEMENAME="WinXP" ###### your theme directory name #########
LOGFILE="/home/snapo/log-theme-change.log" ###### Logfile to see when change happen #
##############################################################################################
function detect_theme_change {
inotifywait -r \
-e modify,move,create,delete \
$DIRECTORY_TO_OBSERVE
}
while detect_theme_change; do
now="$(date)"
echo "Theme has been changed $now" >> $LOGFILE ;
/usr/bin/gtk-update-icon-cache
/usr/bin/gtk-update-icon-cache-3.0
/usr/bin/xdg-user-dirs-gtk-update
# reset GTK COLOR SCHEME (Unity, GNOME3, Cinnamon, MATE, GNOME2)
gsettings set org.gnome.desktop.interface gtk-color-scheme ""
# mateconftool-2 --type=string --set /desktop/mate/interface/gtk_color_scheme ""
gconftool-2 --type=string --set /desktop/gnome/interface/gtk_color_scheme ""
gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval 'Main.loadTheme();' ;
# change gtk theme (Unity, GNOME3, Cinnamon, MATE, GNOME2)
gsettings set org.gnome.desktop.interface gtk-theme "$MYTHEMENAME"
# mateconftool-2 --type=string --set /desktop/mate/interface/gtk_theme "$MYTHEMENAME"
gconftool-2 --type=string --set /desktop/gnome/interface/gtk_theme "$MYTHEMENAME"
# reset / change window theme (Unity, GNOME3, Cinnamon, MATE, GNOME2)
gsettings set org.gnome.desktop.wm.preferences theme "$MYTHEMENAME"
gconftool --type=string --set /desktop/cinnamon/windows/theme "$MYTHEMENAME"
gconftool-2 --type=string --set /apps/metacity/general/theme "$MYTHEMENAME"
# mateconftool-2 --type=string --set /apps/marco/general/theme "$MYTHEMENAME"
# change shell theme
gsettings set org.gnome.shell.extensions.user-theme name "$MYTHEMENAME"
gsettings set org.cinnamon.theme name "$MYTHEMENAME"
done
Quando você tiver feito isso, configure-o para chmod 755
chmod 755 /home/snapo/autothemechange.sh
Lembre-se, o script irá colocar muitos erros, porque eu vou recarregar a maioria dos mecanismos de tema ... isso significa que se você usar gtk3 todos os outros dão um erro, se você usar a unidade igual aos outros ... por favor ignorá-los.
Existem 3 variáveis que você precisa editar antes de executá-lo na primeira vez. A descrição de cada variável está no lado direito da variável.
Se você quiser que o script seja iniciado automaticamente quando você fizer login (o que não recomendo para inotify), você poderá fazer o seguinte:
Sistema > Preferências > Aplicações de inicialização:
bash /home/snapo/autothemeupdate.sh
Eu recomendo criar um link na área de trabalho, então, enquanto você começa a desenvolver, você clica duas vezes no link.