I just accepted the Code of Conduct

I just signed the Ubuntu Code of Conduct. I don’t see myself as a member of the Ubuntu community, in fact I haven’t used it for nearly two years now, except of installing it for friends, family and people who lost important data to a virus.
But I like the Code of Conduct, and as I bustle around on Launchpad anyway, I thought I’d just sign it. The Code of Conduct is great, and surely one of the things that make the Ubuntu community such a friendly place. After I signed it, I somehow felt better, or to say it in other words:
i’m happy i don’t need an excuse for being polite on the internet anymore

We have several guidelines too, and ours are definitely funnier, but something like the Ubuntu Code of Conduct is missing.
I don’t want to say we need one, because I have never seen anyone (at least not from the Fedora community) being rude or offending on #fedora or the mailing lists.

PS: I got some Spam comments on my blog. I mean, real Spam. Spammers decided someone would actually read my blog and placed ads on it. Wow, i’m amazed!

Status update

I’m still writing on this blog, although not very actively. As I predicted in my first post, I had doubts whether I’d be able to write something in this blog. I wrote some posts, but in the last time I just didn’t find anything to write about.

Of course I did something. Goblin gave me a plug on his blog, and I switched from Gnome to KDE.
I tried every release of the KDE 4.x series, but only KDE 4.3 finally made me switch (back). I made some experiences with KDE back in the days of KDE 3.5 (in Kubuntu, my first distro), but didn’t want to do the switch to KDE4. Now my major annoyances with KDE have vanished:
-gtk-qt-engine didn’t work for me a long time. It works now. All apps look like Qt apps now. Nice!
-Plasma doesn’t crash anymore.
-Flash works now in Konqueror

Some of these problems haven’t been KDE specific, but still kept me from switching. Now the only things that are missing are a Qt4 K3b (I’m using GnomeBaker in the meantime.) and a working “Dinosaur Comics” comic for the comic plasmoid.

I also joined a C++ project, MephistoBackup. It’s a former Java program, and as the upstream author decided to port it to C++ (for learning purposes) I joined in to learn something too.
We’ve not come very far yet, so don’t expect it to work ;)

I hope I’ll be able to write something more exciting soon, but for now I can only say that I enjoy KDE very much!

Using your own system branding in Revisor

I’m back from holiday and finally found the time to continue the tutorial is started here.

So, if you want to know how to use the branding you created there in your own Fedora re-spin, read on. You will need the RPM packages we created there as well as some other packages. To get them all, issue a

yum install revisor createrepo

This will install Revisor, the tool we need to compose the media and createrepo, the tool we need to create our own branding repository. So, let’s start the fun. The first part will be done on the command line. Open a terminal and issue createrepo ~/rpmbuild/RPMS/noarch
That’s all. We have a repository that contains our branding files now. That is necessary to include our packages in Revisor.

Now we need to disable SELinux, as Revisor doesn’t work when it’s enabled. As sonn as you shutdown or reboot your PC it will be enabled again, don’t worry. Do that by issuing su -c ’setenforce 0′ in a terminal. If you want to manually enable SELinux again after you finished building the distro, use su -c ’setenforce 1′

Start Revisor now via revisor or by opening it in your menu, for example Applications->System Tools->Revisor in GNOME. It will ask you for your root password, and then show the Welcome Screen. Click on “Get Started” and, well, get started. What we want to create is a Live CD, so we are clicking on “Optical Live Media”. You will also be able to use the distro from a USB stick, in case you’d like to, but currently revisor doesn’t support composing to a USB stick. If you want to run your distro from a USB stick, just continue reading and copy the .iso file we create to a USB stick with liveusb-creator (yum install liveusb-creator) instead of burning it to a DVD. After checking “Optical Live Media”, let’s move “Forward”. Now comes the part where we can add our branding, and even external repositories like RPMFusion if we like. To add our branding, click on “Add Repository” and fill out the form:
Name:Custom Branding
Description:Custom system branding
Base URL:file:///home/username/rpmbuild/RPMS/noarch

Don’t touch the rest, and don’t forget to replace username with your own user name.
Now move “Forward” to the Kickstart configuration. Just ignore the options and move on to the package selection with “Forward”.

