Terminal on Your Desktop

If you have ever seen a screenshot of an ubuntu desktop created by a linux expert chances are it had a command line interface on the desktop.  To put the terminal on your desktop is really easy.

1. Create and Edit a Terminal Profile

Open Terminal. Applications -> Accessories -> Terminal
In Terminal go to Edit -> Profiles…
Click on ‘New
In ‘Profile name:‘ type DesktopConsole *NOTE: This is a very important; this will be reference later
Base on:‘ should then be set to Default
Create

In the ‘General‘ tab uncheck Show menubar by default in new terminals
In the ‘Title and Command‘ tab change ‘Initial title:‘ to transparentdesktopterminal *NOTE: This is a very important; this will be reference later
You can edit the options in the ‘Color’ tab on your own. I unchecked ‘Use colors from system theme‘ and changed ‘Built-in scheme:‘ to Gray on Black
In the ‘Effects‘ clicked on ‘Transparent background‘ and dragged the ‘Shade transparent or image background:‘ scroll bar to about 40%
In the ‘Scrolling‘ tab set ‘Scrollbar is:‘ to Disabled
There is no need to change anything in the ‘Compatibility‘ tab.

Close the ‘Editing Profile “DesktopConsole”‘ window and the ‘Profiles‘ window. Leave Terminal up and running though.

2. Install and Edit devilspie

First we need to install devilspie. We can do this in the already open Terminal window.
Run sudo apt-get install devilspie
Next we are going to make a devilspie directory (folder) in our home directory. It will be hidden. We will then make a DesktopConsole.ds file which will contain the configuration files.
mkdir ~/.devilspie
gedit ~/.devilspie/DesktopConsole.ds

In the DesktopConsole.ds file copy and paste the following code:
(if
(matches (window_name) "transparentdesktopterminal")
(begin
(set_workspace 4)
(below)
(undecorate)
(skip_pager)
(skip_tasklist)
(wintype "utility")
(geometry "450x350+795+605")
)
)

The only part of the code you will have to change is the geometry. This will change for each screen resolution. I have a screen resolution of 1280 x 1024 and my terminal is located in the bottom right corner. Here is the explanation of the geometry code.
(geometry "WIDTHxHEIGHT+HORIZONTAL_OFFSET+VERTICAL_OFFSET")

3.  Set it up!
We now have to set up the newly created Terminal to run on startup.
Open Sessions. System -> Preferences -> Sessions

Click ‘Add
Under ‘Name:‘ type devilspie (Transparent Terminal)
Under ‘Command:‘ type devilspie
Under ‘Comment:‘ type Makes the transparent terminal work

Click ‘Add‘ again
Under ‘Name:‘ type Transparent Terminal
Under ‘Command:‘ type gnome-terminal --window-with-profile=DesktopConsole *Note: double dashes before window
Under ‘Comment:‘ type A transparent terminal on the desktop

Make sure devilspie (Transparent Terminal) runs before Transparent Terminal. Restart your computer and you should have a beautiful terminal on your desktop. Ctrl + Alt + Backspace

Play around with your settings and color to create a beautiful and elegant desktop. Please take a look at the devilspie wiki for more commands for the ultimate in customization.

Bonus! Want to put Finch, the text-based messaging client based off of Pidgin, on your desktop? Follow the above instructions but name the window FinchConsoleWindow and add the following to your sessions: gnome-terminal --window-with-profile=FinchConsoleWindow -x "finch". Edit your devilspie or create a new one to match the new names.

5 thoughts on “Terminal on Your Desktop

  1. Shiny

    Ha, pretty sweet. I prefer to use mine windowed but thanks for the tutalage, I might give it a go in Debian. Just for fun.

    Reply
  2. Pingback: Ubuntu - Terminal within the desktop « Skarh

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s