Installing Openbox on Foresight Linux

My friend Og Maciel originally introduced me to Openbox a while back and I’ve been using it ever since. I love the lightweight feel, the ability to customize and the center around having NO icons on my desktop.  I don’t feel cluttered when I work! Today, we’re going to go over installing Openbox with some added tools.  This tutorial is tailored for Foresight Linux but the guide may very well serve other distros as well.

What is Openbox?

From the Openbox homepage, “Openbox is a minimalistic, highly configurable, next generation window manager with extensive standards support.”  From using it, I often think of it as fluxbox-like with the benefits of being able to dip into Gnome or KDE for the items that I want to use.  Your desktop will then run with speed and simplicity using only the elements you want to use with it.

So…Let’s get Started…

This How-To will assume that you’re running Foresight Linux, you’re logged into Gnome and that you’re familiar with conary, the package manager for Foresight.  First and foremost, install openbox:

[devnet@lostlap Desktop]$ sudo conary update openbox obmenu obconf

This installs the needed components to run Openbox on your system. Openbox is minimal by default though so if you login to the environment now for the first time, there will be no taskbars, nothing…just a large blank area for you to work with. We will need to install some extra components to give a bit more functionality. If you’d like a panel menu, I recommend using tint2. I used to use pypanel which is a small panel written in python but this panel is no longer developed.

There are other panels that are packaged with openbox in mind for Foresight; fbpanel is available, which is a very fast and functional menu bar. I like lxpanel also, which is fbpanel with some easier configuration options. For a full list, please see openbox documentation. For our purposes here, we will install tint2:

[devnet@lostlap Desktop]$ sudo conary update tint2

Now we need to copy the default configuration file for tint2 so we can build our panel to our liking.  You’ll have to create the default path for the tint2rc configuration file.  To do this and copy the config file:

[devnet@lostlap Desktop]$ mkdir -p ~/.config/tint2/
[devnet@lostlap Desktop]$ cp /etc/xdg/tint2/tint2rc ~/.config/tint2/

Now tint2 has a configuration file in place and is ready for Openbox to start.

Let the Configuration Begin!

The hard part (install) is now out of the way thanks to the conary package manager. Now we need to configure Openbox so that it’s ready for us when we log out of Gnome. The configuration files will need to be copied to /home/user/.config/openbox.  Of course, this path doesn’t exist yet so we’ll need to create it like this:

[devnet@lostlap Desktop]$ mkdir -p ~/.config/openbox/

Visiting there now will show that there aren’t any files in this directory.  The file we’ll absolutely need to place there is autostart.sh. Other files that will be in here are rc.xml which is for obconf (openbox configuration) and menu.xml (openbox menu system).  We’ll copy menu.xml from a default copy there later.  The other file should auto-create when loading for the first time (rc.xml)

The autostart.sh file is what starts all of our services and our tint2 panel we just installed as well as setup our wallpaper and other items.  Instead of going through the options you can place in here, I’m going to share my autostart.sh to get you up and running quickly.  Please note that if you chose not to install fbpanel and use the gnome-panel or other panel instead, you’ll need to comment the pypanel line below and uncomment what you’ll be using:

[devnet@lostlap Desktop]$  cat autostart.sh
# This shell script is run before Openbox launches.
# Environment variables set here are passed to the Openbox session.
##############################################################
# Panel Section
##############################################################
# pypanel, my favorite panel for openbox
#(sleep 3 && pypanel) &
# Use the wbar Launcher if you would like.  Don't forget to install it before uncommenting
# wbar &
(sleep 3 && tint2) &

#############################################################
# Gnome Integration Section
#############################################################
# This section let's Gnome give us some of its desktopiness
gnome-power-manager &
nm-applet --sm-disable &
/usr/libexec/gnome-settings-daemon &
gnome-volume-manager --sm-disable &
gnome-keyring-daemon &

