git bisect in action
We have a little regression in the buildservice API test suite. And looking at the commit log I didn’t find the obvious problem, so I tried bisect, because I know it worked very recently:
git bisect start master 1dfd9717348d8425492b556d3a183b4d265007d
git bisect run sh -c "cd src/api; ruby test/functional/build_controller_test.rb --name=test_project_index"
And it gave me:
25347c2d712e6e4b598e05442dd95b5e82f14aed is the first bad commit
commit 25347c2d712e6e4b598e05442dd95b5e82f14aed
Author: Jan-Simon Möller
Date: Sun Jul 18 01:14:01 2010 +0200
[api] Add fixtures for request controller ACL tests.
Now if you look at the commit, it is not obvious why it’s a problem. But now that git has proven, it has to be buggy I looked at the other fixture data and then it’s obvious and the fix is simple:
--- a/src/api/test/fixtures/package_user_role_relationships.yml
+++ b/src/api/test/fixtures/package_user_role_relationships.yml
@@ -11,8 +11,8 @@ testpack_maintainer:
bs_user_id: 267
role_id: 3
-testpack_maintainer:
- db_package_id: 10095
+testpack1_maintainer:
+ db_package_id: 11006
bs_user_id: 42
role_id: 3
Thanks git 
"Вот, новый поворот..." или 48 часов с openSUSE 11.3
Установка
Ставил я систему с Live-CD KDE, записанного на флешку. Установка прошла быстро и без нареканий, порадовал новый дизайн инсталлятора. Впервые система выдала предупреждение о том, что в моем PC меньше 1 Гб оперативной памяти (1 Гб - 64 Мб на встроенное видео), и что не рекомендуется параллельно с установкой проводить ещё какие-либо операции. На времени установки это не особенно отразилось - весь процесс занял минут 15.
Настройка
По умолчанию в новой системе для видеокарт NVIDIA используется открытый драйвер nouveau - работает он прилично, но меня не устроил по причине отсутствия аппаратного 3-D ускорения.
Поэтому я решил ставить проприетарный драйвер с официального сайта NVIDIA. Вот тут и кроется особенность nouveau - при установке "традиционным" путем модуль ядра собирается, но не может выгрузить модуль nouveau, поэтому от пользователя требуется ряд определенных действий. Довольно подробная инструкция была представлена в этой теме на официальном форуме. Я попробую немного дополнить ее теми шагами, которые пропущены автором по причине их распространенности и очевидности для опытного пользователя.
Итак, вот моя инструкция по установке проприетарного драйвера NVIDIA:
1. Подготовка.
Драйвер нужно скачать с официального сайта NVIDIA, кроме этого понадобятся пакеты binutils, make, gcc и kernel-source. Также понадобится текстовый редактор командной строки, для новичков рекомендую mc, кроме редактирования он позволит удобно перемещаться по файловой системе. Установить все сразу можно следующей командой:
sudo zypper in binutils make gcc kernel-source mc
init 3
mkinitrdДописываем в конец файла /etc/modprobe.d/50-blacklist.conf строчку "blacklist nouveau" без кавычек.
sh ./имя_файла_драйвера.runСледуем инструкциям и в конце перезагружаем систему.
Из плюсов новой версии следует отметит свежее ядро, более приятный и продуманный (по моему мнению) внешний вид и заметно сократившееся время загрузки, также понравился новый CUPS.
Из минусов - поиск пакетов (webpin) в YAST почему-то не ищет пакеты в "домашних" репозиториях пользователей oBS.
На этом пока все. Особых изменений не заметил, так как в 11.2 пользовался репозиториями factory, и многие пакеты уже были тех же, или даже более новых версий, чем в релизе.
Ended up buying an Apple...
The Apple Macbook Pro 13" I bought Tuesday includes an Intel Core 2 Duo 2.4Ghz, 4GB of 1066MHz DDR3, battery up to 10 hours (wireless and 50% screen brightness), and weighs 2.04KG. It cost me 1.149€ but had an (indirect) discount of 5% plus 10€ on the FNAC client card (costs 5€ per year but worths it since it also gives you other discounts and benefits). Here is a short list of highlights regarding the hardware itself and the Mac OS X operating system which, by the way, I have to mention I have never used it until now:
Pros:
- Laptop is solid rock and its aluminum unibody makes it truly fresh (I don't fell any heat, except in the fan area where the air flows out obviously, while the Acer laptop is more like a heater than a laptop (I bet I could fry an egg on it));
- Touchpad pretty flexible e practical;
- Battery lasts up to 10 hours, meaning I don't have to carry the charger wherever I go;
- The charger has two cables: the charger with the cable to plug in the laptop and another one to extend the length of the cable to the wall socket. This means for, most of the cases, I can leave that extra cable aside or at home;
- Auto brightness (think a little and you will find how useful it can be);
- OS X is functional, intuitive, and has a clean UI overall.
- I'm used to have the Ctrl key switched with the Fn key (something I want to get used);
- At least for the Portuguese keyboard, the square brackets as well as the curly brackets aren't shown in the keyboard and the key combination for the curly brackets isn't easy and convenient: alt+shift+8 for { and alt+shift+9 for } (keys 8 and 9 are where the parentheses are located at). Imagine how great will it to code, not!
- No "Cut" on files?!
- "exit" in the Terminal doesn't close the tab, but logs out and stays there opened;
- If running the OS in Portuguese, cmd+w doesn't close the tab as expected since the shortcut isn't associated and seems there is no way to do so. If running in English, the shortcut is there and do the job;
- Expected iChat to support the MSN protocol. Using Adium, which is way better;
- The file (un-)compressor included by default lacks lots of features such has the capability to uncompress split files. Using BetterZip, but still missing Ark from KDE!
- People advised me to use VLC instead of QuickTime for watching videos, specially those in HD since it seems the codecs used by QuickTime consumes more CPU than it should and that VLC consumes. I would have installed VLC anyway since I'm already used to it being the best video player out there in my opinion.
For those concerned about my devotion to the FOSS world and specially my openSUSE and KDE eccentricity, than there is nothing to you worry about! I'm still the very same guy you used to know. I just needed a laptop with the features I have stated above and that ended up to be an Apple Macbook. That's it, folks!
The heat
OpenSUSE 11.3 release
OpenSUSE 11.3 is a very bleeding edge release with all the latest OSS available and comes with GNOME 2.30.1 and the following changes:
- GNOME 3.0 preview is available with GNOME Shell and the new accessibility stack (disabled by default)
- Tracker is the default file indexer, replacing beagle.
- Empathy is the default IM client for GNOME. Empathy supports now sending files via drag and drop and the IRC module now includes support for common IRC commands such as /join.
- Access to iPhone and iPod touch files from nautilus. Rhythmbox can also play music from those devices.
- Transmission is shipped with DHT enabled
- Tomboy’s start-up time has been drastically improved. Syncing notes can now be done automatically by enabling it in the preferences.
- Nautilus’ user interface now includes a new split view mode and the default is set to browser mode.
- Simple right-click menu item to open a an archive file (zip, .tar.gz, etc.) in nautilus.
- Improved selection of screen-savers and games installed by default.
- Complete move away from hal to udisks/upower.
- Removal of the GNOME 1.x stack.
- Massive improvements to Banshee - the default media player
new grid view for albums,
automatic play queuing modes to ensure non-stop playback,
gap less playback eliminating the annoying little gap between tracks,
new extensions such as showing Wikipedia information for current artist, related YouTube videos and much more,
support for audio equalizer.
-Evolution has improved imap (imap ) implementation with live view updates, non-blocking operations and IDLE support. 'evolution --express' provides better user experience for netbook users.
- Huge improvements to YaST-GTK Software Management:
general improvements to the interface,
simple check-box interface to install/remove software,
improved search box,
"Available", "Upgrades", "Installed" tabs have been removed and replaced by optional status filters,
"History of changes" (from Menubar -> Extras) shows a history of all installed/removed packages and repositories,
"Summary of changes" box that shows all changes to packages in the current package management session, and allows you to "undo" changes,
option to close package-manager or return to it after all installation/removal is done is shown in the summary box that pops-up when user hits the "apply" button,
options "Clean-up when deleting packages" and "Allow vendor change" are now available (Menubar -> Options), and
buttons to "Upgrade patches" and "Upgrade all" are shown when the "Upgradeable" filter is selected.
for GNOME Developers to use jhbuild i recommend:
- Adding the Contrib repository
- sudo zypper in jhbuild jhbuild-recommended-deps (installs everything you need to setup a jhbuild environment)
et voilá, OpenSUSE 11.3 is much more developer friendly. Of course you have the option to use OBS to build your packages or grab the GNOME unstable releases..
Fast user switch plasmoid
Last week my mother in law started to share her Linux laptop with my wife. Suddenly my wife asked me how she could switch from one user session to another. She was looking for something similar to OS X fast user switch feature but she couldn’t find it. In fact there wasn’t a fast and easy way to switch between users’ sessions with KDE, until… now :)
Let me introduce my first plasmoid: the fast user switch plasmoid. It’s a simple icon in the panel that allows users to swich to another open session or to open a new login page. Here you can see the mandatory screenshots.
{% img /images/fast_user_switch/fastuserswitch02.png %} {% img /images/fast_user_switch/fastuserswitch01.png %}
You can find the source code here. Binary packages for openSUSE are already available on the build service.
One last thought about KDM
I think that KDM should allow to switch back to an already open session in a more transparent way. Right now if an user has already one session open, he goes back to the login screen and enters his credentials a **new ** session is started. I think that most users would expect to be switched back to their already running session. Starting a new session is just confusing for them.
recent releases: openSUSE 11.3 and Anna 1.0
Today openSUSE 11.3 is released, concluding 8 months of intense and enjoyable work. This release has been especially enjoyable for me, as it was the first openSUSE release where the community KDE team really took the driving seat and made decisions about what to include, updated packages and intensively tested. Instead of just being a slave to a feature list this release, I was more occupied in enabling, advising and reviewing others' contributions. I'd like to say "Excellent work!" to the whole openSUSE team here in Nuremberg, Prague, the rest of Novell and to every openSUSE contributor who has tested milestones, reported bugs, learned how to use osc and
After 9 months of enjoyable and intense work, our daughter Anna was released a couple of weeks ago. At the moment she's quite unimpressed by computers, desktops and operating systems, but I hope that Free Software will be of benefit to her life as it already is to millions around the world.
Time for a litl change
This week is my first with litl.

