I'm working with an api that requires an app to be started, the app runs a GUI on linux.
I need to punsh in some login information and then hide the app.
Is there a way I can go to the machine start the GUI and then hide it, log out, and have other users log in with out having the GUI shown, but still having the app running?
You can take a look at Xvfb http://en.wikipedia.org/wiki/Xvfb
it's a framebuffer version of X.
It will launch an X11 server without displaying it (useful with selenium for example)
Xdotool can send input to anyb xwindow, including xvfb
Related
Hi i tried in several ways to launch firefox by example at the beginning, obviously my machine enters automatically to ubuntu without ask for user or password, so i made a script like that : firefox url. And i put this script on cron with the parameter : #reboot + path of my script but it doesn't works, because firefox is not launched, is not only firefox i need to will able to launch as well gedit when ubuntu start, i hope that can i help me whit this.
By the way i have ubuntu 14.04
Thanks
Go to Startup Applications via dash
There, add firefox ...
You can specify the URL to open by writing the command:
firefox URL
This will open URL in the browser. No script needed...
you don't need a script for this.
Ubuntu has a GUI for managing startup applications called "startup applications"
Click the Search button at the top of the Unity bar
Search for "Startup applications" and press enter
In the GUI you can press "add" and enter a custom command of your choice
Also look at existing entries to see how it is done.
I need to run my Qt GUI application immediately when my linux system starts.
I do not need any other things apart from this Qt GUI application. No need of desktop.
Previously I have started daemo using update-rc.d command but I do not know how to start GUI and I do not have much knowledge about X11.
I went through net & found two links:
Running a Qt application at startup
This is telling to create desktop entry file for you... but as i do not need desktop.
And only want my GUI to run. So this is not the solution which i am looking for.
http://www.qtcentre.org/threads/28564-Qt-app-in-linux-startup
Here I am not able to understand what I have to do with /xinitrc.d.
And how my application GUI can start. Can some one clarify this point?
Can some one suggest what I will have to do to start only GUI application?
You very probably need some X window manager to run your Qt application, perhaps even some desktop environment (i.e. you want EWMH & ICCCM compliance), and you obviously need a running X11 server (usually Xorg). So you could manage to have some xinitrc for all that.
Notice that some session -or display- managers like lightdm can be configured to start some special sessions.
In all cases, you need a lot more than just your application to be running, and you certainly need to understand in detail what your Qt application really requires (mostly thru Qt libraries). Learn more about the X11 protocol. See also freedesktop.org.
If you're using lightdm Desktop Manager, then edit your /etc/lightdm/lightdm.conf file by uncommenting line
session-setup-script=
and immediately after equal sign (without spaces) add path to your gui application!
Save lightdm.conf file, and restart the system!
I have inherited an application that is launched at login time from my server's .bashrc. The application starts two gnome-terminals. If I am logged in with a gnome desktop, it works great. Two terminals open on the desktop.
Sometimes I kill the application and must restart it. Works great if I launch it by hand from a terminal on the desktop (causing me to have 3 terminals open).
However, if I telnet into the machine where the application is installed, as .bashrc executes I get all sorts of "cannot open display" errors.
Well, of course I can't, I'm not logged in from a gui interface, But a desktop IS running on my server and is logged in using the same ID! Why not put the terminals there?
So how do I say, in bash, "start this application and send its output to 1) the display where you are now, or, 2) the one currently up on the server?" (I assume that found by looking at the env var display?)
Ubuntu 10.04 64 bits. I telnet to the server to start the vncserver so I can access the aforementioned desktop.
Thanks,
It depends on the application exactly, but generally you simply export the DISPLAY environment variable and the application should start on the specified display.
eg:
export DISPLAY=localhost:0.1
xterm &
Some applications would also (or alternatively) take a --display command line argument - check into the specific options available for the applications you're using.
I have successfully started a vncserver and can connect to it through the browser via 111.111.111.111:5081.
It looks like it's working because I do see the Gnome cursor (X).
However, apart from the cursor I just have a black screen. No taskbar or anything. Right click provides nothing either.
Does anyone have any idea what I need to do to get the full desktop ? I have created a new user and wondered if there is any settings that need changing.
Thanks in advance,
Alex
Your VNC server is running, but there is nothing running in it. No window manager, no desktop environment (GNOME), nothing. The cursor you are seeing is a Xserver cursor, not a GNOME cursor.
That probably means you ran the VNC server directly without using some of the friendly wrapper scripts such as vncserver. For example, if you have tightvnc installed and you run Xtightvnc directly, that's what you'll get.
For example, I usually start a VNC session (or port 5901) like this:
vncserver -geometry 1024x768 :1
Alternately, you can use x11vnc to serve your existing X desktop (instead of starting a new one in the background).
I am running tests from phpunit using selenium. Since the tests take a couple of minutes proceed, I would like to switch to another desktop and do some tasks while the tests are running in the background.
However, since every test calls a new browser via selenium remote server, and a new test management window and a application window are started, these new windows do not appear in the desktop which I started the php tests from, but in my current desktop taking the focus away from the window I am working in.
How can I control that the browsers are always opens in the desktop that is in the background (where I start phpunit)? I am using Kubuntu i.e. the KDE Desktop.
Thanks for any suggestions!
This is probably a bit late, but for anyone reading this: When you launch your selenium RC server, you could try exporting to a specific display using the command:
export DISPLAY="somedisplay" && java -jar /path/to/selenium-server.jar
Using this, you could also export it to for instance an X virtual frame buffer (Xvfb), effectively running it in the background.