Wer sein ~ in einem Versionskontrollsystem wie z.B. git pflegt, trackt damit seine gesamten Daten, um z.B. auf verschiedenen Rechnern immer gleiche Datenbestände incl. Versionierung zu haben. Das Problem dabei ist, dass der Windowmanager (hier: awesome) für die verschiedenen Geräte ggfs. auch andere Einstellungen braucht, z.B. für das Hintergrundbild. Über den uname des Systems kann man einfach unterscheiden, wo das Script grade aktuell ausgeführt wird und erspart sich das Pflegen von 2 Konfigurationen. Hierzu erstellt man z.B. unter Gentoo die ~/.config/awesome/theme.lua wie folgt:
theme_path = "/usr/share/awesome/themes/default/theme.lua" theme = dofile(theme_path) a=io.popen("uname -n"); io.input(a) if io.read() == "laptop" then theme.wallpaper_cmd = { "awsetbg /home/user/real_1280x800.jpg" } else theme.wallpaper_cmd = { "awsetbg /home/user/real_1920x1280.jpg" } end return theme |
Voila – es wird immer das korrekt dimensionierte Wallpaper geladen.