Category Archives: Programming

State of WCGBrowser

While I realize that wcgbrowser isn’t exactly the most exciting or groundbreaking piece of software ever created, I’ve been having fun improving it bit by bit over the last few months since I opened the source code.  If I keep hacking away at this pace, I’ll easily have the most feature-packed kiosk browser around, for whatever that’s worth.

Here’s a quick rundown of new features, if you haven’t been watching the git logs closely:

(more…)

KiLauncher and Qt Stylesheets

The default theme of KiLauncher

The default theme for KiLauncher. Ok, so it kind of looks like your gramma’s formica breakfast table from the 1970s.

I’ve been doing a lot of tinkering on my KiLauncher project over the last week or so, and it’s not only shaping up into a nice useful little application, but an educational opportunity as well

My goals for KiLauncher were to make it both theme-able, and configurable with plain-text files.  The natural mechanism for this (for the theme, anyway) was CSS, a format with which any self-respecting UI designer is familiar.  Fortunately, Qt supports a subset of CSS to style its GUI classes, sometimes referred to as QSS.

(more…)

New project:KiLauncher

Last night i uploaded a new project to my github page, KiLauncher.  It’s a fullscreen, static (as in not auto-updating) launcher menu aimed at kiosks, kids computers, corporate systems, and any other situation where an administrator wants to be able to both provide a simple interface and exercise some control over what applications are available to the user.

The software is still in the early stages, of course; I’m still working out the best way to structure the config file; yet it meets all its primary goals at this point and works just fine.  It’s built in python and QT of course, and after my positive experience using YAML in wcgbrowser, I’m of course using it for KiLauncher too. Unlike wcgbrowser, I don’t have a real-world use for this software yet, but maybe someone who does can give me some feedback on it.

WCGBrowser updated

I’ve been wanting for some time to update my wcgbrowser code to be python3 compatible, but I’ve been held back by the ambiguity surrounding the configobj library — in a nuthshell, the official project isn’t 3.x compatible, but there is a fork that is. Unfortunately the fork maintainer isn’t putting real effort into a release, and Debian won’t include it until they do.

So fed up with that, I got a wild idea last night to port the code to something more supported. I considered JSON and XML, but settled on YAML, since it seems to be reasonably hand-hackable, well supported, and handles about any data types I need.

I thought this would be a big deal, but surprisingly it only took about 20 minutes to get things working. I decided to keep going with my momentum by adding the remaining command-line configuration parameters to the config file and making sure the whole thing worked with python 3.

I also fixed some logic bugs in the process. Nice.

If anyone out there is actually using it, you can get the latest code on github.  Naturally, the conversion to YAML will break any existing configuration; sorry in advance.  To make up for it, I’ve fully commented the config file so it should be pretty simple to figure out how to port it over.  Also, bear in mind that it’s now looking for a config file called “wcgbrowser.yaml”, not “wcgbrowser.conf”.

Launching URLs with awesome’s Run command

Following on the heels of my google search hotkey in awesome, I decided to tackle expanding the functionality of the run prompt.  Awesome’s run prompt, by default, is basically a command-launcher; it chokes on any input that doesn’t represent an executable file.

I wanted it to behave more like the run prompt in other desktops, so that typing in a URL would open the URL in an appropriate application.

With help from Alexander Yakushev on the awesome mailing list, I managed to figure it out….

(more…)

WCGBrowser, meet world…

After conversing a bit with one reader of my kiosk how-to, I was reminded how tricky it can be to really lock-down a modern web browser for kiosk use.  It’s so tricky, that for my own needs I ended up writing my own browser.

Well, I figure it’s time to stop being stingy, so I am releasing the code to that browser under the GPL.  You can find it on github, here:

https://github.com/alandmoore/wcgbrowser

Contributions would be welcome, as the code has some stupidities and shortcomings.  It does work for my needs, and may work in a wide variety of situations, so feel free to make use of it.

I will, of course, appreciate code contributions from those so inclined!

RIP Dennis Ritchie

Was sad to see that Dennis Ritchie died this week.  Between creating Unix and C, Dennis’s influences on modern computing are probably second to nobody.  Here’s a pretty good writeup on him:  Remembering Dennis Ritchie, Creator of the C Programming Language and UNIX Co-Creator.

Less blogging == More coding

So, the blogging has slowed a bit, but that’s a good thing. Yes, Episode IV of my “Reviving your old PC” series is in progress and on its way. You gotta wait for quality, folks.

But last night I started and interesting new project that took over my brain and had me up most of the night. It’s like this…
(more…)

« Previous Page