<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9472407</id><updated>2012-01-09T04:38:22.692+01:00</updated><category term='vnstat'/><category term='attachmate'/><category term='groklaw'/><category term='solr'/><category term='wwf'/><category term='froscon'/><category term='postgresql'/><category term='packaging'/><category term='smart'/><category term='opensuse conference'/><category term='board'/><category term='perl'/><category term='elections'/><category term='blender'/><category term='community'/><category term='fonts'/><category term='pidgin'/><category term='opensuse build service'/><category term='fosdem'/><category term='conference'/><category term='mplayer'/><category term='sed'/><category term='rpm'/><category term='gnome'/><category term='smplayer'/><category term='freshmeat.net'/><category term='sysstat'/><category term='swpats'/><category term='opensource'/><category term='wicket'/><category term='python'/><category term='gaim'/><category term='planning'/><category term='jetty'/><category term='zypper'/><category term='rtorrent'/><category term='enigmail'/><category term='irc'/><category term='eclipse'/><category term='thunderbird'/><category term='softwareportal'/><category term='ecology'/><category term='linux'/><category term='screen'/><category term='workshop'/><category term='personal'/><category term='mysql'/><category term='opensuse'/><category term='java'/><category term='php'/><category term='security'/><category term='osc'/><category term='howto'/><category term='politics'/><category term='thomas'/><category term='FOSS'/><category term='novell'/><category term='irssi'/><category term='packman'/><category term='meeting'/><category term='bash'/><category term='vnc'/><category term='petition'/><category term='kde'/><category term='oracle'/><category term='life'/><category term='sudo'/><category term='ecosia'/><category term='lxde'/><category term='miro'/><category term='twitter'/><category term='democracyplayer'/><category term='EU'/><category term='search'/><category term='webpin'/><category term='design'/><category term='mono'/><category term='amarok'/><category term='planetsuse'/><category term='deluge'/><category term='NX'/><category term='hermes'/><category term='openjdk'/><category term='opensuse-community'/><title type='text'>/dev/loki</title><subtitle type='html'>openSUSE, Linux, RPM/packaging, development (Java, C++, PHP, ..) or whatever</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default?start-index=101&amp;max-results=100'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>346</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9472407.post-5797463487518792631</id><published>2011-12-02T01:06:00.001+01:00</published><updated>2011-12-02T01:12:56.275+01:00</updated><title type='text'>openSUSE election platform 2011</title><content type='html'>&lt;p&gt;Yep, I'm running for the privilege of being on the openSUSE board again. Lots of fine candidates this time, which is pretty cool in its own right.&lt;/p&gt;&lt;p&gt;I finally managed to fill out the remaining bits of &lt;a href="http://en.opensuse.org/openSUSE:Board_election_2011_platform_template_yaloki"&gt;my election platform page&lt;/a&gt;, so if you're interested, please have a read -- yes, I know, it's long ;)&lt;/p&gt;&lt;p&gt;The short summary:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;I care about the contributors, their environment, it must be a fun place where people feel comfortable, with friends&lt;/li&gt;
&lt;li&gt;I care a lot about the people aspects of the project, probably even more so than for the technical bits&lt;/li&gt;
&lt;li&gt;I believe that I have a few ideas on concrete things we (and specifically, but not only, the board) should get involved in&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;All that "I, I, I" comes quite tedious, to be honest, and I'm under the impression that I'm bragging around, which is something my inner beast is spanking me for, endlessly. But well, the whole purpose is specifically to explain what each candidate proposes so I guess it's fine.&lt;/p&gt;&lt;p&gt;So if you adhere to &lt;a href="http://en.opensuse.org/openSUSE:Board_election_2011_platform_template_yaloki"&gt;what I wrote there&lt;/a&gt; and/or if you trust me to do the right things, do vote for me -- don't think that oh well, I'll be elected anyway, if everybody thinks like that, I won't ;D&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5797463487518792631?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5797463487518792631/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5797463487518792631' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5797463487518792631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5797463487518792631'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/12/opensuse-election-platform-2011.html' title='openSUSE election platform 2011'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3808250533029898986</id><published>2011-11-11T00:50:00.000+01:00</published><updated>2011-11-11T00:50:17.152+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM 2012: announcing the devrooms</title><content type='html'>&lt;p&gt;Just sent out the ack/nack emails for the developer rooms at FOSDEM 2012, the latter part always being pretty tough, but we have to make choices.&lt;/p&gt;
&lt;p&gt;On the good side: &lt;a href="https://fosdem.org/2012/devrooms_for_2012"&gt;here is the list of the devrooms for FOSDEM 2012&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Mind you, that list does not include the Distribution Miniconf, which will take place in two rooms during both days and will gather sessions, talks, ideas from many (mostly Linux) distribution projects.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3808250533029898986?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://fosdem.org/2012/devrooms_for_2012' title='FOSDEM 2012: announcing the devrooms'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3808250533029898986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3808250533029898986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3808250533029898986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3808250533029898986'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/11/fosdem-2012-announcing-devrooms.html' title='FOSDEM 2012: announcing the devrooms'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3883274795236561545</id><published>2011-11-08T02:06:00.000+01:00</published><updated>2011-11-08T02:06:18.334+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>gpodder 2 vs 3 in Packman</title><content type='html'>&lt;p&gt;The &lt;a href="http://gpodder.berlios.de"&gt;gpodder&lt;/a&gt; project &lt;a href="http://blog.gpodder.org/2011/11/gpodder-300-397d-released.html"&gt;introduced its new major release 3.0.0 today&lt;/a&gt; and, unfortunately, it seems like I didn't pay attention to the complete change announcement, as I just bumped the &lt;a href="http://packman.links2linux.org/package/gpodder"&gt;&lt;code&gt;gpodder&lt;/code&gt; package in Packman&lt;/a&gt; to 3.0.0 (from 2.18).&lt;/p&gt;
&lt;p&gt;Now, gpodder 3.0.0 does introduce a lot of changes, notably in the UI but also regarding its database format and requires migrating the database from 2 to 3. It doesn't seem to have all of the features of 2.20 either. So what happens is that when you just upgrade the &lt;code&gt;gpodder&lt;/code&gt; package, you end up with something you don't necessarily want to use. At least as of now.&lt;/p&gt;
&lt;p&gt;Upstream will still maintain the 2.x branch for quite a while, and gradually port features from 2 to 3 and, hence, it actually makes sense to do it differently. What I have done now is to revert the &lt;a href="http://packman.links2linux.org/package/gpodder"&gt;&lt;code&gt;gpodder&lt;/code&gt; package at Packman&lt;/a&gt; to the 2.xx branch (and upgrade to 2.20 at the same time).&lt;/p&gt;
&lt;p&gt;If you want to use &lt;code&gt;gpodder&lt;/code&gt; 3.0.0, then just install the package &lt;a href="http://packman.links2linux.org/package/gpodder3"&gt;&lt;code&gt;gpodder3&lt;/code&gt;&lt;/a&gt; instead: zypper or YaST2 will tell you to remove &lt;code&gt;gpodder&lt;/code&gt; in order to do so, as you cannot have both installed at the same time (they have file conflicts).&lt;/p&gt;
&lt;p&gt;Now, if, in between those changes, you already did the upgrade, do one of the following:
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;if you want to keep using 3.x:&lt;/b&gt; then run &lt;code&gt;rpm -e gpodder &amp;&amp; zypper install gpodder3&lt;/code&gt; (as root)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;if you want to go back to 2.x:&lt;/b&gt; then run &lt;code&gt;rpm -e gpodder &amp;&amp; zypper install gpodder&lt;/code&gt; (as root)&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;On a side note, please wait a couple of hours (after this blog post) before doing so, as our main repository server is only synced to some mirrors after 4 hours (after 1 hour for most though).&lt;/p&gt;
&lt;p&gt;Sorry for the inconvenience.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3883274795236561545?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.links2linux.org/package/gpodder3' title='gpodder 2 vs 3 in Packman'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3883274795236561545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3883274795236561545' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3883274795236561545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3883274795236561545'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/11/gpodder-2-vs-3-in-packman.html' title='gpodder 2 vs 3 in Packman'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4836087814890022807</id><published>2011-11-06T23:02:00.000+01:00</published><updated>2011-11-06T23:02:23.043+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zypper'/><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Installing Perl Module RPMs on openSUSE</title><content type='html'>&lt;p&gt;The additional repository &lt;a href="http://download.opensuse.org/repositories/devel:/languages:/perl/"&gt;devel:languages:perl&lt;/a&gt; has quite a slew of Perl module packages in it (over 2000 at the time of writing).&lt;/p&gt;
&lt;p&gt;Hence, if you are often using and requiring Perl modules, it makes a lot of sense to add it to your list of repositories, which you can do with the following command (as root):&lt;br/&gt;
&lt;br/&gt;&lt;code&gt;zypper addrepo http://r.opensu.se/devel:languages:perl.repo&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;
&lt;i&gt;(if you wonder what &lt;tt&gt;r.opensu.se&lt;/tt&gt; is, read up on it here: &lt;a href="http://r.opensu.se"&gt;r.opensu.se&lt;/a&gt;).&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;A little known fact is that when building RPM packages, there is a post-build script that analyzes the files that are part of the resulting package in order to scan for Perl modules. For each of those Perl modules, it adds a &lt;a href="http://www.rpm.org/max-rpm/s1-rpm-inside-tags.html#S3-RPM-INSIDE-PROVIDES-TAG"&gt;Provides&lt;/a&gt; with the Perl name of that Perl module, with a specific notation which is like this: &lt;code&gt;perl(&lt;b&gt;Name::of::the::Perl::package&lt;/b&gt;)&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;As an example, if you need the Perl module &lt;code&gt;Net::SMTP::SSL&lt;/code&gt;, you just need to do this:&lt;br/&gt;
&lt;br/&gt;&lt;code&gt;zypper install 'perl(Net::SMTP::SSL)'&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;
&lt;i&gt;Note that you should indeed put that parameter to the &lt;code&gt;zypper install&lt;/code&gt; command into quotes, as if you don't, bash will attempt to interpret the braces and give a syntax error.&lt;/i&gt;
&lt;/p&gt;
&lt;p&gt;Now, in this case, it is fairly simple, as the Perl module &lt;code&gt;Net::SMTP::SSL&lt;/code&gt; is provided by the RPM package &lt;code&gt;perl-Net-SMTP-SSL&lt;/code&gt; (at least on openSUSE/SLE), so you might have been able to derive the name of the RPM package from the name of the missing Perl module on your own. But that Perl module could very well be part of a package with a different name: for example, the Perl module &lt;code&gt;Class::MOP&lt;/code&gt; is not in the RPM package &lt;code&gt;perl-Class-MOP&lt;/code&gt; but in the RPM package &lt;code&gt;perl-Moose&lt;/code&gt; (because it's part of the &lt;a href="http://search.cpan.org/dist/Moose/"&gt;Moose CPAN module&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;And a last little trick: if you only want to find out which RPM package(s) provides specific Perl modules, you may also use this:&lt;br/&gt;
&lt;br/&gt;&lt;code&gt;zypper what-provides 'perl(Class::MOP)'&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;
&lt;i&gt;(Note that this one only works on repositories that you have in your list of active repositories, which you can see with &lt;code&gt;zypper repos&lt;/code&gt; or &lt;code&gt;zypper lr&lt;/code&gt;.)&lt;/i&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4836087814890022807?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4836087814890022807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4836087814890022807' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4836087814890022807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4836087814890022807'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/11/installing-perl-module-rpms-on-opensuse.html' title='Installing Perl Module RPMs on openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8026936341873360946</id><published>2011-10-28T07:15:00.001+02:00</published><updated>2011-10-28T07:16:16.742+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Loop mount iso files without being root</title><content type='html'>&lt;p&gt;There is a rather convenient way to mount ISO files (CD/DVD images) onto a directory on Linux, which goes as follows:&lt;br/&gt;
&lt;code&gt;mount -o loop,ro /path/to/image.iso /path/to/mountpoint&lt;/code&gt;&lt;br/&gt;
(where the mountpoint is a directory).
&lt;/p&gt;
&lt;p&gt;This method works very well, but has one essential drawback: you must be &lt;code&gt;root&lt;/code&gt; in order to do that. So how do I get to do so as a regular user ?&lt;/p&gt;
&lt;p&gt;A barely known alternative lies in &lt;a href="http://freshmeat.net/projects/fuseiso"&gt;&lt;code&gt;fuseiso&lt;/code&gt;&lt;/a&gt;, which uses the &lt;a href="http://fuse.sourceforge.net/"&gt;FUSE&lt;/a&gt; filesystem in user-space layer to accomplish that.&lt;/p&gt;
&lt;p&gt;In order to use it, you must install the package &lt;code&gt;fuseiso&lt;/code&gt;, which is available with the openSUSE distribution, and from the release repository (e.g. &lt;a href="http://download.opensuse.org/distribution/11.4/repos/oss/"&gt;for 11.4&lt;/a&gt;) as well as from the &lt;a href="http://download.opensuse.org/repositories/filesystems"&gt;&lt;code&gt;filesystems&lt;/code&gt; repository&lt;/a&gt; and &lt;a href="https://build.opensuse.org/project/show?project=filesystems"&gt;OBS project&lt;/a&gt;:&lt;br/&gt;
&lt;code&gt;zypper install fuseiso&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Once that has been done (as &lt;code&gt;root&lt;/code&gt; &lt;tt&gt;;)&lt;/tt&gt;), you can simply mount ISO files like this, without being &lt;code&gt;root&lt;/code&gt;:&lt;br/&gt;
&lt;code&gt;fuseiso /path/to/image.iso /path/to/mountpoint&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Note that as an additional benefit, &lt;code&gt;fuseiso&lt;/code&gt; also supports images in NRG, BIN, MDF and IMG (dd) format, as well as zisofs.&lt;/p&gt;
&lt;p&gt;In order to unmount, simply use &lt;code&gt;fusermount -u&lt;/code&gt;, e.g. like this:&lt;br/&gt;
&lt;code&gt;fusermount -u /path/to/mountpoint&lt;/code&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8026936341873360946?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8026936341873360946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8026936341873360946' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8026936341873360946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8026936341873360946'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/10/loop-mount-iso-files-without-being-root.html' title='Loop mount iso files without being root'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3166584739813410624</id><published>2011-10-03T10:21:00.000+02:00</published><updated>2011-10-03T10:21:13.942+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE 12.1 Beta testing</title><content type='html'>&lt;p&gt;
So it's &lt;a href="http://news.opensuse.org/2011/10/01/opensuse-12-1-beta-arrives/"&gt;openSUSE 12.1 Beta 1 testing time&lt;/a&gt; !
&lt;/p&gt;
&lt;p&gt;
Before &lt;a href="https://bugzilla.novell.com/enter_bug.cgi?product=openSUSE%2012.1&amp;format=guided"&gt;filing new bugs&lt;/a&gt;, make sure you &lt;a href="http://s.opensu.se/betabugs/"&gt;search for existing bugs first&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
If you're as annoyed by Bugzilla's search interface as I am, you can use &lt;a href="http://s.opensu.se/betabugs/"&gt;this page to search for 12.1 Beta 1 bugs&lt;/a&gt;: just type in keywords and done.
&lt;/p&gt;
&lt;p&gt;
The page also has an opensearch descriptor in order to add 12.1 Beta bug search to the list of search engines in your favorite browser.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3166584739813410624?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://s.opensu.se/betabugs/' title='openSUSE 12.1 Beta testing'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3166584739813410624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3166584739813410624' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3166584739813410624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3166584739813410624'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/10/opensuse-121-beta-testing.html' title='openSUSE 12.1 Beta testing'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5771124378936346420</id><published>2011-09-27T20:49:00.000+02:00</published><updated>2011-09-27T20:49:00.940+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM 2012: call for devrooms</title><content type='html'>&lt;p&gt;So here we go again, &lt;a href="http://fosdem.org"&gt;FOSDEM&lt;/a&gt;, the largest and coolest open source contributor event in Europe is prepping up for its 2012 edition.&lt;/p&gt;
&lt;p&gt;I've just opened the &lt;a href="http://fosdem.org/2012/call_for_devrooms"&gt;Call for Developer Rooms&lt;/a&gt;, the deadline for submissions is 2011-10-27.&lt;/p&gt;
&lt;p&gt;Other call-for-stuffs will open very soon (lightning talks, stands, main tracks).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5771124378936346420?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fosdem.org/2012/call_for_devrooms' title='FOSDEM 2012: call for devrooms'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5771124378936346420/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5771124378936346420' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5771124378936346420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5771124378936346420'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/09/fosdem-2012-call-for-devrooms.html' title='FOSDEM 2012: call for devrooms'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3955600051657062437</id><published>2011-08-31T23:17:00.000+02:00</published><updated>2011-08-31T23:17:02.026+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>http://counter.opensuse.org/link/</title><content type='html'>&lt;p&gt;Since quite a while, we're having those &lt;a href="http://counter.opensuse.org/"&gt;nifty countdown images&lt;/a&gt; for openSUSE, which we've used for releases as well as for the countdown to the openSUSE Conference.&lt;/p&gt;
&lt;p&gt;One issue with it is that it does not ship a link to point to when clicked upon, obviously, as it is just a plain image (and no javascript nor flash). Well, if you have put that picture on your blog/site/pants, please consider surrounding it with a link that points to &lt;code&gt;http://counter.opensuse.org/link/&lt;/code&gt;, and we will adapt that link (which is a plain HTTP redirect) accordingly over time (e.g. now it points to the openSUSE conference page, then it will point to the 12.1 release page, etc...).&lt;/p&gt;
&lt;p&gt;To do that, if your HTML-foo isn't that high, just use this:&lt;br/&gt;
&lt;div style="background:black;color:white;padding:1em 2em; font-family:monospace;"&gt;&amp;lt;a href="http://counter.opensuse.org/link/"&amp;gt;&amp;lt;img src="http://counter.opensuse.org/small/"/&amp;gt;&amp;lt;/a&amp;gt;&lt;/div&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3955600051657062437?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/link/' title='http://counter.opensuse.org/link/'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3955600051657062437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3955600051657062437' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3955600051657062437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3955600051657062437'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/httpcounteropensuseorglink.html' title='http://counter.opensuse.org/link/'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7717680961221380530</id><published>2011-08-31T23:10:00.001+02:00</published><updated>2011-09-01T00:26:09.906+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>opensu.se maintenance</title><content type='html'>&lt;p&gt;&lt;a href="http://nordisch.org/"&gt;Marcus "darix" Rueckert&lt;/a&gt;, &lt;a href="http://www.die-mafia.de/"&gt;Detlef Reichelt&lt;/a&gt; and I are currently moving servers for all the domains that are hosted on opensu.se (including opensuse-community.org).&lt;/p&gt;
&lt;p&gt;There might be a few hiccups during the transition phase (which is almost done &lt;tt&gt;;)&lt;/tt&gt;).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7717680961221380530?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7717680961221380530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7717680961221380530' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7717680961221380530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7717680961221380530'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/opensuse-maintenance.html' title='opensu.se maintenance'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3257231210106837794</id><published>2011-08-28T02:27:00.000+02:00</published><updated>2011-08-28T02:27:10.873+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle related packages for openSUSE</title><content type='html'>&lt;p&gt;Petr Vanek and I are maintaining some packages for openSUSE (and SLE) that build against the Oracle Instant Client libraries (I mean Oracle the database). Now, those libraries are not open source in any way, but are &lt;a href="http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html"&gt;available from the Oracle TechNet website&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There are a few open source projects that are of interest, at least for people who have to work with the Oracle database, and we do package a few of them and &lt;a href="http://download.yarpen.cz/"&gt;Petr makes them available&lt;/a&gt; in his &lt;a href="http://download.yarpen.cz/"&gt;repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;As of now, they're all built against version 10.2 of Oracle Instant Client, for &lt;a href="http://download.yarpen.cz/openSUSE_11.3/"&gt;openSUSE 11.3&lt;/a&gt;, &lt;a href="http://download.yarpen.cz/openSUSE_11.4/"&gt;openSUSE 11.4&lt;/a&gt;, &lt;a href="http://download.yarpen.cz/openSUSE_Factory"&gt;Factory (snapshot)&lt;/a&gt; and &lt;a href="http://download.yarpen.cz/SLE_11/"&gt;SLE 11&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Packages include &lt;code&gt;ocilib&lt;/code&gt;, &lt;code&gt;perl-DBD-Oracle&lt;/code&gt; (the Oracle database driver for Perl), &lt;code&gt;php5-pecl-oci8&lt;/code&gt; (the Oracle database driver for PHP5), &lt;code&gt;python-cx_Oracle&lt;/code&gt; (a Python module to access Oracle databases), &lt;code&gt;ruby-oci8&lt;/code&gt; (the... you got he picture, this time for Ruby), as well as &lt;a href="http://torasql.com/"&gt;&lt;code&gt;tora&lt;/code&gt;&lt;/a&gt; and &lt;code&gt;tora-svn&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Why would we package that stuff, as it is not open source ? Well, actually, the software that we package &lt;em&gt;is&lt;/em&gt; open source, it's just that the shared libraries and C headers they require are not. Oh, and we do &lt;em&gt;not&lt;/em&gt; redistribute the Oracle Instant Client library RPMs there. That is something you must &lt;a href="http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html"&gt;get from Oracle&lt;/a&gt; by yourself.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3257231210106837794?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://download.yarpen.cz/' title='Oracle related packages for openSUSE'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3257231210106837794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3257231210106837794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3257231210106837794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3257231210106837794'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/oracle-related-packages-for-opensuse.html' title='Oracle related packages for openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-230992285751029692</id><published>2011-08-27T16:42:00.001+02:00</published><updated>2011-08-27T16:43:29.248+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse conference'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='community'/><title type='text'>On communication, cultural differences, and the openSUSE Conference</title><content type='html'>&lt;p&gt;Disclaimer: the next paragraphs may sound presumptuous, but they're not. I swear.&lt;/p&gt;
&lt;p&gt;It has occurred to me, time and time again, that some people consider others as semi-gods. People who are highly active e.g. in open source projects, and are sometimes even regarded for their work. Well, it sucks.&lt;/p&gt;
&lt;p&gt;I know that this has happened to me a few times (being seen as a semi-god, that is), and I hate it. Not only does it not have any ground for being, we're just folks like everyone else, and while hard and good work should be appreciated, and while a simple "thank you" is way too rare and rewarding, taking it to that level is a very-bad-thing (tm)&lt;/p&gt;
&lt;p&gt;The main reason for it to be bad is that it breaks communication, it puts artificial barriers between people. Now, I can only speak for myself, but I &lt;em&gt;want&lt;/em&gt; people to talk to me, to come to me, say hi, and have a chat about virtually anything, be it on the matter of the openSUSE project or not.&lt;/p&gt;
&lt;p&gt;I like hearing about cultural differences, about experiences people make in their life, about funny and not-so-funny moments. I love spending time talking to people, especially "broken" people, who have gone through hard times (haven't we all ?), because they're full of life, full of content, even if it's sorrow. But hey, I like having a good time with happy people too &lt;tt&gt;;)&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;But culture is often in the way of common sense and the ability to communicate across those artificial differences, specifically when we're talking about the differences in behavior and, well, yes, communication, precisely.&lt;/p&gt;
&lt;p&gt;Generalization is always wrong (got it?), but there are a few traits that nevertheless apply in a very fuzzy way. Germans usually don't like physical contact, getting too much in their protective circle. They don't really like people who talk much either, or who behave in an extroverted way. Latins (French, Spaniards, Greeks, Italians, ...) often appear as sloppy, too relaxed, they don't take appointments seriously, they're always late, they're always talking, and loud, etc... Well hell yes. Asian cultures (in the broad geographic sense) are even more mind-boggling (to us Europeans, that is). North Americans are said to be quite vocal and easy to get in touch with, but don't appreciate digging a little deeper. Germans say things pretty straight as they are ("this sucks" is often perfectly acceptable). All those differences, all those barriers to understanding what we say to each other, and how we mean it.&lt;/p&gt;
&lt;p&gt;At the &lt;a href="http://conference.opensuse.org"&gt;openSUSE Conference&lt;/a&gt; or wherever we may meet, or even through electronic media, drop those differences, don't bother, say things straight up as they are, but be relaxed, have a good time, be vocal, talk, say what's on your mind. Don't be afraid to hurt feelings, you won't, because we're all a big happy (and sometimes grumpy) bunch of friends. Feel at home, this is your community. I am your friend. Poke me with a stick, give me a hug, talk to me out of the blue, whatever, slice me into pieces and put salt on it (that's a special for Alberto), I don't care. But don't remain silent, intimidated, blocked by your cultural background and, at the same time, be inclusive and accept those differences, to a certain extent (full circle or chicken/egg ?).&lt;/p&gt;
&lt;p&gt;See you there, or anywhere else, and give me a hug, or at least a high five &lt;tt&gt;;)&lt;/tt&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-230992285751029692?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/230992285751029692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=230992285751029692' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/230992285751029692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/230992285751029692'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/on-communication-cultural-differences.html' title='On communication, cultural differences, and the openSUSE Conference'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8109722707339155724</id><published>2011-08-27T16:12:00.000+02:00</published><updated>2011-08-27T16:12:04.548+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse conference'/><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='workshop'/><title type='text'>My talks at the openSUSE Conference 2011</title><content type='html'>&lt;p&gt;Big mistake, big mistake. At the call for papers deadline, we ended up with not having any sessions about packaging at all except &lt;a href="http://conference.opensuse.org/indico//contributionDisplay.py?contribId=46&amp;sessionId=7&amp;confId=2"&gt;one by Jan Engelhardt&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Now, that would have been quite a ludicrous situation, as our core activity is precisely to build packages, without which it wouldn't be a distribution in the first place.&lt;/p&gt;
&lt;p&gt;So I picked up an early email from Lars Vogdt who proposed a few sessions on the topic of packaging. Unfortunately, it was really early in the call for papers phase and we weren't quite organized yet, which caused his proposal to remain unanswered for a few weeks. I tried to contact him by email a few times, but he didn't reply (until now, that is), and I nevertheless took it up on myself to do a few packaging related sessions at the conference.&lt;/p&gt;
&lt;h3&gt;Introduction to Packaging&lt;/h3&gt;
&lt;p&gt;One thing that some people in the project have been bugging (me) about on a regular basis is an introductory presentation about packaging for openSUSE. Having been doing that for around 10 years on an almost daily basis, I can indeed understand that it appears as a daunting task and somewhat of a black art (which it is).&lt;br/&gt;
So here we go: &lt;a href="http://conference.opensuse.org/indico//contributionModification.py?contribId=131&amp;sessionId=4&amp;confId=2"&gt;Introduction to Packaging&lt;/a&gt; (Sunday 11 Sept in Brendl, at 11:45). The key here is that I am not assuming any prior knowledge &lt;em&gt;at all&lt;/em&gt;. If you're already versed into packaging, this isn't for you. But if you always wanted to know about the main activity of our project, at least in technical terms, you totally have to be there.&lt;/p&gt;
&lt;p&gt;Mind you, after that presentation, you will &lt;em&gt;not&lt;/em&gt; be able to write your first package, but it will give you an understanding of what packages actually are, the terms, the ecosystem, the process, the toolchains and... well... what the hell it actually takes to create an RPM package for openSUSE.  It does sound boring, and too technical, but it isn't. Trust me, we'll have a good time. I'm looking forward to seeing a lot of folks there with an appetite for finding out, and a lot of questions I'll more than happily be able to answer.&lt;/p&gt;
&lt;h3&gt;Workshops&lt;/h3&gt;
&lt;p&gt;Obviously, we're not going to stop there. For those who will have attended the above mentioned presentation, as well as for the folks who have a fuzzy idea of how to build packages, but have never actually tried to do so (or did but failed), there is something for you as well: &lt;a href="http://conference.opensuse.org/indico//contributionModification.py?contribId=130&amp;sessionId=6&amp;confId=2"&gt;Packaging, hands-on&lt;/a&gt;: on Monday, in the BR-Room, at 14:00, I will guide you for two hours through your first steps at accomplishing what is next to witchcraft: building your first package, on your own, on your notebook.&lt;/p&gt;
&lt;p&gt;The purpose here is to take every fear away at barriers to enter the secret cult of RPM wizardry. So bring along your notebook, a shell, vim or whatever editor you prefer, an &lt;a href="https://build.opensuse.org"&gt;openSUSE Build Service account&lt;/a&gt; (go to &lt;a href="https://secure-www.novell.com/selfreg/jsp/createOpenSuseAccount.jsp?%22https://build.opensuse.org/%22"&gt;this mind-boggling URL&lt;/a&gt; to create an openSUSE account if you don't have one already -- if you have an openSUSE account, you have everything you need), and we'll do it step by step, slowly, to bring you to the overwhelming feeling of joy once you will have your first (and hopefully not last) RPM package for openSUSE on your harddisk.&lt;/p&gt;
&lt;h3&gt;Upping the ante&lt;/h3&gt;
&lt;p&gt;Can we do even better than that? Sure, we can. On Tuesday, there will be a second workshop session: &lt;a href="http://conference.opensuse.org/indico//contributionModification.py?contribId=141&amp;sessionId=6&amp;confId=2"&gt;Advanced Packaging&lt;/a&gt;, at 14:00 in the BR-Room. That one will be a bit more improvised, but we'll take on more complex scenarios, depending on what we will not have covered in the previous workshop. Things like subpackages, -devel packages, distribution integration, shared library packages (and the openSUSE packaging guidelines that apply to them), packaging Perl modules, Python modules, etc...&lt;/p&gt;
&lt;h3&gt;And the rest...&lt;/h3&gt;
&lt;p&gt;There are quite a few additional sessions that have my name on it, but I won't be able to organize those as well. So I'm looking for people to &lt;a href="http://conference.opensuse.org/indico//contributionListDisplay.py/filter?confId=2#contributions"&gt;take them on&lt;/a&gt;.
&lt;br/&gt;
&lt;p&gt;Oh, and please bug me at the conference. I'm tall, and look evil, and can be evil at times, I &lt;a href="https://plus.google.com/117680951975244630647/about"&gt;have a creepy looking G+ profile photo&lt;/a&gt; (on purpose, I like it), but I don't bite, I don't pose, I'm a rather nice guy. As I'm not German, I don't mind hugs either, much like &lt;a href="http://blog.jospoortvliet.com/"&gt;our all around nice guy from the flat of the land&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I've been in this project for a very long time, been involved in various bits of it, and have quite some experience in several technical (and not so technical) areas. I hope we'll be able to un-organize some small sessions on various matters you'd like to know more about, I'm sure I can help, and I totally want to spread my experience around. This conference is &lt;em&gt;&lt;b&gt;YOUR&lt;/b&gt;&lt;/em&gt; conference, so make the most of it (want to stress that so much that I even adhere to the bad practice of using &amp;lt;b/&amp;gt; tags in HTML). Drop your cultural habits for a few days, don't be shy, let's talk, have some beers (or water), get to know each other and, most importantly, have a lot of fun.&lt;/p&gt;
&lt;br/&gt;
&lt;p&gt;So, hopefully, see you there!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8109722707339155724?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://conference.opensuse.org/' title='My talks at the openSUSE Conference 2011'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8109722707339155724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8109722707339155724' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8109722707339155724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8109722707339155724'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/my-talks-at-opensuse-conference-2011.html' title='My talks at the openSUSE Conference 2011'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4482114910539531843</id><published>2011-08-22T23:16:00.000+02:00</published><updated>2011-08-22T23:16:47.396+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='froscon'/><title type='text'>Back from FrOSCon</title><content type='html'>&lt;p&gt;Back from the &lt;a href="http://froscon.org"&gt;FrOSCon conference&lt;/a&gt; (the only one that has even weirder capitalization than openSUSE &lt;tt&gt;;D&lt;/tt&gt;).&lt;br/&gt;
Mixed feelings. While it was a bit boring during the day as there was pretty much no one passing by the stands (not just ours), I'm not really convinced it's that useful to have a stand there... Of course, the great weather didn't help, as most non-contributor-people who would might have come to the conference out of curiosity will most definitely have preferred making good use of the sunny weather that weekend. Understandable &lt;tt&gt;:)&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;Mind you, I definitely had a good time, as the organization is very well done, the catering is nice (at least for speakers and booth personnel, didn't try the other options), the barbecue with DJ on Saturday evening was excellent, and, of course, I got to see quite a lot of people I know through &lt;a href="http://opensuse.org"&gt;openSUSE&lt;/a&gt; and &lt;a href="http://fosdem.org"&gt;FOSDEM&lt;/a&gt; (quite a lot of people wearing the ultimate street cred t-shirt of FOSDEM supporters, btw &lt;tt&gt;;)&lt;/tt&gt;), and a few I didn't. Got to chat a lot with core &lt;a href="http://www.mageia.org/"&gt;Mageia&lt;/a&gt; contributors as well, which was definitely fun and interesting. Hence, lots of great FOSS people around, awesome.&lt;br/&gt;
Was obviously also great in the evening/night, chatting around beers (even if it was Kölsch (yellow water with a tiny bit of alcohol and some bitter)) with fellow contributors across different projects. Also got to meet &lt;a href="http://ununseptium.de/"&gt;Jan Krings&lt;/a&gt; for the first time (as well as Marcus Möller, Jan Krings and Jan Weber, which I've met IRL before).&lt;/p&gt;

&lt;p&gt;If you've never been at such events (even more striking at &lt;a href="http://fosdem.org"&gt;FOSDEM&lt;/a&gt; methinks, because there's a huge crowd, with lots and lots of projects there, and a lot of discussions and cross-pollination going around), and are mostly on the "user" side of things, then just stop the hate. Forget about distrowars, competition, and all that. That's just totally &lt;em&gt;not&lt;/em&gt; how it works for almost all the people who actively contribute to their projects. Even between BSD and Linux. We may have our differences and preferences, but we all respect the work, brains, excellence, and love everyone is putting into their respective undertakings.&lt;/p&gt;