###########################################################
# Other Add-on's for Openbox
###########################################################
# Make your wallpaper restore to last setting using Nitrogen.
nitrogen --restore &
parcellite &
volumeicon &
################################# End ###################

Download my autostart.sh

To create the menu system file for openbox, we’ll copy from the default installation to our .config/openbox directory (so we can use obmenu…otherwise, that command will give us an error) so use the following command in a terminal:

[devnet@lostlap Desktop]$ cp /etc/xdg/openbox/menu.xml ~/.config/openbox/

Now you’re ready to login and reap what you have sown 🙂 Logout of Gnome and change sessions in GDM to Openbox.  Notice that your tint2 panel starts up and has the gnome applications we recorded in the autostart.sh file above running and docked! You can add more options to your autostart.sh file and you can also edit tint2rc (in your /home/user/.config/tint2 directory) to store settings for your panel.

I’ve Installed and am Running, Now What?

Now you get to customize the Openbox menu with your favorite applications. Menus are activated by right clicking anywhere on the desktop. There are a few default applications…I choose obconf right away so that I can choose a theme I like and increase the text size since I’m using a high resolution. After that is done, I right click for the menu again and go to applications >> xterm. When the terminal pops up, I type obmenu. From there, I’ll be able to edit my right click menu.

Now instead of entering obmenu in a terminal each time, let’s add it to our right click options. In the obmenu window that you opened in the last paragraph, expand the Openbox 3 option. Find obconf and highlight it. Click ‘new item’ and add obmenu for a label, execute for action, and obmenu for Execute. This will add obmenu to your right click options so you don’t have to open a terminal each time to do things. You can also customize any of the items you find in applications…I put a few things I normally need such as thunderbird, firefox, gnome-terminal, etc. Feel free to add whatever you need…you can have many submenu’s . It’s setup is pretty straightforward.

Nitrogen, the wallpaper manager, requires a small tweak as well to get working. What I did was create a /home/username/Photos/Wallpaper directory and then loaded it up with my favorite desktop wallpaper. Good places to go for cool wallpapers are desktopography.com and vladstudio.com.  Next, install Nitrogen:

[devnet@lostlap Desktop]$ sudo conary update Nitrogen

After your first login, you’ll need to add a menu entry using obmenu to call the nitrogen browser. So create the menu entry and the action you call is:

nitrogen /home/username/Photos/wallpaper

Of course, replace ‘username’ with your users name.  This will allow you to open up all the wallpaper photos inside of that directory.

So What Have we Done?

Today, we’ve installed Openbox on Foresight Linux. We’ve given it a tint2 panel so we have a place to dock applications and we’ve customized the Openbox right click menu and added a wallpaper program called Nitrogen. Hopefully, this shows you the customizable features of Openbox and also shows you the speed that Openbox operates at. It’s a very minimalistic environment, yet one that can be very powerful.

Installation Notes of Interest

tint2

Tint2 is my newly crowned favorite panel for openbox.  It’s lightweight and is able to be configured in so many ways.  I added the sleep command inside my autostart.sh to make sure that the desktop is loaded before the tint2 panel tries to load…mostly, this is due to network manager wanting to animate while the panel loads.  This isn’t as much problem with tint2 as it is with pypanel (see below).

pypanel

Some things I’ve noticed when running openbox…network manager has problems with pypanel. I added the sleep command inside my autostart.sh and this is much better now…but there may be similar problems with network manager. It’s really NM searching for a network and it causes the panel to flicker a bit. Not a real show stopper.

Gnome-panel

Gnome-panel running inside openbox causes a few errors to pop up when I login. This could be due to the fact that I’ve started things in my autostart.sh out of order…I’m also not all together sure what is causing these errors. The problem seems to be with the docking area of gnome-panel as when I minimize programs they are not docked. Easily fixable, but annoying nonetheless.

Alternative Panels

There are quite a few alternative panels out there.  Fbpanel is one.  Perlpanel is another.  Fbpanel and lxpanel are available in the Foresight repositories. You can also add other launchers like wbar if you so desire.

