admin's blog

Current Status: Still unavailable

Hi All

Just a short status update. I am still offline courtesy of Deutsche Telekom. A simple provider switch from another provider to them seems to totally overwhelm their infrastructure. For now 2 month i am without any landline connection and there is no end to be seen. They kept blaming my old provider until last week when someone noticed the problem is on their side. Easy to be seen if someone is willing to look for solutions instead of blaming others.

I hope to come back to anyone contacting me during this time but if you did please resend the messages after my hopefully coming soon 'I am back' message. I am not sure i will be able to recover everything from that pile of spam, scam and mailing list stuff that is building up on my email account.

Mike

Build-Tool Version 0.5.3 Released

I just pushed version 0.5.3 to gemcutter. Only small changes. See below.

News on the kde recipe front:

  • shared-desktop-ontologies was fixed. It is again possible to build pykde4 against git master.
  • kdeedu is in preparation and not buildable currently. I won't invest time to fix that. It will be back after the git migration.
  • Same goes for kdegraphics. But they made a real mess. We will see when the dust settles.

V0.5.3 Changelog

  1. - Feature
  2. - Errors during a make call are both printed to the logfile and stdout even without verbose
  3. mode. Currently lines with "error:" and "ld:" are considered as errors. Report more. If the
  4. progressbar was active it is stopped.
  5. - Git: Check for a dirty index if asked for rebase. No automatic stashing (Yet?). Build-tool
  6. will bail out with an error message if you have uncommited changes. This step will be done
  7. before asking for the ssh key.
  8. - Enhancements
  9. - Do not print the classname for BuildTool Error classes. Only the message.
  10. - First fetch and rebase, then clean out the build-dir. If the fetch rebase fails you still have
  11. your old build to sort out the problems.
  12. - Improve the error message if --resume-from is given an invalid/ambiguous module name.
  13. - Bugfix
  14. - Fix ssh key handling. Now build-tool will stop if ssh-add fails.
  15. - Fix the progressbar for build-system not giving progress information(like qmake)

Build-Tool Version 0.4.2 Released

I have just pushed build-tool version 0.4.2 to rubygems. Have a look at the changelog. There are only some small improvements.

The kde trunk recipe btw. is up to date in regard to all those git movement that happened recently. The only problem is with phonon which yes has to get usable (for me) after its move to git. Not all backends compile. gstreamer, mplayer and xine fail for me. Only vlc compiles.

Vim Plugins: CMake Lint

The next vim plugin i would like to present is CMake-Lint. It really helpful when writing cmake files. Even if the plugin is called cmake-lint it is not the lint part i am speaking off. The lint script this is named for is accompanied by some vim scripts with the following features:

Omni Completion (CTRL-x_CTRL-o)
This feature not only autocompletes cmake commands. It opens the corresponding help in a scratch window for reference. There is one bug currently. If there is only one completion the window does not appear.
Complete CMake Help
The command ":CMakeHelp" shows the complete cmake help in a new window.

To install the script just checkout http://cmake-lint.googlecode.com/svn/trunk/vim to the .vim/bundle directory if you use the pathogen plugin.

To map the cmake help to the K command save the following snippet as .vim/after/ftplugin/cmake_lint.vim. When pressing K in normal mode the help for the word under the cursor is shown.

  1. " Map cmakehelp to the K command
  2. if maparg( 'K' )
  3. nunmap K
  4. endif
  5. nmap <buffer> K :call cmakecomplete#Help( expand( "<cword>" ) )<CR>

Vim Plugins: Pathogen

If you like vim and ever came to the conclusion you lost control over what is in your $HOME/.vim directory (I have currently a mix of 44 plugins and a bunch of personal adjustments there) then the pathogen plugin is the solution. It more or less gives you more than one .vim directory to work with. Each directory under $HOME/.vim/bundle is added to the runtimepath.

I am now using the .vim directory only for plugins handled by GetLatestVimScripts plugin.

Plugins checked out from repository, not supported by GetLatestVimScripts, only installed for evaluation purposes or developed by me go each into its own directory under ~/.vim/bundle.

My personal settings and plugin adjustments (The after directory) go to .vim/bundle/mjansen.

This setup finally allowed me to get the control back.

Mike

Build-Tool Version 0.3.3 released

I just released the version 0.3.3 of build-tool. Have a look at the changelog.

I'm currently thinking about a new minor version. The next feature i would like to add is to automate the after installation stuff. When building and installing packages as a non root user one often misses out on some important features because of some not as setuid root installed scripts programms. build-tool has currently rudimentary support for it with the finish_installation.sh file. But i would like to have the support more automatic. Like it is currently done with qts syncqt script. Which is automatically called after each rebase.

The idea is to allow for some kind of after installation hooks in recipes. Those should be scripts that are automatically run whenever an installation happened. The script should have two modes. First the "is something to do mode". The script for kdelibs for workspace for example checks if the installed kcheckpass script is setuid root (that one is needed for relogin after locking you screen). build-tool runs all the scripts and collects the ones which signal there is something to do. When all modules were build and installed it will run those with sudo in the 'do it' mode. The reason why it is done at the end is because if not one would have to sit in front of the terminal in case the script wants the admin password.

I even think about installing scripts like /usr/share/xsession/kdetrunk.session from workspaces after installation script. Which would allow for automatic inclusion of the kde trunk session into your existing login manager.

On the recipe front i added kupdateapplet (but there are some merge request pending before it is usable) and dbus. The dbus versions before 1.3 have a bug that makes krunner crash very often. And 1.3 is not available for most distros. So it's now possible to compile dbus yourself and enjoy an more stable kde. But to be on the safe side you would have to reconfigure and recompile most of your self compiled packages. So beware.

On the negative side i found out about a limitation of cmake that makes the setup i currently use in build-tool to build kde not always work (or more preicisely to accidently work). The link interface changes mean that sometimes not all needed directories will be picked up and added to a linker command. Effectively meaning your distro libraries or in case of phonon the qt phonon packages will be picked up instead. In case of additions to the abi that means the linking can fail. The kdesupport phonon for example has a new method added so the qt lib will not satisfy all symbols. To be clear. This is only a problem on linking not on compiling so it is not enough to remove devel packages.

So the minute i found out how to activate the full linker interface again i will push that change. Google did not help me yet.

Build-Tool Version 0.3.2 released

I just released Version 0.3.2. Update as usual with sudo gem update

There are two important bugfixes.

  • Fetching qt failed because it tried to fetch from a pure server url. You need to update your recipe too.
  • SQLite3 obviously starts to enforce foreign key constraints. After updating to OpenSuSE 11.3 build-tool failed for me because the constrained i declared had a typo. Was never a problem before (for me). Remove all ~/.build-tool/*.db files to get going again if you encounter the problem.

Hidden gems for kde developers

The source code repository of KDE is big. So big that it's nearly impossible to find all the gems hidden in there. One of these useful little tools is the kdeaccounts plugin from the kdesdk module. If you ever wondered how to find out the email address of a particular kde developer, look no further.

The plugin adds all active kde developers email addresses to your kde addressbook. Check it out: kdesdk/kdeaccounts-plugin

Recent comments