&lt;p&gt;But in terms of audience, I wonder whether FrOSCon shouldn't have a sharper focus. At least, the focus wasn't all that clear to me, it seems like the target is "everything". There are stands of distribution projects, which are typically for the non-Linux/BSD-users-yet to grab some DVDs and play with it. There are stands of vendors, who pay for their stand, and whom are either selling books, or showcasing their services and solutions to potential customers, or hunting for highly qualified hackers. That's a pretty different audience already, at least when compared to the more entry-level distribution showcase stands. Then there are tracks and "devrooms" (yes, they really call them the same as at FOSDEM :)), which is .. dunno.. depends, some did sound more advanced, for developers, and some were a lot more entry level (e.g., paraphrasing, "openoffice.org is open source, what does that mean for me, user ?").&lt;/p&gt;

&lt;p&gt;Just my 2 cents, but I'm under the impression that it could serve a better purpose to be less general purpose and have a slightly sharper focus in terms of target audience. But hey, maybe it was just the weather (heard from others, e.g. from fellow openSUSEr Jan Weber) that there were clearly a lot more people the years before), and maybe the organizers are just fine with the amount and type of audience that was there.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4482114910539531843?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://froscon.org' title='Back from FrOSCon'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4482114910539531843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4482114910539531843' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4482114910539531843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4482114910539531843'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/back-from-froscon.html' title='Back from FrOSCon'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2545379353584290515</id><published>2011-08-16T02:04:00.001+02:00</published><updated>2011-08-16T02:15:25.356+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>i.opensu.se YMP Generator</title><content type='html'>&lt;p&gt;Bernhard Wiedemann approached me a few days ago to host his YMP generator CGI script on opensu.se.&lt;/p&gt;

&lt;p&gt;I wrote it from scratch (it's just a few lines of Perl code really ;)), and it's now up and running on &lt;a href="http://i.opensu.se/"&gt;i.opensu.se&lt;/a&gt; (follow that link for details and explanation).&lt;/p&gt;

&lt;p&gt;In a similar fashion to &lt;a href="http://r.opensu.se/"&gt;r.opensu.se&lt;/a&gt;, it is meant to be helpful to give support to users, as it is much simpler to hand them a short URL like &lt;a href="http://i.opensu.se/utilities/atool"&gt;http://i.opensu.se/utilities/atool&lt;/a&gt; than going through the hassle of guiding them through YaST2.&lt;/p&gt;

&lt;p&gt;It is especially well suited for twitter, IRC, etc...&lt;/p&gt;

&lt;p&gt;The source code is &lt;a href="https://gitorious.org/pbleser/pbleser/trees/master/i.opensu.se"&gt;in my git repo at gitorious&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2545379353584290515?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://i.opensu.se/' title='i.opensu.se YMP Generator'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2545379353584290515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2545379353584290515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2545379353584290515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2545379353584290515'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/iopensuse-ymp-generator.html' title='i.opensu.se YMP Generator'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3224876636396845628</id><published>2011-08-08T00:50:00.000+02:00</published><updated>2011-08-08T00:50:32.644+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Countdown for openSUSE Conference 2011</title><content type='html'>&lt;img style="border:none;margin:0 1em 0.5em 0;float:left;" src="http://counter.opensuse.org/conf/2011/medium"/&gt;&lt;p&gt;Hacked up some quick artwork for a countdown image for the &lt;a href="http://conference.opensuse.org"&gt;openSUSE Conference 2011&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;If you want to use it on your blog, website, whatever, use the following links to the image:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Large (400x400 pixels): &lt;a href="http://counter.opensuse.org/conf/2011/large"&gt;http://counter.opensuse.org/conf/2011/large&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Medium (256x256 pixels): &lt;a href="http://counter.opensuse.org/conf/2011/medium"&gt;http://counter.opensuse.org/conf/2011/medium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Small (130x130 pixels): &lt;a href="http://counter.opensuse.org/conf/2011/small"&gt;http://counter.opensuse.org/conf/2011/small&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you don't like the artwork, &lt;quote&gt;patches are welcome&lt;/quote&gt; &lt;tt&gt;;)&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;Obviously, the number of remaining days is updated every day and, hence, that countdown is always up-to-date (it is relative to the CEST timezone though, where the event takes place).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3224876636396845628?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://conference.opensuse.org/' title='Countdown for openSUSE Conference 2011'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3224876636396845628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3224876636396845628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3224876636396845628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3224876636396845628'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/08/countdown-for-opensuse-conference-2011.html' title='Countdown for openSUSE Conference 2011'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8417850249835738377</id><published>2011-07-04T22:22:00.000+02:00</published><updated>2011-07-04T22:22:46.476+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Off to Croatia!</title><content type='html'>&lt;p&gt;I'll be enjoying the nice seaside of Dalmatia (Croatia) for the next 3 weeks and, hence, won't be updating packages or be otherwise reachable to fix stuff.&lt;/p&gt;
&lt;p&gt;That being said, I really haven't been very active (to say the least) the last few weeks. Lost the moment(um), somehow. Dunno. Maybe the motivation problem will have fixed itself after my holidays. I sure hope so.&lt;/p&gt;
&lt;p&gt;For really urgent matters, a few people in the openSUSE and FOSDEM projects have my phone number, just poke the right people &lt;tt&gt;;)&lt;/tt&gt;, e.g. Andreas Jaeger.&lt;/p&gt;
&lt;p&gt;I most probably won't be checking my email, but I should be &lt;a href="https://twitter.com/#!/yaloki"&gt;tweeting&lt;/a&gt;, so that's an option to poke me as well.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8417850249835738377?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8417850249835738377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8417850249835738377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8417850249835738377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8417850249835738377'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/07/off-to-croatia.html' title='Off to Croatia!'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2869542421362755955</id><published>2011-05-14T16:15:00.000+02:00</published><updated>2011-05-14T16:15:14.084+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>What's an orig-addon ?</title><content type='html'>&lt;p&gt;Funny question eh? &lt;code&gt;:)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Let me take a step back first. There are quite a few packages that the openSUSE project cannot publish on their main infrastructure, not because of legal reasons, but for reasons of potential software patent infringements. That, combined with the fact that the main sponsor of the openSUSE project (Attachmate, formerly Novell) also sponsors almost all the IT infrastructure, the fact that Attachmate (and Novell before them) is a business in the USA, and that the USA has the most ludicrous legal precedents regarding software patents (hey, the market regulates itself, right ?), puts us into such a situation. It isn't different for most other distributions by the way, except for a very few which probably only get away with it because they remain rather small and under the radar.&lt;/p&gt;
&lt;p&gt;What am I talking about? Well, packages such as &lt;code&gt;gstreamer-0_10-plugins-bad&lt;/code&gt;, &lt;code&gt;MPlayer&lt;/code&gt;, &lt;code&gt;vlc&lt;/code&gt;, &lt;code&gt;xine&lt;/code&gt;, &lt;code&gt;libmad&lt;/code&gt;, etc... Typically because they contain implementations of multimedia codecs such as for &lt;a href="open http://en.wikipedia.org/wiki/MP3"&gt;MP3&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC"&gt;H.264&lt;/a&gt; which are heavily covered with software patents.&lt;/p&gt;
&lt;p&gt;The &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; project and repository provides many of those packages (amongst other things) for openSUSE, hosted in a country where software patents do not apply. Now, don't confuse software patents and copyright: copyright is well established, precise and there are no groups of people on the planet who respect copyright more than open source and Free software developers, specifically because copyrights such as the &lt;a href="http://en.wikipedia.org/wiki/GPL"&gt;GPL&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/BSD_licenses"&gt;BSD&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/Apache_License"&gt;ASL&lt;/a&gt; (to name &lt;a href="http://www.opensource.org/licenses/index.html"&gt;just a few&lt;/a&gt;) protect our work and our ideals. Hence, what we are doing is not illegal in any way. As an example, the &lt;a href="http://www.underbit.com/products/mad/"&gt;&lt;code&gt;mad&lt;/code&gt;&lt;/a&gt; library might be subject to software patent infringement where applicable, but is under the &lt;a href="http://en.wikipedia.org/wiki/GPL"&gt;GPL&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Okay, now back to the actual topic. The libraries of the &lt;a href="http://gstreamer.freedesktop.org/"&gt;&lt;code&gt;gstreamer&lt;/code&gt;&lt;/a&gt; framework are maintained by several contributors of the openSUSE project in the &lt;a href="https://build.opensuse.org/project/show?project=multimedia%3Alibs"&gt;&lt;code&gt;multimedia:libs&lt;/code&gt;&lt;/a&gt; project in our famous &lt;a href="http://en.opensuse.org/Portal:Build_Service"&gt;openSUSE Build Service&lt;/a&gt;. However, as explained above, the &lt;a href="http://download.opensuse.org/repositories/multimedia:/libs"&gt;download repositories of &lt;code&gt;multimedia:libs&lt;/code&gt;&lt;/a&gt; may not host the packages that might infringe on software patents (where applicable). So what we are doing, is to &lt;a href="http://en.opensuse.org/openSUSE:Build_Service_Tips_and_Tricks#link_and_aggregate"&gt;link&lt;/a&gt; those packages on our &lt;a href="http://pmbs.links2linux.org"&gt;Build Service instance at Packman&lt;/a&gt; (yes, the Build Service can do that, awesome feature &lt;code&gt;:)&lt;/code&gt;). The difference is that on Packman, due to some macros, we do build those parts that potentially infringe on software patents, and also host them in our repository and &lt;a href="http://packman.links2linux.org/MIRRORS.html"&gt;its mirrors&lt;/a&gt;. The trick is that they're subpackages that end in "&lt;code&gt;-orig-addon&lt;/code&gt;". For example, for the package "&lt;code&gt;gstreamer-0_10-plugins-bad&lt;/code&gt;", its companion is "&lt;code&gt;gstreamer-0_10-plugins-bad-addon-orig&lt;/code&gt;" (yes, I agree, the suffix "orig-addon" is stupid, too "geeky" and not intuitive in any way.)&lt;/p&gt;

&lt;p&gt;So, to see whether you have those installed, first open a shell as &lt;code&gt;root&lt;/code&gt;, then do the following:
&lt;div style="font:monospace;background:black;color:white;padding:1em;"&gt;zypper search orig-addon&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;It will probably result in something like this:
&lt;div style="font:monospace;background:black;color:white;padding:1em;"&gt;Loading repository data...&lt;br/&gt;
Reading installed packages...&lt;br/&gt;
&lt;br/&gt;
S | Name                                                   | Summary                                                              | Type&lt;br/&gt;
--+--------------------------------------------------------+----------------------------------------------------------------------+--------&lt;br/&gt;
  | gstreamer-0_10-plugins-bad-orig-addon                  | GStreamer Streaming-Media Framework Plug-Ins                         | package&lt;br/&gt;
  | gstreamer-0_10-plugins-bad-orig-addon-32bit            | GStreamer Streaming-Media Framework Plug-Ins                         | package&lt;br/&gt;
  | gstreamer-0_10-plugins-bad-orig-addon-debuginfo        | Debug information for package gstreamer-0_10-plugins-bad-orig-addon  | package&lt;br/&gt;
  | gstreamer-0_10-plugins-bad-orig-addon-debuginfo-32bit  | Debug information for package gstreamer-0_10-plugins-bad-orig-addon  | package&lt;br/&gt;
  | gstreamer-0_10-plugins-ugly-orig-addon                 | GStreamer Streaming-Media Framework Plug-Ins                         | package&lt;br/&gt;
  | gstreamer-0_10-plugins-ugly-orig-addon-32bit           | GStreamer Streaming-Media Framework Plug-Ins                         | package&lt;br/&gt;
  | gstreamer-0_10-plugins-ugly-orig-addon-debuginfo       | Debug information for package gstreamer-0_10-plugins-ugly-orig-addon | package&lt;br/&gt;
  | gstreamer-0_10-plugins-ugly-orig-addon-debuginfo-32bit | Debug information for package gstreamer-0_10-plugins-ugly-orig-addon | package&lt;br/&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;In order to install those bits, do the following:
&lt;div style="font:monospace;background:black;color:white;padding:1em;"&gt;zypper install gstreamer-0_10-plugins-bad-orig-addon gstreamer-0_10-plugins-ugly-orig-addon&lt;/div&gt;
and you're done &lt;code&gt;:)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;On a side note: if those results don't show up when doing the search, then add the Packman repository with the following command and try again:&lt;div style="font:monospace;background:black;color:white;padding:1em;"&gt;zypper ar -r http://r.opensu.se/packman.repo&lt;/div&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2869542421362755955?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2869542421362755955/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2869542421362755955' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2869542421362755955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2869542421362755955'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/05/whats-orig-addon.html' title='What&apos;s an orig-addon ?'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5915783652615354898</id><published>2011-04-22T02:27:00.000+02:00</published><updated>2011-04-22T02:27:28.709+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='conference'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='meeting'/><title type='text'>openSUSE Conference 2011, first program commitee meeting</title><content type='html'>&lt;p&gt;I'm part of this year's openSUSE Conference program committee, in order to bring in some of my experience with organizing &lt;a href="http://fosdem.org"&gt;the awesome FOSDEM conference&lt;/a&gt; &lt;tt&gt;;)&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;So we had our first program committee meeting today, and the summary is available &lt;a href="http://en.opensuse.org/openSUSE:Conference_Planning_2011_Meeting_20110421"&gt;on the wiki&lt;/a&gt;, &lt;a href="http://forums.opensuse.org/forums/english/other-forums/news-announcements/announcements/458489-opensuse-conference-2011-first-meeting.html#post2327661"&gt;on the forums&lt;/a&gt; and &lt;a href="http://lists.opensuse.org/opensuse-project/2011-04/msg00333.html"&gt;the opensuse-project mailing-list&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5915783652615354898?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://en.opensuse.org/openSUSE:Conference_Planning_2011_Meeting_20110421' title='openSUSE Conference 2011, first program commitee meeting'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5915783652615354898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5915783652615354898' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5915783652615354898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5915783652615354898'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/04/opensuse-conference-2011-first-program.html' title='openSUSE Conference 2011, first program commitee meeting'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1190580556849297860</id><published>2011-04-17T20:27:00.001+02:00</published><updated>2011-04-17T20:27:40.472+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>Workaround for Eclipse Helios JVM crashes</title><content type='html'>&lt;p&gt;You might run into this too: when using Eclipse Helios (3.6.2 here), it sometimes crashes on an alleged double free in the JVM, detected by glibc.&lt;br/&gt;
That's actually a feature of glibc that serves to detect bugs and security issues, which kills a process that tries to free a previously allocated memory area that has already been freed.&lt;br/&gt;
&lt;p&gt;In this case, however, it is most probably a false positive, but glibc still decides to kill the process.&lt;/p&gt;
&lt;p&gt;The workaround is to run Eclipse with the environment variable &lt;code&gt;MALLOC_CHECK_&lt;/code&gt; set to &lt;code&gt;0&lt;/code&gt;. There are several ways to achieve this:
&lt;ol&gt;
&lt;li&gt;when you run eclipse from a shell, run it like this:&lt;br/&gt;&lt;div style="font:monospace;background:#000;color:#fff;padding:0.5em;border-left:1em #888 solid;"&gt;MALLOC_CHECK_=0 eclipse&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;if you prefer to just run &lt;code&gt;eclipse&lt;/code&gt; or by clicking on an icon, create the following file in your $HOME/bin, e.g. like this (just copy/paste into a shell):&lt;br/&gt;&lt;div style="font:monospace;background:#000;color:#fff;padding:0.5em;border-left:1em #888 solid;"&gt;cat&amp;lt;&amp;lt;EOF &amp;gt;"$HOME/bin/eclipse"&lt;br/&gt;
#!/bin/bash&lt;br/&gt;
export MALLOC_CHECK_=0&lt;br/&gt;
exec /usr/bin/eclipse "$@"&lt;br/&gt;
EOF&lt;br/&gt;
chmod 0755 "$HOME/bin/eclipse"
&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;
Note that with the latter option, you obviously need to adapt the fully qualified path to the &lt;code&gt;eclipse&lt;/code&gt; script depending on how and where you installed it. If it comes from RPM packages, than &lt;code&gt;/usr/bin/eclipse&lt;/code&gt; is fine. If, like me, you downloaded the tarball from eclipse.org and unpacked it somewhere under your home, you must change it accordingly -- e.g. to &lt;code&gt;$HOME/apps/eclipse/eclipse&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;In any case, you should &lt;b&gt;&lt;u&gt;&lt;em&gt;NOT&lt;/em&gt;&lt;/u&gt;&lt;/b&gt; add &lt;code&gt;export MALLOC_CHECK_=0&lt;/code&gt; to your &lt;code&gt;~/.profile&lt;/code&gt; or &lt;code&gt;~/.bashrc&lt;/code&gt; as that would turn off that glibc check for &lt;b&gt;&lt;u&gt;&lt;em&gt;ALL&lt;/em&gt;&lt;/u&gt;&lt;/b&gt; the applications and processes you would run. And that's a bad idea.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1190580556849297860?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1190580556849297860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1190580556849297860' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1190580556849297860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1190580556849297860'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/04/workaround-for-eclipse-helios-kvm.html' title='Workaround for Eclipse Helios JVM crashes'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3950403319195400910</id><published>2011-04-01T07:58:00.000+02:00</published><updated>2011-04-01T07:58:51.155+02:00</updated><title type='text'>Canterbury Rolling Application Platform</title><content type='html'>&lt;p&gt;Following the &lt;a href="http://news.opensuse.org/2011/04/01/the-canterbury-distribution/"&gt;announcement of the Canterbury distribution&lt;/a&gt;, there has been a lot of work about this in the background too. In order to provide developers with the easiest framework to package with, we are pleased to announce the availability of the &lt;a href="http://en.wikipedia.org/wiki/CRAP"&gt;Canterbury Rolling Application Platform&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;No more tedious packaging, upstream won't have to deal with the idiosyncrasies of distributions any more. Just write your source code, use our framework, and it will automagically be turned into a &lt;code&gt;craplet&lt;/code&gt;, which is the new name for artifacts in our distributed platform. It will just fly!&lt;/p&gt;
&lt;p&gt;Unlike all efforts of packaging and distribution, our approach is truly revolutionary and provides instant and effortless scalability for the cloud through virtualization of provisioning for horizontal and vertical growth of your business.&lt;/p&gt;
&lt;p&gt;At the center of this revolutionary platform lies our secret sauce, &lt;a href="http://en.wikipedia.org/wiki/poo"&gt;Publish Organic in the Open&lt;/a&gt;, which will enable you to quickly push out your stuff into the wide world of users of the new &lt;a href="http://en.wikipedia.org/wiki/CRAP"&gt;Canterbury Rolling Application Platform&lt;/a&gt;.&lt;/p&gt;
&lt;p style="background:#000;color:#fff;padding:1em;font-family:monospace;"&gt;
&lt;font color="red"&gt;aprfoo@feci.es$&lt;/font&gt; make_poo --dist=loo LibreOpenOffice&lt;br/&gt;
Preparing upstream organic ...     [&lt;font color="green"&gt;DONE&lt;/font&gt;]&lt;br/&gt;
Building craplet &lt;font color="yellow"&gt;loo.crap&lt;/font&gt; ...      [&lt;font color="green"&gt;DONE&lt;/font&gt;]&lt;br/&gt;
Flushing buffers ...               [&lt;font color="green"&gt;DONE&lt;/font&gt;]&lt;br/&gt;
Pushing to canterbury.org ...      [&lt;font color="green"&gt;DONE&lt;/font&gt;]&lt;br/&gt;
Finishing up.

Congratulations, your CRAP is flying at the &lt;font color="yellow"&gt;loo&lt;/font&gt; !
&lt;/p&gt;
&lt;p&gt;We are expecting big vendor support behind this effort, with HP, Oracle, IBM and probably also Microsoft, as it would only be a natural fit for their .NET platform.&lt;/p&gt;
&lt;p&gt;It is obviously written in Python (significant whitespace fits in naturally with our philosophy) and will be available in git repositories soon.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3950403319195400910?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://news.opensuse.org/2011/04/01/the-canterbury-distribution' title='Canterbury Rolling Application Platform'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3950403319195400910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3950403319195400910' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3950403319195400910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3950403319195400910'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/04/canterbury-rolling-application-platform.html' title='Canterbury Rolling Application Platform'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4214894389133961985</id><published>2011-03-11T13:49:00.000+01:00</published><updated>2011-03-11T13:49:57.389+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>How to use tin to read the openSUSE Forums</title><content type='html'>&lt;p&gt;The &lt;a href="http://forums.opensuse.org"&gt;openSUSE forums&lt;/a&gt; also support the &lt;a href="en.wikipedia.org/wiki/Network_News_Transfer_Protocol"&gt;NNTP protocol&lt;/a&gt; (usually referred to as "news"). There are plenty of GUI news readers out there (thunderbird, knode, pan, ...), but as I'm using &lt;a href="http://www.mutt.org"&gt;&lt;code&gt;mutt&lt;/code&gt;&lt;/a&gt; to read my emails as well as &lt;a href="http://www.irssi.org"&gt;&lt;code&gt;irssi&lt;/code&gt;&lt;/a&gt; for IRC in &lt;a href="http://www.gnu.org/software/screen"&gt;&lt;code&gt;screen&lt;/code&gt;&lt;/a&gt; sessions (in &lt;a href="en.wikipedia.org/wiki/Rxvt-unicode"&gt;&lt;code&gt;urxvt&lt;/code&gt;&lt;/a&gt;, I wanted a console based NNTP client for that as well. (No, I don't use &lt;a href="en.wikipedia.org/wiki/Lynx_(web_browser)"&gt;&lt;code&gt;lynx&lt;/code&gt;&lt;/a&gt; or &lt;a href="en.wikipedia.org/wiki/W3m"&gt;&lt;code&gt;w3m&lt;/code&gt;&lt;/a&gt; for web browsing, I'm not a masochist &lt;code&gt;;)&lt;/code&gt;.)&lt;/p&gt;

