Home | Sitemap | Last changes RSS Feed | Wiki help | Wiki tools | SandBox
Preferences | Edit this page | View source | Page history | Referrers
Document last modified: Tue, 15 Jun 2010, 19:37 UTC

Hacking Guide

1 Keep in touch
2 Required reading
3 Inner workings
3.1 Organization
3.1.1 lib
3.1.2 src
4 Stuff to do
5 Working on Blackbox
6 Tips and tricks

This page is meant as a guide for wannabe Blackbox hackers. Developers, don't discuss code here, we have lists for that. Rather remember how you were in the beginning and give beginners a hand.

1) Keep in touch

Remember, if you ever need help, see the MailingLists. One of them posts CVS commits, by the way. You can also browse the BlackboxCVS online if you want.

2) Required reading

Blackbox, starting with version 0.70, follows the NetWM specification. See StandardsCompliance for more info. It also helps if you are already familiar with the X libraries*.

Of course, actual C++ experience is quite useful. But some people managed to hack Blackbox without that much experience. Go figure.

3) Inner workings

Blackbox is written in C++. It may be useful to know that since 0.70 Blackbox implements code as a shared library, libbt, which is used by several external tools already.

3.1) Organization

C++ is an object-oriented language. Each .cc file more-or-less corresponds to one "thing" in the Blackbox GUI, and each "thing" is responsible for its own functionality. Here is a summary of the functionality provided in each of those files, so you know where to start looking to implement your hack.

3.1.1) lib

3.1.2) src

4) Stuff to do

If you're looking for more specific tasks to tackle, have a look at the Blackbox TODO tracker*. Sometimes the developers post planned features there.

You can also browse the bug reports* and attempt to fix some of them.

5) Working on Blackbox

  1. DownloadBlackbox. As a hacker, it's recommended to always get the latest BlackboxCVS.
  2. Modify the source.
  3. Compile and install it (see BlackboxDocumentation/InstallingBlackbox).
  4. Try it and see what happened. Return to step 2 as needed.
  5. Submit your modifications to the patch tracker*.

6) Tips and tricks

A Blackbox copy under development is prone to crashes. So don't use it as the ~/.xinitrc anchor application. Use something else in its place, such as an xterm.


eXTReMe Tracker Hosted by SourceForge.net
Document last modified: Tue, 15 Jun 2010, 19:37 UTC
Home | Sitemap | Last changes RSS Feed | Wiki help | Wiki tools | SandBox
Preferences | Edit this page | View source | Page history | Referrers
Hosted by SourceForge. Powered by Wikki Tikki Tavi. About the website. Terms of use.