Screenshot

Openbox on Foresight
Openbox on Foresight

Boxee is Changing the World

Television and Movies shape reality.

Just look at this medium over the past few decades and you’ll always find a TV series or movie that is a glass reflection of what is happening in the real world.  Movies and TV have the power to elicit strong emotional responses (i.e. The Notebook_or_insert_another_chick_flick_here) , invoke the ire of opposing groups (i.e. Expelled: No Intelligence Allowed), and even inspire people to unite under a common goal.  Anything that powerful and influencing with the reach that moves and TV have is a force to be reckoned with.

Stagnant Development and Stagnant Thinking

When development on something stagnates and no further advancement happens, often times that technology is abandoned.  An example of this is how voice-over-IP is changing how we do phones.  With Skype, Vonage, Google Voice, asterisk, and other amazing services the consumer is innovating while phone companies flounder.  Soon in the future we will see phone companies change to become absorbed by ISPs.  The same is true of Television companies.  With the onslaught of new media on the web and the ability to stream video from point A to point B, conventional media producers are being forced to become innovative to stay relevant.  The problem is that they don’t want to innovate.  They’d rather sit back and let the old way they operate things be the ONLY way they operate things.  A prime example is NBC’s fall from grace; from first to worst with no sign of improvement.  Time and time again they prove that they don’t “get it” at all…even up to NBC CEO Jeff Zucker saying that Boxee is stealing content from Hulu when they play videos…using this logic:  Opera, Safari, Firefox, and any web browser is “stealing” content by visiting Hulu.com and playing videos…because Boxee uses Mozilla Firefox to play Hulu’s content.

When big television finally gets this…they’ll get on board and they’ll be seen less negatively and more positively.  The first Television company to  fully partner with Boxee to offer full episodes will win.  What does winning mean?  It means that the PR exposure will be such a huge shot in the arm that the company will benefit across the board.  It also means that they get rich metrics on what people are watching, how often they watch, and when they are watching…all without even needing a Nielson ratings.  The first company to do this, in my opinion, will be the company all other broadcast corporations will chase.

How Boxee Harnesses the Power of Movies and TV

Boxee tames that reality shaping force for you.  Boxee changes the way you are entertained.  By changing how something is used or consumed, you change all those the thing reaches.  Instead of TV being brought into your home…YOU are bringing TV into your home on your terms.  Studios need to know that to gain control over something you sometimes have to give up control.

Boxee crawls the web for you and brings all television it can find (think CBS, ABC, NBC, Hulu, Netflix, clicker.com, tv.com) into a single interface.  You play your show in Boxee and can even rate it and/or share it.  People can subscribe to your boxee feed and know what you rated a movie or television show and perhaps watch it themselves.  However, the real power of boxee is the single interface.  This gives people the ability to launch a single program that can find TV for them.  The entry barrier to watching TV online is thus lowered.  That means that Boxee is a POWERFUL tool for television and movies…one not being utilized by those markets.

Boxee is taking a cross platform approach to things as well…it’s freely available for Linux, Windows, and Mac platforms.  This allows Boxee to be something EVERYONE can experience.

Boxee IS changing the entire world, one television at a time.  If broadcasting corporations don’t recognize this and work with Boxee…I’m afraid they may be left out in the cold during this change.  What do you think?  Does Boxee have the power to change the world?

If you’d like to know more about getting started using Boxee, please visit

http://www.howcast.com/videos/310743-How-To-Get-Started-With-Boxee

Unity Linux Theme Refreshes

I’ve been pretty busy lately with theme design for the Unity Linux project.  The following pages were updated:

  1. Unity-Linux.org
  2. Planet.Unity-Linux.org
  3. A new forum theme called SMFPress @ forum.unity-linux.org