&lt;p&gt;Hence I installed &lt;a href="trn.sourceforge.net/"&gt;&lt;code&gt;trn&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here is how to set it up to access the &lt;a href="http://forums.opensuse.org"&gt;openSUSE forums&lt;/a&gt; with it:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Obviously, first install &lt;code&gt;trn&lt;/code&gt;:&lt;br/&gt;
&lt;code style="background:#000;color:#eee;padding:0.2em 1em;border-left:1em solid #aaa;"&gt;zypper install trn&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;then run &lt;code&gt;rtin&lt;/code&gt; once, which will give you an error message and exit, but that will create its configuration file tree in &lt;code&gt;~/.tin&lt;/code&gt;:&lt;br/&gt;
&lt;code style="background:#000;color:#eee;padding:0.2em 1em;border-left:1em solid #aaa;"&gt;rtin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;next, edit the configuration file &lt;code&gt;~/.tin/newsrctable&lt;/code&gt; and add the following line:&lt;br/&gt;
&lt;code&gt;forums.opensuse.org &lt;b&gt;/home/XXX/&lt;/b&gt;.tin/foo foo&lt;/code&gt;&lt;br/&gt;
&lt;i&gt;(where you replace &lt;b&gt;/home/XXX&lt;/b&gt; with your actual home directory)&lt;/i&gt;&lt;br/&gt;
If you are not fluent with text editors, you can also simply execute the following command from a shell (just copy/paste it):&lt;br/&gt;
&lt;code style="background:#000;color:#eee;padding:0.2em 1em;border-left:1em solid #aaa;"&gt;echo "forums.opensuse.org $HOME/.tin/foo foo" &gt;&gt; ~/.tin/newsrctable&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;now we can actually run &lt;code&gt;rtin&lt;/code&gt; to connect to the &lt;a href="http://forums.opensuse.org"&gt;openSUSE forums&lt;/a&gt;:&lt;br/&gt;
&lt;code style="background:#000;color:#eee;padding:0.2em 1em;border-left:1em solid #aaa;"&gt;rtin -a -g foo&lt;/code&gt;&lt;br/&gt;
&lt;i&gt;(note that the &lt;code&gt;-a&lt;/code&gt; flag turns on color support, and &lt;code&gt;-g foo&lt;/code&gt; tells &lt;code&gt;rtin&lt;/code&gt; to connect to the server we configured as "foo" in &lt;code&gt;~/.tin/newsrctable&lt;/code&gt;&lt;/i&gt;)&lt;/li&gt;
&lt;li&gt;you are now greeted with an (almost) empty screen: press the &lt;code&gt;y&lt;/code&gt; key (&lt;i&gt;yank in/out&lt;/i&gt;) to get a list of all the forums in order to subscribe to those that are of interest to you: simply use the arrow keys to scroll the list and press the &lt;code&gt;s&lt;/code&gt; key (&lt;i&gt;subscribe&lt;/i&gt;) to subscribe those you want to follow&lt;/li&gt;
&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4214894389133961985?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4214894389133961985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4214894389133961985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4214894389133961985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4214894389133961985'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/03/how-to-use-tin-to-read-opensuse-forums.html' title='How to use tin to read the openSUSE Forums'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2308893666006732791</id><published>2011-03-10T12:53:00.000+01:00</published><updated>2011-03-10T12:53:40.451+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Invalid Packman repository metadata signature</title><content type='html'>&lt;p&gt;Marc Schiffbauer and I have been working on finalizing the repository generation process on Packman yesterday, and obviously we still have a bug: when refreshing the metadata of the Packman repository, zypper and YaST will complain that the signature of &lt;code&gt;repomd.xml&lt;/code&gt; is invalid.&lt;/p&gt;
&lt;p&gt;Sorry for the trouble, we're working on it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2308893666006732791?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://lists.links2linux.de/pipermail/packman/2011-March/009653.html' title='Invalid Packman repository metadata signature'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2308893666006732791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2308893666006732791' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2308893666006732791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2308893666006732791'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/03/invalid-packman-repository-metadata.html' title='Invalid Packman repository metadata signature'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2921848956318508106</id><published>2011-03-07T20:36:00.000+01:00</published><updated>2011-03-07T20:36:40.726+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman repository metadata broken</title><content type='html'>&lt;p&gt;We hope to resolve the matter tonight, but right now, the repository metadata (&lt;code&gt;repodata/&lt;/code&gt;) of the individual repositories (Essentials, Multimedia, Extra and Games) is broken because it is not updated correctly.&lt;/p&gt;
&lt;p&gt;In the mean time, if you can't wait &lt;code&gt;;)&lt;/code&gt;, please use the "top-level"/"big" repositories instead, they're fine.&lt;/p&gt;

&lt;p&gt;To be precise: don't use e.g.&lt;br/&gt;
&lt;a href="http://packman.inode.at/suse/openSUSE_11.3/Essentials"&gt;http://packman.inode.at/suse/openSUSE_11.3/Essentials&lt;/a&gt;&lt;br/&gt;
but use&lt;br/&gt;
&lt;a href="http://packman.inode.at/suse/openSUSE_11.3"&gt;http://packman.inode.at/suse/openSUSE_11.3&lt;/a&gt;&lt;br/&gt;
instead.&lt;/p&gt;

&lt;p&gt;Sorry for the inconvenience &lt;code&gt;:\&lt;/code&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2921848956318508106?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://lists.links2linux.de/pipermail/packman/2011-March/009613.html' title='Packman repository metadata broken'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2921848956318508106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2921848956318508106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2921848956318508106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2921848956318508106'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/03/packman-repository-metadata-broken.html' title='Packman repository metadata broken'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-513563424683640904</id><published>2011-03-03T09:46:00.000+01:00</published><updated>2011-03-03T09:46:46.867+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='design'/><title type='text'>The genius is in simplicity</title><content type='html'>&lt;p&gt;I recently stumbled over &lt;a href="http://min.us/"&gt;min.us&lt;/a&gt;, a website for sharing/pasting images (sort of like &lt;a href="http://pastebin.com"&gt;pastebin&lt;/a&gt;, but for images).&lt;/p&gt;
&lt;p&gt;It's not new per se, there have been quite a few image pasting sites already, such as &lt;a href="http://imageshack.us/"&gt;imageshack.us&lt;/a&gt;, but what is striking at &lt;a href="http://min.us/"&gt;min.us&lt;/a&gt; is the extreme simplicity of its interface.&lt;/p&gt;
&lt;p&gt;You open &lt;a href="http://min.us/"&gt;min.us&lt;/a&gt;, you drag and drop an image from your file manager / desktop / whatever, and you're done. Period. Brilliant.&lt;/p&gt;
&lt;p&gt;Genius resides in designing things that are simple, or at least apparently simple. The success of &lt;a href="http://www.google.com"&gt;Google Search&lt;/a&gt; with users does not only rely on its search algorithms and implementations, but also on the extreme simplicity and consistence of its user interface (at least as far as the landing page is concerned). Sure, nowadays, you'd think "why would I make a search page look any different from that ?", but back in the days, all the other search sites had very complex user interfaces (at least as far as I remember).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-513563424683640904?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://min.us/' title='The genius is in simplicity'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/513563424683640904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=513563424683640904' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/513563424683640904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/513563424683640904'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/03/genius-is-in-simplicity.html' title='The genius is in simplicity'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-121882847524023981</id><published>2011-02-27T21:57:00.000+01:00</published><updated>2011-02-27T21:57:20.918+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: switching to new repositories</title><content type='html'>&lt;p&gt;As I &lt;a href="http://dev-loki.blogspot.com/2011/02/packman-service-interruption-and.html"&gt;wrote about&lt;/a&gt; a couple of days ago, the &lt;a href="http://packman.links2linux.org"&gt;Packman team&lt;/a&gt; has been busy migrating to a new &lt;a href="http://en.opensuse.org/Portal:Build_Service"&gt;openSUSE Build Service&lt;/a&gt; instance as well as, while we were at it, &lt;a href="http://dev-loki.blogspot.com/2011/02/packman-service-interruption-and.html"&gt;changing the repository layout&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We've been putting quite some steam behind the effort and we finally have reached a point where everything is working great (for us as packagers) and where the most used packages have been added and re-built on &lt;a href="http://pmbs.links2linux.org"&gt;our new openSUSE Build Service instance&lt;/a&gt;, as well as having been published in &lt;a href="http://packman.inode.at/suse/openSUSE_11.4"&gt;our new repositories&lt;/a&gt;, including on all &lt;a href="http://packman.links2linux.org/MIRRORS.html"&gt;our mirrors&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On Wednesday (2011-03-02), in CET evening, we will delete the old repositories. We will create symbolic links to make the old URLs point to the new repositories (e.g. &lt;code&gt;11.3&lt;/code&gt; to &lt;code&gt;openSUSE_11.3&lt;/code&gt;), in order to make the old URLs still work perfectly fine.&lt;/p&gt;
&lt;p&gt;But it will also mean that there are a lot of packages that were in the old repositories that are not in the new ones, as we didn't migrate everything yet, and didn't migrate everything on purpose. Indeed, it is also a good opportunity for us to get rid of old cruft which we added many years ago and isn't used by anyone any more, or even anyone in the first place.&lt;/p&gt;
&lt;p&gt;At the same time, I will change the list of repositories that show up in YaST's "community repositories" module in order to reflect the new layout, with the option of picking only some of our repositories, and not just the "big one" (for details, please refer to &lt;a href="http://dev-loki;blogspot.com/2011/02/packman-service-interruption-and.html"&gt;this post&lt;/a&gt;). Of course, once performed, I will duly announce it.&lt;/p&gt;
&lt;p&gt;So if you do run into a package you were used to get from us and which doesn't show up in the &lt;a href="http://packman.inode.at/suse/openSUSE_11.4"&gt;Packman repository&lt;/a&gt; any more, please let us know by sending us an email to &lt;a href="mailto:packman@links2linux.de"&gt;our mailing-list at packman@links2linux.de&lt;/a&gt; (no need to register first, just send an email to that address, in English or German).&lt;/p&gt;
&lt;p&gt;Sorry for the inconvenience that move might create, but it will definitely help us because we will hopefully have a little less packages to maintain (because no one is using them), and also make the service a bit swifter for you to use, as there will be less RPM-MD metadata to download on each refresh.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-121882847524023981?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/121882847524023981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=121882847524023981' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/121882847524023981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/121882847524023981'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/02/packman-switching-to-new-repositories.html' title='Packman: switching to new repositories'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1094685400642381328</id><published>2011-02-24T20:28:00.000+01:00</published><updated>2011-02-24T20:28:26.143+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: removing 11.1</title><content type='html'>&lt;p&gt;&lt;a href="http://packman.links2linux.org"&gt;We&lt;/a&gt;'re going to remove the &lt;a href="http://www.opensuse.org"&gt;openSUSE&lt;/a&gt; 11.1 &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; repositories from our primary server and, hence, also our &lt;a href="http://packman.links2linux.de/MIRRORS.html"&gt;mirrors&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you would like to keep a copy (for whatever reason, as they're unmaintained), make sure to pull the tree &lt;b&gt;&lt;u&gt;before Monday&lt;/u&gt;&lt;/b&gt; (2011-02-28).&lt;/p&gt;
&lt;p&gt;The reason, obviously, is that &lt;a href="http://lists.opensuse.org/opensuse-security-announce/2011-01/msg00005.html"&gt;openSUSE 11.1 has gone End-Of-Life since mid-January&lt;/a&gt;, and as we're &lt;a href="http://dev-loki.blogspot.com/2011/02/packman-service-interruption-and.html"&gt;restructuring our repositories&lt;/a&gt;, we do need quite some extra space right now and don't want to put too much of a burden on our &lt;a href="http://packman.links2linux.de/MIRRORS.html"&gt;mirrors&lt;/a&gt; (there are a few &lt;a href="http://en.wikipedia.org/wiki/Rsync"&gt;rsync&lt;/a&gt; mirrors in there too).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1094685400642381328?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.inode.at/suse/11.1' title='Packman: removing 11.1'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1094685400642381328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1094685400642381328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1094685400642381328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1094685400642381328'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/02/packman-removing-111.html' title='Packman: removing 11.1'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3944782031159489267</id><published>2011-02-20T16:37:00.000+01:00</published><updated>2011-02-20T16:37:36.924+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman service interruption and migration</title><content type='html'>&lt;p&gt;The &lt;a href="http://packman.links2linux.org"&gt;Packman website&lt;/a&gt; and &lt;a href="http://packman.inode.at/suse/"&gt;repositories&lt;/a&gt; are going to be broken and in the works for several days (possibly up to a week) starting tonight at 20:00 CET, during which the following services will not be available, or only sporadically:
&lt;ul&gt;
&lt;li&gt;the Packman website itself: &lt;a href="http://packman.links2linux.org"&gt;http://packman.links2linux.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;the Packman repositories, except "Essentials" (see "new repository layout" below)&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;The reason is that we are performing a major migration of our services to
&lt;ul&gt;
&lt;li&gt;the latest version of the openSUSE Build Service (we were still using an old version)&lt;/li&gt;
&lt;li&gt;a new layout of our repositories, to enable a more fine-grained control over what parts of Packman should be used (see below)&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;In order to try to keep a minimum service going during that time, you may use and point people to our new repositories, that already contain the "Essentials" part, which are almost complete with the bare minimum everyone needs (mplayer, vlc, libraries, ...).&lt;br/&gt;
The URLs for the new repositories are as follows:
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://packman.inode.at/suse/openSUSE_11.3/"&gt;http://packman.inode.at/suse/openSUSE_11.3/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://packman.inode.at/suse/openSUSE_11.2/"&gt;http://packman.inode.at/suse/openSUSE_11.2/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://packman.inode.at/suse/Factory/"&gt;http://packman.inode.at/suse/Factory/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://packman.inode.at/suse/SLE_11/"&gt;http://packman.inode.at/suse/SLE_11/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;There are no .repo files there yet, so adding one of these is done as follows:&lt;br/&gt;
&lt;code&gt;zypper ar -n packman http://packman.inode.at/suse/openSUSE_11.3/ packman&lt;/code&gt;&lt;br/&gt;
(obviously adapt the URL to your openSUSE version).&lt;br/&gt;
You may also use one of our mirror sites, as they already have our new repositories: &lt;a href="ftp://packman.links2linux.de/pub/packman/MIRRORS"&gt;ftp://packman.links2linux.de/pub/packman/MIRRORS&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;New repository layout&lt;/h4&gt;
&lt;p&gt; As has been announced (including here), we have had a discussion back in December about whether and how we should reorganize the layout of our repositories. Up to now, and for many years, it has always been "one big repository", which had pros and cons:
&lt;ul&gt;
    &lt;li&gt;&lt;u&gt;good:&lt;/u&gt; easy to use, just add onr repository and be done with it&lt;/li&gt;
    &lt;li&gt;&lt;u&gt;good:&lt;/u&gt; easy for us to manage&lt;/li&gt;
    &lt;li&gt;&lt;u&gt;bad:&lt;/u&gt; you get everything and the kitchen sink, including packages that are duplications of stuff from other repositories, specifically from build.opensuse.org (which didn't exist when Packman was created), and potential conflicts with those&lt;/li&gt;
    &lt;li&gt;&lt;u&gt;bad:&lt;/u&gt; large metadata files to synchronise (although zypper has become pretty fast at that)&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;We came up with a solution to this, as more and more people requested having split repositories, in order to control whatthey want to use from Packman:
&lt;ul&gt;
    &lt;li&gt;we will have four repositories instead of one: Essentials, Multimedia, Games and Extras&lt;/li&gt;
    &lt;li&gt;Essentials will be the bare minimum to get your multimedia experience on openSUSE going (libraries, MPlayer, vlc, ffmpeg, ...)&lt;/li&gt;
    &lt;li&gt;Multimedia will contain additional applications that are not available for openSUSE or only in a crippled build, such as avidemux, etc...&lt;/li&gt;
    &lt;li&gt;Games are, well, games, although we will try to move most of what may be hosted on build.opensuse.org to the games project there&lt;/li&gt;
    &lt;li&gt;Extras is all the rest&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;In order to provide the best of both worlds or, rather, still provide you with the old option of adding everything, we are using a little trick and are running "&lt;code&gt;createrepo&lt;/code&gt;" on the top-level directory, which results in having repository metadata that contains all the packages from all the above mentioned repositories without having to duplicate the RPM files on our server (and mirrors).&lt;/p&gt;
&lt;p&gt;Hence, to make it short and less technical, you can still also use the "old way" too.&lt;/p&gt;

&lt;p&gt;As an example of what needs to be added to zypper, once the migration is complete and .repo files are available too:
&lt;ul&gt;
    &lt;li&gt;add the Essentials repository:&lt;br/&gt;&lt;code&gt;zypper ar -r http://packman.inode.at/suse/openSUSE_11.3/Essentials/Essentials.repo&lt;/code&gt;&lt;/li&gt;
    &lt;li&gt;add the "everything" repository:&lt;br/&gt;&lt;code&gt;zypper ar -r http://packman.inode.at/suse/openSUSE_11.3/packman.repo&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;I will announce our progress &lt;a href="http://dev-loki.blogspot.com"&gt;on my blog&lt;/a&gt; (which is also aggregated on &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt;) and will obviously post another announcement here once our migration is complete.&lt;/p&gt;
&lt;p&gt;In advance, sorry for the inconvenience, and thank you for your understanding. We are convinced that our move will not only provide us with a better infrastructure, but also improve your experience with Packman and openSUSE.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3944782031159489267?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://lists.opensuse.org/opensuse-project/2011-02/msg00213.html' title='Packman service interruption and migration'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3944782031159489267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3944782031159489267' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3944782031159489267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3944782031159489267'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/02/packman-service-interruption-and.html' title='Packman service interruption and migration'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3633207857767693679</id><published>2011-02-16T00:49:00.000+01:00</published><updated>2011-02-16T00:49:52.075+01:00</updated><title type='text'>New repository for openSUSE artwork and marketing material</title><content type='html'>&lt;p&gt;I just created a new &lt;a href="http://gitorious.org/opensuse-artwork/opensuse-artwork"&gt;git repository for openSUSE artwork and marketing material on gitorious.org&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="irc://irc.freenode.org/#opensuse-marketing"&gt;We&lt;/a&gt; decided to create a new repository instead of using the &lt;a href="http://gitorious.org/opensuse/art"&gt;existing one&lt;/a&gt; because it contains the trademarked branding content as well.&lt;/p&gt;
&lt;p&gt;Instructions on how to get started and the workflow to retrieve and modify content there is &lt;a href="http://en.opensuse.org/openSUSE:Marketing_and_Artwork_repository"&gt;explained on the wiki&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3633207857767693679?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://en.opensuse.org/openSUSE:Marketing_and_Artwork_repository' title='New repository for openSUSE artwork and marketing material'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3633207857767693679/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3633207857767693679' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3633207857767693679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3633207857767693679'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/02/new-repository-for-opensuse-artwork-and.html' title='New repository for openSUSE artwork and marketing material'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6674873133667378723</id><published>2011-02-08T02:46:00.000+01:00</published><updated>2011-02-08T02:46:23.116+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM 2011 EOL</title><content type='html'>&lt;p&gt;So &lt;a href="http://fosdem.org/2011"&gt;FOSDEM 2011&lt;/a&gt; is over, at last, and it was a huge success, as always (mind you, I'm one of the organizers, my opinions might be just a little subjective here &lt;code&gt;;)&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;From the organizational point of view, I was less active this year compared the the 7 previous ones (yes, it's already the 8th time for me, and I noticed how annoying it is to say "8th" in English quite a few times during the weekend): lots of procastrination and my "spare time" being vampirized by other activities, most prominently work on the &lt;a href="http://en.opensuse.org/openSUSE:Board"&gt;openSUSE Board&lt;/a&gt; (which I am now &lt;a href="http://dev-loki.blogspot.com/2011/01/why-i-am-not-running-for-opensuse-board.html"&gt;no longer part of&lt;/a&gt;). Definitely something to fix for next year, and a big mea culpa to my mates on the FOSDEM organization team.&lt;/p&gt;
&lt;p&gt;That being said, it was still a lot of work, as it is for every edition, and while I suppose that most if not all the visitors are sorry that the event is already over, we're pretty happy it is, I'm sure you can understand why &lt;code&gt;:)&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;All in all, it was very successful. There were more visitors, as each year, and I believe that we've really reached the limits of the infrastructure we're using at the moment. That means we'll have a few "interesting" challenges ahead of us for the next edition (no, we won't move away from the ULB nor from the Solbosch campus, we'll just have to stretch the space used by FOSDEM a bit more to use more and larger rooms). But more about that in a few months' time.&lt;/p&gt;
&lt;p&gt;It was also very smooth for everything else. Having so many volunteers to help us out during the weekend, including for the very tedious task of setting things up, was really ${deity}-send. Thanks to the support of the ULB networking team, Belnet as well as Cisco made FOSDEM provide what must be the best possible wifi infrastructure at an event of such size. Our usual &lt;a href="http://www.lpice.eu/Samenwerking-FOSDEM-en.184.0.html?&amp;L=3"&gt;collaboration with LPI&lt;/a&gt; went great as well (was awesome to meet my good friend &lt;a href="http://twitter.com/fabricemous"&gt;Fabrice Mous&lt;/a&gt; again) as it provided the opportunity for ~130 exams to be taken by FOSDEM visitors.&lt;/p&gt;
&lt;p&gt;We even managed to fill up our largest room, &lt;a href="http://fosdem.org/2011/schedule/room/janson"&gt;Janson&lt;/a&gt;, which is one of the largest auditoriums in Belgium with 1400 seats, up to the limit and even a bit more for the keynotes. That was impressive, to say the least.&lt;/p&gt;
&lt;p&gt;It was a great pleasure to meet so many fine people and friends again (including, but not exclusively, Henne Vogelsang, Peter Linnell, Andrew Wafaa, Jürgen Weigert, Will Stephenson, Bruno Friedmann, Pavol Rusnak, Michal Hrusecky, Vincent Untz, Michael Meeks, Daniel Seuffert, Frank Karlitschek, Delphine Lebedel, Tristan Nitot, William Quiviger, Tom Marble, etc etc etc... -- sorry if I forgot you, I'm just too lazy and tired to keep pulling names out of my brain at this point, too many to list &lt;code&gt;:)&lt;/code&gt;), even if it was usually only for a short chat as I have to keep running around all over the venue to get things done.&lt;/p&gt;
&lt;p&gt;That's usually the point where one realizes again that it is so much about the people, more than anything else (you are fine to disagree here, dear reader, it is just my very humble opinion). So many FOSS projects are driven by so many great people, I'd just love it to last for a couple of weeks to have the time to have beers (or coffee) with every single one of them, at the very least the ones I already know. I'm really happy and thankful -- to FOSDEM, I guess -- to be so lucky to have been in touch with so many interesting people, and obviously hope to still be in the future.&lt;/p&gt;
&lt;p&gt;And FOSDEM is also a very inclusive event, where projects and initiatives covering the whole spectrum in terms of technologies, domains and (OSI compatible) licenses get together to have a great deal of fun. I believe that every single visitor would agree that it is the most effective way to get our motivation batteries loaded to spend our spare time, energy, love, sweat and blood into doing such great things.&lt;/p&gt;
&lt;p&gt;On the cross-pollination front, which is more and more of a priority for us, I'm happy to see the &lt;a href="http://fosdem.org/2011/schedule/track/crossdistro_devroom"&gt;Crossdistro developer room&lt;/a&gt; clearly evolve into the right direction (thanks to &lt;a href="http://grep.be/"&gt;Wouter Verhelst&lt;/a&gt; (of Debian fame) to take care of that); where not quite there yet, as intentions need to be followed by much more action, but it is a step forward already, and such things do take a good deal of time, as much as many of us would like to see it happening as soon as possible, especially at openSUSE. FOSDEM is such a great opportunity to get together with other projects and people, as so many of them are on the spot.&lt;/p&gt;
&lt;p&gt;For a couple of final words, my big "thank you" goes out, in no particular order, to the volunteers who helped us during the weekend, to the sponsors that support the event, to the visitors who have donated money in order to keep giving us the chance of remaining independent, to the people and projects who were there at the stands, devrooms, lightning talks, to the speakers who accepted our invitations, obviously to the other members of the FOSDEM organization team (we did it again! &lt;code&gt;:D&lt;/code&gt;), to the ULB and CI for providing us with their infrastructure, and, of course, to the people who attended.&lt;/p&gt;
&lt;p&gt;On a side note, if you were at FOSDEM 2011, please take a minute to fill out our &lt;a href="http://fosdem.org/2011/census"&gt;census&lt;/a&gt; as well as our &lt;a href="http://fosdem.org/2011/feedback"&gt;feedback form&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6674873133667378723?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fosdem.org/2011' title='FOSDEM 2011 EOL'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6674873133667378723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6674873133667378723' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6674873133667378723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6674873133667378723'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/02/fosdem-2011-eol.html' title='FOSDEM 2011 EOL'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8509875065104686143</id><published>2011-01-14T08:18:00.000+01:00</published><updated>2011-01-14T08:18:14.795+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='elections'/><category scheme='http://www.blogger.com/atom/ns#' term='board'/><title type='text'>Why I am not running for the openSUSE Board</title><content type='html'>&lt;p&gt;As you might have noticed, I am not a candidate for the &lt;a href="http://news.opensuse.org/2011/01/12/the-opensuse-board-election-2010/"&gt;current openSUSE Board Elections&lt;/a&gt;, and a few people have asked me why.&lt;/p&gt;
&lt;p&gt;The reason is simple: I have been elected on the two previous Board instances, and have also been part of the initial "bootstrap Board" (as I like to call it) where there were no elections (chicken/egg) and where our primary mission was to set up an election process.&lt;/p&gt;
&lt;p&gt;The Board Election Rules &lt;a href="http://en.opensuse.org/openSUSE:Board_election#Restanding:"&gt;state that&lt;/a&gt; "&lt;i&gt;openSUSE board members can serve for up to two consecutive election periods. After that they must stand down for at least one election period, but may run again after the one election period break&lt;/i&gt;", and that's simply what's happening in this case -- and I was even one of the people who made that rule be part of the Election Rules &lt;tt&gt;;D&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;So no conspiracy theory, no anger or disgust, it's simply sensible mechanics of a democratic system.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8509875065104686143?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://news.opensuse.org/2011/01/12/the-opensuse-board-election-2010/' title='Why I am not running for the openSUSE Board'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8509875065104686143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8509875065104686143' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8509875065104686143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8509875065104686143'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/01/why-i-am-not-running-for-opensuse-board.html' title='Why I am not running for the openSUSE Board'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3609996662510755261</id><published>2011-01-07T00:13:00.000+01:00</published><updated>2011-01-07T00:13:33.075+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Review of openSUSE Trademark Guidelines</title><content type='html'>&lt;p&gt;&lt;a href="http://en.opensuse.org/User:Byunashko"&gt;Bryen&lt;/a&gt; just opened an &lt;a href="https://features.opensuse.org/311039"&gt;interesting feature request about a review of the current openSUSE trademark guidelines (#311039)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The current state of things is that Novell owns the openSUSE and openSUSE related trademarks (which include things like the openSUSE name and the openSUSE branding). While at some point I would love to see those trademarks go into the ownership of the openSUSE foundation (but let's first actually have that foundation &lt;tt&gt;;)&lt;/tt&gt;), it is better to keep them with Novell until we have a properly working and funded foundation, because owning trademarks is also an obligation to enforce them. And that potentially means legal enforcement as well.&lt;/p&gt;
&lt;p&gt;As the trademarks are owned and enforced by Novell, permissions to use trademarked material must be sent to Novell (&lt;code&gt;permission@novell.com&lt;/code&gt;, actually), but in practice, Novell's legal team has been delegating the responsibility of evaluating such requests to the openSUSE board.&lt;/p&gt;
&lt;p&gt;Nevertheless, the board has to take decisions within a certain framework. Part of that framework, obviously, are a few legal aspects, but more prominently, it is what is currently defined in the &lt;a href="http://en.opensuse.org/openSUSE:Trademark_guidelines"&gt;openSUSE Trademark Guidelines&lt;/a&gt; document.&lt;/p&gt;
&lt;p&gt;Bryen's feature request (which is essentially filed as such because &lt;a href="http://en.opensuse.org/openSUSE:Openfate"&gt;openFATE&lt;/a&gt; gives us a good tool for transparency and collecting feedback) is precisely about that point: let's take a step back and rethink our trademark guidelines.&lt;/p&gt;
&lt;p&gt;The task isn't as simple as it might sound, of course, as we have to find a good balance between a few, most probably contradictory things:
&lt;ol&gt;
&lt;li&gt;make the rules short and simple: the simpler they are, the easier to grasp and the less daunting to approach&lt;/li&gt;
&lt;li&gt;enable derivatives of openSUSE: yes, we'd love to see more and more derivative works based on openSUSE (but the &lt;a href="http://en.opensuse.org/openSUSE:Trademark_guidelines"&gt;current guidelines&lt;/a&gt;, which the board has to abide by, do not really reflect that)&lt;/li&gt;
&lt;li&gt;prevent abuse&lt;/li&gt;
&lt;/ol&gt;
&lt;/p&gt;
&lt;p&gt;Which is why we'd love to hear from &lt;b&gt;YOU&lt;/b&gt; what you believe are genuinely good use cases that we want to enable and support and what you believe would be cases of abuse, especially if you have been involved or have been pondering about making a derivative of openSUSE or, more generally, use the openSUSE trademarks in one way or another.&lt;/p&gt;
&lt;p&gt;To do so, &lt;a href="https://features.opensuse.org/311039"&gt;just click here&lt;/a&gt;, log in with your openSUSE account, and give us constructive feedback. Thanks !&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3609996662510755261?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://features.opensuse.org/311039' title='Review of openSUSE Trademark Guidelines'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3609996662510755261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3609996662510755261' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3609996662510755261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3609996662510755261'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/01/review-of-opensuse-trademark-guidelines.html' title='Review of openSUSE Trademark Guidelines'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5840441340114733265</id><published>2011-01-03T02:09:00.000+01:00</published><updated>2011-01-03T02:09:27.641+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><category scheme='http://www.blogger.com/atom/ns#' term='mplayer'/><title type='text'>MPlayer and smplayer update</title><content type='html'>&lt;p&gt;I've just updated the &lt;a href="http://packman.links2linux.org/package/MPlayer"&gt;&lt;code&gt;MPlayer&lt;/code&gt;&lt;/a&gt; and &lt;a href="http://packman.links2linux.org/package/smplayer"&gt;&lt;code&gt;smplayer&lt;/code&gt;&lt;/a&gt; in the &lt;a href="http://packman.links2linux.org"&gt;Packman repository&lt;/a&gt; to their latest respective development revisions.&lt;/p&gt;
&lt;p&gt;I also enabled &lt;a href="http://packman.links2linux.org/package/rtmpdump"&gt;&lt;code&gt;rtmpdump&lt;/code&gt;&lt;/a&gt;, &lt;a href="http://packman.links2linux.org/package/mpg123"&gt;&lt;code&gt;mpg123&lt;/code&gt;&lt;/a&gt; and &lt;code&gt;mpcdec&lt;/code&gt; support.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;MPlayer&lt;/code&gt; changed the way it handles &lt;a href="http://en.wikipedia.org/wiki/Closed_captioning"&gt;closed captions&lt;/a&gt; in a recent revision, as it now takes an option to the &lt;code&gt;-subcc&lt;/code&gt; parameter to select which channel to use. Because of that, I also had to update the (brilliant) &lt;a href="http://packman.links2linux.org/package/smplayer"&gt;&lt;code&gt;smplayer&lt;/code&gt;&lt;/a&gt; GUI frontend for &lt;code&gt;mplayer&lt;/code&gt; in order to support that change.&lt;/p&gt;
&lt;p&gt;Needless to say, if you encounter any issue, please report it by email to &lt;code&gt;packman&lt;/code&gt; with the domain &lt;code&gt;links2linux.de&lt;/code&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5840441340114733265?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.links2linux.de/package/MPlayer' title='MPlayer and smplayer update'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5840441340114733265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5840441340114733265' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5840441340114733265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5840441340114733265'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2011/01/mplayer-and-smplayer-update.html' title='MPlayer and smplayer update'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6998958229588990035</id><published>2010-12-31T16:55:00.001+01:00</published><updated>2010-12-31T16:56:01.573+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Discussion: Packman repository layout</title><content type='html'>&lt;br /&gt;
Just to inform everyone (who reads &lt;a href="http://planet.opensuse.org/"&gt;Planet openSUSE&lt;/a&gt; &lt;tt&gt;;)&lt;/tt&gt;) that we have started a &lt;a href="http://lists.links2linux.de/pipermail/packman/2010-December/009213.html"&gt;crucial discussion on the packman mailing-list&lt;/a&gt; about (potentially) changing the layout of repositories.&lt;br /&gt;
&lt;br /&gt;
As most if not all of you are using &lt;a href="http://packman.links2linux.org/"&gt;Packman&lt;/a&gt; on openSUSE, your opinion is more than welcome and if you would like to chime in, please give us your feedback (by email, &lt;b&gt;NOT&lt;/b&gt; as comments on this blog post).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ultimately, the Packman team will obviously take the decision, but we are very concerned about what would suit our users best and, hence, we'd love to hear what you'd prefer us to do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6998958229588990035?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://lists.links2linux.de/pipermail/packman/2010-December/009213.html' title='Discussion: Packman repository layout'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6998958229588990035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6998958229588990035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6998958229588990035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6998958229588990035'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/12/discussion-packman-repository-layout.html' title='Discussion: Packman repository layout'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1087386034005895392</id><published>2010-11-23T23:08:00.001+01:00</published><updated>2010-11-23T23:14:52.486+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='attachmate'/><category scheme='http://www.blogger.com/atom/ns#' term='novell'/><title type='text'>Attachmate acquires Novell: my 0.02EUR</title><content type='html'>&lt;p&gt;As &lt;a href="http://en.opensuse.org/openSUSE:Board"&gt;we&lt;/a&gt; &lt;a href="http://news.opensuse.org/2010/11/22/novell-agrees-to-be-acquired-by-attachmate-corporation/"&gt;announced&lt;/a&gt; yesterday (and &lt;a href="http://blog.hennevogel.de/"&gt;Henne&lt;/a&gt; did 90% of the work, btw), Novell is probably going to be acquired. Yes, probably, it's not a done deal yet, but is probably what is going to happen.&lt;/p&gt;

