Skip to main content

the avatar of Will Stephenson

It's off to conf.kde.in I go!

I'm feeling very lucky today. Why? Because in a few hours I'll be getting on a plane to Bengaluru, India and attending conf.kde.in. Pradeepto has been asking me for years to look outside the cosy confines of the US-Europe Axis of KDE, and thanks to my role in the openSUSE Boosters team, this has finally become possible.

I'll be giving a talk on contributing to KDE in the openSUSE project and a long talk/practical workshop on using the openSUSE Build Service as used by openSUSE, Novell, Dell, Intel, Nokia, Broadcom and Cray, to spread free software: your own, update existing software on openSUSE, or package for it and for many other distros at one go. But mainly I'm looking forward to meeting the people who make up a whole side of KDE. So if you haven't made up your mind what you're doing next week, how about coming to the RV College of Engineering in Bengaluru?

Like many others,

PS: I'm bringing a load of openSUSE loot to give away, so just look for the guy staggering under the huge carton!

the avatar of Andrew Wafaa

Getting The Necessitas To Port To Android

So as I mentioned earlier I managed to port entimologist to Android. This post will hopefully explain how I did this. The shopping list for this task is relatively straight forward: Android SDK Android NDK Java development files (on openSUSE I use java-1_6_0-sun-devel) ant (on openSUSE ant is too old, I use the binary tarball from the Apache site) Qt Creator for Android SDK a.k.a Necessitas Not necessary but could be helpful – Eclipse (on openSUSE don’t use the packages available as there are things missing that prevent building for android, use the binary tarball from the Eclipse site) Ministro First thing I had done was install and setup Eclipse, I then setup the Android SDK & Android NDK – that was done months ago.
the avatar of Andrew Wafaa

Bug Tracking With The Help Of An Entomologist