Uniformity was the key ingredient to the stylings.  I’m trying to match everything to the front page theme at the main site page.  Using the color pallete from that site, I worked on creating a theme for our forum and then gave planet unity a facelift as well.  We’ll test out the planet capability a bit longer (see how updates go) before we ultimately conclude to use it.  However, the forum and main site are finished products.

Let me know if you find any bugs or have any problems with the theme.  If all goes well I’ll start on a wiki theme for our documentation site 🙂

Adding Color to Bash List Command Part II

I previously blogged about how to add color to the ‘ls’ command utilizing an config file and alias.  I then stumbled across a nugget of wisdom from a Foresight Linux user on the developers mailing list who gave a handy command that remedies some problems with missing color in a terminal.

On some distributions, the system-wide /etc/DIR_COLORS* files are removed or not present.  This results in no colors being given inside of a terminal when looking for color directories and filenames.  If you find yourself in this boat, try the following command to re-populate this setting:

devnet-> cd ~/
devnet-> dircolors -p >.dircolors

This should create a default profile for colors for your session if it hasn’t been done or was accidentally removed.  For more information on the dircolors command try ‘man dircolors’.  Please also note that dircolors command uses the environmental variable LS_COLORS to set your session.

For more information on LS_COLORS and how it pertains to the terminal/shell/cli/prompt, there are a few blog posts that do an excellent job explaining here, here and here.

Foresight and Fedora, ClarkConnect Becomes ClearOS

Foresight and Fedora (aka “boots, a fedora remix”)

Last week it was reported by LWN and a few other Linux news sites that Foresight Linux may employ a change of direction…that is, create a spinoff project that places the Conary package manager onto a Fedora Linux base. Michael Johnson, Director of Operating Systems at rPath (which maintains the Conary based package manager Foresight uses) summed up his post nicely:

“I think that Foresight needs to be based on an upstream distro that is regularly fully updated and refreshed, and that is maintained by distro specialists with experience and expertise that is just plain missing within the Foresight development community. That distro needs to be imported into a Conary repository; that will allow Foresight to continue to use Conary to manage the process of building a set of consistent modifications relative to that upstream distro, providing a true rolling release. That would allow Foresight developers to concentrate on only the problems inherent in integrating the very latest development source against a recent base that is relatively close to the basis on which the software is maintained.”

Michael also said that it made sense to do this based on Fedora because Foresight is very Fedora-like in filesystem and the way that things are setup and handled in the guts of the operating system (paraphrasing from what I remember of IRC discussion).  Also, in a comment on the LWN thread, Michael states that Foresight, if spinning off with Fedora, would still make use of “Conary, rMake, rBuilder, rBuild, and other rPath technology” and would still use Conary as its package manager which means…it wouldn’t leverage rpm and yum to keep things up to date on it.

An independent project that Foresight maintains sounds like a HUGE undertaking…(even though I’m assured repeatedly by developers from Foresight that it won’t be because it’s “automatic”).  I’ve seen automagic things in the past that won’t cause a lot of work turn out to be quite a bit of work-that-is-not-work.  I find this especially odd when the main complaint is that there aren’t enough OS specialists around…it sounds a bit too large to undertake.  This project actually sounds like it possibly would usurp Foresight Main (Foresight Proper…Foresight Linux…whatever you call it) which is based on the stable rPath Linux and not on cutting edge Fedora like the “boots remix” would be.  Therein lies the problem.  The”boots, a fedora remix” would consistently be ahead of Foresight in development if the project is started and makes progress.  Foresight will continually lag behind it.  Can a 100% guarantee be given that Foresight can snipe packages from “boots, a fedora remix” that would always work?  If not, what does Foresight gain by maintaining the project/spinoff?

I think Foresight won’t be able to maintain an independent project based on Fedora along side of the main Foresight Linux project.  Sure, they may be able to at first…but then what happens when things break?  Is one person responsible? 2? more than 2?  I think instead of having a separate project, Foresight might want to completely base off of Fedora.  This topic is extremely unpopular with Foresight developers though.