&lt;p&gt;Now, my very personal 2 cents about it. Not the view of the entire &lt;a href="http://en.opensuse.org/openSUSE:Board"&gt;openSUSE board&lt;/a&gt;, just me, from my very own experience and feelings.&lt;/p&gt;

&lt;p&gt;So it's random conspiracy time again, not like we haven't been there before, did we (just google for "Novell Microsoft deal" and look at all those doomsday scenarios).&lt;/p&gt;
&lt;p&gt;Actually I don't even want to comment on those theories. They may be founded, they might not. Most people usually get it wrong. And I'm not so sure about most tech journalists either. Anyway, I just wanted to say that hey, acquisitions come and go, software patents suck (and not just for FOSS, but for the whole IT industry and, through that, for most people on the planet -- yes, for you too, whoever you are). As stated, for now, it's business as usual for us, the openSUSE community. We don't see any reason to go wild and panic right now. Let's wait and see. There might be a very positive outcome, just as it could be doomsday. But we'll all keep on living and have fun, one way or the other.&lt;/p&gt;
&lt;p&gt;Right now, no one knows anything. &lt;a href="http://www.attachmate.com/Press/PressReleases/nov-22-2010-SUSE.htm"&gt;Attachmate's announcement so far&lt;/a&gt; seems encouraging, and I believe they need a fair chance. There is no point always looking for the worst in everyone. Oh, and whoever works for a larger corporation, be it in IT or not, knows that a business is not a living creature with a "big plan", moving into a single direction (that's even true of Microsoft, incidentally). So let's not get paranoid here.&lt;/p&gt;
&lt;p&gt;I understand the concerns, and for obvious reasons (uncertainty), I can't say that I'm 100% relaxed at this point, but there is really no foundation for going into any theory.&lt;/p&gt;
&lt;p&gt;After all, we, the openSUSE community, have big plans, and we're slowly emerging from a phase of introspection (which is a very positive thing, unlike what some have been writing). The community and Novell have been moving at different paces for quite some time, from the launch of openSUSE.org and now, and it's only normal that at the point where we've reached quite a lot of (common) objectives, such as opening up and lifting most if not all barriers to non-Novell employees to directly contribute to the project and distribution, we need to sit back a little and think about what we need to tackle next.&lt;/p&gt;
&lt;p&gt;From the feedback we received from our contributors, and pretty much our own assessment too, we need to concentrate more on the community / non-technical aspects right now. Which is why we've been and still are working on a strategy, on a non-for-profit/foundation, and a few other things (such as improving our communication and reducing the rather confusing abundance of too loosely connected communication channels).&lt;/p&gt;
&lt;p&gt;So let's just focus on what we do have influence on, and that's getting involved into the project, contributing ideas, time, skills and love into making this an even better place for people to interact and contribute, and of course continuously improving (Kaizen!) our distribution and its technical infrastructure too.&lt;/p&gt;
&lt;p&gt;We are of course looking forward to getting in touch with people from Attachmate, at all levels, and give them an honest and fair chance to become our next major supporter, in return for a solid and vibrant foundation for high quality enterprise products. Not that it's our main goal, but a cooperation where everyone wins.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1087386034005895392?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://news.opensuse.org/2010/11/22/novell-agrees-to-be-acquired-by-attachmate-corporation/' title='Attachmate acquires Novell: my 0.02EUR'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1087386034005895392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1087386034005895392' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1087386034005895392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1087386034005895392'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/11/attachmate-acquires-novell-my-002eur.html' title='Attachmate acquires Novell: my 0.02EUR'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3943186189138214642</id><published>2010-11-11T23:37:00.000+01:00</published><updated>2010-11-11T23:37:04.708+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='sysstat'/><title type='text'>sysstat 9.1.6</title><content type='html'>&lt;p&gt;Just finished packaging the latest version of &lt;a href="http://sebastien.godard.pagesperso-orange.fr/"&gt;&lt;code&gt;sysstat&lt;/code&gt;&lt;/a&gt; (a very powerful monitoring tool), namely version 9.1.6, in the &lt;a href="http://r.opensu.se/server:monitoring.repo"&gt;&lt;code&gt;server:monitoring&lt;/code&gt; repository&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you are using &lt;code&gt;sysstat&lt;/code&gt; to keep statistics of your host, be very, very careful before upgrading to this version, as upstream changed the format of the binary statistic logs in an incompatible way, which means that you will not be able to read your old stats any more.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3943186189138214642?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se/b/server:monitoring/sysstat' title='sysstat 9.1.6'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3943186189138214642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3943186189138214642' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3943186189138214642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3943186189138214642'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/11/sysstat-916.html' title='sysstat 9.1.6'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-108501350224852419</id><published>2010-09-20T02:35:00.003+02:00</published><updated>2010-09-20T02:48:05.195+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE Conference 2010 countdown</title><content type='html'>&lt;p&gt;Sirko "gnokii" Kemter made the initial artwork, I made the countdown:&lt;/p&gt;
&lt;img src="http://counter.opensuse.org/conf/2010/medium.png"/&gt;
&lt;p&gt;To add the countdown to the &lt;a href="http://en.opensuse.org/Portal:Conference"&gt;openSUSE Conference 2010&lt;/a&gt; to your blog/site/whatever, use one of the following URL for the &lt;code&gt;&amp;lt;img/&amp;gt;&lt;/code&gt; tag:
&lt;img src="http://counter.opensuse.org/conf/2010/small.png" style="float:left; margin: 0.5em 1em 0.5em;"/&gt;
&lt;ul&gt;
&lt;li&gt;&lt;u&gt;400x400:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/large.png"&gt;http://counter.opensuse.org/conf/2010/large.png&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;u&gt;256x256:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/medium.png"&gt;http://counter.opensuse.org/conf/2010/medium.png&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;u&gt;130x130:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/small.png"&gt;http://counter.opensuse.org/conf/2010/small.png&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p style="clear:both;"&gt;For a slightly funnier version:
&lt;img src="http://counter.opensuse.org/conf/2010/small-terminal.png" style="float:left; margin: 0.5em 1em 0.5em;"/&gt;
&lt;ul&gt;
&lt;li&gt;&lt;u&gt;400x400:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/large-terminal.png"&gt;http://counter.opensuse.org/conf/2010/large-terminal.png&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;u&gt;256x256:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/medium-terminal.png"&gt;http://counter.opensuse.org/conf/2010/medium-terminal.png&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;u&gt;130x130:&lt;/u&gt; &lt;a href="http://counter.opensuse.org/conf/2010/small-terminal.png"&gt;http://counter.opensuse.org/conf/2010/small-terminal.png&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;br style="clear:both;"/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-108501350224852419?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/conf/2010/large.png' title='openSUSE Conference 2010 countdown'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/108501350224852419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=108501350224852419' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/108501350224852419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/108501350224852419'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/09/opensuse-conference-2010-countdown.html' title='openSUSE Conference 2010 countdown'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4889236113655670040</id><published>2010-09-19T11:34:00.004+02:00</published><updated>2010-09-19T11:39:51.183+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Added Packman to r.opensu.se</title><content type='html'>&lt;p&gt;Yesterday I added support for the &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; &lt;a href="http://packman.inode.at/suse/"&gt;repository&lt;/a&gt; to the &lt;a href="http://r.opensu.se"&gt;repository redirector service at r.opensu.se&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This means that now, you can simply add the Packman repository with the following command:&lt;br/&gt;&lt;div style="background:#000;color:#fff;padding:0.5em;"&gt;&lt;tt&gt;zypper ar -r http://r.opensu.se/packman.repo&lt;/tt&gt;&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;Also added some more explanations about how the redirector works with regards to proxying .repo files, as well as how to test/debug/verify what it sends back using &lt;code&gt;curl&lt;/code&gt;. Read more at &lt;a href="http://r.opensu.se"&gt;http://r.opensu.se&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4889236113655670040?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se' title='Added Packman to r.opensu.se'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4889236113655670040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4889236113655670040' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4889236113655670040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4889236113655670040'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/09/added-packman-to-ropensuse.html' title='Added Packman to r.opensu.se'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1270555010683501417</id><published>2010-09-13T00:56:00.001+02:00</published><updated>2010-09-13T00:57:21.511+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>My dot Xdefaults</title><content type='html'>&lt;p&gt;~/.Xdefaults is the configuration file for all X applications and while most nowadays provide configuration interfaces, some can only be configured there. &lt;a href="http://software.schmorp.de/pkg/rxvt-unicode.html"&gt;rxvt-unicode&lt;/a&gt; is one of them, but it's probably the fastest X terminal emulator available today, both in terms of startup and render times. It is also exceptionally good at rendering unicode.&lt;/p&gt;

&lt;p&gt;The default colors in terminals are quite.. well, let's say "flashy" and not necessarily sweet on the eye, to say the least. Some months ago, I ran over an Xdefaults configuration for rxvt-unicode that changes those colors to a nice-on-the-eye, consistent set of darker colors, which fit exceptionally well in a terminal with a black background. Unfortunately, I don't have the URL any more, and all credits go to the original author.&lt;/p&gt;

&lt;p&gt;As a side note, rxvt-unicode also supports opening URLs in browsers, amongst many other things.&lt;/p&gt;

&lt;p&gt;If you're interested, &lt;a href="http://linux01.gwdg.de/~pbleser/files/dot.Xdefaults.txt"&gt;here is my rxvt-unicode configuration&lt;/a&gt;, and proceed as follows:
&lt;div style="background:#000;color:#fff;padding:0.5em;font-family:monospace;"&gt;curl \&lt;br/&gt;
http://linux01.gwdg.de/~pbleser/files/dot.Xdefaults.txt \&lt;br/&gt;
&gt;&gt; ~/.Xdefaults&lt;br/&gt;
xrdb -merge &lt;~/.Xdefaults&lt;br/&gt;
rpm -q rxvt-unicode || zypper in rxvt-unicode&lt;br/&gt;
urxvt &amp;&lt;/div&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1270555010683501417?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://linux01.gwdg.de/~pbleser/files/dot.Xdefaults.txt' title='My dot Xdefaults'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1270555010683501417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1270555010683501417' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1270555010683501417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1270555010683501417'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/09/my-dot-xdefaults.html' title='My dot Xdefaults'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1755641803764133202</id><published>2010-09-12T23:06:00.001+02:00</published><updated>2010-09-12T23:06:42.736+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman for SLE 11 SP1</title><content type='html'>At &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt;, and with the support of Dinar "k0da" Valeev, who provided us with an additional build host for our &lt;a href="http://en.opensuse.org/Build_Service"&gt;Build Service&lt;/a&gt; instance, we now provide a selected set of "essential" multimedia/codec packages for &lt;a href="http://www.novell.com/linux/"&gt;SUSE Linux Enterprise 11 (SP1)&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
To add the repository, do as follows:&lt;div style="background:#000;color:#fff;font-family:monospace;padding:0.5em;"&gt;&lt;tt&gt;zypper ar -r \&lt;br /&gt;
http://packman.inode.at/suse/sle_11_sp1/packman.repo&lt;/tt&gt;&lt;/div&gt;&lt;br /&gt;
Note that we haven't been able to do a lot of testing yet, so if there are any issues and/or missing packages, please let us know by sending us an email to the Packman mailing-list (packman followed by the at sign and then the domain name links2linux followed by a dot and de, no registration needed).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1755641803764133202?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.inode.at/suse/sle_11_sp1/' title='Packman for SLE 11 SP1'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1755641803764133202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1755641803764133202' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1755641803764133202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1755641803764133202'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/09/at-packman-and-with-support-of-dinar.html' title='Packman for SLE 11 SP1'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1076693016167842247</id><published>2010-08-01T09:27:00.005+02:00</published><updated>2010-08-01T10:11:29.333+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='sed'/><title type='text'>Shell trick: CRLF to LF</title><content type='html'>I do this again and again in RPM .spec files, so just in case: a little trick to remove the CR from CRLF ;) (Windows uses two bytes for end-of-line markers, namely CR and LF, while Linux and Unix only use one: LF)

You might of course use &lt;a href="http://linux.about.com/od/commands/l/blcmdl1_dos2uni.htm"&gt;dos2unix&lt;/a&gt; or &lt;a href="http://linux.die.net/man/1/recode"&gt;recode&lt;/a&gt;, but this one works in-place, which means that you don't need to make a copy, work on the copy and then copy (heh) that file back onto the original -- here is how to do it with &lt;code&gt;dos2unix&lt;/code&gt;: &lt;pre style="background:#000;color:#fff;padding:0.5em;"&gt;cp file file.orig &amp;&amp; dos2unix &lt;file.orig &gt;file&lt;/pre&gt;
And here the shorter version, using &lt;a href="http://linux.die.net/man/1/sed"&gt;sed&lt;/a&gt; and its in-place editing feature:&lt;pre style="background:#000;color:#fff;padding:0.5em;"&gt;sed -i 's/\r$//' file&lt;/pre&gt;
Might as well do it with Perl, which &lt;a href="http://bright-green.com/blog/2003_06_08/perl_inplace_editing_howto.html"&gt;also supports in-place editing&lt;/a&gt;:&lt;pre style="background:#000;color:#fff;padding:0.5em;"&gt;perl -pi 's/\r$//' file&lt;/pre&gt;

&lt;b&gt;Update:&lt;/b&gt; as _Marcus_ just told me, &lt;code&gt;recode&lt;/code&gt; actually does in-place editing by default, my bad &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1076693016167842247?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1076693016167842247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1076693016167842247' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1076693016167842247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1076693016167842247'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/08/shell-trick-crlf-to-lf.html' title='Shell trick: CRLF to LF'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6107903818897901021</id><published>2010-08-01T01:42:00.002+02:00</published><updated>2010-08-01T02:04:23.525+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='solr'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='webpin'/><title type='text'>openSUSE package index and search</title><content type='html'>I've been busy working on &lt;a href="http://gitorious.net/opensuse/webpin2"&gt;a new implementation&lt;/a&gt; of &lt;a href="http://packages.opensuse-community.org"&gt;our beloved "webpin"&lt;/a&gt;, which is actually a service for searching for packages in the insane amount of repositories and packages we have, in &lt;a href="http://software.opensuse.org"&gt;the distribution&lt;/a&gt;, in all &lt;a href="http://download.opensuse.org/repositories"&gt;openSUSE Build Service repositories&lt;/a&gt;, as well as on &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt;.

The thing is, it's a bit dated now, and its features are limited by the fact that it's using &lt;a href="http://www.mysql.com"&gt;a relational database&lt;/a&gt; to perform search operations. I've been digging into &lt;a href="http://lucene.apache.org/solr/"&gt;Apache Solr&lt;/a&gt; quite a bit over the last few months (did I already mention that it totally rocks? &lt;tt&gt;:)&lt;/tt&gt;) and I thought.. hmm.. why not use that for indexing packages/repositories ?

So I just started out on a quick prototype, to see how well it suits the job as well as how well it performs. The results are quite stunning, to say the least, both in terms of performance (results just take a couple of milliseconds on a search index that includes openSUSE 11.1, 11.2, 11.3, all non-home: repositories in the OBS, as well as Packman for 11.1, 11.2 and 11.3.. that's.. quite a lot) as well as in terms of the quality of results -- but the latter is hardly a surprise, as Solr really excels at that. It's what it has specifically been designed and implemented for, after all.

So &lt;a href="http://gitorious.net/opensuse/webpin2"&gt;there it is&lt;/a&gt;, it's already completely functional, and consists of &lt;a href="http://gitorious.net/opensuse/webpin2/trees/master/solr/conf"&gt;a Solr schema definition&lt;/a&gt; as well as a bunch of Perl scripts to &lt;a href="http://gitorious.net/opensuse/webpin2/blobs/master/osc-reposync"&gt;crawl&lt;/a&gt;, &lt;a href="http://gitorious.net/opensuse/webpin2/blobs/master/repomanager"&gt;index&lt;/a&gt;,  &lt;a href="http://gitorious.net/opensuse/webpin2/blobs/master/repochecker"&gt;verify&lt;/a&gt; and &lt;a href="http://gitorious.net/opensuse/webpin2/blobs/master/client"&gt;query&lt;/a&gt;.

The next items on the TODO list are as follows:&lt;ul&gt;&lt;li&gt;implement a REST API (send a HTTP GET, receive XML in return.. and/or JSON, or whatever else, but definitely XML) that is compatible with &lt;a href="http://api.opensuse-community.org/webpin/"&gt;the current webpin service&lt;/a&gt;, &lt;a href="http://dev-loki.blogspot.com/search/label/webpin"&gt;the current command-line client&lt;/a&gt;, as well as the &lt;a href="http://lizards.opensuse.org/2009/01/09/webpin-search-in-yast-for-opensuse-111/"&gt;client in YaST2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;implement a new web user interface&lt;/li&gt;&lt;/ul&gt;
After that, I shall probably implement an additional REST API that supports more features, as a wealth of more precise and/or complex search options are provided by Solr.

I will implement those (REST API and web user interface) in Java, given that there is a &lt;a href="http://wiki.apache.org/solr/Solrj"&gt;faster, native format&lt;/a&gt; to send queries and fetch results to/from Solr. That being said, applications and web frontends that interact with Solr can be written in quite a lot of programming languages.

Once I'll have a prototype of the above, I'll let you know, and will ask for testing and feedback &lt;tt&gt;:)&lt;/tt&gt;
If you're already interested in more information or want to help developing, please &lt;a href="mailto:pascal.bleser@opensuse.org"&gt;let me know&lt;/a&gt; (or just &lt;a href="irc://irc.freenode.net/yaloki,isnick"&gt;poke me on IRC&lt;/a&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6107903818897901021?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://gitorious.net/opensuse/webpin2' title='openSUSE package index and search'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6107903818897901021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6107903818897901021' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6107903818897901021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6107903818897901021'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/08/opensuse-package-index-and-search.html' title='openSUSE package index and search'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2535376316573575332</id><published>2010-08-01T01:36:00.003+02:00</published><updated>2010-08-01T01:41:48.896+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='NX'/><title type='text'>Please test NX 3.4.0</title><content type='html'>On a request, I updated the openSUSE &lt;a href="http://www.nomachine.com/"&gt;NX&lt;/a&gt; packages to the latest release, 3.4.0.

If you're an NX user, please test &lt;a href="http://r.opensu.se/home:pbleser:branches:X11:RemoteDesktop.repo"&gt;the packages&lt;/a&gt; and report whether they work for you or not. As I don't use NX myself, I'd prefer to have a bit of feedback before pushing the changes to the &lt;a href="http://r.opensu.se/X11:RemoteDesktop"&gt;X11:RemoteDesktop&lt;/a&gt; repository.

The command-line snippet to do so is as follows (must be done as root, for obvious reasons): &lt;pre style="background:#000;color:#fff;font-family:monospace;padding:0.5em;"&gt;zypper ar -r \
http://r.opensu.se/home:pbleser:branches:X11:RemoteDesktop.repo &amp;&amp; \
zypper dup --repo home:pbleser:branches:X11:RemoteDesktop&lt;/pre&gt;

For reporting success and failure, please &lt;a href="mailto:pascal.bleser@opensuse.org?subject=Feedback on NX 3.4.0"&gt;send me an email&lt;/a&gt; or &lt;a href="irc://irc.freenode.net/yaloki,isnick"&gt;let me know on IRC&lt;/a&gt;.

Thanks! &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2535376316573575332?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2535376316573575332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2535376316573575332' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2535376316573575332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2535376316573575332'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/08/please-test-nx-340.html' title='Please test NX 3.4.0'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1654710795050805476</id><published>2010-08-01T01:32:00.002+02:00</published><updated>2010-08-01T01:35:43.955+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>pastebinit with susepaste support</title><content type='html'>Michal Hrusecky recently &lt;a href="https://michal.hrusecky.net/index.php/blog/show/SUSE-Paste.html"&gt;blogged about his openSUSE paste site&lt;/a&gt;. I just added support for &lt;a href="http://susepaste.org"&gt;it&lt;/a&gt; in &lt;a href="http://www.stgraber.org/category/pastebinit"&gt;pastebinit&lt;/a&gt;, a nice command-line tool to paste files (or stdin) to various paste sites.

You can grab it (with &lt;a href="http://susepaste.org"&gt;susepaste.org&lt;/a&gt; support &lt;tt&gt;:)&lt;/tt&gt;) from the &lt;a href="http://r.opensu.se/network:utilities.repo"&gt;network:utilities repository&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1654710795050805476?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se/network:utilities' title='pastebinit with susepaste support'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1654710795050805476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1654710795050805476' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1654710795050805476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1654710795050805476'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/08/pastebinit-with-susepaste-support.html' title='pastebinit with susepaste support'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4350267971156235444</id><published>2010-07-18T13:26:00.003+02:00</published><updated>2010-07-18T13:29:37.766+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>List of openSUSE packages</title><content type='html'>Here is a little shell snippet to get the list of all the RPM packages that ship with e.g. openSUSE 11.3 (for other releases, just change the URL accordingly):
&lt;div style="padding:0.5em;background:#000;color:#fff;font-family:monospace;white-space:nowrap;"&gt;curl -Ls http://download.opensuse.org/distribution/11.3/repo/oss/INDEX.gz \
| zgrep '\.rpm$' | grep '^./suse' \
| cut -f4 -d/ | cut -f1,2,3 -d. \
| sort -fu&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4350267971156235444?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4350267971156235444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4350267971156235444' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4350267971156235444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4350267971156235444'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/list-of-opensuse-packages.html' title='List of openSUSE packages'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4497640737120002714</id><published>2010-07-16T13:13:00.003+02:00</published><updated>2010-07-16T13:19:15.357+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ecology'/><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='ecosia'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><category scheme='http://www.blogger.com/atom/ns#' term='wwf'/><title type='text'>Search and save the rainforest</title><content type='html'>&lt;a href="http://ecosia.org/"&gt;Ecosia&lt;/a&gt; is a search engine that is powered by Bing and Yahoo in cooperation with the &lt;a href="http://wwf.panda.org/"&gt;WWF&lt;/a&gt;: 80% of sponsored link ad revenues are spent on a WWF project to save some square meters of the rainforest in Brazil.

