GNOME Developer Kit, follow up
Just wanted to update everyone who showed interest in the new release of GNOME Developer Kit I announced yesterday. Based on some preliminary statistics I collected in the (less than) last 24 hours, it seems that the VMware image type got the most download, followed closely by the installable ISO format. I guess that was due to VirtualBox being able to use *.vmdk files and some people opting for the free virtualization tool.
Here are the preliminary results so far:
- VMware image: 42 downloads
- Installable ISO: 26 downloads
- RAW filesystem image: 17 downloads
Due to the number of downloads and and comments I received, I felt that I should provide with some background on how to install/remove packages and update your system using the conary package management system. So here you go:
The package management system behind the GNOME Developer Kit is called conary and is considered by many as the next generation package management system when compared to some of the popular options out there. One of the reasons behind this claim is the fact that your entire system is actually completely maintained in a versioned state, and conary is always “aware” of what is installed on your system and what files and dependencies make up the entire “set”. This allows for some pretty nifty operations such as rolling back to a specific state of your system.
In order to check for new updates for your system, open a terminal and run the command sudo conary updateall. conary will then check for updates and prompt you to accept the update or not. Please keep in mind that the first time you run conary for the first time, you will experience a delay as your entire system gets analyzed in preparation for the changes that are to take place. All subsequent actions performed will be much faster, I promise. If after a while you don’t feel like waiting for the prompt, add –no-interactive to the update command to have your system updated automatically.
Now, let’s just say that you decided to install something new, such as Banshee. Easy, just run sudo conary update banshee (remember to add –no-interactive for no-hands updates) and voilá!
Want to know what was actually installed on your system? conary q banshee will tell you what version of banshee was installed. How about what files were installed? conary q –ls banshee will give you a list of all the files that were installed and conary q –lsl banshee will give you the long list with file permissions and modes.
Changed your mind and want to remove banshee from your system? sudo conary erase banshee will take care of that. Want to actually roll your system back to the state it was before you installed banshee instead? sudo conary rollback 1 will rollback your system exactly one transaction. Want to go further back? Just increase that number to represent how many transactions to roll back. Want to rollback but don’t remember what point in time you want to go? sudo conary rblist will display a list of all transactions and what was changed. Note that each transaction is preceded by the letter “r“, so if you want to rollback to the point r.15, then use sudo conary rollback r.15 (and don’t forget that “r” or you’ll rollback exactly 15 transactions instead).
How about searching for a package? If it is something that it is already installed on your system, then conary q [package name] will give you the information you want. If the package is not installed on your system yet, then conary rq [package name] is what you need, though since conary does not yet make use of metadata, you’ll need to know the exact name of what you’re looking for. Now, let’s say you want to find out what package provides the command /sbin/service? Use conary q –path /sbin/service to find out that initscripts:runtime=8.81.2-0.11-1 is responsible for providing it (use rq if you want to search the remote repository).
Well, I think this is enough to get you going. You’ll probably want to install Flash and media codecs to enjoy browsing some sites and listening to your media, so let’s apply what we’ve learned so far and run: sudo conary update flashplayer group-codecs
If you’ve stayed with me until now, you may want to read up on what else conary can do or even consider packaging for GNOME Developer Kit. Your help will be greatly appreciated!
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.









