Bug 636118

Summary: Swell Foop fails to run in F14 Beta RC3 Desktop live install
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: gnome-gamesAssignee: Ray Strode [halfline] <rstrode>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: low    
Version: 14CC: michel, notting, rstrode
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://mail.gnome.org/archives/desktop-devel-list/2010-September/msg00077.html
Whiteboard:
Fixed In Version: gnome-games-2.32.0-3.fc14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-05 13:22:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 538277    

Description Adam Williamson 2010-09-21 14:33:56 UTC
swell-foop fails to run at all:

[bob@localhost ~]$ swell-foop 

** (seed:2240): CRITICAL **: Line 8 in /usr/share/gnome-games/swell-foop/main.js: GIrepositoryError Typelib file for namespace 'GtkClutter' (any version) not found
[bob@localhost ~]$ rpm -qf `which swell-foop`

Comment 1 Adam Williamson 2010-09-21 14:46:28 UTC
This is an F14 Blocker:

"All applications listed under the Applications menu must start successfully "



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 2 Adam Williamson 2010-10-01 17:07:43 UTC
This was discussed at the 2010-10-01 blocker review meeting. We agreed it constitutes a blocker under the above criterion. Ray, if you could fix it ASAP that'd be great :)

Comment 3 Adam Williamson 2010-10-01 17:09:26 UTC
still valid right now, but note a different error (or may be because I'm on a different system):

[adamw@adam VA - Next Music From Tokyo Vol 2]$ swell-foop 

** (seed:9936): CRITICAL **: Line 8 in /usr/share/gnome-games/swell-foop/main.js: GIrepositoryError Requiring namespace 'Gtk' version '2.0', but '3.0' is already loaded

Comment 4 Bill Nottingham 2010-10-01 17:39:20 UTC
I get:

$ swell-foop 
/usr/bin/swell-foop: line 4: 18657 Segmentation fault      (core dumped) /usr/bin/env seed /usr/share/gnome-games/swell-foop/main.js

Comment 5 Colin Walters 2010-10-01 17:43:18 UTC
It looks to me like seed is explicitly linking to GTK3 (via webkitgtk3), but swell-foop is requring GTK2 (via GtkClutter, which only exists for Gtk2 at the moment).

It *might* work to retarget seed for gtk2 via webkitgtk2, but the implications of that are unclear, I don't even know if it's supported.

The state of seed upstream is a bit messy; we may want to just drop those games for this cycle.

Comment 7 Colin Walters 2010-10-01 17:45:09 UTC
An important bug here that we need to fix in the g-i bindings is that simply having GTK3 installed will pull it in when you do "var Gtk = imports.gi.Gtk;" unless a version is specified.

We need to make this version specification mandatory.

Comment 8 Fedora Update System 2010-10-01 19:44:13 UTC
gnome-games-2.32.0-3.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/gnome-games-2.32.0-3.fc14

Comment 9 Fedora Update System 2010-10-02 01:13:52 UTC
gnome-games-2.32.0-3.fc14 has been pushed to the Fedora 14 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update gnome-games'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/gnome-games-2.32.0-3.fc14

Comment 10 Fedora Update System 2010-10-05 13:22:49 UTC
gnome-games-2.32.0-3.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Michel Alexandre Salim 2010-11-05 14:26:01 UTC
(In reply to comment #5)
> It looks to me like seed is explicitly linking to GTK3 (via webkitgtk3), but
> swell-foop is requring GTK2 (via GtkClutter, which only exists for Gtk2 at the
> moment).
> 
> It *might* work to retarget seed for gtk2 via webkitgtk2, but the implications
> of that are unclear, I don't even know if it's supported.
> 
This particular issue is resolved in seed 2.31.91, which can be built against webkit-1.0. Unfortunately initializing GtkClutter fails -- init and initwithargs are both undefined. It *might* be a clutter-gtk bug -- any idea?

The seed build scripts are a bit broken, thus the failure of the 2.31.91-1 to build; it seems that the intent is to specify --with-webkit=3.0 by default, but this does not happen; passing this option manually fixes the build.
 
> The state of seed upstream is a bit messy; we may want to just drop those games
> for this cycle.
In the case of GtkClutter, unfortunately it does not seem to be merely a seed problem :(. Importing GtkClutter from gjs does not work either.

(In reply to comment #7)
> An important bug here that we need to fix in the g-i bindings is that simply
> having GTK3 installed will pull it in when you do "var Gtk = imports.gi.Gtk;"
> unless a version is specified.
> 
> We need to make this version specification mandatory.
I cannot agree more. Funnily, of the two seed games, lightsoff does not have this problem because it imports GtkClutter *before* Gtk, and that constraints seed to only importing Gtk 2.0 (probably because it simply shares the Gtk that GtkClutter already imports).