"Some" is relative as, at the time of writing, it already covers four times the surface of Belgium &lt;tt&gt;:)&lt;/tt&gt;

More details can be &lt;a href="http://ecosia.org/how.php"&gt;found on the Ecosia.org website&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4497640737120002714?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ecosia.org/' title='Search and save the rainforest'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4497640737120002714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4497640737120002714' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4497640737120002714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4497640737120002714'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/search-and-save-rainforest.html' title='Search and save the rainforest'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8047351964527724658</id><published>2010-07-15T16:22:00.002+02:00</published><updated>2010-07-15T16:25:22.825+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='webpin'/><title type='text'>openSUSE 11.3 released</title><content type='html'>There we are, &lt;a href="http://bit.ly/openSUSE11_3"&gt;openSUSE 11.3&lt;/a&gt; has just been released to the masses &lt;tt&gt;:)&lt;/tt&gt;

&lt;a href="http://p.opensu.se"&gt;Webpin&lt;/a&gt; (our package repository indexer and search engine) has also finished feeding itself with most 11.3 package repositories. And there is also a new version (1.2.2) of the &lt;a href="http://software.opensuse.org/search?q=webpin"&gt;webpin&lt;/a&gt; command-line client that supports 11.3.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8047351964527724658?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://bit.ly/openSUSE11_3' title='openSUSE 11.3 released'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8047351964527724658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8047351964527724658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8047351964527724658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8047351964527724658'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/opensuse-113-released.html' title='openSUSE 11.3 released'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2175432908439644624</id><published>2010-07-05T23:37:00.003+02:00</published><updated>2010-07-05T23:39:50.408+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Even shorter openSUSE repository URLs: guessing the distro</title><content type='html'>I updated the &lt;a href="http://r.opensu.se"&gt;documentation&lt;/a&gt; about even shorter and more portable URLs to openSUSE build service repositories. The thing is, the &lt;code&gt;zypp&lt;/code&gt; stack (&lt;code&gt;zypper&lt;/code&gt; and YaST2) send the version of the openSUSE it is running on as an HTTP header when performing an "add repo" operation.

That is now used on the server side when a version is not specifically mentioned in the URL.

e.g.: &lt;code&gt;zypper ar -r http://r.opensu.se/network:utilities.repo&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2175432908439644624?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se' title='Even shorter openSUSE repository URLs: guessing the distro'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2175432908439644624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2175432908439644624' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2175432908439644624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2175432908439644624'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/even-shorter-opensuse-repository-urls.html' title='Even shorter openSUSE repository URLs: guessing the distro'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3315324736909607745</id><published>2010-07-05T01:24:00.003+02:00</published><updated>2010-07-05T01:36:18.074+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lxde'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE 11.3RC1 LXDE screencast</title><content type='html'>Our good friend and contributor Lee "oldcpu" Matheson did &lt;a href="http://www.youtube.com/watch?v=NQtkX1kq7b0"&gt;a nice screencast&lt;/a&gt; of the &lt;a href="http://lxde.org/"&gt;very lightweight LXDE desktop&lt;/a&gt; on &lt;a href="http://wiki.opensuse.org/Product_highlights_11.3"&gt;openSUSE 11.3&lt;/a&gt; &lt;a href="http://news.opensuse.org/2010/06/17/opensuse-approaching-destination-please-fasten-your-seat-belts-opensuse-11-3-rc1-is-available/"&gt;RC1&lt;/a&gt;.

&lt;a href="http://en.opensuse.org/LXDE"&gt;LXDE on openSUSE&lt;/a&gt; is quite an interesting undertaking, as it was completely pushed, driven and implemented by members of our community, without a single minute being spent on time sponsored by Novell &lt;tt&gt;;)&lt;/tt&gt; &lt;a href="http://en.opensuse.org/User:Anubisg1"&gt;Andrea Florio&lt;/a&gt; did most of the work and lead the charge from the beginning, so kudos to him as well.

Definitely a nice addition to our already brilliant distribution. And thanks to oldcpu for his work, check it out!
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=NQtkX1kq7b0"&gt;screencast of LXDE on openSUSE 11.3RC1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=NQtkX1kq7b0"&gt;same, without background music&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3315324736909607745?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=NQtkX1kq7b0' title='openSUSE 11.3RC1 LXDE screencast'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3315324736909607745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3315324736909607745' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3315324736909607745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3315324736909607745'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/opensuse-113rc1-lxde-screencast.html' title='openSUSE 11.3RC1 LXDE screencast'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2386573572485142664</id><published>2010-07-02T19:56:00.002+02:00</published><updated>2010-07-02T20:00:57.410+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zypper'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Shorter .repo URLs</title><content type='html'>A few days ago, I &lt;a href="http://dev-loki.blogspot.com/2010/06/even-shorter-opensuse-repository-urls.html"&gt;blogged about using &lt;code&gt;r.opensu.se&lt;/code&gt; for shorter package repository URLs&lt;/a&gt;, including passing e.g. &lt;code&gt;http://r.opensu.se/network:utilities/11.2/r&lt;/code&gt; to &lt;code&gt;zypper ar -r&lt;/code&gt; to add a repository.

Turned out it didn't work, because &lt;code&gt;zypper&lt;/code&gt; wouldn't follow the redirect. So I rewrote that part by handing over such URLs to a CGI script that reverse proxies the &lt;code&gt;.repo&lt;/code&gt; file from &lt;code&gt;http://download.opensuse.org/repositories/&lt;/code&gt; (it fetches the proper &lt;code&gt;.repo&lt;/code&gt; URL and passes the result to &lt;code&gt;zypper&lt;/code&gt;).

To cut the long story short, this stuff actually works now &lt;tt&gt;:)&lt;/tt&gt;:
&lt;code&gt;zypper ar -r http://r.opensu.se/network:utilities/11.2/r&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2386573572485142664?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se' title='Shorter .repo URLs'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2386573572485142664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2386573572485142664' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2386573572485142664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2386573572485142664'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/shorter-repo-urls.html' title='Shorter .repo URLs'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1658218827582042350</id><published>2010-07-02T02:01:00.003+02:00</published><updated>2010-07-02T02:28:37.717+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse-community'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>opensuse-community.org an attack page</title><content type='html'>Apparently, the wiki on our opensuse-community.org website has been compromised. At least, &lt;a href="http://safebrowsing.clients.google.com/safebrowsing/diagnostic?client=Firefox&amp;hl=en-US&amp;site=http://packages.opensuse-community.org/"&gt;so says Google&lt;/a&gt; &lt;tt&gt;;)&lt;/tt&gt;

Well yeah, the blame is on me, the Mediawiki instance there is really, really outdated and I didn't keep up with security patches and upgrades. Sorry about that.

I just spent a night installing the most recent Mediawiki version on another server (the one hosting the whole &lt;code&gt;opensu.se&lt;/code&gt; sites), and moving over the content (I didn't keep the history though, we hardly need it).

Until the DNS entry of opensuse-community.org is transferred to the other IP address, I've put a global URL forward to &lt;a href="http://w.opensu.se/"&gt;w.opensu.se&lt;/a&gt;

Once the transfer is done, I shall poke Google to re-assess the security on the domain, and remove the current "attack page" protection.

In the mean time, to avoid the safe browsing protection in Google searches, Firefox and Chromium, use the URL &lt;a href="http://w.opensu.se/"&gt;w.opensu.se&lt;/a&gt;
It also hosts the &lt;a href="http://w.opensu.se/subpixel/"&gt;subpixel repository&lt;/a&gt; and the 1-click-install YMP files.

Just so you know. We're taking care of it. Slowly, but we do &lt;tt&gt;;)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1658218827582042350?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1658218827582042350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1658218827582042350' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1658218827582042350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1658218827582042350'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/07/opensuse-communityorg-attack-page.html' title='opensuse-community.org an attack page'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5761981974129593854</id><published>2010-06-26T11:05:00.003+02:00</published><updated>2010-06-26T11:09:08.404+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Finding out whether a script is piped</title><content type='html'>When writing shell scripts, sometimes you need to find out whether your script is being piped into something else (e.g. a pager like &lt;code&gt;less&lt;/code&gt;, or just running on the terminal (unpiped). One use case could be to determine whether you want to enable ANSI style colouring of the output or not.

Turns out it is really simple to do.

&lt;h4&gt;Shell&lt;/h4&gt;
To do that from a bash script, use &lt;code&gt;[ -t 0 ]&lt;/code&gt;, which is true when unpiped, and false when piped:&lt;pre&gt;[ -t 0 ] &amp;&amp; COLOR=1 || COLOR=0&lt;/pre&gt;

&lt;h4&gt;Perl, others&lt;/h4&gt;
In other scripting languages (or even in C/C++), where the &lt;code&gt;isatty&lt;/code&gt; function is available, use that -- this example being in Perl:&lt;pre&gt;use POSIX 'isatty';
my $color = isatty(STDOUT);&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5761981974129593854?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5761981974129593854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5761981974129593854' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5761981974129593854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5761981974129593854'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/finding-out-whether-script-is-piped.html' title='Finding out whether a script is piped'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7592733815060440879</id><published>2010-06-26T10:38:00.003+02:00</published><updated>2010-06-26T10:53:46.506+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sudo'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>sudo X applications on openSUSE</title><content type='html'>&lt;code&gt;sudo&lt;/code&gt; is a very powerful tool when used wisely (i.e. not as it's done on Ubuntu).

By default, &lt;code&gt;sudo&lt;/code&gt; is configured in a much more restricted way on openSUSE than on, say, Ubuntu, to avoid any open security loopholes.

If, nevertheless, you would like to use &lt;code&gt;sudo&lt;/code&gt; to run X applications, here is how to do it.

&lt;h3&gt;Configure sudoers&lt;/h3&gt;
First of all, you will need to configure &lt;code&gt;sudo&lt;/code&gt; to let through a few environment variables that are normally not allowed to get through for security reasons.

In order to do that, run &lt;code&gt;visudo&lt;/code&gt; as root and add the following lines in that file, under the already existing &lt;code&gt;Defaults env_keep&lt;/code&gt; line:&lt;pre&gt;Defaults env_keep += "DISPLAY XAUTHORITY XAUTHLOCALHOSTNAME"&lt;/pre&gt;
&lt;h3&gt;Wrapper script&lt;/h3&gt;
Now, from there, the problem is that on openSUSE, the environment variable &lt;code&gt;XAUTHORITY&lt;/code&gt; is not always set -- it is not needed for X applications, as they have the policy of defaulting to &lt;code&gt;~/.Xauthority&lt;/code&gt; when needed.
But in order to run X applications through &lt;code&gt;sudo&lt;/code&gt;, this is precisely the trick, as those applications need to explicitly use the &lt;code&gt;.Xauthority&lt;/code&gt; file of the user that is invoking &lt;code&gt;sudo&lt;/code&gt;

Here is a little wrapper script that does the job. Save that as e.g. &lt;code&gt;/usr/local/bin/xsudo&lt;/code&gt; or, if you only need it for your user, to &lt;code&gt;$HOME/bin/xsudo&lt;/code&gt;:
&lt;pre&gt;#!/bin/bash
[ -n "$XAUTHORITY" ] || XAUTHORITY="$HOME/.Xauthority"
export XAUTHORITY
exec sudo "$@"&lt;/pre&gt;

You also need to make that script executable:&lt;pre&gt;chmod +x /usr/local/bin/xsudo&lt;/pre&gt; (of course, use the appropriate path to that file &lt;tt&gt;;)&lt;/tt&gt;)

&lt;h3&gt;Using xsudo&lt;/h3&gt;
Now you simply need to use &lt;code&gt;xsudo&lt;/code&gt; instead of &lt;code&gt;sudo&lt;/code&gt; to run X applications.
Obviously, and what has not been explained here, you also need to open the loophole for your user if, e.g., you would like your user to be able to run any application as root without having to enter the root password.
Be aware of the fact that this is a major security weakening, as any attacker just needs to be able to gain access as your regular user to be root on your host !
You basically loose the additional barrier of not only having to gain access as your regular user (who is e.g. running an application that is subject to a buffer overflow attack), but also requiring the attacker to know the root password.
If you still want to do that, add the following line using &lt;code&gt;visudo&lt;/code&gt; (as root), at the end of the file, and replace "&lt;code&gt;jamesdean&lt;/code&gt;" with the name of your user:
&lt;pre&gt;jamesdean ALL=(ALL) NOPASSWD: ALL&lt;/pre&gt;

&lt;h3&gt;Alternative&lt;/h3&gt;
As an alternative, if you don't want to use the &lt;code&gt;xsudo&lt;/code&gt; wrapper, you might as well also always set and export the &lt;code&gt;XAUTHORITY&lt;/code&gt; environment variable.

In order to do that, you first have to decide whether you want that for just your user, or for all users on your system.

If it's just for your user, the file to append the following line to is &lt;code&gt;$HOME/.profile&lt;/code&gt;; if you want to do it for all users, you must run the following command as root, and append to &lt;code&gt;/etc/profile.local&lt;/code&gt; instead:&lt;pre&gt;echo '[ -n "$XAUTHORITY" ] || XAUTHORITY="$HOME/.Xauthority"' &gt;&gt; $HOME/.profile
echo 'export XAUTHORITY' &gt;&gt; $HOME/.profile&lt;/pre&gt;
Note that it's untested, and might as well hose your X startup &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7592733815060440879?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7592733815060440879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7592733815060440879' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7592733815060440879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7592733815060440879'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/sudo-x-applications-on-opensuse.html' title='sudo X applications on openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8154730238996888354</id><published>2010-06-26T00:06:00.004+02:00</published><updated>2010-06-29T02:16:05.114+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Even shorter openSUSE repository URLs</title><content type='html'>&lt;h3&gt;Shorter URLs to repositories&lt;/h3&gt;&lt;a href="http://dev-loki.blogspot.com/2010/05/opensuse-repository-url-shortening.html"&gt;As I wrote not too long ago&lt;/a&gt;, I hacked a very small and simple but still useful trick to simplify and shorten URLs to openSUSE Build Service repositories.

e.g.:&lt;br/&gt;&lt;a href="http://s.opensu.se/r?network:utilities"&gt;&lt;code&gt;http://s.opensu.se/r?network:utilities&lt;/code&gt;&lt;/a&gt;&lt;br/&gt;instead of&lt;br/&gt;&lt;a href="http://download.opensuse.org/repositories/network:/utilities"&gt;&lt;code&gt;http://download.opensuse.org/repositories/network:/utilities&lt;/code&gt;&lt;/a&gt;.

&lt;h3&gt;Even shorter&lt;/h3&gt;There is now an even shorter variant, using&lt;br/&gt;&lt;code&gt;&lt;b&gt;http://r.opensu.se/&lt;/b&gt;...&lt;/code&gt;&lt;br/&gt;instead of&lt;br/&gt;&lt;code&gt;http://s.opensu.se/r?&lt;/code&gt;&lt;br/&gt;e.g.: &lt;a href="http://r.opensus.se/network:utilities"&gt;&lt;code&gt;http://r.opensus.se/network:utilities&lt;/code&gt;&lt;/a&gt;&lt;br/&gt;(instead of the full fledged URL as above).

Trivial? yes. Useful? I think so &lt;tt&gt;:)&lt;/tt&gt; (e.g. to give links on IRC, or on identi.ca/twitter)

For some examples, see &lt;a href="http://r.opensu.se"&gt;&lt;code&gt;&lt;b&gt;http://r.opensu.se&lt;/b&gt;&lt;/code&gt;&lt;/a&gt;

&lt;h3&gt;Beyond the short URLs&lt;/h3&gt;Note that you may also expand beyond that URL to reach files/directories below those, e.g.:&lt;br/&gt;&lt;a href="http://r.opensu.se/network:utilities/11.2/network:utilities.repo"&gt;&lt;code&gt;http://r.opensu.se/network:utilities/&lt;b&gt;11.2&lt;/b&gt;/network:utilities.repo&lt;/code&gt;&lt;/a&gt;

&lt;h3&gt;11.2 is openSUSE_11.2&lt;/h3&gt;As you surely have noted, &lt;code&gt;11.2&lt;/code&gt; isn't the correct subdirectory there (it's actually &lt;code&gt;openSUSE_11.2&lt;/code&gt;). Well, I also added the expansion of &lt;code&gt;11.0&lt;/code&gt;, &lt;code&gt;11.1&lt;/code&gt;, &lt;code&gt;11.2&lt;/code&gt;, &lt;code&gt;11.3&lt;/code&gt;, etc... at that position in the URL to &lt;code&gt;openSUSE_11.0&lt;/code&gt;, etc... respectively (well, actually it's a regex &lt;tt&gt;;)&lt;/tt&gt;).

&lt;h3&gt;f is openSUSE_Factory&lt;/h3&gt;To redirect to &lt;code&gt;openSUSE_Factory&lt;/code&gt; instead, just use &lt;code&gt;f&lt;/code&gt;, e.g.:&lt;br/&gt;&lt;a href="http://r.opensu.se/network:utilities/f"&gt;&lt;code&gt;http://r.opensu.se/network:utilities&lt;b&gt;/f&lt;/b&gt;&lt;/code&gt;&lt;/a&gt;

&lt;h3&gt;Short URLs to .repo files&lt;/h3&gt;And here I'm so lazy it's getting creepy.

What we usually want to link to (typically to give people a repository to add) is the &lt;code&gt;.repo&lt;/code&gt; file.&lt;br/&gt;Well,&lt;br/&gt;&lt;a href="http://r.opensu.se/network:utilities/11.2/r"&gt;&lt;code&gt;http://r.opensu.se/network:utilities/&lt;b&gt;11.2/r&lt;/b&gt;&lt;/code&gt;&lt;/a&gt;&lt;br/&gt;redirects to&lt;br/&gt;&lt;code&gt;http://downloads.opensuse.org/repositories/network:/utilities/openSUSE_11.2/network:utilities.repo&lt;/code&gt;

Same for Factory, of course, e.g.&lt;br/&gt;&lt;a href="http://r.opensu.se/server:monitoring/f/r"&gt;&lt;code&gt;http://r.opensu.se/server:monitoring/&lt;b&gt;f&lt;/b&gt;/&lt;b&gt;r&lt;/b&gt;&lt;/code&gt;&lt;/a&gt;

&lt;h3&gt;Add zypper to the mix&lt;/h3&gt;Now, given all that, if you want to tell someone to add e.g. the &lt;code&gt;server:monitoring&lt;/code&gt; repository, just tell her to do this:&lt;pre&gt;zypper ar -r http://r.opensu.se/server:monitoring/11.2/r&lt;/pre&gt;&lt;h3&gt;The impossible&lt;/h3&gt;What would be even nicer is to avoid having to put the openSUSE version in the URL, but unfortunately &lt;a href="http://en.opensuse.org/Zypper"&gt;&lt;code&gt;zypper&lt;/code&gt;&lt;/a&gt; doesn't the version of the openSUSE it's running on in the &lt;a href="http://en.wikipedia.org/wiki/List_of_HTTP_headers"&gt;HTTP request headers&lt;/a&gt;, which means I simply cannot automagically redirect to the right subdirectory based on that, as I don't have any way to know which openSUSE version the client has.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8154730238996888354?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://r.opensu.se' title='Even shorter openSUSE repository URLs'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8154730238996888354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8154730238996888354' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8154730238996888354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8154730238996888354'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/even-shorter-opensuse-repository-urls.html' title='Even shorter openSUSE repository URLs'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4711524706959991446</id><published>2010-06-25T23:53:00.003+02:00</published><updated>2010-06-26T00:05:53.662+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>ffmpeg rebuild, doxygen 1.7.1</title><content type='html'>I triggered a rebuild of the &lt;a href="http://packman.links2linux.org/package/ffmpeg"&gt;&lt;code&gt;ffmpeg&lt;/code&gt; package in the Packman repository&lt;/a&gt; to properly apply the usual openSUSE compiler+linker flags (e.g. stack protector) as well as to have an &lt;code&gt;ffmpeg-debuginfo&lt;/code&gt; package to inspect problems/crashes.

Don't be surprised if you notice a lot of activity in the Packman repository, as &lt;code&gt;ffmpeg&lt;/code&gt; is used by a lot of packages at Packman and, hence, it is currently triggering a lot of rebuilds.

Another interesting update is the upgrade of the very popular API documentation tool &lt;a href="http://www.doxygen.org/"&gt;&lt;code&gt;doxygen&lt;/code&gt;&lt;/a&gt; to its latest version, namely &lt;a href="http://www.stack.nl/~dimitri/doxygen/changelog.html"&gt;1.7.1&lt;/a&gt;. It is available in the &lt;a href="http://r.opensu.se/devel:tools"&gt;&lt;code&gt;devel:tools&lt;/code&gt;&lt;/a&gt; repository.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4711524706959991446?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4711524706959991446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4711524706959991446' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4711524706959991446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4711524706959991446'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/ffmpeg-rebuild-doxygen-171.html' title='ffmpeg rebuild, doxygen 1.7.1'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8605311253057335870</id><published>2010-06-25T00:17:00.005+02:00</published><updated>2010-06-25T00:40:07.289+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Update on my packages for openSUSE</title><content type='html'>I've been using &lt;a href="http://twitter.com/yaloki"&gt;my twitter&lt;/a&gt; to tweet about package updates recently (of course, it's all automated by &lt;a href="http://linux01.gwdg.de/~pbleser/files/rpm/bm.tweet"&gt;a script&lt;/a&gt; that parses the spec file &lt;tt&gt;;)&lt;/tt&gt; -- hey, cmon, laziness is a feature &lt;tt&gt;:D&lt;/tt&gt;).

A few packages I've created or updated recently that I would believe to be interesting:&lt;ul&gt;&lt;li&gt;&lt;a href="http://somewhere.fscked.org/proj/fireflies"&gt;fireflies&lt;/a&gt; 2.07, a slick openGL screensaver: &lt;a href="http://s.opensu.se/r?X11:Utilities"&gt;X11:Utilities&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://rss-glx.sf.net"&gt;rss-glx&lt;/a&gt; 0.9.1, a collection of nice openGL screensavers, also in &lt;a href="http://s.opensu.se/r?X11:Utilities"&gt;X11:Utilities&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://subversion.apache.org"&gt;subversion&lt;/a&gt; 1.6.12, in &lt;a href="http://s.opensu.se/r?devel:tools:scm:svn"&gt;devel:tools:scm:svn&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://googsystray.sf.net"&gt;googsystray&lt;/a&gt; 1.2.0, notifications for google services/documents, in &lt;a href="http://s.opensu.se/r?network:utilities"&gt;network:utilities&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://handbrake.fr"&gt;handbrake&lt;/a&gt;-unstable packages, containing the latest upstream snapshot (even if unsupported by upstream) of the very powerful video ripper+transcoder, but still useful for testing and reporting issues (even though it ran smoothly for me), in the &lt;a href="http://packman.links2linux.org/package/handbrake-unstable"&gt;Packman repository&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://freshmeat.net/projects/fio"&gt;fio&lt;/a&gt; 1.41, a versatile I/O benchmarking application, in &lt;a href="http://s.opensu.se/r?benchmark"&gt;benchmark&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/key-mon"&gt;key-mon&lt;/a&gt;, which seems interesting for presentations and demos, as it displays which keys are being pressed on the screen, in &lt;a href="http://s.opensu.se/r?X11:Utilities"&gt;X11:Utilities&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transmissionbt.com"&gt;transmission&lt;/a&gt; 2.0, a great feature-loaded but still simple to use bittorrent client with a daemon, a CLI client, a web interface, GTK2 and QT clients, both in the &lt;a href="http://packman.links2linux.org/package/transmission"&gt;Packman repository&lt;/a&gt; as well as in the &lt;a href="http://s.opensu.se/r?filesharing"&gt;filesharing&lt;/a&gt; repository&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/ftop"&gt;ftop&lt;/a&gt;, which monitors open files in a top-like manner, in &lt;a href="http://s.opensu.se/r?server:monitoring"&gt;server:monitoring&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8605311253057335870?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://twitter.com/yaloki' title='Update on my packages for openSUSE'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8605311253057335870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8605311253057335870' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8605311253057335870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8605311253057335870'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/update-on-my-packages-for-opensuse.html' title='Update on my packages for openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4444541922067642349</id><published>2010-06-24T23:43:00.003+02:00</published><updated>2010-06-25T00:08:34.868+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='planetsuse'/><title type='text'>Planet openSUSE site stats</title><content type='html'>&lt;a href="http://nordisch.org/"&gt;darix&lt;/a&gt; was so kind to run some statistics on the access logs of &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt;, and the results are.. well.. impressive.

&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Month&lt;/th&gt;&lt;th&gt;Unique visitors&lt;/th&gt;&lt;th&gt;Visits&lt;/th&gt;&lt;th&gt;Pages&lt;/th&gt;&lt;th&gt;Hits&lt;/th&gt;&lt;th&gt;Bandwidth&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Mar 2010&lt;/td&gt;&lt;td&gt;5250&lt;/td&gt;&lt;td&gt;9589&lt;/td&gt;&lt;td&gt;27075&lt;/td&gt;&lt;td&gt;6968229&lt;/td&gt;&lt;td&gt;261.32 GB&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Apr 2010&lt;/td&gt;&lt;td&gt;9672&lt;/td&gt;&lt;td&gt;19282&lt;/td&gt;&lt;td&gt;82091&lt;/td&gt;&lt;td&gt;14444626&lt;/td&gt;&lt;td&gt;533.83 GB&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;May 2010&lt;/td&gt;&lt;td&gt;8861&lt;/td&gt;&lt;td&gt;17293&lt;/td&gt;&lt;td&gt;93045&lt;/td&gt;&lt;td&gt;14848280&lt;/td&gt;&lt;td&gt;658.34 GB&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Jun 2010&lt;/td&gt;&lt;td&gt;7493&lt;/td&gt;&lt;td&gt;14560&lt;/td&gt;&lt;td&gt;71727&lt;/td&gt;&lt;td&gt;11126086&lt;/td&gt;&lt;td&gt;434.41 GB&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

&lt;b&gt;UPDATE:&lt;/b&gt; and more stats...:
Most used browser is Firefox with 87.9%, followed by Akregator (an RSS feed aggregator for KDE) with 6.1%. IE is at 0.5%, Opera at 0.6%, Chrome at 0.3%.
Most used operating system is Linux with 89.3%, Windows at 7.2%
We are currently not running any per-country stats, as the apache log file is currently at 17GB &lt;tt&gt;;)&lt;/tt&gt;

The number of total requests since 2010-02-10 is at &lt;b&gt;&lt;u&gt;over 80 million&lt;/u&gt;&lt;/b&gt; (!!!).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4444541922067642349?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org' title='Planet openSUSE site stats'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4444541922067642349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4444541922067642349' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4444541922067642349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4444541922067642349'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/planet-opensuse-site-stats.html' title='Planet openSUSE site stats'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3845263601647881546</id><published>2010-06-08T22:07:00.002+02:00</published><updated>2010-06-08T22:12:11.936+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='planetsuse'/><title type='text'>Post shortening on planet.opensuse.org</title><content type='html'>I just added a new feature on &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt;: articles with more than 100 words are shorted (see the "...") and have an additional "read more" link to read the full article on the host blog.

I hope that this will enhance the readability, as we keep having massive entries that run across several screens (which, IMHO, ruin the experience of having an aggregator).

Thanks to the &lt;a href="http://www.djangoproject.com/"&gt;Django&lt;/a&gt; developers &lt;a href="http://code.djangoproject.com/browser/django/trunk/django/utils/text.py"&gt;from whom&lt;/a&gt; I &lt;a href="http://gitorious.net/opensuse/planet-opensuse/blobs/master/libs/utils.py"&gt;blatantly stole some code&lt;/a&gt; to do the tedious word wrapping in HTML.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3845263601647881546?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org' title='Post shortening on planet.opensuse.org'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3845263601647881546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3845263601647881546' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3845263601647881546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3845263601647881546'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/06/post-shortening-on-planetopensuseorg.html' title='Post shortening on planet.opensuse.org'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4347909936482719905</id><published>2010-05-20T20:58:00.003+02:00</published><updated>2010-05-20T21:14:56.227+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='screen'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>GNU Screen: open new window with same working directory</title><content type='html'>I do this many, many times every single day, and I finally found how to implement it: a shell function to open a new window in &lt;a href="http://www.gnu.org/software/screen/"&gt;&lt;code&gt;screen&lt;/code&gt;&lt;/a&gt; which is automatically in the same directory as where you call that function.

Here is the bash code to add to your &lt;code&gt;~/.bashrc&lt;/code&gt;:
&lt;code&gt;
function dupscreen {
    screen bash -c "cd \"$PWD\" &amp;&amp; exec $SHELL --login"
}
alias ,d=dupscreen
&lt;/code&gt;
When I'm in &lt;a href="http://www.gnu.org/software/screen/"&gt;&lt;code&gt;screen&lt;/code&gt;&lt;/a&gt; and I need another shell in the same directory (e.g. because I'm opening a spec file in &lt;a href="http://www.vim.org/"&gt;&lt;code&gt;vim&lt;/code&gt;&lt;/a&gt; and need another shell to test the build of the RPM package with &lt;a href="http://wiki.opensuse.org/openSUSE:OSC"&gt;&lt;code&gt;osc&lt;/code&gt;&lt;/a&gt;), I then just type &lt;code&gt;,d&lt;/code&gt; !