In this screen you can choose all the packages you’d like to install, including the desktop environment, additional applications, simply all packages available. A good idea would be to check at least one Desktop Environment (e.g. KDE) and the groups “Base”, “Administration Tools” and “X Window System” under “Base System”. If you have hardware that needs restricted drivers, also check “Hardware support”.

Revisor

Now go to the “Search” tab and look for “selinux-policy”. Check the package selinux-policy. Then look for fedora-release, fedora-release-notes and fedora-logos and uncheck them. You can look for your own logos now, e.g. gwarming-release, gwarming-release-notes and gwarming-logos and check them. That will include them on the media. Now adjust the package collection to your needs, I for example searched for pidgin and unchecked it, and installed emesene instead. When you think you’re done, click “Forward”. It will show you a list of things it will do. Just accept it with “Forward”. Then you’ll come to the basic configuration screen. Set your language, keyboard, timezone, root password etc. You can also keep the default settings, the only thing you need to specify is the root password. Move on to the next screen, and if you don’t want to specify additional kernel parameters, just move on again. You can also skip the next two screens. In the screen that’s now showing, disable SELinux. It is possible to boot the live cd with SELinux enabled, but disabling it doesn’t provoke any related problems. You will still be able to use SELinux in your installed system (if you install form the Live image). Skip the next screen. Now you need to specify a default user name. This user will be the normal user on your live cd, so if you plan to redistribute it don’t set a password or be sure to check “Automatically log in this user to the desktop”.

Now revisor will do the work and you’ll find a .iso file in the /srv/revisor/f11-i386/live, where f11 and i386 will differ, depending on your release and architecture. You can burn the file or put it on a USB stick with liveusb-creator, just like any normal Fedora iso. Have fun with your custom-branded distro :D

Create your own system branding

I googled for days, but didn’t find a good step by step tutorial for creating your own Fedora branding. Now that I learned it myself, I thought I’ll write one for all the people out there who would like to know how it works. In a later post I’ll also write about including the branding in your own distro using Revisor. Before you start reading you may like to scan and skim this web page, because we’ll use knowledge from there. We will base our work on the generic-* packages, which are included in Fedora. For creating the logos some GIMP skills will be useful. In this tutorial I’ll use gwarming as package name, so every time you see gwarming, replace it with the name you want to give your custom branding. Note that when editing .spec files, you may also want to write your own Changelog in %changelog. I didn’t cover that here.
To install all packages needed in this tutorial, do:
yum groupinstall “Development Tools”
yum install gimp yum-utils rpmdevtools

1.)Step one: Create a working directory and get the SRPMS

First, it would be good to have a working directory. In this tutorial I’ll use “/home/julian/Vorlagen/Spin/branding”. Change to that directory and create two sub-directories, “logos” for the logos and “release” for the release files and release notes. We will start with creating the logos.

2.)Step two: Edit the logos

Open a terminal and change to the “logos” directory you just created and issue the following command:

yumdownloader –source generic-logos

This will download the SRPM of generic-logos, that includes all the files we need. Now issue the following command to unpack it:

rpm2cpio generic-logos* | cpio -id

You should have three files in that directory now, generic-logos-version.src.rpm, generic-logos.spec and generic-logos-version.tar.bz2. We need to unpack the images now with a

tar xfj generic-logos-*.tar.bz2

Now we have a new directory, generic-logos-version. As I’m writing this on Fedora 11, I have generic-logos-11.0.1. You can leave the terminal now, because now you have to do the fun work: Editing the logos.

Change to the unpacked directory (e.g. /home/julian/Vorlagen/Spin/branding/logos/generic-logos-11.0.1/) and delete the generic-logos.spec in there. We already have that one directory above. Now be creative. Browse the directories and edit all pictures you’d like to edit. For example, enter the directory firstboot/ and right-click on firstboot-left.png and choose “Open with GNU Image Manipulation program”.

You can edit all the pictures or replace them with whatever you want. The pictures you don’t edit still won’t be affected by the Fedora trademarks. But keep an eye on the resolutions. Don’t change them. For example, firstboot-left.png is 160X600 pixels. Leave it like that.

