On Sat, Mar 18, 2017 at 12:47 PM Maarten de Vries <maarten@de-vri.es> wrote:
On 18 March 2017 at 11:51, arnaud gaboury via arch-general < arch-general@archlinux.org> wrote:
I run many urxvt windows on my screen. Some are for the host system and some are for my container (managed by systemd-nspawn). I am looking for a way to change color background according to hostname in order to quickly see which terminal I am on. My idea was to test $HOST variable in my ~/.xinitrc and give a specific .Xressource accordingly, but it doesn't work as .xinitrc is obviously not invoked when I fire a new terminal window.
How can I manage what I am looking for (if I can)? Thank you for hints.
You could make a wrapper script that calls `exec urxvt -bg ....` with a color
based on the hostname. I'd recommend a wrapper script and not an alias since the wrapper script will work everywhere, not just in your shell. Just put the script somewhere that is accessible in the host system and the container and set $PATH accordingly for your user.
Well, I tried this way, but without success. Here is the wrapper: ------------------------------------------ #!/bin/sh if [[ "$HOST" == "hortensia" ]] ; then exec urxvt -bg "#161695" else exec urxvt -bg "#161616" fi ---------------------------------------------- I placed this scrpt, calld myUrxvt, in ~/bin (it is in my path). As I use i3, i modify this line to start my terminal: -------------------- bindsym $mod+Return exec --no-startup-id myUrxvt -------------------- Starting a new terminal in host, hortensia, works, but not for the container. After a close look, in fact terminal in container is xterm and start by console-getty.service in the container. So the solution is something less obvious. I tried to play with the condition $TERM == xterm , but this does not work too.
-- Maarten