Integrate the Terminal with the Desktop On Linux

Melanie Gross
Jun 4, 2011
Updated • Dec 15, 2012
Linux
|
12

Over the years there have been all sorts of fun ways to edit one's Linux terminal window. In addition to editing all the boring old things like text color and scroll settings, people have edited their headers, terminal behaviors, and even integrated an entire terminal window into their background.

Many people are fond of that last one, but it isn't really all that easy to do. Most people employ the help of little programs for things like that, but the software used to embed the terminal is rarely updated to new versions of various distros.

One, however, has stayed intact, and this tutorial will help you through the process of putting the terminal right where we all need it – on the desktop.

First of all, you need to create a new Terminal profile that will run under the parameters you will set later. Open up your Terminal, then go to File, New Profile, type “Transparency” (without the quotes) as the title, and then click Create.

This creates the profile necessary to continue. You now need to fix a few settings. Under Title and Command, change the initial title to Transparency and select Keep Initial Title in the drop down menu. Select transparent under the Background tab, and set it to be as (you guessed it) transparent as you like. Some people prefer completely clear, but make sure the font color will stand out against your existing desktop background.

Next you want to download the program that will make all this possible. In your terminal, type:

sudo apt-get install devilspie

Next, you need to create a configuration file for your profile:

mkdir ~/.devilspie
gedit ~/.devilspie/Transparency.ds

Then take the following piece of code and pasted it in Transparency.ds:

( if
( matches ( window_name ) "Transparency" )
( begin
( set_workspace 4 )
( undecorate )
( skip_pager )
( skip_tasklist )
( geometry "890x694+178+58" )
( below )
( pin )
( println "match" )
)
)

Almost there! Now all you need to do is make sure that your computer opens a Terminal window in this manner each time it boots. Under System Settings open Startup Applications. First, click add, and under command, type:

devilspie -a

Then click enter. Click add again, and under command type:

gnome-terminal –window-with-profile=Transparency

That's all there is to it. Reboot your system, and when it comes back up you should find a handy terminal window built right into your desktop, ready to work at whatever you desire.

If the configuration listed here does not quite work for you, experiment with the code you pasted in Transparency.ds under “geometry”. Those are the parameters the system uses to place the box. Of course, you can always fiddle with the color and transparency settings assigned to the profile by going to the Terminal and clicking on Edit, then Profile Preferences.

This neat, quick little quick little fix will be of interest to your Linux inclined friends and make Windows users wonder why they can’t do the same thing.

Advertisement

Previous Post: «
Next Post: «

Comments

  1. A said on March 3, 2020 at 1:01 pm
    Reply

    gnome-terminal in my system does not have the profile name as the window name.
    It has the bash prompt as the window name.
    With this, it works perfectly.

    Use

    xwininfo -tree -root |grep -i ‘shell\|termin’

    to get the current opened terminal windows.

  2. srichakradhar said on June 24, 2013 at 12:36 am
    Reply

    Can I open windowed terminals while using this desktop terminal?
    How to remove the desktop terminal? ( kill ?)

  3. SubgeniusD said on June 4, 2011 at 7:47 pm
    Reply

    Ok – thanks Joe. Tip was not posted when I came here.

  4. SubgeniusD said on June 4, 2011 at 7:42 pm
    Reply

    FTA – “and make Windows users wonder why they can’t do the same thing.”

    I keep a command prompt shortcut in my Win 7 taskbar and open it often for various uses but I wonder how this could be accomplished with Win 7 Pro.

    Perhaps I’ll pose this to Ed Skoudis who comes up with some fascinating Windows command line hacks.

    http://blog.commandlinekungfu.com/

  5. Joe said on June 4, 2011 at 5:51 pm
    Reply

    Not only can you do this on Windows, but it might even be easier!

    1. Download Console2 Beta from Sourceforge https://sourceforge.net/projects/console/ (there’s a 64-bit build available, if you’re running 64-bit Windows)

    2. extract the zip file to a folder of your choice

    3. run Console.exe

    4. Right click on the background of the window, choose Edit -> Settings

    5. On the “Appearance” tab, check “Initial position” and set x and y both to “0” (unless you want to customize the location of your terminal on the desktop), and set Z order to “Always on bottom”. Instead of checking “Initial position”, you can use the docking settings to align your console on your screen. I have my Windows taskbar on the left side of my widescreen monitor. Setting the initial position puts my console behind the taskbar, but docking it to the upper left aligns it next to the taskbar.

    6. On the “More…” tab, in the “Styles” section, uncheck “Caption”, “Resizable”, “Border”, “Taskbar button”, and “Tray icon”. In the “Controls” section, uncheck “Show menu”, “Show toolbar”, “Show status bar”, and “Show scrollbars”.

    Note: The “Show scrollbars” setting is buggy for me – the setting doesn’t seem to be saved, so there’s a scrollbar on my desktop when I start Console2. You could get it to line up along the right edge of your screen by either docking it to the upper right, by changing the x value of the initial window position, or by increasing the number of columns (on the “Console” tab of the settings). You can go into the settings each time Console2 starts, check the “Show scrollbars” setting, click “OK”, then enter the settings again, uncheck it, and click “OK”.

    7. Go to the “Tabs” tab in the settings. Make sure that the default “Console2” tab name is highlighted, then switch the lower pane to the “Background” tab. Check the “Wallpaper” radio button, and leave the tint opacity at 0.

    You can’t accomplish the same thing with the window transparency settings because they apply to the entire window, including the text.

    8. Exit and restart Console2. You now have a console embedded into your Windows desktop. Put a shortcut to the app in your startup folder, and it’ll be there every time you start your computer. In addition to the scrollbar issue that I mentioned above, you will also cover up your desktop shortcuts, unless you place them to avoid the console window or you tweak the x and y window position of Console2 to avoid your icons. Docking the Console2 window to the right side of my screen gets me around both of these problems.

    Besides allowing great appearance tweaks, Console2 also provides tabbed console windows, and you can create tabs that interact with an alternate shell like Windows Powershell, or even bash, if you have Cygwin installed.

    1. Martin Brinkmann said on June 4, 2011 at 7:37 pm
      Reply

      Thanks Joe, nice tip.

  6. cypherb0g said on June 4, 2011 at 4:45 pm
    Reply

    practically this thing transforms your desktop into a terminal, but what happens if I have folders on your desktop how do I access them from the GUI?

    1. Martin Brinkmann said on June 5, 2011 at 4:47 pm
      Reply

      Icons behind the terminal can be addressed in two ways. You can either adjust the geometry of the transparent window to make sure it only covers areas of the desktop free of icons, or you can right click and close the terminal window to access them. The former is preferable, as the latter takes away your custom terminal until you restart next.

  7. phanindra said on June 4, 2011 at 3:30 pm
    Reply

    Its not working on Gnome3

    1. heero_yuy said on June 5, 2011 at 1:20 am
      Reply

      yea me too ! :(
      any suggestions? i’d love to see this working !

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.