From: Michael Richardson <[EMAIL PROTECTED]>

the xterm that is produced for the virtual consoles should have the
--name option added. This will tell the xterm to lookup a custom resource in
the X resource database, and may permit the user to have all the consoles
associated with a given UML be the same colour. For instance, you could
put:
        marajade-[~] mcr 1129 %grep east .Xresources
        east*foreground: Green
        east*background: Black
        east*saveLines: 1000

this patch added a fourth argument to the xterm definition so that the
name of the option could be changed. For gnome-terminal, perhaps
--window-with-profile will work. It looks like this option will work without
the = in the option, so it should work for gnome people too.

---

 arch/um/drivers/xterm.c |   23 +++++++++++++++++------
 1 files changed, 17 insertions(+), 6 deletions(-)

applies-to: f0f578967fc649a7b993b212e164b658639ef184
7335417358836aebdb201c5e2ea6229af6449af6
diff --git a/arch/um/drivers/xterm.c b/arch/um/drivers/xterm.c
index aaa6366..0220d59 100644
--- a/arch/um/drivers/xterm.c
+++ b/arch/um/drivers/xterm.c
@@ -50,6 +50,7 @@ void *xterm_init(char *str, int device, 
 /* Only changed by xterm_setup, which is a setup */
 static char *terminal_emulator = "xterm";
 static char *title_switch = "-T";
+static char *name_switch = "-name";
 static char *exec_switch = "-e";
 
 static int __init xterm_setup(char *line, int *add)
@@ -67,6 +68,11 @@ static int __init xterm_setup(char *line
        *line++ = '\0';
        if(*line) exec_switch = line;
 
+       line = strchr(line, ',');
+       if(line == NULL) return(0);
+       *line++ = '\0';
+       if(*line) name_switch = line;
+
        return(0);
 }
 
@@ -79,8 +85,8 @@ __uml_setup("xterm=", xterm_setup,
 "    respectively.  The title switch must have the form '<switch> title',\n"
 "    not '<switch>=title'.  Similarly, the exec switch must have the form\n"
 "    '<switch> command arg1 arg2 ...'.\n"
-"    The default values are 'xterm=xterm,-T,-e'.  Values for gnome-terminal\n"
-"    are 'xterm=gnome-terminal,-t,-x'.\n\n"
+"    The default values are 'xterm=xterm,-T,-e,--name'.  Values for 
gnome-terminal\n"
+"    are 'xterm=gnome-terminal,-t,-x,--window-with-profile'.\n\n"
 );
 
 /* XXX This badly needs some cleaning up in the error paths
@@ -93,12 +99,17 @@ int xterm_open(int input, int output, in
        unsigned long stack;
        int pid, fd, new, err;
        char title[256], file[] = "/tmp/xterm-pipeXXXXXX";
-       char *argv[] = { terminal_emulator, title_switch, title, exec_switch, 
-                        "/usr/lib/uml/port-helper", "-uml-socket",
+       char umlname[64];
+       char *argv[] = { terminal_emulator, title_switch, title,
+                        name_switch, umlname,
+                        exec_switch,"/usr/lib/uml/port-helper", "-uml-socket",
                         file, NULL };
 
-       if(os_access(argv[4], OS_ACC_X_OK) < 0)
-               argv[4] = "port-helper";
+       /* get the UML name */
+       strcpy(umlname, get_umid(0));
+
+       if(os_access(argv[6], OS_ACC_X_OK) < 0)
+               argv[6] = "port-helper";
 
        /* Check that DISPLAY is set, this doesn't guarantee the xterm
         * will work but w/o it we can be pretty sure it won't. */
---
0.99.9.GIT


Attachment: pgpQBHPxcwOsA.pgp
Description: PGP signature

Reply via email to