Focusing on LXPanel

Having played around with a lot of panels, I have decided that the main panel for this project will be LXPanel. Although I started off with Fbpanel and I love its flexibility it has let me down on one or two major points. For those that don’t know, LXPanel is a fork of Fbpanel, so they are very similar. Here’s the pros and cons of each as I see them:

GUI – LXPanel has a nearly full featured GUI and very little editing of the config files is needed. For the end user, this has to be a good thing. The GUI in Fbpanel is somewhat underdeveloped.

Transparency – LXPanel supports transparency throughout all plugins. In Fbpanel, transparency doesn’t work in the taskbar and text clock plugins.

Menu – LXPanel reads the XDG file and then updates the menu according to the .desktop files on the system. This causes a problem in Unity as it uses the Mandriva specification which has annoying nested menus that I can’t stand (especially the ‘more’ menus), so I am going to have to edit the menu file. Fbpanel also reads the .desktop file but then creates a menu according to standards, so ignoring the file – this results in a much more sensible menu layout.

However, neither panel has an applications menu editor. You are down to editing .desktop files if you want to change the submenu or hide an entry. There are a lot of .desktop files that I didn’t want in my menu, so I had to add NoDisplay=True to each .desktop file and save in ~/.local/share/applications.

Both panels theoretically support menu names eg the Gnome style “Applications”, “Places” and “System”, but I couldn’t get names to show in the most recent release of Fbpanel.

Both panels support custom menus and menu entries.

Launchers – difficult one this as both panels support application launchers on the panel. In Fbpanel, the launcher can be a combination of any icon, any command and any tooltip. However, it must be done by editing the config file. In Lxpanel, the launcher has to be a .desktop file. This is great for the end user to add a launcher using the GUI, but only as long as the application is in the menu. If you want a custom launcher for a custom command, then you need to create additional .desktop files.

Plugins – LXPanel probably wins this as all the plugins support transparency and are better developed eg there is a volume slider plugin. However, there is one great plugin for Fbpanel which hasn’t been ported to LXPanel and that is the Genmon plugin. Genmon displays the output of any bash command on the panel.

Profiles – both panels support profiles. In LXPanel the profile name comes from the directory name within which config files for each panel required are kept. In Fbpanel you can call up any combination of panels from individual config file names. The Fbpanel way is slightly more flexible, but there’s not a lot in it.

In a way I feel a bit sorry for the Fbpanel developer. For a long while it was one of the best standalone panels around, but the LXDE project have taken it and added more weight behind it. Rather than improve upstream, they’ve forked the panel and created a slightly different syntax, as such profiles from one, won’t work in the other. So thanks for everything Fbpanel, but the future lies with LXpanel, at least for this project.

This entry was posted in Linux, LXPanel. Bookmark the permalink.

2 Responses to Focusing on LXPanel

  1. Drew Leske says:

    Hi, I moved from XFCE to openbox/fbpanel to openbox/lxpanel and am finally at peace, but I too lamented the lack of a generic monitor plugin like genmon. Eventually I created one. If you are still interested let me know and that’ll motivate me to get it cleaned up for more widespread use.

    • Hi I know that this is many many years later and the odds of a response are very low, but I’d be very interested in the genmon plugin you made for lxpanel, even if you didn’t clean it up. If you do happen to see this please link me to your project as I’d really like to use it. 🙂

Leave a Reply

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

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

Google photo

You are commenting using your Google 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 )

Connecting to %s