Yes, I know, I'm lazy.

For the record, here is the nitty gritty on how this works:&lt;ul&gt;&lt;li&gt;when you run &lt;code&gt;/usr/bin/screen&lt;/code&gt; while already being in &lt;code&gt;screen&lt;/code&gt;, it doesn't start a new &lt;code&gt;screen&lt;/code&gt; process -- instead, it performs the requested operation (in this case, launching a process (&lt;code&gt;bash&lt;/code&gt;) inside &lt;code&gt;screen&lt;/code&gt;) in the same &lt;code&gt;screen&lt;/code&gt; instance, which is pretty much the same as.. Firefox is doing &lt;code&gt;;D&lt;/code&gt;); note that &lt;code&gt;screen&lt;/code&gt; notices that you are already inside a &lt;code&gt;screen&lt;/code&gt; session because the environment variable &lt;a href="http://www.gnu.org/software/screen/manual/html_node/Environment.html"&gt;&lt;code&gt;STY&lt;/code&gt;&lt;/a&gt; is set and points to the name of the &lt;a href="http://www.gnu.org/software/screen/manual/screen.html#Session-Management"&gt;&lt;code&gt;screen&lt;/code&gt; session&lt;/a&gt; you're in&lt;/li&gt;&lt;li&gt;&lt;code&gt;bash&lt;/code&gt; can be passed a command to execute (instead of going into an interactive shell) using the &lt;code&gt;-c&lt;/code&gt; switch; in this case, we ask &lt;code&gt;bash&lt;/code&gt; to run &lt;code&gt;cd "$PWD" &amp;&amp; exec $SHELL --login&lt;/code&gt; and exit&lt;/li&gt;&lt;li&gt;the internal bash variable &lt;a href="http://tldp.org/LDP/abs/html/internalvariables.html#PWDREF"&gt;&lt;code&gt;PWD&lt;/code&gt;&lt;/a&gt; contains the name of the current directory&lt;/li&gt;&lt;li&gt;the environment variable &lt;code&gt;SHELL&lt;/code&gt; is set by &lt;code&gt;login&lt;/code&gt; and contains the login shell that is configured for your user&lt;/li&gt;&lt;/ul&gt;
So basically, the function &lt;code&gt;dupscreen&lt;/code&gt; is telling &lt;code&gt;screen&lt;/code&gt; to run &lt;code&gt;bash&lt;/code&gt; inside itself, and that &lt;code&gt;bash&lt;/code&gt; changes into the current directory (i.e. the directory you're in when you call that function) and then executes &lt;code&gt;$SHELL&lt;/code&gt; (which is most probably also &lt;code&gt;bash&lt;/code&gt;) from there.

The &lt;code&gt;,d&lt;/code&gt; &lt;a href="http://en.wikipedia.org/wiki/Alias_(command)"&gt;shell alias&lt;/a&gt; is for extra lazyness &lt;code&gt;:)&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4347909936482719905?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4347909936482719905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4347909936482719905' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4347909936482719905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4347909936482719905'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/05/gnu-screen-open-new-window-with-same.html' title='GNU Screen: open new window with same working directory'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-810819250186560408</id><published>2010-05-20T20:54:00.002+02:00</published><updated>2010-05-20T20:58:18.823+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>How to add the openSUSE 11.3 counter to your site</title><content type='html'>If you have a website/blog, here is the HTML markup to add in order to include the &lt;a href="http://counter.opensuse.org"&gt;openSUSE release countdown image&lt;/a&gt;:

&lt;code&gt;&amp;lt;a href="http://software.opensuse.org"&amp;gt;&amp;lt;img src="http://counter.opensuse.org"/&amp;gt;&amp;lt;/a&amp;gt;
&lt;/code&gt;

The markup above will add a 256x256 pixel image. If you prefer to have the smaller (130x130) one:
&lt;code&gt;&amp;lt;a href="http://software.opensuse.org"&amp;gt;&amp;lt;img src="http://counter.opensuse.org/small"/&amp;gt;&amp;lt;/a&amp;gt;
&lt;/code&gt;

And in case you prefer the huge one (400x400px) for maximum visibility:
&lt;code&gt;&amp;lt;a href="http://software.opensuse.org"&amp;gt;&amp;lt;img src="http://counter.opensuse.org/large"/&amp;gt;&amp;lt;/a&amp;gt;
&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-810819250186560408?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/' title='How to add the openSUSE 11.3 counter to your site'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/810819250186560408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=810819250186560408' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/810819250186560408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/810819250186560408'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/05/how-to-add-opensuse-113-counter-to-your.html' title='How to add the openSUSE 11.3 counter to your site'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3128099044948670298</id><published>2010-05-13T21:28:00.005+02:00</published><updated>2010-05-13T21:54:59.277+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Countdown for 11.3</title><content type='html'>&lt;img style="float:left;padding:0 1em 0.5em 0; border:0;" src="http://counter.opensuse.org/11.3/medium"&gt;It's that time of the year again... After &lt;a href="http://jimmac.musichall.cz/"&gt;jimmac&lt;/a&gt; handed me the new artwork for &lt;a href="http://opensuse.org"&gt;openSUSE 11.3&lt;/a&gt;, I've updated our &lt;a href="http://counter.opensuse.org"&gt;countdown site&lt;/a&gt; accordingly.

For further details, read &lt;a href="http://lists.opensuse.org/opensuse-marketing/2010-05/msg00085.html"&gt;my mail to the marketing list&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3128099044948670298?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/11.3/' title='Countdown for 11.3'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3128099044948670298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3128099044948670298' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3128099044948670298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3128099044948670298'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/05/countdown-for-113.html' title='Countdown for 11.3'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4239942146754327825</id><published>2010-05-04T21:45:00.002+02:00</published><updated>2010-05-04T21:51:26.456+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE repository URL shortening</title><content type='html'>Hacked a little &lt;a href="http://redmine.lighttpd.net/wiki/1/Docs:ModRedirect"&gt;lighttpd redirect&lt;/a&gt; on &lt;a href="http://s.opensu.se"&gt;s.opensu.se&lt;/a&gt; to shorten URLs to &lt;a href="http://download.opensuse.org/repositories/"&gt;openSUSE package repositories&lt;/a&gt;.

Simply use &lt;code&gt;http://s.opensu.se/r?&lt;/code&gt; followed by the name of the repository, without the slashes (/) to separate, as it is redundant with ":"

Examples:&lt;ul&gt;&lt;li&gt;&lt;a href="http://s.opensu.se/r?Archiving:Backup"&gt;http://s.opensu.se/r?Archiving:Backup&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://s.opensu.se/r?network:utilities"&gt;http://s.opensu.se/r?network:utilities&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://s.opensu.se/r?shells"&gt;http://s.opensu.se/r?shells&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://s.opensu.se/r?server:php:extensions"&gt;http://s.opensu.se/r?server:php:extensions&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
Arguably, not quite as short as with bit.ly or tinyurl.com, but still shorter than the full URL &lt;tt&gt;;)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4239942146754327825?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4239942146754327825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4239942146754327825' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4239942146754327825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4239942146754327825'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/05/opensuse-repository-url-shortening.html' title='openSUSE repository URL shortening'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7027829071968355342</id><published>2010-04-10T01:24:00.003+02:00</published><updated>2010-04-10T01:55:02.118+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='planetsuse'/><title type='text'>Planet openSUSE: improvements and call for translators</title><content type='html'>Implemented further improvements on &lt;a href="http://planet.opensuse.org/"&gt;Planet openSUSE&lt;/a&gt;:&lt;ul&gt;&lt;li&gt;better performance, as the CSS and Javascript are now &lt;a href="http://en.wikipedia.org/wiki/Minification_(programming)"&gt;minified&lt;/a&gt; (thanks to the opensource &lt;a href="http://developer.yahoo.com/yui/compressor/"&gt;YUI Compressor&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;optimized all PNG files using &lt;a href="http://en.wikipedia.org/wiki/Pngcrush"&gt;pngcrush&lt;/a&gt;&lt;/li&gt;&lt;li&gt;the static text is now localizable, currently with translations in &lt;a href="http://planet.opensuse.org/fr/"&gt;French&lt;/a&gt; and &lt;a href="http://planet.opensuse.org/de/"&gt;German&lt;/a&gt; (more on that below)&lt;/li&gt;&lt;li&gt;upgraded the &lt;a href="http://code.google.com/p/feedparser/"&gt;Feedparser&lt;/a&gt; module that is bundled with &lt;a href="http://offog.org/code/rawdog.html"&gt;Rawdog&lt;/a&gt; to its latest SVN trunk version as it fixes an &lt;a href="http://code.google.com/p/feedparser/issues/detail?id=76"&gt;annoying bug&lt;/a&gt; that affected at the very least all feeds served by &lt;a href="http://wordpress.org/"&gt;Wordpress&lt;/a&gt;, and ships a few improvements on markup sanitization&lt;/li&gt;&lt;li&gt;a small "member" tag is now also shown in the posts when applicable&lt;/li&gt;&lt;/ul&gt;
If you would like to help, I'm looking for translators for &lt;a href="http://planet.opensuse.org/pl/"&gt;Polish&lt;/a&gt;, &lt;a href="http://planet.opensuse.org/ja/"&gt;Japanese&lt;/a&gt;, &lt;a href="http://planet.opensuse.org/es/"&gt;Spanish&lt;/a&gt; and &lt;a href="http://planet.opensuse.org/pt/"&gt;Portuguese&lt;/a&gt; in order to localize the Planet openSUSE interface in those languages too.

If you're interested, &lt;a href="http://gitorious.org/opensuse/planet-opensuse/blobs/master/README.L10N"&gt;read the instructions&lt;/a&gt; &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7027829071968355342?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org/' title='Planet openSUSE: improvements and call for translators'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7027829071968355342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7027829071968355342' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7027829071968355342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7027829071968355342'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/04/planet-opensuse-improvements-and-call.html' title='Planet openSUSE: improvements and call for translators'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8414266784840179117</id><published>2010-04-07T01:48:00.003+02:00</published><updated>2010-04-07T02:02:08.706+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='planetsuse'/><title type='text'>Planet openSUSE fixes and improvements</title><content type='html'>More fixes &lt;a href="http://gitorious.net/opensuse/planet-opensuse"&gt;fixes and features&lt;/a&gt; on the new &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt;:&lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/RSS"&gt;RSS&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/FOAF_(software)"&gt;FOAF&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/OPML"&gt;OPML&lt;/a&gt; feeds are now generated for each language separately, containing only the posts/authors that have a blog in that language&lt;/li&gt;&lt;li&gt;there's a new "language" named &lt;a href="http://planet.opensuse.org/global/"&gt;"any"&lt;/a&gt; that aggregates the posts and authors for all languages, combined -- if you want to see all the contributors who blog on our planet, use &lt;a href="http://planet.opensuse.org/global/feedlist.html"&gt;the global feed list page&lt;/a&gt; instead of the per-language one&lt;/li&gt;&lt;li&gt;many UTF-8 fixes -- and, indeed, &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; &lt;a href="http://www.google.com/search?q=python%20unicode%20nightmare"&gt;sucks&lt;/a&gt; at &lt;a href="http://en.wikipedia.org/wiki/Unicode"&gt;unicode&lt;/a&gt;&lt;/li&gt;&lt;li&gt;nothing visible, but I rewrote the whole templating and rendering to use the &lt;a href="http://jinja.pocoo.org/2/"&gt;Jinja templating library&lt;/a&gt;, which is a lot nicer than the very limited home-grown templating &lt;a href="http://offog.org/code/rawdog.html"&gt;rawdog&lt;/a&gt; provides&lt;/li&gt;&lt;/ul&gt;
Note that if you previously added the RSS feed of Planet openSUSE to your feed reader, you'll have to re-add it (&lt;a href="http://planet.opensuse.org/en/rss20.xml"&gt;English&lt;/a&gt;, &lt;a href="http://planet.opensuse.org/de/rss20.xml"&gt;German&lt;/a&gt;, &lt;a href="http://planet.opensuse.org/es/rss20.xml"&gt;Spanish&lt;/a&gt;, etc...). Also, going to &lt;a href="http://planet.opensuse.org"&gt;http://planet.opensuse.org&lt;/a&gt; will result in a redirect to &lt;a href="http://planet.opensuse.org/en/"&gt;http://planet.opensuse.org/en/&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8414266784840179117?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org/' title='Planet openSUSE fixes and improvements'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8414266784840179117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8414266784840179117' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8414266784840179117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8414266784840179117'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/04/planet-opensuse-fixes-and-improvements.html' title='Planet openSUSE fixes and improvements'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2250282503119099834</id><published>2010-04-06T02:46:00.002+02:00</published><updated>2010-04-06T02:49:27.349+02:00</updated><title type='text'>Planet openSUSE feature: overview</title><content type='html'>Just added a new feature to &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt;: when you press the "o" key or click the "Overview" link, it splits the view into two "panels" (sort of), with a blog post title navigation on the top, and the content on the bottom half.

Only tested with Firefox 3 though, and as it's done with quite some Javascript and CSS magic, it might very well look disastrous on other browsers. If there are issues, please let me know.

And, of course, as always: &lt;a href="http://gitorious.net/opensuse/planet-opensuse"&gt;"patches are welcome"&lt;/a&gt; &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2250282503119099834?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org' title='Planet openSUSE feature: overview'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2250282503119099834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2250282503119099834' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2250282503119099834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2250282503119099834'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/04/planet-opensuse-feature-overview.html' title='Planet openSUSE feature: overview'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7578793078778443987</id><published>2010-04-05T03:32:00.002+02:00</published><updated>2010-04-05T03:32:50.711+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>New Planet openSUSE</title><content type='html'>I just switched &lt;a href="http://planet.opensuse.org"&gt;Planet openSUSE&lt;/a&gt; over to the new design.

Enjoy &lt;tt&gt;:)&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7578793078778443987?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://planet.opensuse.org' title='New Planet openSUSE'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7578793078778443987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7578793078778443987' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7578793078778443987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7578793078778443987'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/04/new-planet-opensuse.html' title='New Planet openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5762939515140981158</id><published>2010-04-01T04:06:00.004+02:00</published><updated>2010-04-01T04:17:11.694+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Planet openSUSE #2.1</title><content type='html'>As I &lt;a href="http://dev-loki.blogspot.com/2010/03/planet-opensuse-2.html"&gt;just recently blogged about&lt;/a&gt;, I'm busy on &lt;a href="http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html"&gt;a facelift&lt;/a&gt; of &lt;a href="http://planet.opensuse.org"&gt;PlanetSUSE&lt;/a&gt;.
I made &lt;a href="http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html"&gt;some more progress&lt;/a&gt;, and it's almost ready for production:&lt;ul&gt;&lt;li&gt;improved style&lt;/li&gt;&lt;li&gt;proper &lt;a href="http://dl.dropbox.com/u/2940942/planet_opensuse_draft/feedlist.html"&gt;feed list&lt;/a&gt; (on a separate page)&lt;/li&gt;&lt;li&gt;vim-like keyboard navigation (j, k)&lt;/li&gt;&lt;li&gt;hackergotchis and speaking bubbles on the right (matter of taste, I guess)&lt;/li&gt;&lt;li&gt;tested on w3m (works great)&lt;/li&gt;&lt;li&gt;the feed list aggregates feeds by name&lt;/li&gt;&lt;/ul&gt;
TODO:&lt;ul&gt;&lt;li&gt;test + fix with more browsers, although I already had positive reports from many, including mobile browsers (elastic/fluid layout rocks after all ;))&lt;/li&gt;&lt;li&gt;non-English planets&lt;/li&gt;&lt;li&gt;a mobile browser optimised page (to be discussed, ideas/feedback is more than welcome, I don't own such a thing)&lt;/li&gt;&lt;li&gt;integrate the &lt;a href="http://planet.opensuse.org/planet-suse.png"&gt;nice Planet SUSE logo&lt;/a&gt; made by &lt;a href="http://jimmac.musichall.cz/log/"&gt;Jakub "jimmac" Steiner&lt;/a&gt; (still waiting for the SVG, *prod* *prod* ;))&lt;/li&gt;&lt;/ul&gt;
And, of course, if you like/dislike it, or if you have additional ideas on the layout or features, please let me know (best by email, more convenient than blog comments ;)).

But seriously, everyone should get a hackergotchi, looks a lot better than the fallback geeko!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5762939515140981158?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html' title='Planet openSUSE #2.1'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5762939515140981158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5762939515140981158' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5762939515140981158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5762939515140981158'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/04/planet-opensuse-21.html' title='Planet openSUSE #2.1'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5942669383008539342</id><published>2010-03-31T17:48:00.003+02:00</published><updated>2010-03-31T17:51:22.448+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE FAIL page</title><content type='html'>Just posting this into the wild, as it seems that most people don't know about it: there is a &lt;a href="http://en.opensuse.org/FAIL"&gt;wiki page&lt;/a&gt; where we try to concentrate/summarize all the contact addresses in case something goes wrong (e.g. IRC cloak, member email alias, Build Service down, etc...).

So, here it is: &lt;a href="http://en.opensuse.org/FAIL"&gt;http://en.opensuse.org/FAIL&lt;/a&gt;

Oh, and we named it "FAIL" because.. it's where to look for an email address when something goes.. wrong (ok, or when you have a request ;))&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5942669383008539342?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://en.opensuse.org/FAIL' title='openSUSE FAIL page'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5942669383008539342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5942669383008539342' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5942669383008539342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5942669383008539342'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/03/opensuse-fail-page.html' title='openSUSE FAIL page'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-379486388162381370</id><published>2010-03-29T01:53:00.002+02:00</published><updated>2010-03-29T02:02:41.485+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='planetsuse'/><title type='text'>Planet openSUSE #2</title><content type='html'>I've been hacking on a new openSUSE planet aggregator installment these days (the current one being &lt;a href="http://planet.opensuse.org"&gt;planet.opensuse.org&lt;/a&gt;).

If you're interested, &lt;a href="http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html"&gt;please have a look at the current draft&lt;/a&gt; and send me feedback.

Yes, I know, it's not finished:
* currently missing the non-English versions
* the feed list on the right is not properly styled yet
* probably needs more testing with aggregated content that contains funky tags
* only tested with Firefox 3.6
* not tested with text mode browsers (lynx, w3m) yet either

It's based on &lt;a href="http://en.opensuse.org/User:Rlihm"&gt;Robert Lihm&lt;/a&gt;'s &lt;a href="http://en.opensuse.org/Boosters_Team/Projects/Integrate_all_Infrastructure_under_one_Umbrella"&gt;Bento theme&lt;/a&gt; template, which is currently in the works and will be used for the openSUSE wiki, build service, etc... But as I personally hate fixed layouts with a vengeance, I made an elastic version of it for &lt;a href="http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html"&gt;Planet openSUSE #2&lt;/a&gt;

On a side note, it uses &lt;a href="http://offog.org/code/rawdog.html"&gt;rawdog&lt;/a&gt;, which is what &lt;a href="http://www.planetkde.org/"&gt;Planet KDE&lt;/a&gt; is using, big up to &lt;a href="http://jriddell.org/"&gt;Jonathan Riddell&lt;/a&gt; for the customizing I was able to reuse (and fork slightly) ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-379486388162381370?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://dl.dropbox.com/u/2940942/planet_opensuse_draft/index.html' title='Planet openSUSE #2'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/379486388162381370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=379486388162381370' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/379486388162381370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/379486388162381370'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/03/planet-opensuse-2.html' title='Planet openSUSE #2'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2653242458889524025</id><published>2010-02-17T22:20:00.002+01:00</published><updated>2010-02-17T22:38:16.553+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Generate a moderately secure random password</title><content type='html'>Just to remind myself... &lt;code&gt;;)&lt;/code&gt;

&lt;pre style="background:#000;color:#fff;padding:1em;"&gt;cat /dev/urandom \
| base64 \
| tr -d '[^:alnum:]' \
| cut -c1-10 \
| head -1&lt;/pre&gt;

The command chain above does the following:&lt;ul&gt;&lt;li&gt;&lt;u&gt;&lt;code&gt;dd if=/dev/urandom&lt;/code&gt;:&lt;/u&gt; read random data from &lt;code&gt;/dev/urandom&lt;/code&gt; and write it to STDOUT&lt;/li&gt;&lt;li&gt;&lt;u&gt;&lt;code&gt;base64&lt;/code&gt;:&lt;/u&gt; encode that binary data into &lt;a href="http://en.wikipedia.org/wiki/Base64"&gt;Base64&lt;/a&gt; to make it human-readable&lt;/li&gt;&lt;li&gt;&lt;u&gt;&lt;code&gt;tr -d '[^:alnum:]'&lt;/code&gt;:&lt;/u&gt; remove all characters that are not alphanumeric (i.e. remove whitespaces, +, ...)&lt;/li&gt;&lt;li&gt;&lt;u&gt;&lt;code&gt;cut -c1-10&lt;/code&gt;:&lt;/u&gt; only keep characters 1 to 10 from each line&lt;/li&gt;&lt;li&gt;&lt;u&gt;&lt;code&gt;head -1&lt;/code&gt;:&lt;/u&gt; only keep the first line&lt;/li&gt;&lt;/ul&gt;
Better randomness may be achieved by doing a &lt;code&gt;cat&lt;/code&gt; on &lt;code&gt;/dev/random&lt;/code&gt; instead of &lt;code&gt;/dev/urandom&lt;/code&gt;, if you have enough &lt;a href="http://en.wikipedia.org/wiki/Entropy"&gt;entropy&lt;/a&gt; (see &lt;code&gt;cat /proc/sys/kernel/random/entropy_avail&lt;/code&gt;)

Obviously, if you prefer passwords of a different length, e.g. 16, change the &lt;code&gt;cut -c1-10&lt;/code&gt; accordingly: &lt;code&gt;cut -c1-16&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2653242458889524025?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2653242458889524025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2653242458889524025' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2653242458889524025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2653242458889524025'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/02/generate-moderately-secure-random.html' title='Generate a moderately secure random password'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2046243652958224779</id><published>2010-02-13T20:35:00.003+01:00</published><updated>2010-02-13T20:42:10.081+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensource'/><title type='text'>FOSS event calendar site</title><content type='html'>Visit &lt;a href="http://fossevents.org/"&gt;fossevents.org&lt;/a&gt; for a calendar of upcoming Free and Opensource events all over the planet. Thanks to the fine folks at &lt;a href="http://freenode.net/"&gt;freenode&lt;/a&gt; for that resource.

Read the &lt;a href="http://www.lczajkowski.com/2010/02/02/freenode-and-fossevets/"&gt;following post&lt;/a&gt; for further information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2046243652958224779?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fossevents.org/' title='FOSS event calendar site'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2046243652958224779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2046243652958224779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2046243652958224779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2046243652958224779'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/02/foss-event-calendar-site.html' title='FOSS event calendar site'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1085011258288073394</id><published>2010-02-09T09:02:00.003+01:00</published><updated>2010-02-09T09:18:06.868+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Call for testing openSUSE 11.2 with newer aria2</title><content type='html'>As you might now, &lt;a href="http://en.opensuse.org/Zypp"&gt;Zypp&lt;/a&gt; (the package management stack of openSUSE) uses the very powerful &lt;a href="http://aria2.sourceforge.net/"&gt;aria2&lt;/a&gt; application to perform its downloads, both for repository metadata and RPM files. Before that, it used &lt;a href="http://curl.haxx.se/"&gt;curl&lt;/a&gt;.

Since openSUSE 11.2, the Zypp stack &lt;a href="http://duncan.mac-vicar.com/blog/archives/517"&gt;defaults to using aria2&lt;/a&gt; (unless the environment variable &lt;code&gt;ZYPP_ARIA2C&lt;/code&gt; is set to &lt;code&gt;0&lt;/code&gt;, in which case it falls back to curl). But currently, we have two issues with the aria2 version we ship in 11.2 (which is version 1.5.2):&lt;ul&gt;&lt;li&gt;&lt;a href="https://bugzilla.novell.com/show_bug.cgi?id=556299"&gt;it still performs AAAA IPv6 lookups even when IPv6 is turned off&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://forums.opensuse.org/network-internet/425343-zypper-refresh-problem.html"&gt;there seems to be a problem with proxy support&lt;/a&gt; (has also been reported by Andrea Florio on IRC)&lt;/li&gt;&lt;/ul&gt;Providing an online update normally means that we backport individual, minimalistic patches that fix the reported issues, in order to avoid introducing new bugs. The policy says that version upgrades must be avoided at all costs. But in this case, it is quite tricky, as the aria2 version that fixes the two above mentioned problems is 1.8.2, and the one that ships with 11.2 is 1.5.2, which is.. erm.. quite a bump.

Now, if you feel like you'd like to contribute, please upgrade your aria2 package with the one that is available in the &lt;a href="http://download.opensuse.org/repositories/network:/utilities/openSUSE_11.2/"&gt;network:utilities&lt;/a&gt; repository, and &lt;a href="https://bugzilla.novell.com/show_bug.cgi?id=556299"&gt;let us know&lt;/a&gt; (sending me an email at pascal.bleser at our project's email domain (which is opensuse followed by a dot and then by org) is fine too) whether that newer aria2 version works for you or not. By "works" I mean that both the zypper command-line client and YaST2's software management module function properly. Even better if you disable IPv6 or if you're behind a proxy and it suddenly works :)

Here is the procedure to follow, from a terminal, running as root (can be copy/pasted as is):&lt;pre style="background:#000;color:#fff;font-style:monospace;padding:1em;"&gt;zypper ar -r \
http://download.opensuse.org/repositories/network:/utilities/\
openSUSE_11.2/network:utilities.repo