I like to think of myself as being fairly consistent, and I’ve had one request for a long time, a desktop bug tracker client. I even asked if someone more adept in the ways of The Code could help. Unfortunately my call for help wasn’t heard :-( That was until HackWeek VI came along! Luckily Matt Barringer (from those crazy cooks in the SUSE Studio team) heard my call. He picked up his code machine gun and blasted away o/

the avatar of Gabriel Burt

PDF Mod Update

I haven't blogged about PDF Mod since Nov, 2009. We've had five releases in the meantime, including 0.9.1 just released today!

We have had tons of improvements and fixes, and one major new feature: bookmark editing!

We're up to 26 translations now, including 11 of our user manual!

As a reminder, PDF Mod can:

  • pull out (extract) pages from a document into a new PDF
  • combine two documents, or parts thereof
  • reorder and rotate pages
  • extract embedded images
  • edit basic metadata (title, author, keywords)
  • edit a document's bookmarks (aka outlines)
  • and that's it!
Links
tarballs, release notes, git, mailing list, irc, bugzilla, website/wiki

a silhouette of a person's head and shoulders, used as a default avatar

First beta of MonoDevelop 2.6

MonoDevelop 2.6 beta 1 was released yesterday. Like every major release, it has many new features. Here is a summary of what have we done.

The first new big feature is support for GIT. This was long time due, especially since Mono and MonoDevelop itself moved to GIT. I already blogged about it a few months ago, but basically we are using NGit, a C# port of JGit, as the core for the GIT add-in. It hasn't been easy to make this port fully operational, but we now have a GIT core that can be easily updated and which is fully portable.

We have also spent some time improving all the version control views. I like especially the new changes view integrated in the source editor, and the log view (which btw can show gravatar icons of committers). We plan to keep improving those views to make them even more functional.


Another big change in this release is the new MCS based parser and formatting engine. Mike Krueger (in charge of the C# support) and Marek Safar (maintainer of the MCS compiler) have been collaborating to make the MCS parser usable in MonoDevelop. By using MCS, we'll be able to quickly have support for the latest C# features, and we'll be able to report syntactic errors on-the-fly that exactly match those reported by the compiler. Also thanks to MCS, the C# formatter is more reliable and will allow to properly implement on-the-fly formatting on all contexts.

We also added in this release support for user defined policies. The concept of "Policies" was introduced in MonoDevelop 2.4. Policies are settings which can be applied per-solution and per-project. Policies include settings like code formatting rules, standard header for files or naming policies. Until now, we supported setting the default values for those policies, which would be used when creating new projects. Beside this, we now also support creating named sets of policies. So for example, an user could define a "Company" policy set with formatting rules and file headers specific for company projects. It could also define a "Open Source" policy set with different rules. When creating a project, the user can then chose which policies to use.


Another feature we added is support for IL disassembly in the debugger. This will be very useful for developers that need to debug dynamically generated methods and assemblies.


Finally, we also have a brand new add-in manager, which is more functional and looks much better. MonoDevelop is now subscribed to the public repository available in addins.monodevelop.com, which is open to everybody for publishing add-ins and making them available to all MonoDevelop users.


Update: forgot to mention one important improvement that has been requested by Mac users for long time: support for native OSX dialogs. Message and file dialogs on Mac now use the native UI toolkit.

There are many other improvements and new features in this release. Take a look at What's new in MonoDevelop 2.6 if you want to know more.



a silhouette of a person's head and shoulders, used as a default avatar

LibreOffice 3.3.1 bugfix release available for openSUSE

I’m happy to announce LibreOffice 3.3.1 bugfix release for openSUSE. The packages are available in the Build Service LibreOffice:Stable project. They fix various crashers, usability and translation problems, see the libreoffice-3.3.1.2 release news for more details. See also some notes about openSUSE LibreOffice build.

The openSUSE LO team hopes that you will be happy with this release. Though, any software contains bugs and we kindly ask you to report bugs. It will help us to fix them in the future releases.

Other information and plans:

This version will be in openSUSE-11.4 out of box. We are going to prepare official maintenance update for openSUSE-11.2 and 11.3.

There are already several fixes for the LO-3.3.2 bugfix release. You might expect 3.3.2-rc1 in the “LibreOffice:Unstable” repositories by the end of the following week.

Most developers are already concentrated on LO-3.4 release. I hope that the first beta packages will be ready in the beginning of April.

a silhouette of a person's head and shoulders, used as a default avatar

gui-thread-check

MonoDevelop often makes use of threads to run operations on the background. Although we make sure to invoke all GUI update methods through the main GUI thread, sometimes there is a bug and an update is done in the secondary thread, which causes all sort of random locks and crashes.

To make it easier to track down those bugs, I created a simple profiler module for Mono which can detect invocations to GTK# methods from a thread other than the main GUI thread. This module is available here:

https://github.com/slluis/gui-thread-check

To use it, build and install the module, and then run your application with
the command:

mono --profile=gui-thread-check yourapp.exe

If the profiler is properly installed, you'll see an output like this:

*** Running with gui-thread-check ***
*** GUI THREAD INITIALIZED: 2861676352

While the application is running, if the profiler detects a non-gui thread
invoking gtk methods, it will print a warning message together with a
stack trace. For example:

*** GTK CALL NOT IN GUI THREAD: Widget.gtk_widget_get_parent
Widget.get_Parent
SourceEditorWidget.get_TextEditor
SourceEditorWidget.get_Document
SourceEditorWidget.HandleParseInformationUpdaterWorkerThreadDoWork
BackgroundWorker.OnDoWork
BackgroundWorker.ProcessWorker

the avatar of Matthias Hopf

Forging knives!

I have a spleen for rather - say - exotic weekend activities (remember the R8 tour?). This time, two friends of mine and I went close to the middle of nowhere to the local blacksmith in Hallerstein (his web page is German only), for a two days forging course .
The event was fantastic, apart from some major problems with the local power supply (the whole village went dark three times), so we had to setup a mobile power generator in order to power the fan for the smith's hearth. It went well, apart from the starter breaking on the first attempt to start up the generator (it was brand new ), but we were able to improvise.
After a lot of hammering (also involving a pneumatic hammer we used for pattern welding for our Damascus steel knifes), and hours of grinding and polishing, every one of us was the proud owner of two self-forged knives, one of monosteel and one of Damascus steel.

It was an amazing experience, but you definitely need the help of an experienced blacksmith like our Axel, in order to get good results even on the first forging attempt. I guess I'll do it again, in the future. Maybe I will come home with a fully sized Katana next time .
a silhouette of a person's head and shoulders, used as a default avatar

EBay

I cocked up..

I forgot to monitor my ebay Auction - and well lets just say congratulations to Andrew Hussak from Summerseat, Bury, Lancashire who picked up a copy of openSUSE Retail for just £0.99p!!!

That will teach me to set a reserve price on the auction however with only a week until 11.4 perhaps I can recommend him to upgrade to a more up to date version very soon.

Next time I will figure a reserve price auction!!

He better leave me a review on Ebay and Qype!!
a silhouette of a person's head and shoulders, used as a default avatar