Borderless transparent background processes in Fluxbox
I posted this to the tutorials, but haven't seen it pop up there yet, but it's possible I screwed up and it never got submitted...so I figured it's probably best just to put it on the forum. It's not overly technical, but sometimes it's nice to have all the info in one place.
Here's a quick step by step guide for starting up a transparent borderless process when you start fluxbox, placing it in the same location every time, and having it follow you across desktops without getting in the way of other applications. aterm You could use aterm or eterm, but eterm is a bit more bloated than I prefer, and Iike the way that aterm simulates xterm in its lack of menus. So, for this set of instructions, we will detail setting this up with aterm. You can download the aterm source from: http://www.afterstep.org/download.php Once aterm is installed, we will want to find where aterm was installed to. To do this, we'll run: Quote:
Quote:
as root, run: Quote:
Make sure that the program is executable by all users by running as root: Quote:
Quote:
Deco: Tells fluxbox what decorations to give. We're telling it we want none, including borders. sticky: We're telling it we want the application to persist across desktops. With this option, no matter which virtual desktop you are on, the application follows. Position: This tells it where to start. "0 0" would be the top left corner, and every positive number moves it's position by Height and Width. To find your desired location, start aterm and drag it to the desired position. Before releasing the window, fluxbox will display an X Y coordinate of it's current location. Use this value. I have mine loading in the upper right corner. This option supposedly also supports absolutes such as UPPERRIGHT, LOWERRIGHT, etc, but I was unable to use these values to change the location. If you wish to play with it, you might try different values of lower case, or capitalizing the first letter. Layer: 12 tells it that we want it to be at the desktop level. This means that new windows will load over the top of it. Possible values are as follows: Quote:
Tab: This tells fluxbox that when we cycle through applications using the alt-tab functionality, we're ignoring this application. Now...remember how I promised I'd explain why we copied the program? The reason is simple. Every time this application loads, it will receive these properties. And if you're like me and use aterm for most of your terminal needs, you don't want them all borderless, hidden behind browsers, and following you across your desktops. So now, we need to add eek_a_unicorn to our ~/.fluxbox/startup file. This will load our program when fluxbox is started. You will want to add the following line: Quote:
Quote:
-bl Tells it we want it to be borderless. You're probably asking why we need this if we specified it in the apps file. Or why we even bothered with the apps file if we can declare it here. The answer is that in testing, I never bothered to take this out while editing my startup file. When loading the program at the start of fluxbox, it appears that fluxbox overrides this command and assigns a border regardless of your specification when starting the program. -tr Tells it we want our new window to be transparent. +sb Tells it we want no scrollbar. Alternatively, -sb forces a scrollbar -fg Specifies the foreground (font) color. In my case, I want it to be darkgray so it is barely visible against the background image. -sh Indicates the amount of shading you wish to have against the background image. This is helpful if you have a background with a lot of colors, and wish to darken it while leaving the image visible. If this is the case, use a brighter font such as white, light grey, green, etc. This option accepts values from 0 to 100. I have found 60 to be a comfortable level of shading. -e This tells it what command to load. In my example, I'm running top to monitor the most resource intensive programs. If you have other scripts you wish to run, you can do so here...including no script at all by omitting the -e option. It is worth noting that the -e must be declared last, or it will not load correctly as it will attempt to run all remaining options as part of the command called by -e & The ampersand symbol tells it we want to run the process in the background. If you do not do this, fluxbox will not start correctly. If you've done everything correctly, your program will load at the correct position, follow you around like a puppy dog, and won't get in the way of your other programs. Also, unlike a wolf kept as a housepet, it won't claim ownership of your fridge by urinating on the front of it because he knows that's where you keep his chicken. A picture of the final result: http://farm4.static.flickr.com/3043/...ccf54b00_o.jpg |
All times are GMT -5. The time now is 08:07 PM. |