If you want to scale images, open them with GIMP and choose Image->Scale Image. That is useful if you want to completely replace the logo. Note: If you derive your logos package from the generic-logos package, e.g. keep using some images from there or use their Makefile, you have to license them under GPL2.

The Plymouth theme is placed in plymouth/charge. The files will be displayed in order from progress-00.png to throbber-15.png. The throbber images will be showed after the progress pictures completed. In Fedora 11, they are the flashing Fedora logo, while progress is the white outline that fills with color. I replaced the throbber images with the image of our planet, starting in gray and becoming more colorful with every picture. This effect is easily reached by using GIMP’s Colors->Brightness/Contrast on any picture that is placed in throbber 15 and then get’s reduced brightness with every step back to throbber-00.png

3.)Step three: Rename the package

After you edited or replaced all the images, it’s time to rename the package. There are some places where we have to change the name:

In the Makefile. Edit generic-logos-11.0.1/Makefile and change line 1 to NAME = yourname-logos.

I am not a lawyer, but I think you have to add something to the COPYING file like “This package is derived from generic-logos and is subject to the same license as generic-logos.” But I’m not sure, so if you plan to earn money with your package you’d better ask a lawyer ;)

Issue cp -r generic-logos-11.0.1 gwarming-logos-11.0.1 in the parent directory.
Instead of gwarming, use the name you also used in the Makefile.

Now issue tar cjf gwarming-logos.tar.bz2 gwarming-11.0.1/ to create an archive that contains all your edited images and changes.

Issue cp generic-logos.spec gwarming-logos.spec
Don’t do that on the generic-logos.spec in the generic-logos folder, do it in the top folder. In this tutorial that would be /home/julian/Vorlagen/Spin/branding/logos/generic-logos.spec

Edit gwarming-logos.spec (or however you called the file). Now replace Name: generic-logos with Name: gwarming-logos

