martedì 9 marzo 2010

Call for devs [part II]

[Advice: this post is Gentoo GNU/Linux - oriented]
 
Hello again folks :)

This second part of the post is about a project of mine i started at the beginning of the 2009 and that still lies there on gitorious (today moved from github to gitorious). I started a GUI for emerge, the packages administration utility in Gentoo. I know it is a bit of an ambitious project since emerge does not provide an API iirc, so this project is "just" a command-line parser. But I started it with no particular ambition except for my own will to have some sort of advanced GUI on top of emerge. It is called Gluk (almost-casual name so do not ask me what it stands for).

I spent some time writing some sort of wrapper library that tries to handle emerge transparently to the user. There are nice classes currently and I will just sum them up here in order to (hope so) whet the appetite :-P.

Classes:
  • Ebuild: this class inherits QFile and adds some useful methods that ease Ebuild files reading (useFlags(), description(), keywords(), sourceUrl()... and so on)
  • Package: this class actually represents the package installed or to-be-installed on the system. You can think of as an instance of the ebuild file.
  • GlukTreeModel: a QAbstractItemModel inheritance that makes easier browsing the portage tree.
  • PortageEngine: a singleton class that actually does the dirty work representing an interface to Portage.
 
    You can have a look at the project here. It currently builds and I encourage you to try it but do not expect anything special. Iirc it currently only does packages pretending :).

    If you run Gentoo GNU/Linux and want to contribute please let me know since i'd appreciate much!! Ideas are of course welcome :)

    Cya!!

    4 commenti:

    1. Hey!

      I think this would be nice to be integrated into Shaman... *hint* :)

      Lukas

      RispondiElimina
    2. @boom1992: i already thought about it! my only concern is about the high complexity of portage. This project takes some utilities provided by gentoo in order to make the GUI work. Anyway tests could be done of course, especially if the library part of this project gets good results :-)

      RispondiElimina
    3. I'm one of the kde packagers in gentoo, you could step up in #gentoo-kde and ask for a live ebuild or open a bug, in order to get more testing. Never mind, I'll create one tomorrow and put it in kde overlay

      RispondiElimina
    4. By the way in Russian Gluk (Глюк) is synonym to bug ;)

      RispondiElimina