zypper up -t package aria2&lt;/pre&gt;
And then just use zypper and YaST2 as usual. Then please send me feedback (either on bugzilla or by email, as mentioned above) on whether it works for you or if you run into problems. Note that a very few initial tests show that it works very well, so it is not actually expected that it could break the whole package management stack &lt;code&gt;;)&lt;/code&gt;

Thanks for testing!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1085011258288073394?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1085011258288073394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1085011258288073394' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1085011258288073394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1085011258288073394'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/02/call-for-testing-opensuse-112-with.html' title='Call for testing openSUSE 11.2 with newer aria2'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4527785077954420950</id><published>2010-02-08T22:00:00.003+01:00</published><updated>2010-02-08T22:16:13.460+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman for Factory</title><content type='html'>We've started building and publishing a core set of multimedia/codec related packages at &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; for openSUSE Factory again, now that &lt;a href="http://news.opensuse.org/2010/02/01/download-nowits-here-opensuse-11-3-milestone-1/"&gt;11.3 M1&lt;/a&gt; has been published.

Currently available packages include: MPlayer, ffmpeg, fluidsynth, lame, xine, twolame, vlc and xmms, as well as the gstreamer stack and a pile of additional libraries. We don't build all the stuff that's in our 11.2/11.1/11.0 repositories for Factory, as the frequent updates to openSUSE.org's Factory would cause havoc on our build servers. If you believe something essential is missing, please &lt;a href="mailto:packman@links2linux.de"&gt;send us an email&lt;/a&gt; and we'll evaluate whether we'll add it or not.

To add it to your factory (or 11.3M1) system, just do the following from a shell as root:&lt;pre style="font-family:monospace; padding: 1em; background:#000; color:#fff;"&gt;zypper ar -r \
ftp://ftp.links2linux.de/pub/packman/suse/factory/packman.repo&lt;/pre&gt;
Note that the repository metadata is currently not signed. If you want to add the keys that sign our packages to RPM's keyring, install the package &lt;code&gt;rpmkey-packman&lt;/code&gt; from that repository (&lt;code&gt;zypper in rpmkey-packman&lt;/code&gt;). That means we are actually following Factory, and not the frozen milestones.

As we are having an &lt;a href="http://en.opensuse.org/Build_Service"&gt;OBS&lt;/a&gt; instance that is connected to the &lt;a href="http://build.opensuse.org"&gt;central openSUSE.org OBS instance&lt;/a&gt;, any update to factory automatically triggers rebuilds in our &lt;a href="http://ftp.gwdg.de/pub/linux/misc/packman/suse/factory/"&gt;factory repository&lt;/a&gt; when needed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4527785077954420950?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ftp.gwdg.de/pub/linux/misc/packman/suse/factory/' title='Packman for Factory'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4527785077954420950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4527785077954420950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4527785077954420950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4527785077954420950'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2010/02/packman-for-factory.html' title='Packman for Factory'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7188916416948499102</id><published>2009-12-13T23:38:00.002+01:00</published><updated>2009-12-13T23:41:19.429+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><category scheme='http://www.blogger.com/atom/ns#' term='rtorrent'/><title type='text'>rtorrent with magnet support</title><content type='html'>I added &lt;a href="http://libtorrent.rakshasa.no/ticket/955"&gt;unofficial (non upstream) patches&lt;/a&gt; to the &lt;a href="http://libtorrent.rakshasa.no/"&gt;&lt;code&gt;rtorrent&lt;/code&gt;&lt;/a&gt; builds we have in the &lt;a href="http://packman.links2linux.org"&gt;Packman repository&lt;/a&gt; to support &lt;a href="http://en.wikipedia.org/wiki/Magnet_URI_scheme"&gt;magnet URIs&lt;/a&gt; as well as colored output.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7188916416948499102?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.links2linux.org/package/rtorrent' title='rtorrent with magnet support'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7188916416948499102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7188916416948499102' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7188916416948499102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7188916416948499102'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/12/rtorrent-with-magnet-support.html' title='rtorrent with magnet support'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4300980083562251315</id><published>2009-12-11T23:24:00.003+01:00</published><updated>2009-12-11T23:31:18.508+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: deleting 10.3 packages</title><content type='html'>openSUSE 10.3 has been &lt;a href="http://en.opensuse.org/SUSE_Linux_Lifetime"&gt;EOL (end of life) since end of october&lt;/a&gt;, and we (&lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt;) are still hosting our packages for 10.3, even though we don't maintain them any more.

Hence we will remove them from our primary server and our mirrors, but will give you some time to make a copy if you need those packages for whatever reason (it is strongly discouraged to keep using an end of life distribution though, you have been warned).

In order to do a backup, I would recommend using rsync, as follows:&lt;pre style="background:#000;color:#eee;font-family:monospace;padding:0.5em;"&gt;mkdir -p ~/packman/10.3
rsync -aP rsync://ftp.skynet.be/packman/suse/10.3/ \
~/packman/10.3/&lt;/pre&gt;We will delete the 10.3 packages end of this year, hence make sure that you make a backup until December 31st if you need it.

And if you wonder why we simply don't keep that &lt;a href="http://en.opensuse.org/SUSE_Linux_Lifetime"&gt;old cruft&lt;/a&gt; around, well, it's using 36 GB of disk space, on our primary server and on each of our &lt;a href="ftp://packman.links2linux.org/pub/packman/MIRRORS"&gt;mirrors&lt;/a&gt;, respectively.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4300980083562251315?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4300980083562251315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4300980083562251315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4300980083562251315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4300980083562251315'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/12/packman-deleting-103-packages.html' title='Packman: deleting 10.3 packages'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6455711827888530451</id><published>2009-12-08T01:03:00.002+01:00</published><updated>2009-12-08T01:08:22.654+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM 2010 artwork</title><content type='html'>&lt;a href="http://fosdem.org/2010" title="FOSDEM 2010"&gt;&lt;img src="http://fosdem.org/2010/promo/fosdem/static"/&gt;&lt;/a&gt;

Just finished uploading the &lt;a href="http://fosdem.org/2010/support/promote"&gt;promo artwork for FOSDEM 2010&lt;/a&gt;. If you appreciate the event, please consider using a banner or web badge on your site to promote it.

On a side note, animation truly sucks. Flash simply isn't an option, and we're left with&lt;ul&gt;&lt;li&gt;GIF: awful quality, limited to 8bit, color bleeding, forget it,&lt;/li&gt;&lt;li&gt;MNG: purposeful standard but has been dropped from most browsers,&lt;/li&gt;&lt;li&gt;APNG: hardly a standard, only supported on Firefox and Opera, but works for those, and falls back nicely elsewhere&lt;/li&gt;&lt;/ul&gt;
Hence I decided to go with &lt;a href="http://en.wikipedia.org/wiki/APNG"&gt;APNG&lt;/a&gt;. But maybe the animation is a bad idea in the first place. Well, there are static banners to choose from as well &lt;code&gt;;)&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6455711827888530451?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fosdem.org/2010/support/promote' title='FOSDEM 2010 artwork'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6455711827888530451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6455711827888530451' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6455711827888530451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6455711827888530451'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/12/fosdem-2010-artwork.html' title='FOSDEM 2010 artwork'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6501595304331428774</id><published>2009-11-23T08:29:00.002+01:00</published><updated>2009-11-23T08:33:19.198+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Packman repository for KDE3 on openSUSE 11.2</title><content type='html'>openSUSE 11.2 doesn't ship KDE3 anymore, because it is barely maintained upstream. But you may still install and use KDE3 as your desktop environment as the packages are &lt;a href="http://download.opensuse.org/repositories/KDE:/KDE3/openSUSE_11.2/KDE:KDE3.repo"&gt;available in the openSUSE Build Service&lt;/a&gt;.

Which is why we decided to set up an additional repository that contains the Packman packages that require KDE3. If you want e.g. &lt;code&gt;kde3-amarok&lt;/code&gt;, add the following repository: &lt;a href="http://ftp.skynet.be/pub/packman/suse/kde3/11.2/packman-kde3.repo"&gt;http://ftp.skynet.be/pub/packman/suse/kde3/11.2/packman-kde3.repo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6501595304331428774?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ftp.skynet.be/pub/packman/suse/kde3/11.2/packman-kde3.repo' title='Packman repository for KDE3 on openSUSE 11.2'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6501595304331428774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6501595304331428774' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6501595304331428774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6501595304331428774'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/11/packman-repository-for-kde3-on-opensuse.html' title='Packman repository for KDE3 on openSUSE 11.2'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4280061563206280688</id><published>2009-11-20T18:34:00.003+01:00</published><updated>2009-11-20T18:54:00.645+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='osc'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>osc and self-signed certificates the secure way</title><content type='html'>Obviously, a much more secure option to use the &lt;a href="http://en.opensuse.org/Build_Service/CLI"&gt;&lt;code&gt;osc&lt;/code&gt;&lt;/a&gt; &lt;a href="http://en.opensuse.org/Build_Service"&gt;Build Service&lt;/a&gt; command-line client with your own server instances that have a &lt;a href="http://en.wikipedia.org/wiki/Self-signed_certificate"&gt;self-signed certificate&lt;/a&gt; is to actually add that server certificate to the list of blessed ones.

To do so, do as follows, all of that as root in a shell:
&lt;pre style="background:#000; color:#eee; padding: 0.5em;"&gt;umask 0033
cd /etc/ssl/certs
echo | openssl s_client -showcerts \
-connect YOUR.SERVER:SSL_PORT \
2&gt;&amp;1 |sed -n '/^-----BEGIN/,/^-----END/p' \
&gt; SOME_FILENAME.pem
c_rehash .&lt;/pre&gt;
Once you've done the above, &lt;a href="http://en.opensuse.org/Build_Service/CLI"&gt;&lt;code&gt;osc&lt;/code&gt;&lt;/a&gt; will no longer complain about an invalid (server) peer certificate, as the certificate of your &lt;a href="http://en.opensuse.org/Build_Service"&gt;Build Service&lt;/a&gt; instance server is now accepted as a valid one.

Note that in order to be really secure, you need to ask an administrator of the server what the &lt;a href="http://en.wikipedia.org/wiki/Fingerprint_%28computing%29"&gt;fingerprint&lt;/a&gt; (also called a &lt;a href="http://en.wikipedia.org/wiki/Cryptographic_hash_function"&gt;hash&lt;/a&gt;) of the server certificate actually is, in order to compare and make sure you're not blessing an already compromised server or are already subject to a man-in-the-middle attack.

To do so, an user who has root access to the server should run the following command, obviously as root, and then give you the output of that command, ideally through a secure communication channel, or through several channels (e.g. SMS mobile text message and/or a signed email and/or IRC from a registered nickname):
&lt;pre style="background:#000; color:#eee; padding: 0.5em;"&gt;cat /etc/ssl/private/lighttpd.pem\
| sed -n '/^-----BEGIN CERT/,/^-----END CERT/p'\
| sha1sum | cut -f1 -d" "&lt;/pre&gt;
You can then run the following command and compare the output with what that trusted user has given you:
&lt;pre style="background:#000; color:#eee; padding: 0.5em;"&gt;fp=$(sha1sum /etc/ssl/certs/SOME_FILENAME.pem\
| cut -f1 -d" ")
server="...paste what the trusted user has given you here..."
test "$fp" = "$server" &amp;&amp; echo OK || echo COMPROMISED&lt;/pre&gt;
If you have already patched your &lt;code&gt;osc&lt;/code&gt; client as I described &lt;a href="/2009/11/patch-for-osc-and-self-signed.html"&gt;in my previous post&lt;/a&gt;, you can undo that patch with the following code (again, as root in a shell):
&lt;pre style="background:#000; color:#eee; padding: 0.5em;"&gt;umask 0077
cd $(dirname $(rpm -ql osc|grep /conf.py\$))
mv conf.py.orig conf.py
chmod 0644 conf.py&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4280061563206280688?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4280061563206280688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4280061563206280688' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4280061563206280688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4280061563206280688'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/11/osc-and-self-signed-certificates-secure.html' title='osc and self-signed certificates the secure way'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7026065092678273304</id><published>2009-11-20T18:12:00.005+01:00</published><updated>2009-11-20T18:44:12.930+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='osc'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Patch for osc and self-signed certificates</title><content type='html'>If you are using your own &lt;a href="http://en.opensuse.org/Build_Service"&gt;Build Service&lt;/a&gt; instance as we do at &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; and if you are using &lt;a href="http://en.wikipedia.org/wiki/Self-signed_certificate"&gt;a self-signed certificates&lt;/a&gt; for &lt;a href="http://en.wikipedia.org/wiki/HTTP_Secure"&gt;HTTPS&lt;/a&gt;, then &lt;a href="http://linux01.gwdg.de/~pbleser/files/osc/osc-disable-peer-cert-check.diff"&gt;this&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Patch_(Unix)"&gt;patch&lt;/a&gt; might come handy for you as well.

Note that it &lt;b&gt;disables the peer certificate validation in &lt;a href="http://en.opensuse.org/Build_Service/CLI"&gt;&lt;code&gt;osc&lt;/code&gt;&lt;/a&gt;&lt;/b&gt;, so don't use that with Build Service instances you down trust, and only if you are willing to take the &lt;b&gt;risk of not detecting &lt;a href="http://en.wikipedia.org/wiki/Man-in-the-middle_attack"&gt;man-in-the-middle attacks&lt;/a&gt;&lt;/b&gt;.

In order to apply the patch, simply copy and paste the following block of shell code in a terminal where you are running as root:
&lt;pre style="background:#000; color:#eee; padding: 0.5em;"&gt;cd $(dirname $(rpm -ql osc|grep /conf.py\$))
umask 0077
curl -s -o /tmp/o.patch \
http://linux01.gwdg.de/~pbleser/files/osc/\
osc-disable-peer-cert-check.diff
test $(sha1sum /tmp/o.patch | cut -f1 -d" ") = \
9812ef2a18c02799b9e33d1402509c3217c39194 \
&amp;&amp; patch -p1 -b -z.orig -i /tmp/o.patch&lt;/pre&gt;

&lt;b&gt;UPDATE:&lt;/b&gt; note that in my following blog-post &lt;a href="/2009/11/osc-and-self-signed-certificates-secure.html"&gt;I describe a &lt;b&gt;secure&lt;/b&gt; option&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7026065092678273304?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://linux01.gwdg.de/~pbleser/files/osc/osc-disable-peer-cert-check.diff' title='Patch for osc and self-signed certificates'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7026065092678273304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7026065092678273304' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7026065092678273304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7026065092678273304'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/11/patch-for-osc-and-self-signed.html' title='Patch for osc and self-signed certificates'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4306655367588405498</id><published>2009-11-18T10:15:00.001+01:00</published><updated>2009-11-18T10:16:37.491+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='webpin'/><title type='text'>webpin .= "11.2";</title><content type='html'>Just committed the webpin CLI client version 1.2.1, which only contains a single modification: it now also supports searching the Software Portal index for openSUSE 11.2.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4306655367588405498?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4306655367588405498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4306655367588405498' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4306655367588405498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4306655367588405498'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/11/webpin-112.html' title='webpin .= &quot;11.2&quot;;'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5254863919789764010</id><published>2009-10-31T17:27:00.003+01:00</published><updated>2009-10-31T17:34:44.103+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: transition to 11.2</title><content type='html'>As you might have noticed already, &lt;a href="http://packman.links2linux.org"&gt;we&lt;/a&gt;'ve been &lt;a href="/2009/09/packman-for-factory.html"&gt;building our packages&lt;/a&gt; for &lt;a href="http://en.opensuse.org/Factory"&gt;openSUSE Factory&lt;/a&gt; for a couple of weeks now.

&lt;a href="http://en.opensuse.org/OpenSUSE_11.2"&gt;openSUSE 11.2&lt;/a&gt; is &lt;a href="http://counter.opensuse.org/11.2/"&gt;almost there&lt;/a&gt; now, and we are currently re-building everything for 11.2 (against the &lt;code&gt;openSUSE:11.2:Updates&lt;/code&gt; project on &lt;a href="http://en.opensuse.org/Build_Service"&gt;&lt;code&gt;build.opensuse.org&lt;/code&gt;&lt;/a&gt;). Previously, our &lt;a href="http://packman.mirrors.skynet.be/pub/packman/suse/"&gt;Packman repository for openSUSE&lt;/a&gt; 11.2 was merely a symbolic link to &lt;a href="http://packman.mirrors.skynet.be/pub/packman/suse/factory/"&gt;our factory repository&lt;/a&gt;, but two days ago I removed that symbolic link and, as mentioned above, in the process of building a proper repository there.

In the mean time, if you're on a &lt;a href="http://news.opensuse.org/2009/10/29/final-opensuse-11-2-release-candidate-available/"&gt;Release Candidate of openSUSE 11.2&lt;/a&gt;, please use our &lt;a href="http://packman.mirrors.skynet.be/pub/packman/suse/factory/Packman.repo"&gt;factory repository&lt;/a&gt; for a couple more days, until we managed to at least build an essential set of core packages for 11.2.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5254863919789764010?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.links2linux.org/' title='Packman: transition to 11.2'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5254863919789764010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5254863919789764010' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5254863919789764010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5254863919789764010'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/packman-transition-to-112.html' title='Packman: transition to 11.2'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-4638835425158730355</id><published>2009-10-27T19:05:00.003+01:00</published><updated>2009-10-27T19:06:58.293+01:00</updated><title type='text'>Vote against big brother</title><content type='html'>If you're a Belgian citizen, &lt;a href="http://bewaarjeprivacy.be/"&gt;sign the petition&lt;/a&gt; against forcing ISPs to store Internet connectivity information for 6-12 months.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-4638835425158730355?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://bewaarjeprivacy.be/' title='Vote against big brother'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/4638835425158730355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=4638835425158730355' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4638835425158730355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/4638835425158730355'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/vote-against-big-brother.html' title='Vote against big brother'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5007436458521166041</id><published>2009-10-27T02:16:00.003+01:00</published><updated>2009-10-27T02:23:07.984+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM 2010 Distribution Miniconf</title><content type='html'>So there we are, the cat is out of the bag &lt;tt&gt;;)&lt;/tt&gt;: for the upcoming FOSDEM 2010, we will organize a shared, common, mixed mini-conference-in-the-conference with distribution projects.

For further details, &lt;a href="http://fosdem.org/2010/distrominiconf"&gt;read here&lt;/a&gt;.

I already poked openSUSE, Fedora, CentOS, Exherbo, Debian, Ubuntu (*), Mandriva and ArchLinux (*) ... but if you read this and you're involved into another distribution project, please do join the party. The more, the merrier &lt;tt&gt;:)&lt;/tt&gt;

(*) no reply yet&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5007436458521166041?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fosdem.org/2010/distrominiconf' title='FOSDEM 2010 Distribution Miniconf'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5007436458521166041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5007436458521166041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5007436458521166041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5007436458521166041'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/fosdem-2010-distribution-miniconf.html' title='FOSDEM 2010 Distribution Miniconf'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8180545173150464572</id><published>2009-10-25T23:01:00.004+01:00</published><updated>2009-10-25T23:13:34.560+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Send mail to openSUSE Build Service project maintainers</title><content type='html'>Just wrote a little script that parses the output of &lt;tt&gt;&lt;a href="http://en.opensuse.org/Build_Service/CLI"&gt;osc&lt;/a&gt; meta prj&lt;/tt&gt; or &lt;tt&gt;osc meta pkg&lt;/tt&gt;, grabs the list of users in there and pokes the &lt;a href="http://en.opensuse.org/Build_Service"&gt;openSUSE Build Service&lt;/a&gt; API again to retrieve their email address.

All that is then used to call &lt;a href="http://www.mozillamessaging.com/thunderbird/"&gt;Thunderbird&lt;/a&gt; in compose mode with the appropriate list of email addresses (and real names, when available).

It also uses a cache file to speed things up.

Examples:&lt;pre style="background:#000;color:#fff;padding:0.5em;margin:0;"&gt;osc meta prj security | omail
osc meta pkg security keychain | omail&lt;/pre&gt;
You can &lt;a href="http://linux01.gwdg.de/~pbleser/files/osc/omail"&gt;download that (Perl) script from here&lt;/a&gt;. Simply copy it to &lt;tt&gt;~/bin&lt;/tt&gt; or &lt;tt&gt;/usr/local/bin&lt;/tt&gt; and do a &lt;tt&gt;chmod 755&lt;/tt&gt; on it.

Of course, you might as well add support for your favourite MUA (email client), which should be fairly trivial, given that the script already does the dirty work &lt;tt&gt;;-)&lt;/tt&gt;

An alternative would be to re-author that script as &lt;a href="http://en.opensuse.org/Build_Service/osc_plugins"&gt;an &lt;tt&gt;osc&lt;/tt&gt; plugin&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8180545173150464572?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://linux01.gwdg.de/~pbleser/files/osc/omail' title='Send mail to openSUSE Build Service project maintainers'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8180545173150464572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8180545173150464572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8180545173150464572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8180545173150464572'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/send-mail-to-opensuse-build-service.html' title='Send mail to openSUSE Build Service project maintainers'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7243456902414021063</id><published>2009-10-21T01:30:00.002+02:00</published><updated>2009-10-21T01:32:13.394+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman upgrading to SVN OBS</title><content type='html'>Don't panic if you notice insane amounts of updates to packages in the Packman repository for openSUSE.

We are currently switching from OBS (openSUSE Build Service) version 1.6.0 to the latest SVN trunk HEAD, which requires some experimentation and also caused a complete rebuild (for unknown reasons).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7243456902414021063?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7243456902414021063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7243456902414021063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7243456902414021063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7243456902414021063'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/packman-upgrading-to-svn-obs.html' title='Packman upgrading to SVN OBS'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-819946100852835393</id><published>2009-10-17T23:53:00.003+02:00</published><updated>2009-10-17T23:58:08.348+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: deleting 10.2 packages</title><content type='html'>We are going to delete the packages for openSUSE 10.2 from the Packman repository very soon because our builds for Factory are starting to kill off the disk space on some of our mirrors.

If you still want them, you must pull a local copy &lt;b&gt;ASAP&lt;/b&gt;, e.g.:
&lt;pre style="background:#000;color:#fff;padding:0.5em;font-family:monospace;"&gt;rsync -avP rsync://ftp.skynet.be/packman/suse/10.2/ \
/some/directory/for/the/mirror/10.2/&lt;/pre&gt;Note that the 10.2 packages currently sum up to around &lt;b&gt;25 GB&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-819946100852835393?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/819946100852835393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=819946100852835393' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/819946100852835393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/819946100852835393'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/packman-deleting-102-packages.html' title='Packman: deleting 10.2 packages'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-8247504446058247837</id><published>2009-10-17T00:10:00.004+02:00</published><updated>2009-10-17T00:26:07.415+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>Updated openSUSE countdown image</title><content type='html'>&lt;img src="http://counter.opensuse.org/" style="float:left; margin-right: 1em; margin-bottom: 0.5em;"/&gt;Our infamous &lt;a href="http://jimmac.musichall.cz/"&gt;Jakub "jimmac" Steiner&lt;/a&gt; designed new &lt;a href="http://counter.opensuse.org"&gt;openSUSE countdown&lt;/a&gt; artwork that is more in line with the look and feel of the upcoming &lt;a href="http://en.opensuse.org/OpenSUSE_11.2"&gt;openSUSE 11.2&lt;/a&gt; distribution.

He also proposed using &lt;a href="http://en.wikipedia.org/wiki/SVG"&gt;SVG&lt;/a&gt; templates and &lt;a href="http://librsvg.sourceforge.net/"&gt;&lt;code&gt;rsvg&lt;/code&gt;&lt;/a&gt; in order to render the various localized images, rather than the &lt;a href="http://www.pythonware.com/products/pil/"&gt;Python PIL&lt;/a&gt; &lt;a href="https://forgesvn1.novell.com/svn/opensuse/trunk/infrastructure/countdown.o.o/render.py"&gt;script with crappy math&lt;/a&gt; I wrote a while ago, including the many ugly hacks to compute the coordinates text coordinates, font size adjustments, etc...

It is indeed much more comfortable and flexible now, simply by using &lt;a href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt; to design the templates (one for each image size, because it uses a &lt;a href="http://en.wikipedia.org/wiki/Raster_graphics"&gt;raster&lt;/a&gt; background rather than a &lt;a href="http://en.wikipedia.org/wiki/Vector_graphics"&gt;vectorized&lt;/a&gt; SVG), containing placeholders.&lt;br/&gt;A plain Python script contains all the localization logic and replaces those placeholders with the appropriate content for each language, and then feeds that into &lt;a href="http://librsvg.sourceforge.net/"&gt;&lt;code&gt;rsvg-convert&lt;/code&gt;&lt;/a&gt; to render &lt;a href="http://en.wikipedia.org/wiki/Portable_Network_Graphics"&gt;PNG&lt;/a&gt; files.
&lt;div style="clear:both;"&gt;&lt;/div&gt;
If you're interested by the nitty gritty of that script, &lt;a href="https://forgesvn1.novell.com/svn/opensuse/trunk/infrastructure/countdown.o.o/svg/render.py"&gt;it is available at forgesvn1.novell.com&lt;/a&gt;.

For details on how to include that openSUSE countdown image on your site, blog, ..., please consult &lt;a href="http://en.opensuse.org/Countdown"&gt;the corresponding page on the openSUSE wiki&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-8247504446058247837?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/11.2/' title='Updated openSUSE countdown image'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/8247504446058247837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=8247504446058247837' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8247504446058247837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/8247504446058247837'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/updated-opensuse-countdown-image.html' title='Updated openSUSE countdown image'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-6067206207934072396</id><published>2009-10-08T10:00:00.003+02:00</published><updated>2009-10-08T10:01:52.755+02:00</updated><title type='text'>No internets</title><content type='html'>Just a quick post to say I'm not dead. But my Internet uplink is. Well... seems like my ISP (Belgacom/Skynet) is having a major, global tits up, and I have no idea when they'll manage to fix it.

It's already been 2 days without Internet at home. Feels like holidays &lt;code&gt;:D&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-6067206207934072396?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/6067206207934072396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=6067206207934072396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6067206207934072396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/6067206207934072396'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/10/no-internets.html' title='No internets'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1495110432839425930</id><published>2009-09-25T10:45:00.003+02:00</published><updated>2009-09-25T10:59:39.005+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman for Factory</title><content type='html'>It has often been requested in the past, and &lt;a href="http://packman.links2linux.org"&gt;we&lt;/a&gt;'re finally building &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt; packages for &lt;a href="http://en.opensuse.org/Factory"&gt;openSUSE Factory&lt;/a&gt; (the openSUSE development tree).

As Factory is in almost permanent flux, we are building against &lt;a href="http://lizards.opensuse.org/2009/09/02/building-against-opensusefactory/"&gt;openSUSE Factory snapshots&lt;/a&gt; instead.

We don't build everything against factory either, as we only have limited build power, but essential applications such as &lt;a href="http://packman.links2linux.org/package/mplayer"&gt;MPlayer&lt;/a&gt; are there &lt;code&gt;:)&lt;/code&gt;
&lt;pre style="background:#000;color:#fff;padding:0.5em"&gt;zypper ar -r \
ftp://packman.links2linux.org/pub/packman/suse/factory/Packman.repo&lt;/pre&gt;
Note that the repository currently is not signed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1495110432839425930?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ftp.skynet.be/pub/packman/suse/factory/' title='Packman for Factory'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1495110432839425930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1495110432839425930' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1495110432839425930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1495110432839425930'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/09/packman-for-factory.html' title='Packman for Factory'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1892418726605875146</id><published>2009-09-13T15:00:00.003+02:00</published><updated>2009-09-13T15:05:14.956+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><title type='text'>openSUSE 11.2 countdown</title><content type='html'>&lt;img src="http://counter.opensuse.org/11.2/medium" /&gt;