Change Source0: generic-logos-%{version}.tar.bz2 to Source0: gwarming-logos-%{version}.tar.bz2
Use any %description you’d like to use.
In the %install section, replace
mkdir -p $RPM_BUILD_ROOT%{_datadir}/firstboot/themes/generic
for i in firstboot/* ; do
install -p -m 644 $i $RPM_BUILD_ROOT%{_datadir}/firstboot/themes/generic
done

with
mkdir -p $RPM_BUILD_ROOT%{_datadir}/firstboot/themes/gwarming
for i in firstboot/* ; do
install -p -m 644 $i $RPM_BUILD_ROOT%{_datadir}/firstboot/themes/gwarming
done

Now you’re done with the spec file. Close it, now it’s time to build the package.

4.)Step four: Build the logos package

It’s time to build a RPM package for the logos, so we can install it on any system. Issue rpmdev-setuptree and copy gwarming-logos.tar.bz2 to the directory ~/rpmbuild/SOURCES. Then copy gwarming-logos.spec to ~/rpmbuild/SPECS. Now change to the directory ~/rpmbuild/SPECS and issue rpmbuild -ba gwarming-logos.spec

If everything went right you should see a gwarming-logos-11.0.1-1.rpm in ~/rpmbuild/RPMS/noarch now. This is the package that contains all your logos. If you would install it now it would replace your Fedora branding with your own one. At this point, you’re done! If you also want to create your own release notes and release files, read on.

5.)Step five: Create your own release package

If you want to create your own distro based on Fedora (I will describe that in a later post) you will need to have your own release files. Here I’ll describe how to create these. The release files are needed for repository configuration and the release notes.

Create a new directory for the work on the release package. Change to that directory and issue

yumdownloader –source generic-release

Unpack the source RPM with

rpm2cpio generic-release* | cpio -id

You should have three files now: The generic-release-version.src.rpm, the generic-release.spec and generic-release-11.tar.gz. Unpack the generic-release-11.tar.gz package with tar xfz generic-release-11.tar.gz

Change to the generic-release-11 directory. Here we have a couple of files. The Fedora GPG keys used for package signing, the fedora repo files that include repository information about the Fedora repositories, a license file called GPL, a Makefile and a README.Generic-Release-Notes. There also is a generic-release.spec, delete it, we don’t need it as we already have one in the parent directory.

First, we will edit the README.Generic-Release-Notes. Just write something in there. You could insert common bugs, a description of your distro or a message, for example “This is Gwarming OS 11 beta 2, please donate to Al Gore when you read this”, “If you like the distro, send me a postcard!” or “Help me, I’m locked in a basement in Redmond and forced to create distros based on Fedora! Call 911!” After you’re done editing the file, save it as README.GWarming-Release-Notes and issue sed -i ’s/generic/gwarming/g’ Makefile.This will adjust the Makefile to our needs. Now include all the repos you’d like to use in your custom distro. For example, let’s assume we want Gwarming OS to include the adobe-linux repo and RPMFusion. So we’d have a look in /etc/yum.repos.d/ and copied adobe-linux-i386.repo, rpmfusion-free.repo and rpmfusion-free-updates.repo into the generic-release-11 directory. For every repo we add we also have to include the repo GPG key (or at least that would be good if you don’t want the user to get it manually). You can find the GPG keys of all enabled repos on your system in /etc/pki/rpm-gpg
In this example we’d copy RPM-GPG-KEY-adobe-linux and RPM-GPG-KEY-rpmfusion-free-fedora-11-* to the generic-release-11 directory.

Now change to generic-release-11s parent directory again and issue cp generic-release.spec gwarming-release.spec
Open the gwarming-release.spec. We need to adjust some things there. In the first two lines, adjust %define release_name to the name of your distro, and the %define dist_version to your distros version. Change Summary: Generic release files to Summary: GWarming release files and Name: generic-release to Name: gwarming-release. When doing that, keep an eye on the whitespaces. Don’t mix spaces and tabs after Name: or Summary:. Change Version: 11 to the version of your distro, e.g. 3 or 12. Don’t touch the Release: tag.

The %description and %description notes can be set to what you want again. In the %install section, adjust the echo “Generic release %{version} [...]” to echo “GWarming release %{version} [...]“.

Now adjust echo”cpe://o:generic:generic:%{version}” to echo “cpe://o:gwarming:gwarming:%{version}”.

Last but not least, adjust %doc README.Generic-Release-Notes to %doc README.GWarming-Release-Notes. You need to replace it with the name you gave the release notes file (case sensitive)!

Congratulations, you’re nearly done! All you need to do now is to create the RPMs, so you can include them in your custom distro. To do that, change to generic-release-11s parent directory again, issue a cp -r generic-release-11 gwarming-release-11 and pack the files with a tar czf gwarming-release.tar.gz gwarming-release-11/


Then copy gwarming-release.tar.gz to ~/rpmbuild/SOURCES and gwarming-release.spec to ~/rpmbuild/SPECS. Now go to ~/rpmbuild/SPECS and issue rpmbuild -ba gwarming-release.spec. Now you should have a gwarming-release-11-1.rpm and gwarming-release-notes-11-1 in ~/rpmbuild/RPMS/noarch. They contain your release files and release notes. Congratulations, you’re done! You can use these files to replace fedora-logos, fedora-release and fedora-release-notes in your own distro now. A tutorial how to that will appear on this blog in a couple of days. Now I have to grab a drink. That took days to write… If you have any questions, or some things seem unclear, don’t hesitate to ask in the comments!

Thank you, Microsoft

Microsoft just contributed 20,000 lines of code to the kernel.

To our kernel  ;)

Well, that’s really kind, thank you very much. They did the right thing. Although that doesn’t mean that they love us now, that is a step towards the right direction. I’m pleasantly surprised.

Distro review : HM Linux

Today I’m going to review HM Linux, currently #7 on distrowatch. It is an American Linux distribution with a unique KDE desktop theming. Their art team really did a great job, they designed a whole new desktop theme and customized almost all icons. The developers seem to be quite active on the project, and offer regular security updates, which are kindly hosted by Canonical on ubuntu.com. So, let’s start the review:

1.)Installation

The installation of HM Linux was pretty straightforward. They offer a LiveCD, that also serves as installer.

Boot GRUB

The installer is very well localized and features the look and feel of the standard desktop theme:

Installer

All my hard disks were detected correctly and GRUB was installed flawlessly, but that’s pretty standard these days. The installer didn’t offer all these advanced features like network booting or software customization because it’s a live installer. For the installation, I give a score of 5/5 points.

2.)First boot

After the installation I did a first boot. Unfortunately I had to see that the boot screen had a display failure and wasn’t very appealing. That especially is a pity because the rest of the distro is so beautifully designed.

Bootscreen

Here we see the beautiful HM Linux log-in screen.

KDM

After logging in I saw the beauty of HM Linux for the first time. But as everyone knows, especially such popular operating systems like HML are often the aim of malware, so I fired up the update manager. It was a pleasure to see that the HML team did a great job and already provided 16 security relevant updates. They use the same update manager as Fedora does, so it wasn’t hard to get used to the interface.

Updates

After the updates were installed I wanted to install some software. I soon found out that they use aptitude for that kind of things, so I logged in as root and… Wait! What the heck? su didn’t work. After asking in #hml on Freenode I soon found the answer: You have to do a sudo su first and then set your password. Hmm, OK, kind of strange, what is this sudo anyway? Well, after that I managed to open up aptitude and install some custom software. Things I generally need after a fresh install are OpenOffice, Flash, and freedom-hating music support. I got all these things installed pretty fast, although they use these weird .deb packages. I think it’s just a wrapper around reliable RPM technology.

Aptitude

So, after these first things, it’s time to move on.

3.)Hardware support

Hardware support is mixed. While the network, input and display drivers work well, I can’t get my sound card working. That’s not the most critical function, but would be nice to have. As it doesn’t recognize my sound card, I only score it 4/5 here.

4.)Look and feel

Now, this is where HML really scores. I think these pictures will speak for themselves:

Start menu

Hannah Montana sticky notes:

Widgets

Dolphin

Look and Feel: 5/5 points, definitely.

5.)Multimedia

As I mentioned before, HM Linux offers MP3 support through their pre-configured repositories, although it’s not installed by default. So I opened up Amarok and tried to play some music. Unfortunately HM Linux didn’t recognize my audio hardware, and so I can’t say much more on Multimedia, but that doesn’t seem to be the main purpose of this distro anyway. Flash didn’t work either, it just crashed the the default Konqueror browser, and also Firefox. 1/5 points here, because Amarok looks really good.

6.)Web

HM Linux comes with a web browser, an instant messenger and a mail client and thus offers all needed online capabilities. Firefox, that I installed with aptitude worked quite well, apart from Flash. Flash – sucks even on operating systems just pretending to be one. Other web pages are displayed quite well.

Wikipedia

The instant messenger and mail client worked well too and integrated perfectly into HM Linux’ theming. It’s not the fault of the HML developers that Flash didn’t work, but I can’t give the full score here. Sorry, only 4/5.

7.)Office use

HM Linux brings a big variety of office software like Planner, OpenOffice and the Kontact suite. They are really useful and work without crashes. When using OpenOffice.org, HM Linux uses another theme for it so that employees can better focus on their work.

OpenOffice.org

The Kontact suite helps you keeping track of your work and integrates the mail client and the calendar.

Kontact

HM Linux is definitely ready for real office use. 5/5 points here.

Conclusion:

This first version of HM Linux is a good start. The developers need to improve on some points, but it carries a lot of weight (no pun intended ;) ) and really scores in some points. But for now, only serious business users who need to get real work done should change to that distro. It offers stability, it’s free and it keeps your software safe and up to date. The perfect distro for frustrated salesmen, mad secretaries, die-hard Hannah Montana fans and Steve Ballmer.

The best app since sliced bread

OK, maybe I’m exaggerating a bit, but this application is cool! I found it by chance on Sourceforge, while voting on the Community Choice Awards winners, and that’s the application I always wanted. But wait, what are we even talking about?

Ever thought about how it would be to control your mouse cursor without using a mouse? Now it’s possible, with eViacam. It moves your mouse cursor according to your eye movement. OK, by now you have to move your head, but it’s surely working. And all you need is a webcam. It works with any webcam. After a short while you get used to the way it moves the cursor. To be honest, of course you can move the cursor faster using your mouse, but hey, that wouldn’t be as much fun. And of course it’s a great accessibility technology. It supports enabling on-screen keyboards like gok or iok, so that users that can’t use their hands can fully use their computers more easily. I think a video will show more (by the way, he doesn’t do the mouseclicks with his mouse, eViacam does it automatically when you stop moving the cursor):


(everytime I see KDE in a video I ask myself: Hell, why am I not using KDE? :) )

So, what do you need to get it running?

1.)A webcam. If your webcam works with Cheese you shouldn’t encounter any problems.

2.)eViacam. I’m already working on Fedora packages, but the app doesn’t stand the fortify flags, and so they’re useless. You have to compile it yourself for now. That’s fortunatly not very hard. I just compiled it in my home directory and created a panel launcher afterwards. First, create a directory for the sources, and then

wget http://sourceforge.net/projects/eviacam/files/eviacam/eviacam_1.1.orig.tar.gz

Untar the source code with tar -xzf eviacam_1.1.orig.tar.gz and cd eviacam-1.1 into the eviacam directory.

Get the build dependencies with yum install opencv-devel wxGTK-devel libXtst-devel libXext-devel
Then you can just do a ./configure and a make and voila, you’re done. You can execute the app now with ./src/eviacam (when you’re in the eviacam-1.1 directory).  I suggest creating a launcher for it, so you don’t always have to open the terminal and run it by hand. You could also do a make install if you want, but I prefer to keep self-built software in my home directory.

Google running their own distro

So, Google announced a new “Operating System”. Chrome OS. Its aim are Netbook users who just want to surf and send mails, maybe some text editing. And Google will offer all that. For free, first as in free beer, but later as in free speech. So this is an direct attack on Windows XP. Windows 7 will most likely not run very smoothly on Netbooks, so maybe vendors will ship Chrome OS with their Netbooks.

Chrome OS will be based on the Linux kernel.  Maybe they’ll use the GNU tools, maybe not. So shouldn’t we all be happy for more hardware support on Netbooks? I think, yes we should. Does it really matter whether users run Ubuntu Netbook Remix, Fedora, some other distro or Chrome OS? As long as Chrome OS will be 100% Free Software, I can’t see any problems. But will it be 100% Free Software?
Google will offer most services, like Calendar, Text editing and so on through their online services. And these are on their servers and nobody will ever see them. To be honest, everyone sharing documents through Google Docs sounds even worse than everyone sharing documents in .doc format.

I can’t judge the OS in such an early state, only relying on Googles marketing information, but I really hope they do it right and create “just another Linux distro” with some new innovative technologies . They’ll have a custom window system and maybe develop some other things. If they’ll be open source they’ll benefit our community, and also everyone else. I’ll have another post about that when they finally released it and I can test it myself.
But by now I can only say: Google, do it Free or let it be. Because I can’t see the big advantage of Google dominating the software market with closed source apps over Microsoft doing that. If Chrome OS doesn’t contain any useful local apps and only relies on web services by Google, then Google employees can run it on their Netbooks if they want, but I think no other user will. I’m wondering what the media will say about that, so I’ll keep my radio tuned.

Good luck Google, and please, don’t be evil :)

first!

So, this is my first post on this blog. I’m kind of excited. Will I find the time to blog more, will it be interesting?

Or will I just waste my time watching Collegehumor videos and visiting XKCD and totally forgetting about this?

The WordPress editor is pretty nice.  I’m right now listening to “Being for the Benefit of Mr. Kite” from the Beatles. A great song.

OK, don’t let me abuse this as a kind of Twitter thing, I need to hurry, I want to select a theme and see how to customize this blog.

Strange, I’m doing my first post on this blog, and just on the same day VLC 1.0 was released. Too bad I can’t find a hardlink to the news on the Videolan homepage.

I also like how “Send Trackbacks” calls other blog systems “legacy blog systems”.

OK, just wanted to test out some things with this, expect a “real” post soon :)