Tuesday, April 28, 2009

GSoC status

It has been one week since the results came out. The little mess during the first week has gone, so I might start writing/thinking about things now.

1. I began my pages on GNOME's wiki, GNOME Live. My plans for the summer will go there, as well as some other things, say a detailed design, timeline, etc.

2. This page came out so late partly because we haven't got sure about my mentor. I might have several mentors both from GNOME-Games and Telepathy, which is different from in my project page. Haven't made sure yet.

3. The past weeks I have been hacking in sudoku code and got familar with some parts. Also got some time to improve the demo a little.

4. Before the coding officially starts, I will get out a design of the project. For example, decide how the new component of networking can fit into existing sudoku code, what classes to create, how players communicate remotely.

Stay tuned!

Wednesday, April 22, 2009

I'm in

People are blogging about their GSoC and publish their proposals, so I will follow up :)

I am one of the lucky guys that are accepted, so I would say many thanks to GNOME and my friends that gave me great help. Here is my proposal, have a look and your comments are welcomed :)

Sunday, April 19, 2009

Gnome Developer Kit goes to git

As GNOME migrates to git, so does Gnome Developer Kit. Most packages have been built from their current git HEAD (so, should gnome:trunk be renamed to gnome:head? :), except the several ones that can't be built (yet). And since there is still some problems in the migration, say missing files, a couple of packges can't be built for now.

The process didn't take much effort. One script that we use to drive the packaging needs some modification. It looks at the revision of svn/git, the version of :source package and the version of the built package, then it decides which module needs refresh and build it. So for this migration, we simply change 'svn log http://svn.gnome..' to 'git ls-remote --heads git://git.gnome...'.

Three or four packages have 'addSvnSnapshot' hardcoded in their recipe, which need to be 'addGitSnapshot'. Easy, no? But actually we move all the 'add...Snapshot' stuff to a base class (yes it's in Python), so in the future it would be even more easy to adapt to infrastructure changes. But will GNOME change to yet another version control tool? (maybe bzr? ;-)

Group-world has been built, which contains stuff coming from both svn and git.

At the moment 98 modules are packaged regularly (means daily) in "gnome:trunk". We should be adding more in the future, which won't be difficult, at least easier than gnome-shell :) But of course we need help; only two people are currently looking at the Developer Kit. Please meet us at #foresight-devel on FreeNode no matter you want to know more about dev kit, about conary, about foresight, or you want to help out :)

It's really great that GNOME changes to git. And thanks to conary, it's faily easy to follow the change.

Saturday, April 18, 2009

Gnome-shell arrives on Gnome Developer Kit!

After several days of packaging, here you go the Gnome-Shell, along with metacity-clutter and several others (clutter, gir-repository, gobjecct-introspection).


To try it out, grab and install a Gnome Developer Kit. You can choose either installable iso (DVD) or VMWare/VirtualBox disk image. Using a normal Foresight is also OK if you can figure out the dependencies :) since they are built against different packages. (In particular don't use a x86_64 system; the dev kit is only available in x86).

To install Gnome-shell,

(April 30th, Update: now they are using mutter from git.gnome.org, not metaciy-clutter from fishsoup.)

1. $ sudo conary update -metacity mutter gir-repository clutter:devellib gnome-shell

If you are not installing on Dev kit, then append this to the above command, " --install-label=gnome.rpath.org@gnome:trunk" (without quotes).

(clutter:devellib is needed because gnome-shell references a lib from it.)

2. To get it running, a little tweak is needed. Comment out the lines as in this patch:

--- /usr/share/gnome-shell/js/ui/overlay.js 2009-04-18 17:22:46.000000000 +0800
+++ overlay.js 2009-04-18 17:22:08.000000000 +0800
@@ -105,9 +105,9 @@

let icontheme = Gtk.IconTheme.get_default();
let searchIconTexture = new Clutter.Texture({});
- let searchIconPath = icontheme.lookup_icon('gtk-find', 16, 0).get_filename();
- searchIconTexture.set_from_file(searchIconPath);
- this.actor.append(searchIconTexture, 0);
+ //let searchIconPath = icontheme.lookup_icon('gtk-find', 16, 0).get_filename();
+ //searchIconTexture.set_from_file(searchIconPath);
+ //this.actor.append(searchIconTexture, 0);


Seems the icon can't be found but I haven't figured out which package it is from :(

3. Run $ gnome-shell. That's it.

4. Now I don't have a powerful machine at hand, on which $ gnome-shell --replace fails to work. And on restarting X, I receive a white screen. I will try to see if it's ok on a better machine.

So a little warning: before you restart X or issue '$gnome-shell --replace', login to this machine from another, thus you can always do 'conary rollback' in case of problems. (Or any other way you like, e.g. booting to runlevel 3. Anyway you need a terminal).

Tuesday, April 14, 2009

intersect of files

I have to share this page!
http://www.pixelbeat.org/cmdline.html

I spent half an hour finding some shell trick to get the intersection of several files, but in vain. Then came cross the above page. It has various useful commands (and in several languages). The section of 'set operations' is exactly what I want. How come I didn't know 'join' and 'uniq'!

Wednesday, April 8, 2009

Firefox search-engine plugin for Foresight packges

I always search on rpath website to see if some application is already packaged in our repository. So here is a simple plugin to accelerate this, which adds a 'Foresight Packages' search engine in Firefox's search bar.

https://addons.mozilla.org/en-US/firefox/addon/11367

It does exactly the same thing as this:

type in the address bar "http://www.rpath.org/search?type=Packages&search=package-name", then press enter.

Or, go to http://www.rpath.org/ and then do the search.

Wednesday, April 1, 2009

Demo progam using Telepathy+Sudoku

I started writing a small demo using Telepathy Tubes, hosted on my github account.

I write this with the hope to get familar with Telepathy Tubes, which is a part of the GSoC project I am applying for. The project is to combine GNOME-Games with Telepathy. In particular, I will make GNOME-Sudoku playable with your IM contacts.

As of now (on April Fools' Day :), the demo can connect two users through Jabber network and let the receiver change the initiator's grid. The demo and how to use it can be found here.