Display remote X session (complete desktop) in one client X window

1,085

It's possible to have this if you launch a second X11 server in a "single window" mode. (In other words, exactly like you're doing it on Windows.) Use Xephyr or Xnest for this:

Xephyr :42 &
DISPLAY=:42 ssh -Y host

The X11 server determines how windows are displayed: you can run X11 fullscreen, you can contain the entire X11 screen within a single window of an already-running GUI, you can make X11 windows integrate to the already-running GUI. XWin and Xming have all three modes, while Linux has Xorg, Xephyr/Xnest and things like Xpra for each mode.

On Windows, the default GUI is only accessible through Windows API, so a X11 server needs to be started separately – in this case, you're starting Xming, in a "single window" mode.

On Linux, X11 is already running full-screen and ssh just connects to it. If you want to contain some programs to a single window, you also need to start a X11 server in a "single window" mode – only instead of Xming they're called Xephyr or Xnest.

Share:
1,085

Related videos on Youtube

Shashi Ranjan
Author by

Shashi Ranjan

Updated on September 18, 2022

Comments

  • Shashi Ranjan
    Shashi Ranjan almost 2 years

    I have multiple xsd schema file which contains multiple/common duplicate xs:element / class entry. I tried them converting into classes using following lines in pom.xml

    <build>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxb2-maven-plugin</artifactId>
                    <version>1.6</version>
                    <executions>
                        <execution>
                            <id>schema1</id>
                            <goals>
                                <goal>xjc</goal>
                            </goals>
                            <configuration>
                                <schemaDirectory>src/main/resources/xsd/schema1</schemaDirectory>
                                <schemaIncludes>
                                    <include>schema1.xsd</include>
                                </schemaIncludes>
                                <packageName>com.schema1.rest.stub</packageName>
                            </configuration>
                        </execution>
                        <execution>
                            <id>schema2</id>
                            <goals>
                                <goal>xjc</goal>
                            </goals>
                            <configuration>
                                <schemaDirectory>src/main/resources/xsd/schema2</schemaDirectory>
                                <schemaIncludes>
                                    <include>schema2.xsd</include>
                                </schemaIncludes>
                                <packageName>com.schema2.rest.stub</packageName>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    

    While running with only one execution tag I am getting classes successfully. But when I include two or more than two schema or execution tag, I am able see only the classes created for last schema "schema2" and not for "schema1".

    While running in the command line logs, I can see the classes are getting generated for both of the schema. But the resultant is deleting the older package and recreating it. Basically I am having only classes for the last schema only and not for other schemas.

    How I can resolve it?

  • Uwe
    Uwe over 12 years
    Thanks. Xephyr works as expected. I will try out Xpra as well.