March 10th, 2010 at 5:48 am
Tried to download the qemu image and run it using: qemu ./gnome-2.29.20100308-x86.hdd
But when it try to login using ‘live’ and empty password it tells me that it cannot find /bin/sh? Any idea why?
March 10th, 2010 at 10:20 am
Hi jcd,
Can you log into and see the desktop? Which application gave you the error, and could you paste the complete message?
And if you can reach a terminal, could you verify if /bin/sh really is missing? (simply do ‘ls /bin/sh’)
March 10th, 2010 at 11:10 am
Unfortunately I cannot get to the terminal and I cannot login or see the desktop either.
March 10th, 2010 at 2:54 pm
How do I change the language? I am blind it seems…
March 10th, 2010 at 3:59 pm
@uppi: If you’re using the VMware image then the default user gets logged in automatically, correct? Simply change the password for this user (type passwd in the terminal or user the graphical interface for managing users) and log out. This time you’ll get a chance to see the GDM login screen. Select your user and then at the bottom of the screen you’ll be able to select your language and keyboard layout (if needed).
Cheers,
Og
March 10th, 2010 at 4:21 pm
Hey there,
Just a little feedback and a tiny rant at the end. I downloaded the vmdk and ran it in vmware player and it came up and seemed to work fine. Only after playing around with it a little did I start to run into problems. I should also note that I converted the vmdk to a Virtualbox vd file(I had no idea VirtualBox now natively supports vmdk as was suggested by your blog). I then spent several hours trying to get it properly running under VirtualBox:
First off: Under VirtualBox the image fails to come to a log on screen because Xorg crashes due to xorg.conf being set to use the vmware-xorg driver. Only when I deleted xorg.conf could I get to the login screen.
Secondly: In order to get the image to corectly run under VirtualBox one needs to install the VBoxAddons. (without the VirtualBoxAddons installed there are no VirtualBox video drivers for the virtual machine). This however fails due this issue: Nautilus attempts to call gnome-mount to do the mounting, which simply does not exist and is not available in the conary repositories. This effects 1) the ability to mount and gain access to the VirtualBoxAddons.iso and to mount/unmount CD’s/DVD’s. To see if this was different in vmwareplayer I tested it again with the original vmdk and sure enough I cannot mount or unmount a CD with Nautilus(although under vmwareplayer I did not run into any issues installing the vmwareplayer addons.
Thirdly:
gpk (gnome-package-kit) and add/remove software app under System/Administration menu is broken. The app fires up and one can search for files but one cannot install or uninstall anything using the application: clicking apply does absolutely nothing.
I suspect that these problems are related to Device-Kit and Policy-Kit.
Fourthly:
It turns out that branch of conary used to make the gnome-developer-kit does not included any meta packages to install libs and headers needed (:devel, :devellib) unlike Foresight where I could just type in conary update group-gnome-{dist,devel}.This situation seems a little at odd with the stated purpose of the gnome-developer-kit, as given it’s current state, it is unusable for compiling much of anything, and although I know that the idea is just let conary do the compiling for you, conary can’t compile any packages either without the :devel :devellib troves already installed on the system
Other than these things, which for me are rather fundamental, the image functions fine and is usable.
Note:
It took me a while to figure out that I could just open the VirtualBoxAddons.iso with file-roller in the Host-OS, extract the desired file, and pass it on to the virtual machine. Prior to figuring this out I wasted a tremendous amount of time trying to do something really foolish: compiling gnome-mount. Utter waste of time. I am sure that gnome-mount has been deprecated and it’s functionality refactored out into other libs. The lack of already installed :devel :devellib troves cripples the “developer” aspect of the image. This of course made my futile attempts to compile gnome-mount into a rather horrific nightmare.
Note:
):
I used Foresight for almost a year, and I even cooked a couple of recipes, so I am not a total noob or novice. I really appreciated the work you have done in creating gnome-developer-kit. My purpose here is just give some feedback. Not to dismiss your work. I will end this with a couple of questions(this is the rant section-if you are feeling beleaguered please skip
1) Why is the documentation so unbelievably sparse? The available documentation took maybe 10 minutes to write and suffices only for people with a deep intimate knowledge of conary to be able to do anything. For anyone lacking in that background the documentation is useless. Please invest an extra hour and help users utilize this great tool you have created. ( I stopped using Foresight Linux primary because of the lack of documentation-and that *due* to this lack of documentation there was no perceivable community of knowledge about Foresight/conary-in order to grow a community, knowledge has to be shared, this was(past-tense for I doubt Foresight community is likely to grow in the future despite the architectural pluses of the conary system-conary is potentially great, i loved the idea, enough to invest a year of my life in playing with it) *the* weakness of Foresight, great technology, powerful tools,good people but and only a tiny number of people who actually grok it.)
2. When is conary going to grow up and create a friggin restore command? I love it that when you accidentally/mistakenly delete a file that belongs to a package that you have to conary emerge the package, open another terminal and copy the file out of the compilation location(where the emerge is occuring,during the compilation process, in order to restore a missing file. conary erase foo –just-db; conary update foo –replace-all is absolutely useless if the pkg in question is linked to 100 different apps/libs which in turn are linked to another 100 apps/libs, ad nauseam.
Ohm,Shalom, paix, peace
my little rant is over. Again thanks for the work you are doing.
Sorry for length of post
March 10th, 2010 at 7:51 pm
Just a short note, probably echoing some of the other feedback.
I did try it for a build box for the seed documentation. Spent quite a while getting it up and going. however I ran into quite a few issues below (some of which are covered by your post)
a) was starting off with virtualbox at the time, due to issues building vmware on the host box. – So did not quite understand the whole covert/install into virtual box method, so went down the road of using the CD installer. – If you can provide virtualbox downloads (or a short howto on the wiki)
b) once installed from CD, ssh was not enabled, so remote access was a problem. (especially as I was initially using the open source version of virtualbox) – see if you can isntall/enable ssh?
c) documentation for conary was sparce, and hard to find. – It did not appear to work in a similar way to apt. – not much you can do about this I guess.
d) eventually worked out how to install a package from git/source, but could not succeed in rebuilding it.
In the end I had to give up, and downloaded a network install of Ubuntu, and installed jhbuild on it. This was not without issues, but was considerable smoother, and took significantly less time to do. And in the end is a far more productive development environment.
I think you have an uphill battle in some respects. As a developer toolkit should really focus on helping the developer get things done as quickly and easily as possible. Introducing a new packaging system (however wonderful) is a rather large roadblock to this process.
In the end, if someone is familiar with debian/ubuntu, then you should really recommend they stick with ubuntu + jhbuild if the need to create a virtual development enviroment. If they come from gentoo (and maybe redhat) then this may be more suitable.
March 11th, 2010 at 9:48 am
Hey Karl, how is it going?
Thank you for your comment. I shall try to answer/comment on several pieces of it as I believe you have touched on several key factors that are very valid. So…
I will talk yo Jesse and make sure we expand our instructions on how to handle VirtualBox properly and make sure that people don’t stumble while playing with the VMware image.
About GNOME Package Kit not working, this is a known issue for Foresight as well and we have some top people looking into it. The issue does seem to be related to policykit indeed but we have a shortage of knowledgeable people that could help expedite the situation. For the time being, the command line is the only stable alternative… sucks, I know. :/
About including the {:devel, :devellib} components to allow developers to build their software locally and thus explore the ultimate power of the kit to its potential, Jesse is currently studying how to bring in a gnome-dist-devel group to the project, much like Foresight does now. The caveat is that you will have to install it after the initial installation as we want to keep the final size of the image small enough to fit on a CD.
Moving on to documentation or better yet, the lack of it for Foresight… once again I’ll have to blame the lack of contributors and more specifically, those who are keen on writing documentation and have what it takes to extract from the few people who know how things work the information needed for a good HowTo. I agree with you when you say “I doubt Foresight community is likely to grow in the future despite the architectural pluses of the conary system”. It is one of those things that I stare at every day but without resources, it is really hard to turn this around.
Lastly, since conary 2.1.1 there has been a new feature called “conary repair” (see https://issues.rpath.com/browse/CNY-1800). I must confess that I completely missed it myself but will make a point of testing it and reporting back what I’ve experienced.
I really want to thank you for taking the time to elaborate on the issues you’ve commented here. I wish more people would stop by and tells us how we can improve the overall experience and, dare I dream, offer some of their time to lend us a hand?
Cheers,
Og
March 11th, 2010 at 9:57 am
Morning Alan, how is it going? Thank you also for taking the time to report back your experience. Some of the things you mentioned have been explained on my previous comment to Karl. You’ll be glad to know that an issue has been filed about ssh failing to start and from the chatter I’ve seen today on #foresight-devel I know that people are looking into it (see https://bugzilla.gnome.org/show_bug.cgi?id=612529).
As far as providing information for Ubuntu users on how to build GNOME with jhbuild, I’m afraid that is something beyond my knowledge (I haven’t run Ubuntu in 3+ years and never used jhbuild) and even beyond the scope of the idea for the developer kit itself. Maybe someone from the Ubuntu community could step up and write something?
Cheers,
Og
March 11th, 2010 at 10:33 am
On behalf of Zhang Sen (for some reason his comment is not going through):
Hi Karl and Alan,
I started a page here, http://live.gnome.org/GnomeDeveloperKit/FAQ , to address the easy problems.
Some of the points you raised are really valid bugs, so I filed them in bugzilla, see Bug 612526 and Bug 612529.
Re. the CD mounting and vmware-xorg video driver problem, could you report them in bugzilla? Or when I have time to reproduce, I will add them.
And I agree that we shouldn’t force users to learn conary. The ‘cvc cook’ topic should be marked as advanced and we should support a plain ‘configure/make/makeinstall’. I will try to fix the documentation.
And yes documentation is sparse when it comes to conary and foresight. But I believe it will improve as our user base grows.
A big thanks to Og and all the gnome guys, for this post and the comments. Without your feedback, we can’t spot the problem such as spotted here. Hope we can together make gnome-dev-kit better.
March 13th, 2010 at 2:07 am
karl,
(i am commenting on your reason for stopping to use foresight)
if you invested a year playing with conary, i wonder where you got stuck that you gave up. i found that the small group of people who do grok conary are all very helpful in answering any question you might have, enough that my own ability to grok conary is really just limited by my own time. there is also plenty of user documentation on rpaths site, which i am sure you have used until you came to the point that you had more special questions that those docs would not answer.
i have not come across a project where people did not complain about the lack of advanced documentation at some point. i don’t see why that should really be a problem. especially if there are helpful developers answering questions.
to this end it would be very helpful if you could point out which documentation you were missing, so that we can get someone who knows about that area to explain it. it is very difficult to expand documentation when we don’t know which documentation you are looking for.
if you like conary then please help us by sharing your experience in more detail so that we can improve the situation.
writing documentation requires a few things:
- people who know how things work. (we have those)
- people who are willing to write docs (we need more of those)
- people who can tell which docs are missing (we need more of those)
if you could contribute to the last category we would get a step further.
greetings, eMBee.
March 17th, 2010 at 5:57 pm
Any particular reason Tomboy isn’t included? Is it just a space-saving measure? I assumed when I downloaded that I’d have the entire GNOME desktop suite.
Conary is fun to use, btw. Thanks for the helpful post.
March 17th, 2010 at 8:55 pm
Hey Sandy, I believe it was an oversight but we can easily fix it.
Glad you’re having fun with conary. I’m lucky that I get paid to do it.
March 18th, 2010 at 2:51 am
Hi Sandy,
Actually that’s right, Tomboy was excluded purely to save some space, when we were fighting with the image size. However it’s still refreshed daily. Just do ‘sudo conary update tomboy’ to install it, and ‘conary updateall’ will keep it updated.
It would be nice to have a proper definition of “the GNOME desktop suite”
i.e. what applications can together define “GNOME’, on a CD-sized space, on a DVD-sized space…
Anyway, I generated a new image and it’s 724MB
Needs to think about it again.
March 18th, 2010 at 8:31 am
Jesse, is it the CD or the VMDK that’s 724MB now? I was under the impression that Tomboy+deps are < 20MB. This could simply be a packaging issue.
I noticed when I installed Tomboy in the VMDK that it brought in some completely unrelated things (can't recall exactly what now, though notify-sharp may have been one). So that could also be part of the problem.
March 18th, 2010 at 8:38 am
Sandy, sudo conary rblist | less should tell us what was brought in… As I installed Tomboy and Banshee together, I got:
r.13:
installed: banshee(:data :lib :locale :runtime) gnome.rpath.org@gnome:trunk/100317+ee5f2b6-1-1
installed: gdata-sharp(:cil) foresight.rpath.org@fl:2-devel/1.4.0.2-2-2
installed: notify-sharp(:cil) foresight.rpath.org@fl:2-devel/0.4.0-0.5-2
installed: tomboy(:data :doc :lib :locale :runtime) gnome.rpath.org@gnome:trunk/100312+5a0ca94-1-1
installed: gnome-desktop-sharp(:cil :data) foresight.rpath.org@fl:2-devel/2.26.0-0.2-1