Novell was a great place to work and I recommend it to anyone. I will miss the Mono Accessibility team, but the beauty of being an open source project is that I can just pop into IRC or review some code on ReviewBoard when I'm feeling nostalgic.
At litl, I'll be working with Brad and his crack team to make the channel experience EVEN MORE AWESOME.
If you're wondering "what will the impact be on Tomboy/Snowy/etc?", the answer is that you can expect more polish on the Mac version of Tomboy now that I'll be dogfooding it every day. And it looks like I'll be switching Snowy to use lxml. Nothing else should change. I still intend to be as involved in GNOME as Stewie will let me. ;-)
OBS Development Team Member Job Position
SUSE GmbH has currently a job position open for an OBS Developer. Find details on the job position page at Novell.
OBS is used in the openSUSE project, but also internally at Novell and at plenty other places and companies.
The downside will be of course that you will have to work together with people like me 
Дополнение с проприетарными кодеками для openSUSE
Установка кодеков в openSUSE (установка в 1 клик для: KDE и GNOME)
Если же вы хотите, чтобы кодеки ставились при установки системы, то вам помимо установочного образа понадобятся:
При установке, на этапе "Анализ системы" - поставьте галочку "Использовать дополнительный продукт с отдельного носителя".
Вы также можете использовать эти аддоны и в уже установленной системе:
- yast -> "Дополнительные продукты"
Данные ссылки будут очень полезны, если нужно скачать все кодеки 1-файлом.
Для создания аддона необходим установочный DVD и вот этот http://dl.dropbox.com/u/2984089/addon-script скрипт.
Также, образы доступны на зеркале: http://mirror.suse.ru/addons/
/UPD
Скрипт для создания аддонов, теперь находится здесь: http://gitorious.org/suse-addon-creator/suse-addon-creator/blobs/raw/master/suse-addon-creator , скрипт был сильно переработан - в ближайшее время напишу анонс.