29 June 2009

Couple of weeks ago I had created a development blog. My english sucks, but I’m practicing. Anyway, currently there are only few bmpanel2 entries in that blog. If you’re interested in the bmpanel2 project, welcome!

2 June 2009

I suck at making videos. But anyway: http://www.youtube.com/watch?v=1bq_WLxeahY.

This is my first youtube video ever uploaded :) So.. The demo shows 3 simple features of upcoming bmpanel2: drag’n'drop tasks on taskbar, drag’n'drop tasks from taskbar to desktop switcher (move tasks between desktops), and drag’n'drop tasks out off the panel to kill them (close app). My english sucks too, just see the video :)

28 April 2009

Misterious screenshot is here.

What this is all about? Well, it’s a WIP (work in progress) bmpanel2 build. And as you can see, there is a plenty of things implemented. Desktop switcher, taskbar and clock are fully functional. There is actually one more type of a widget called "decor", but it’s not shown on the screenshot. Decor widget allows you to put any image on the panel. But it’s not the only thing hidden.

Here is a little summary.

Bmpanel2 is being built on top of four solid libraries. Cairo for rendering, pango as a text layout engine, xlib as a X11 communication utility and glib2 as a main loop implementation. It is still carefully written in pure C. Bmpanel2 has a new theme format and a completely redesigned internal structure, which allows you to create new types of widgets really fast. And there are also few notable things like drag’n'drop support, XDG conformance and settings file.

Even though it works already, there is a lot of things to be done. A proper systray implementation, correct composite and shaping support, documentation (which includes a man page, a theme tutorial and technical notes for programmers), web page, new pack of professionally designed themes, multihead support, etc.

And after all, it needs to be tested. So.. keep this address in your favourites and come back often, someday it will be released.

P.S. Sources are available on my public git repo which is located on my machine (browse sources here). However, they are not usable for mere mortals yet, go there only if you have programming interest.

7 March 2009

I have opened a bug tracker for my projects here.

If you still have bug issues with bmpanel, probably I had ignored them or completly had forgotten about them, please rereport them to the bug tracker. Anonymous bug reports are allowed, at least until spam will come out. In the bug tracker bugs will not get lost.

Direct open task link here.

13 February 2009

Exactly one year ago was the first commit of my very first open source project - bmpanel. And now it’s a time to say something about it’s future. I was thinking about it for some time. There are my thoughts:

  1. Bmpanel requires a complete rewrite from scratch. I did a few critical mistakes and I will never fix them. Not because I can’t, but I just won’t.

  2. I thought about a lot of innovations for a new bmpanel, but these were evil thoughts. Bmpanel should continue to be small, simple and elegant.

  3. I thought about libraries that I will use in the new bmpanel. The panel really needs a good, solid base. I decided to use gdk (installed in most distributions implicitly by gtk) and glib (generally a part of gtk, but actually qt links to it too). GDK for X11 interaction and for drawing, glib for mainloop. Even though Qt becomes LGPL, I don’t believe in C++ and my current choice is GTK-based desktop. Or maybe I will use the GTK itself, but look and feel definitely remains the same.

  4. Main idea of the "rewrite" project: Make a simple, but useful panel as best as I can. Faithfully follow standards. Be fearless against bugs.

  5. And well.. That’s it! It’s just words for now, the big part of these decisions is HARD WORK. Code, code, code.

17 September 2008

BMPanel 0.9.27 release. Changes:

  • Bug fix. BMPanel had fail assumption that user always has wallpaper.

14 August 2008

BMPanel 0.9.26 release. Changes:

  • Correct include deps. There was a warning in previous version during compilation.

  • Class hint for PekWM, patch supplied by Tim Nieradzik. I didn’t test it, but it certainly doesn’t break anything.

  • Pseudo-transparency support. Now you can use transparent themes without composite mode.

  • New theme for pseudo-transparency demonstration purposes - transpy.tar.gz.

23 July 2008

BMPanel 0.9.25 release. Changes:

  • New compilation options in configure script:

    • --with-ev - use libev to implement event loop

    • --with-event - use libevent to implement event loop

These options are useful for those who have no glibc 2.8 (CVS version) in their distribution.

12 July 2008

BMPanel 0.9.24 release. Changes:

  • Internal code cleanup (a little bit).

  • A patch introduced by Henrique Dias, which adds support for customizing width of the panel and position on the X axis.

  • The patch adds new variables to themes:

    • width - specify width of the panel, number and optional % character at the end (for percentage value).

    • alignment - specify panel alignment [left|center|right]

  • Configure script checks for sys/timerfd.h now and in case if it wasn’t found gives a nice warning message.

I know that there was a bug report about a tray icons rendering. I didn’t forget about it, but it’s really hard to reproduce the effect and also I have no idea what is wrong.

Also, notice a new theme in Themes section. It was contributed by Henrique Dias and serves as an example of new bmpanel customizable width thing.

07 July 2008

Mailing list at groups.google.com. Please see a mailing list section.

01 July 2008

BMPanel 0.9.23 release. Notable changes are:

  • x86_64 problems fix. BMPanel should work on x86_64 without any problems now.

  • Remove unnecessary panel redraws. It may cause regressions on some WMs. I didn’t check.

26 June 2008

Add portability notice to bmpanel’s page.

24 June 2008

BMPanel 0.9.22 release. Few notable changes:

  • New versioning scheme for me (no more forgetting to bump up version string).

  • My helpful scripts are in the git repository now (and as a result in the source package).

  • Build system updates. Makefile supports external CFLAGS. The panel builds with -Wall flag. New options like --mem-debug . More beautiful summary table in configure script. Etc.

  • Tray placement bug fix (appeared in amsn). Thanks for bug report to Thomas Lundgaard.

  • Libev was removed from dependencies. Actually the panel doesn’t require high performance event loop. Because it isn’t a http server.

11 June 2008

BMPanel’s page update. Old page is available here.

10 June 2008

BMPanel 0.9.21 release. There are not so many changes:

  • Remove scons build system. Replace it with custom configure and Makefile scripts. It isn’t definitely portable approach, but bmpanel isn’t portable app. It should work on latest linux distributions (better if distribution is "rolling releases" like gentoo or archlinux).

  • Few bug fixes. They were on git master for some time, now they are in the source distribution.

  • It’s tradition and I forgot to bump up bmpanel’s version string. So, bmpanel --version shows wrong info. I need to rethink this versioning thing.

To install type: ./configure && make && make install

or ./configure --help for available options

Makefile supports DESTDIR for package maintainers.

However, my configure script and Makefiles are not perfect yet. I’m working on it. For example, they lack global system CFLAGS support, to use optimizations in PKGBUILD and gentoo’s ebuilds.