Whether or not Foresight adopts “boots a Fedora remix”  is yet to be decided.  It will be set before the Foresight Linux Council at their next meeting.  Hopefully, they take into consideration the amount of manpower a separate project like this would encompass and maybe consider the benefits of adopting Fedora completely as a base for Foresight.

On a similar note, António Meireles, a lead developer for Foresight Linux, has posted what direction he would like to see for Foresight Linux 3…the future major release for Foresight.  With improved underlying architecture that is more inline with Fedora…he may be looking along the same lines that my post here is.  Whatever the case may be, it’s obvious that Foresight is starting to show a flurry of both interest and activity which is a benefit to it.

So where does this leave Fedora?  They’ll benefit from having a lot of knowledgeable developers in Foresight and a few engineers from rPath working with a Fedora based project.  Foresight has a great upstream relationship with the projects it encompasses…like Gnome and rPath.  I would imagine this continued professionalism and cooperation will continue should Foresight base on Fedora.

ClarkConnect Becomes ClearOS

In other news, some of you may or may not know that ClarkConnect will become ClearOS and will be completely open source.  The Clear Foundation will be sponsoring the development of ClearOS which is ClarkConnect re-branded with improvements.  See the full announcement hereAlso, a Forum Announcement Here.  This brings a lot to the table including renewed commitments to documentation, community, and the operating system as a whole.  The change is set to happen in the late part of 2009.

So what does this have to do with Yet Another Linux Blog?  A few years ago, I wrote a review of ClarkConnect 3.2 for home users.  It was well received and still gets many hits even today.  Since I’ve used ClarkConnect since version 2.1 and continue to use it today for my home network…who better to take a look at how ClearOS will measure up?

With this in mind, I contacted the guys over at the Clear Foundation and they agreed to let me blog a bit about some of the changes and improvements that will be happening with ClearOS over the next few months.  So look for more exclusive information from ClearOS in the near future.  They’ve also asked if I’d be interested in helping out with some community endeavors they will have going for ClarkConnect and ClearOS users.  Exciting stuff!  ClarkConnect has really needed this shot in the arm for about the last 2 versions…they lost a couple of really good websites with FAQ’s on them.  It’ll be great to get the community involved with this fantastic Home Server distribution.

Overheard at the Water Cooler

icecubedHeard at the water cooler recently in my almost all Windows workplace was something that took me by surprise.  We have a couple of highly trained individuals here in Networking.  We’re a Cisco shop, so if you know how confusing that can be, you know that not everyone can just jump right into one of those networks and know what they’re doing.  These individuals were having a conversation outside of my cube so I didn’t inject myself into the conversation.  But, I did ask myself, is this what Linux and Open Source is up against?  If so, we still have a long way to go.

It seems an external site was attempting VPN access into our corporate network.  The problem the external site was hitting was that they couldn’t initiate a session FROM their network…but someone from our location could initiate a connection TO their network.  They used a Linux box to provide them VPN, Firewall, and proxy services.  Now, any Linux admin worth his or her salt would have immediately known that being able to VPN back into a site but not VPN out of a site means that the firewall doesn’t have the right ports open and/or forwarded.  This should have been an easy fix…but the guys at this external location evidently didn’t posses this knowledge.

Instead of blame falling on the improper configuration, open source was blamed as a whole.  My colleagues stated that those “free tools people use never stack up to paid ones” and that “you get what you pay for…and if you don’t pay for it you don’t get it”.  So according to these guys:

  • Free = poorly designed, less than good software
  • Paid = better designed, wicked awesome software

Which of course, you and I know is a bunch of hooey.  And this is what some of the smartest guys I’ve had a chance to work with state about Linux and open source.  Makes me really wonder if they know their Cisco stuff is often times Linux and open source as well.  I guess maybe I should tell them sometime.  Either way, Linux still has a long way to go to garner the acceptance it should have.

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.