Just updated &lt;a href="http://counter.opensuse.org/11.2"&gt;our countdown server&lt;/a&gt; to &lt;a href="http://en.opensuse.org/OpenSUSE_11.2"&gt;11.2&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1892418726605875146?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://counter.opensuse.org/11.2' title='openSUSE 11.2 countdown'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1892418726605875146/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1892418726605875146' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1892418726605875146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1892418726605875146'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/09/opensuse-112-countdown.html' title='openSUSE 11.2 countdown'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-451036056169140459</id><published>2009-09-10T22:51:00.002+02:00</published><updated>2009-09-10T23:00:44.353+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>Scripts for OBS monitoring</title><content type='html'>(yes, I'm back from holidays)

Marcus "}-Tux-{" Hüwe and I have been busy the last weeks to set up an &lt;a href="http://en.opensuse.org/Build_Service"&gt;openSUSE Build Service&lt;/a&gt; instance for &lt;a href="http://packman.links2linux.org"&gt;Packman&lt;/a&gt;. While doing so, I wrote &lt;a href="http://linux01.gwdg.de/~pbleser/files/obs/"&gt;a few little scripts&lt;/a&gt; to monitor what is going on as far as building, the scheduler queue and such are concerned.

The most interesting ones are &lt;a href="http://linux01.gwdg.de/~pbleser/files/obs/obs-building"&gt;&lt;code&gt;obs-building&lt;/code&gt;&lt;/a&gt;, that displays what is currently being built on all workers:
&lt;img src="http://linux01.gwdg.de/~pbleser/files/app-shots/obs-building.png" alt="obs-building sample"/&gt;

as well as &lt;a href="http://linux01.gwdg.de/~pbleser/files/obs/obs-queue"&gt;&lt;code&gt;obs-queue&lt;/code&gt;&lt;/a&gt;, that displays what is currently being scheduled for build:
&lt;img src="http://linux01.gwdg.de/~pbleser/files/app-shots/obs-queue.png" alt="obs-queue sample"/&gt;

and finally &lt;a href="http://linux01.gwdg.de/~pbleser/files/obs/obs-top"&gt;&lt;code&gt;obs-top&lt;/code&gt;&lt;/a&gt;, a simple hack that uses watch to display combined output from &lt;code&gt;top&lt;/code&gt;, &lt;code&gt;obs-building&lt;/code&gt; and &lt;code&gt;obs-queue&lt;/code&gt;:
&lt;img src="http://linux01.gwdg.de/~pbleser/files/app-shots/obs-top.png" alt="obs-top sample"/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-451036056169140459?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://linux01.gwdg.de/%7Epbleser/files/obs/' title='Scripts for OBS monitoring'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/451036056169140459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=451036056169140459' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/451036056169140459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/451036056169140459'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/09/scripts-for-obs-monitoring.html' title='Scripts for OBS monitoring'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7490410015963580319</id><published>2009-08-14T01:44:00.000+02:00</published><updated>2009-08-14T01:45:15.765+02:00</updated><title type='text'>Holidays</title><content type='html'>I'm away from any sort of keyboard from now until the 28th.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7490410015963580319?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7490410015963580319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7490410015963580319' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7490410015963580319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7490410015963580319'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/08/holidays.html' title='Holidays'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-2683820383461062906</id><published>2009-07-25T01:38:00.005+02:00</published><updated>2009-07-25T02:54:47.153+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='packman'/><title type='text'>Packman: gamin: fix ABI compatibility with fam</title><content type='html'>There seems to be a very annoying &lt;a href="http://lists.opensuse.org/yast-devel/2009-02/msg00000.html"&gt;ABI incompatibility&lt;/a&gt; between &lt;code&gt;gamin&lt;/code&gt; and &lt;code&gt;fam&lt;/code&gt;, which are packages that both implement the same API (&lt;code&gt;gamin&lt;/code&gt; uses &lt;a href="http://en.wikipedia.org/wiki/Inotify"&gt;&lt;code&gt;inotify&lt;/code&gt;&lt;/a&gt; and has per-user daemons, while &lt;code&gt;fam&lt;/code&gt; has better &lt;a href="http://en.wikipedia.org/wiki/Network_File_System_%28protocol%29"&gt;NFS&lt;/a&gt; support).

That incompatibility is in the externalized &lt;code&gt;FamErrlist&lt;/code&gt; &lt;code&gt;char*&lt;/code&gt; array, where &lt;code&gt;fam&lt;/code&gt; exports an useless &lt;code&gt;char*[1]&lt;/code&gt; and &lt;code&gt;gamin&lt;/code&gt; has more than one array element in it, as well as having typed as &lt;code&gt;const char*[]&lt;/code&gt;.

While the latter isn't causing any problems, the former does, which manifests itself through the following warning message at runtime:
&lt;div style="border:1px solid #888; padding: 0.5em; font: monospace;"&gt;Symbol `FamErrlist' has different size in shared object, consider re-linking&lt;/div&gt;
Apparently, it's not just a warning, but it also causes failures and crashes.

In the &lt;a href="http://packman.links2linux.org/"&gt;Packman&lt;/a&gt; repository, we ship the &lt;code&gt;gamin&lt;/code&gt; package, while the openSUSE distribution only includes (and prefers) &lt;code&gt;fam&lt;/code&gt;, precisely because of its better NFS support. All openSUSE packages and all packages that are built in the &lt;a href="http://en.opensuse.org/Build_Service"&gt;openSUSE Build Service&lt;/a&gt; are compiled and linked against &lt;code&gt;fam&lt;/code&gt;. But if you have the Packman repository in your preferred package manager (e.g. &lt;a href="http://en.opensuse.org/Zypper"&gt;&lt;code&gt;zypper&lt;/code&gt;&lt;/a&gt;, &lt;a href="http://labix.org/smart"&gt;&lt;code&gt;smart&lt;/code&gt;&lt;/a&gt; or &lt;a href="http://yum.baseurl.org/"&gt;&lt;code&gt;yum&lt;/code&gt;&lt;/a&gt;), you might end up with installing &lt;code&gt;gamin&lt;/code&gt; and removing &lt;code&gt;fam&lt;/code&gt; (because the &lt;code&gt;gamin&lt;/code&gt; package in the Packman repository obsoletes and provides &lt;code&gt;fam&lt;/code&gt;).

I have just committed a patch against the Packman &lt;code&gt;gamin&lt;/code&gt; packages that changes the size of that &lt;code&gt;FamErrlist&lt;/code&gt; array to have the same size as in &lt;code&gt;fam&lt;/code&gt;, which effectively solves the warning messages, and should also fix the crashes.

The fix is included in &lt;a href="http://packman.links2linux.org/package/gamin"&gt;&lt;code&gt;gamin-0.1.10-0.pm.3&lt;/code&gt;&lt;/a&gt; and above.

As an alternative, if you can't or don't want to upgrade the &lt;code&gt;gamin&lt;/code&gt; package, do as follows to remove &lt;code&gt;gamin&lt;/code&gt; and re-install &lt;code&gt;fam&lt;/code&gt; instead:&lt;div style="border:1px solid #888; background:#000; color:#fff; font-family:monospace; padding:0.5em;"&gt;rpm -e --nodeps gamin
rpm -q gamin-devel &amp;&amp; rpm -e --nodeps gamin-devel
zypper install fam
zypper addlock gamin
zypper addlock gamin-devel&lt;/div&gt;Note that all of those commands must be executed &lt;b&gt;as root&lt;/b&gt;, and the last two commands prevent from ever installing the packages &lt;code&gt;gamin&lt;/code&gt; and &lt;code&gt;gamin-devel&lt;/code&gt; again (at least with zypper).

&lt;b&gt;UPDATE:&lt;/b&gt; removed the &lt;code&gt;Obsoletes:fam&lt;/code&gt; directive in &lt;a href="http://packman.links2linux.org/package/gamin"&gt;&lt;code&gt;gamin-0.1.10-0.pm.4&lt;/code&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-2683820383461062906?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://packman.links2linux.org/package/gamin' title='Packman: gamin: fix ABI compatibility with fam'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/2683820383461062906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=2683820383461062906' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2683820383461062906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/2683820383461062906'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/packman-gamin-fix-abi-compatibility.html' title='Packman: gamin: fix ABI compatibility with fam'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-71351639541270430</id><published>2009-07-24T03:51:00.004+02:00</published><updated>2009-07-24T04:03:11.117+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Find python dependencies</title><content type='html'>When building &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; &lt;a href="http://download.opensuse.org/repositories/devel:/languages:/python/"&gt;packages&lt;/a&gt;, one recurrent and very tedious task is to analyze what dependencies each upstream project has.

As we can't apply &lt;code&gt;&lt;a href="http://linux.die.net/man/1/ldd"&gt;ldd&lt;/a&gt;&lt;/code&gt; as with C/C++, nor something like &lt;a href="http://clarkware.com/software/JDepend.html"&gt;jdepend&lt;/a&gt; as with Java, and because I'm lazy and don't like doing repetitive stuff, I've hacked a little script that uses some heuristics to try to find out by itself what a bunch of python sources require.

It does so by grepping the &lt;a href="http://docs.python.org/reference/simple_stmts.html#the-import-statement"&gt;&lt;code&gt;import&lt;/code&gt;&lt;/a&gt; statements (in various forms) in all &lt;code&gt;.py&lt;/code&gt; files under the current directory, and then tries to resolve them to &lt;code&gt;.py&lt;/code&gt; files under the Python lib directory (e.g. &lt;code&gt;/usr/lib64/python2.6&lt;/code&gt;, although it finds out what that directory is by poking Python itself, no assumptions made there) and map those files onto RPM packages (by simply using &lt;code&gt;rpm -qf&lt;/code&gt;).

Again, simple and stupid, and the ANSI colouring assumes a dark terminal background &lt;code&gt;;)&lt;/code&gt;, but you might want to give it a try and you even might find it useful.

The (Perl) script is here: &lt;a href="http://linux01.gwdg.de/~pbleser/files/rpm/fpydep"&gt;&lt;code&gt;fpydep&lt;/code&gt;&lt;/a&gt;

Sample output (make sure to have your browser on UTF-8 encoding):&lt;pre style="border:1px solid #aaa;padding:0.5em;"&gt;&lt;span style="font-weight:bold;color:#808000; background-color:#800000;"&gt; WARN &lt;/span&gt;&lt;span style="color:#800000; background-color:#ffffff;"&gt; failed to resolve &lt;/span&gt;&lt;span style="font-weight:bold;color:#808000; background-color:#ffffff;"&gt;json&lt;/span&gt;
&lt;span style="font-weight:bold;color:#808000; background-color:#800000;"&gt; WARN &lt;/span&gt;&lt;span style="color:#800000; background-color:#ffffff;"&gt; failed to resolve &lt;/span&gt;&lt;span style="font-weight:bold;color:#808000; background-color:#ffffff;"&gt;simplejson&lt;/span&gt;
&lt;span style="text-decoration:underline;color:#000000; background-color:#ffffff;"&gt;Resolved:&lt;/span&gt;
Requires: &lt;span style="font-weight:bold;color:#008080; background-color:#ffffff;"&gt;python-xml&lt;/span&gt;

&lt;span style="text-decoration:underline;color:#000000; background-color:#ffffff;"&gt;Locals:&lt;/span&gt;
services
surl
surl.services
surl.surl
surl.version
version

&lt;span style="text-decoration:underline;color:#000000; background-color:#ffffff;"&gt;Failed to resolve python files for the following imports:&lt;/span&gt;
json
simplejson
&lt;/pre&gt;
If anyone is aware of a more thorough approach to doing that, please let me know &lt;code&gt;:)&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-71351639541270430?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://linux01.gwdg.de/~pbleser/files/rpm/fpydep' title='Find python dependencies'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/71351639541270430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=71351639541270430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/71351639541270430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/71351639541270430'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/find-python-dependencies.html' title='Find python dependencies'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-3451273279357778050</id><published>2009-07-24T03:41:00.004+02:00</published><updated>2009-07-24T03:49:16.954+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='osc'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>osc faillog, for the lazy</title><content type='html'>As &lt;a href="http://dev-loki.blogspot.com/2009/06/osc-plugin-for-lazy.html"&gt;blogged about a while ago&lt;/a&gt;, I also wrote a very crude and simple &lt;a href="http://en.opensuse.org/Build_Service/osc_plugins"&gt;&lt;code&gt;osc&lt;/code&gt; plugin&lt;/a&gt; for the lazy people (like me!) that applies some simple heuristics to pick the most informative build failure log, to avoid having to type the target distribution and architecture as parameters to &lt;code&gt;osc bl&lt;/code&gt;

Well, it's now available as a package, namely &lt;code&gt;osc-plugin-faillog&lt;/code&gt;

To install, add the &lt;a href="http://download.opensuse.org/repositories/home:/pbleser:/osc/"&gt;home:pbleser:osc repository&lt;/a&gt; (pick a subdirectory that suits your distribution), and install the package &lt;code&gt;osc-plugin-faillog&lt;/code&gt;

To use it, just type &lt;code&gt;&lt;b&gt;osc f&lt;/b&gt;&lt;/code&gt; while being in a package sandbox directory, exactly as with &lt;code&gt;osc bl&lt;/code&gt; (but without having to type e.g. &lt;code&gt;osc bl openSUSE_11.1 x86_64&lt;/code&gt; &lt;code&gt;:)&lt;/code&gt;).

The "algorithm" is quite simple:&lt;ul&gt;&lt;li&gt;if &lt;a href="http://en.opensuse.org/Factory"&gt;factory&lt;/a&gt; (&lt;code&gt;SUSE_Factory&lt;/code&gt; or &lt;code&gt;openSUSE_Factory&lt;/code&gt;, or anything else that has &lt;code&gt;factory&lt;/code&gt; in its distribution name) failed, it will display the log for that&lt;/li&gt;&lt;li&gt;if not, then it will pick the most recent openSUSE distribution target that failed (i.e. &lt;code&gt;openSUSE_11.1&lt;/code&gt; &gt; &lt;code&gt;openSUSE_11.0&lt;/code&gt;, etc...)&lt;/li&gt;&lt;/ul&gt;
From my experience, that (almost?) always makes sense, as the more recent the build target is, the tougher GCC is, and the pickier the &lt;a href="http://en.opensuse.org/Packaging/RpmLint"&gt;&lt;code&gt;rpmlint&lt;/code&gt;&lt;/a&gt; rules.

Yes, it's simple and stupid, but it works -- at least for me. And indeed, it doesn't work for non-openSUSE distribution targets as of now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-3451273279357778050?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://download.opensuse.org/repositories/home:/pbleser:/osc/' title='osc faillog, for the lazy'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/3451273279357778050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=3451273279357778050' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3451273279357778050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/3451273279357778050'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/osc-faillog-for-lazy.html' title='osc faillog, for the lazy'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-1431058927908124051</id><published>2009-07-24T03:11:00.003+02:00</published><updated>2009-07-24T03:20:19.469+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='osc'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse build service'/><title type='text'>osc niceresults, now with icons</title><content type='html'>I've &lt;a href="http://dev-loki.blogspot.com/2008/03/osc-plugin-for-coloured-build-results.html"&gt;already written about my &lt;code&gt;osc-plugin-niceresults&lt;/code&gt; package&lt;/a&gt;, and now I added some nifty UTF-8 "icons" that help quickly understanding the clutter that the output of &lt;code&gt;&lt;a href="http://en.opensuse.org/Build_Service/CLI"&gt;osc&lt;/a&gt; r&lt;/code&gt; can be at times, especially when you have a lot of build targets.

So, what does it look like ? (make sure to have your browser on UTF-8 &lt;code&gt;;)&lt;/code&gt;)
&lt;pre&gt;  Repository    │ Arch   │ Status
────────────────┼────────┼────────────────
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_10.3 │ i586   │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_10.3 │ x86_64 │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_11.0 │ i586   │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_11.0 │ x86_64 │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_11.1 │ x86_64 │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="font-weight:bold;color:#008000; background-color:#ffffff;"&gt;✔&lt;/span&gt; openSUSE_11.1 │ i586   │ &lt;span style="color:#008000; background-color:#ffffff;"&gt;succeeded      &lt;/span&gt;
&lt;span style="color:#c0c0c0; background-color:#ffffff;"&gt;⬕&lt;/span&gt; SLE_10        │ i586   │ &lt;span style="font-weight:bold;color:#000000; background-color:#ffffff;"&gt;disabled       &lt;/span&gt;
&lt;span style="color:#c0c0c0; background-color:#ffffff;"&gt;⬕&lt;/span&gt; SLE_10        │ x86_64 │ &lt;span style="font-weight:bold;color:#000000; background-color:#ffffff;"&gt;disabled       &lt;/span&gt;
  SUSE_Factory  │ i586   │ &lt;span style="color:#800000; background-color:#ffffff;"&gt;expansion error&lt;/span&gt;
  &lt;span style="font-weight:bold;color:#800000; background-color:#ffffff;"&gt;└─▶ nothing provides autoconf &amp;gt;= 2.62 needed by automake&lt;/span&gt;
  SUSE_Factory  │ x86_64 │ &lt;span style="color:#800000; background-color:#ffffff;"&gt;expansion error&lt;/span&gt;
  &lt;span style="font-weight:bold;color:#800000; background-color:#ffffff;"&gt;└─▶ nothing provides autoconf &amp;gt;= 2.62 needed by automake&lt;/span&gt;&lt;/pre&gt;

In order to install that &lt;code&gt;osc&lt;/code&gt; &lt;a href="http://en.opensuse.org/Build_Service/osc_plugins"&gt;plugin&lt;/a&gt;, add the &lt;a href="http://download.opensuse.org/repositories/home:/pbleser:/osc/"&gt;home:pbleser:osc repository&lt;/a&gt; (pick a subdirectory that suits your distribution), and install the package &lt;code&gt;osc-plugin-niceresults&lt;/code&gt;

To use the plugin, do as with &lt;code&gt;osc results&lt;/code&gt; (or &lt;code&gt;osc r&lt;/code&gt;), but instead, invoke &lt;code&gt;osc niceresults&lt;/code&gt; (or the shorthand form &lt;code&gt;osc nr&lt;/code&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-1431058927908124051?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://download.opensuse.org/repositories/home:/pbleser:/osc/' title='osc niceresults, now with icons'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/1431058927908124051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=1431058927908124051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1431058927908124051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/1431058927908124051'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/osc-niceresults-now-with-icons.html' title='osc niceresults, now with icons'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-7163288035811455300</id><published>2009-07-21T00:48:00.001+02:00</published><updated>2009-07-21T00:50:42.532+02:00</updated><title type='text'>I'm going to the openSUSE Conference 2009</title><content type='html'>&lt;a href="http://conference.opensuse.org/"&gt;&lt;img border="0" src="http://opensuse-community.org/openSUSE-conf-2009-imgoing.jpg" title="I'm going to the openSUSE conference 2009"/&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-7163288035811455300?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://conference.opensuse.org/' title='I&apos;m going to the openSUSE Conference 2009'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/7163288035811455300/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=7163288035811455300' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7163288035811455300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/7163288035811455300'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/im-going-to-opensuse-conference-2009.html' title='I&apos;m going to the openSUSE Conference 2009'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-19089565708723893</id><published>2009-07-17T20:55:00.004+02:00</published><updated>2009-07-17T21:05:45.069+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpm'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Educating upstream: C pointers are not int</title><content type='html'>Once and for all, a pointer (in C) is &lt;b&gt;NOT&lt;/b&gt; an &lt;code&gt;int&lt;/code&gt;
It just happens to be one on 32bit systems, but the only proper type for casting a pointer into a number (for whatever reason, such as pointer arithmetics) is&lt;br/&gt;&lt;br/&gt;&lt;div style="text-align:center;"&gt;&lt;a href="http://linux.die.net/man/3/intptr_t"&gt;&lt;code style="font-size:150%;font-weight:bold;"&gt;intptr_t&lt;/code&gt;&lt;/a&gt;&lt;/div&gt;
To have that type, also add an &lt;code&gt;#include&lt;/code&gt; on &lt;code&gt;stdint.h&lt;/code&gt; where appropriate.

It is really annoying when, as a packager, you keep running into C sources that have only been compiled and tested on 32bit systems and where the authors have assumed that they can cast their pointers to &lt;code&gt;int&lt;/code&gt;. On x86_64, that generates quite a lot of warnings, on purpose: on 64bit systems, a pointer is an &lt;code&gt;unsigned long&lt;/code&gt;. But don't rely on that either, just use &lt;code&gt;intptr_t&lt;/code&gt;

Arguably, it has been added in C99, and only as &lt;a href="http://www.cpptalk.net/why-is-intptrt-optional-in-c99-vt8906.html"&gt;optional&lt;/a&gt; but hey, if you're in for a big heap of assumptions by doing pointer arithmetics, you could as well assume it's a modern C compiler and &lt;code&gt;libc&lt;/code&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-19089565708723893?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/19089565708723893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=19089565708723893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/19089565708723893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/19089565708723893'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/educating-upstream-c-pointers-are-not.html' title='Educating upstream: C pointers are not int'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-9053020440057452949</id><published>2009-07-17T17:00:00.004+02:00</published><updated>2009-07-17T17:19:22.802+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='openjdk'/><title type='text'>TULH: latest openJDK 6 on openSUSE</title><content type='html'>&lt;i&gt;(TULH = Trivial (or pointless ?) Ubuntu-Like Howto)&lt;/i&gt;
&lt;h3 style="margin-bottom:0.2em;"&gt;Purpose&lt;/h3&gt;Here is how to install the latest &lt;a href="http://openjdk.java.net/"&gt;openJDK&lt;/a&gt; (the GPL'd branch of Sun's Java Virtual Machine) version 6 (the currently stable branch) on openSUSE 11.0-11.1
&lt;h3 style="margin-bottom:0.2em;"&gt;As root&lt;/h3&gt;You can simply copy/paste those blocks of commands into a shell. But note that they must be executed as the root user and, hence, first open a terminal (e.g. &lt;tt&gt;konsole&lt;/tt&gt; on KDE, &lt;tt&gt;gnome-terminal&lt;/tt&gt; on GNOME, &lt;tt&gt;xterm&lt;/tt&gt;, &lt;tt&gt;urxvt&lt;/tt&gt;, &lt;tt&gt;putty&lt;/tt&gt;, whatever does the job), switch to the root user using the following command:&lt;div style="font-family:monospace;padding:0.5em;background:#000;color:#eee;border:1px solid #aaa;white-space:pre-wrap;"&gt;su -&lt;/div&gt;
Then enter the password of the root user when prompted to do so.

&lt;h3 style="margin-bottom:0.2em;"&gt;Install the &lt;a href="http://en.wikipedia.org/wiki/Java_Runtime_Environment"&gt;&lt;abbr title="Java Runtime Environment"&gt;JRE&lt;/abbr&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div style="font-family:monospace;padding:0.5em;background:#000;color:#eee;border:1px solid #aaa;white-space:pre-wrap;"&gt;VERSION=$(grep ^VERSION /etc/SuSE-release|cut -f3 -d" ")
zypper addrepo -r \
http://download.opensuse.org/repositories/Java:/openjdk6:/Factory/\
openSUSE_$VERSION/Java:openjdk6:Factory.repo
zypper refresh Java_openjdk6_Factory
zypper install java-1_6_0-openjdk&lt;/div&gt;
&lt;h3 style="margin-bottom:0.2em;"&gt;Install the Java browser plugin&lt;/h3&gt;If you also want to install the browser plugin (to run Java &lt;a href="http://en.wikipedia.org/wiki/Java_applet"&gt;applets&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Java_Web_Start"&gt;Webstart&lt;/a&gt;):&lt;div style="font-family:monospace;padding:0.5em;background:#000;color:#eee;border:1px solid #aaa;white-space:pre-wrap;"&gt;zypper install java-1_6_0-openjdk-plugin&lt;/div&gt;
&lt;h3 style="margin-bottom:0.2em;"&gt;Install the Java Development Kit&lt;/h3&gt;And if you also want to install the &lt;a href="http://en.wikipedia.org/wiki/Java_Development_Kit"&gt; &lt;abbr title="Java Development Kit"&gt;JDK&lt;/abbr&gt;&lt;/a&gt; to compile Java sources:&lt;div style="font-family:monospace;padding:0.5em;background:#000;color:#eee;border:1px solid #aaa;white-space:pre-wrap;"&gt;zypper install java-1_6_0-openjdk-devel
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-9053020440057452949?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://en.opensuse.org/OpenJDK' title='TULH: latest openJDK 6 on openSUSE'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/9053020440057452949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=9053020440057452949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/9053020440057452949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/9053020440057452949'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/tulh-latest-openjdk-6-on-opensuse.html' title='TULH: latest openJDK 6 on openSUSE'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-5612096228855791583</id><published>2009-07-15T10:20:00.002+02:00</published><updated>2009-07-15T10:24:27.124+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fosdem'/><title type='text'>FOSDEM X: 6+7 Feb 2010</title><content type='html'>Unlike previous editions, this time we're able to announce the date of the upcoming &lt;a href="http://fosdem.org/" title="Free and Opensource Software Developers European Meeting"&gt;FOSDEM&lt;/a&gt; very early: &lt;b&gt;6 and 7 February 2010&lt;/b&gt;.

This will also be the 10th edition (if we include the first one, that still had the name "OSDEM" :)), which means we'll try to think of a few extras ;)

Thanks to the collaboration of our benevolent host (the &lt;a href="http://www.ulb.ac.be/" title="Université Libre de Bruxelles"&gt;ULB&lt;/a&gt;), we've been able to meet and already carve dates into stone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-5612096228855791583?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fosdem.org/2010/' title='FOSDEM X: 6+7 Feb 2010'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/5612096228855791583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=5612096228855791583' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5612096228855791583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/5612096228855791583'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/fosdem-x-67-feb-2010.html' title='FOSDEM X: 6+7 Feb 2010'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9472407.post-318800844339232986</id><published>2009-07-10T08:49:00.003+02:00</published><updated>2009-07-10T09:02:14.339+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='mono'/><title type='text'>LOL @ Mono outpaces Java in Linux desktop development</title><content type='html'>&lt;a href="http://www.sdtimes.com/link/33597"&gt;This piece of... "art"&lt;/a&gt; has to be one of the most factually wrong and ridiculous pseudo-technical articles ever. Because its utterly unqualified author has 3 or 4 desktop applications running on Mono on his desktop, he states that Mono has overtaken Java (and, unlike the title of that article, he actually writes that it's not only on the desktop).

I won't even go into debunking his points, they're so blatantly wrong that it's almost funny, such as MonoDevelop being a lot better than Eclipse, Eclipse not having code completion (almost spilled my coffee on that one), a buggy 64bit JVM (huh?), and that people don't develop a lot of web applications with Java any more, favouring ASP.NET and Ruby on Rails. Err... while there has clearly been quite a lot of traction for Ruby on Rails for the last couple of years, and while it certainly has its fair share of the market, neither ASP nor RoR are anywhere near the numbers of enterprise and/or web applications that have been and are still developed with Java.

Oh, and "RossB" on the &lt;a href="http://opsamericas.com/?page_id=512"&gt;"SUSE Linux Enterprise in the Americas" blog&lt;/a&gt;, please don't relay such rubbish.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9472407-318800844339232986?l=dev-loki.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.sdtimes.com/link/33597' title='LOL @ Mono outpaces Java in Linux desktop development'/><link rel='replies' type='application/atom+xml' href='http://dev-loki.blogspot.com/feeds/318800844339232986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9472407&amp;postID=318800844339232986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/318800844339232986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9472407/posts/default/318800844339232986'/><link rel='alternate' type='text/html' href='http://dev-loki.blogspot.com/2009/07/lol-mono-outpaces-java-in-linux-desktop.html' title='LOL @ Mono outpaces Java in Linux desktop development'/><author><name>Loki</name><uri>http://www.blogger.com/profile/15179032995691105618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_PqFUGyysUpE/Si4pLD2YLmI/AAAAAAAAAAM/4V2InwvOrsI/S220/yaloki.png'/></author><thr:total>0</thr:total></entry></feed>
