Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 497358 - dev-vcs/gitg-0.3.2 version bump
Summary: dev-vcs/gitg-0.3.2 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mike Auty (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on: 497352 497518
Blocks:
  Show dependency tree
 
Reported: 2014-01-07 04:17 UTC by Konstantin (elxa)
Modified: 2014-02-08 14:37 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Initial ebuild failing install phase (gitg-0.3.1.ebuild,1.20 KB, text/plain)
2014-01-08 05:57 UTC, Mark R. Pariente
Details
dev-vcs/gitg-0.3.1 working ebuild missing one dependency (maybe more, one identified) (gitg-0.3.1.ebuild,1.25 KB, text/plain)
2014-01-08 09:41 UTC, Konstantin (elxa)
Details
gitg-0.3.1.ebuild with fixed dependencies, reviewed by upstream (gitg-0.3.1.ebuild,1.35 KB, text/plain)
2014-01-08 16:10 UTC, Jesús P Rey (Chuso)
Details
build.log webkit-gtk-2.0.4 (build.log,200.15 KB, text/plain)
2014-01-09 11:11 UTC, poncho
Details
gitg-0.3.1.ebuild fixed net-libs/webkit-gtk dependency version (gitg-0.3.1.ebuild,1.35 KB, text/plain)
2014-01-09 15:47 UTC, Jesús P Rey (Chuso)
Details
gitg-0.3.2.ebuild (gitg-0.3.2.ebuild,1.50 KB, text/plain)
2014-01-10 11:07 UTC, Jesús P Rey (Chuso)
Details
metadata.xml (metadata.xml,560 bytes, text/xml)
2014-01-10 11:08 UTC, Jesús P Rey (Chuso)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Konstantin (elxa) 2014-01-07 04:17:45 UTC
https://mail.gnome.org/archives/gnome-announce-list/2014-January/msg00003.html

Reproducible: Always
Comment 1 Mark R. Pariente 2014-01-08 05:57:26 UTC
Created attachment 367362 [details]
Initial ebuild failing install phase

This requires a version bump of dev-libs/libgit2-glib to 0.0.10 , trivially renaming the ebuild worked for me (verified deps are unchanged).

I've attempted writing an ebuild for gitg-0.3.1 - a lot has changed since the upstream project did a complete rewrite using vala. I got it compiling fine (deps etc.) but I'm seeing an error[1] on the install phase, looks like libgitg-ext isn't found by the linker (it's built from the same sources). I'm going to look into it further, just adding the ebuild here in case anyone feels like picking it up to make more progress.

[1]
libtool: relink: x86_64-pc-linux-gnu-gcc -shared  -fPIC -DPIC  plugins/files/.libs/plugins_files_libfiles_la-gitg-files.o plugins/files/.libs/plugins_files_libfiles_la-gitg-files-tree-store.o plugins/files/.libs/plugins_files_libfiles_la-gitg-files-resources.o   -L/usr//usr/lib64 -lgthread-2.0 -lgit2-glib-1.0 -lgit2 -lwebkit2gtk-3.0 -lsoup-2.4 -ljavascriptcoregtk-3.0 -lgee-0.8 -ljson-glib-1.0 -lgtksourceview-3.0 -lpeas-gtk-1.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lpeas-1.0 -lgmodule-2.0 -lgio-2.0 -lgirepository-1.0 -lgobject-2.0 -lglib-2.0 -lgtkspell3-3 -Wl,--as-needed -L/var/tmp/portage/dev-vcs/gitg-0.3.1/image//usr/lib64 -L/usr/lib64 -lgitg-1.0 -lgitg-ext-1.0 -lm  -pthread -pthread -march=native -O3 -pthread -Wl,--export-dynamic -pthread -Wl,--export-dynamic -pthread -Wl,-O1   -pthread -Wl,-soname -Wl,libfiles.so -o plugins/files/.libs/libfiles.so
//usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lgitg-ext-1.0
usr/lib/gcc/x86_64-collect2: error: ld returned 1 exit status
pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lgitg-ext-1.0
collect2: error: ld returned 1 exit status
Comment 2 Konstantin (elxa) 2014-01-08 09:41:09 UTC
Created attachment 367370 [details]
dev-vcs/gitg-0.3.1 working ebuild missing one dependency (maybe more, one identified)

Actually I did not write this ebuild, but grknight from #gentoo on freenode did and gave it to me this just about two days ago.
I was able to install gitg and was able to open/display a git repository from github.

I guess this ebuild might have to additionally depend on net-libs/webkit-gtk[introspection], because grknight said that for him the ebuild failed. It complained about a missing file /usr/share/gir-1.0/WebKit-3.0.gir or was it /usr/share/gir-1.0/WebKit2-3.0.gir ? These files are part of net-libs/webkit-gtk .

I guess for me the ebuild worked, because have built net-libs/webkit-gtk with USE=introspection .

My exact net-libs/webkit-gtk USE flags are

egl geoloc gstreamer introspection jit libsecret opengl spell webgl -aqua -coverage -debug -gles2 -test
Comment 3 Jesús P Rey (Chuso) 2014-01-08 15:09:49 UTC
(In reply to Konstantin from comment #2)
> I was able to install gitg and was able to open/display a git repository
> from github.

Were you able to run gitg?

gitg needs libgit2 with treading support, but currently Gentoo does not provide a package with threading support for dev-libs/libgit2.

This is what I get when I try to run it:

** (gitg:23572): ERROR **: gitg-init.vala:27: libgit2 must be built with threading support in order to run gitg
Comment 4 Jesús P Rey (Chuso) 2014-01-08 15:20:26 UTC
Bug #497352 provides dev-lib/libgit2 threading support, so that bug needs to be solved first. Please add dependency on that bug.
Comment 5 Jesús P Rey (Chuso) 2014-01-08 16:10:28 UTC
Created attachment 367398 [details]
gitg-0.3.1.ebuild with fixed dependencies, reviewed by upstream

I made the following changes based on Konstantin's ebuild:

- Copyright and Header

- Updated home page

- Removed gnome-base/gconf and dev-vcs/git. The last one has been replaced by dev-libs/libgit2. Both dependencies have been confirmed as no longer needed by upstream.

- Upstream has confirmed that the following USE dependencies are needed:
net-libs/webkit-gtk[introspection]
dev-libs/libgit2[threads]

- Removed --disable-maintainer-mode configure flag. This flag was added because of bug #363009. The warning that raised that bug has been already fixed.

- Disabled parallel make on install phase (the reason for "cannot find -lgitg-ext-1.0"). Suggested by upstream, see http://blogs.gnome.org/jessevdk/2014/01/07/vala-and-autobuild/

- configure script looks for versions of vala > 0.20.1.23 and upstream has confirmed that it also works with 0.22, so I replaced VALA_MAX_API_VERSION="0.20" with VALA_MIN_API_VERSION="0.20". I'm not very familiar with vala eclass, I hope I'm doing it right.

- Added and fixed some dependencies version to match configure script dependencies.

- dev-libs/gtkspell? This doesn't exist on Portage. Changed to app-text/gtkspell.

What does that src_test() function do? Is it actually needed?
Comment 6 poncho 2014-01-09 11:11:43 UTC
Created attachment 367472 [details]
build.log webkit-gtk-2.0.4

fails to build with net-libs/webkit-gtk-2.0.4
but builds fine with net-libs/webkit-gtk-2.2.2
Comment 7 Jesús P Rey (Chuso) 2014-01-09 15:47:44 UTC
Created attachment 367488 [details]
gitg-0.3.1.ebuild fixed net-libs/webkit-gtk dependency version

Thanks, poncho, you are right.

>=net-libs/webkit-gtk-2.2 is required:

http://webkitgtk.org/reference/webkit2gtk/stable/WebKitSettings.html#webkit-settings-set-enable-write-console-messages-to-stdout
http://webkitgtk.org/reference/webkit2gtk/stable/WebKitURISchemeRequest.html#webkit-uri-scheme-request-finish-error

Ebuild updated and reported to upstream since configure script still checks for >=net-libs/webkit-gtk-1.9.92
Comment 8 Jesús P Rey (Chuso) 2014-01-09 23:30:54 UTC
0.3.2 just released, I will start to work on it tomorrow.
Comment 9 Jesús P Rey (Chuso) 2014-01-10 11:07:30 UTC
Created attachment 367568 [details]
gitg-0.3.2.ebuild

Version bump: gitg-0.3.2

Ebuild changes pulled by version bump:

- Newer version required for some dependencies

Other changes that I have detected that are needed while making ebuild for 0.3.2 but that would also probably be needed for 0.3.1 but I'm not sure if we are going to push 0.3.1 to Portage now that 0.3.2 has already been released:

- Added python USE flag. Python support is only needed by gitg plugins using python, so is a dependency that will have to be pulled by those plugins using it. Upstream has confirmed that only python targets >= 3.2 are supported and that this flag is only needed for those plugins using it (currently none).

- Added missing dependency: dev-libs/json-glib

I have added dev-python/pygobject as dependency when using python USE flag even when this dependency is already pulled by dev-libs/libpeas[python] because pygobject is explicitly required by gitg:

GitgExt.py:1:from gi.repository import GObject
Comment 10 Jesús P Rey (Chuso) 2014-01-10 11:08:25 UTC
Created attachment 367570 [details]
metadata.xml

Updated metadata.xml to include python USE flag.
Comment 11 Mike Auty (RETIRED) gentoo-dev 2014-01-10 21:15:30 UTC
Thanks Jesús, Poncho, Mark and Konstantin for working on the new ebuild.  I'm a little busy at the moment, and this is still blocking on libgit2-glib which I'm not the maintainer of, but once that's updated and things have settled down a little, I'll be pushing 0.3.2.  I won't bother pushing 0.3.1, since there seems little point with the newer version out.
Comment 12 Jesús P Rey (Chuso) 2014-01-13 10:35:57 UTC
Hi, Mike, thanks for your reply.

This bug also depends on bug #497352 (dev-libs/libgit2 - add threads USE flag). Could you or Konstantin please are this bug dependency?
Comment 13 Seemant Kulleen 2014-02-07 11:50:26 UTC
Thank you all.  This works beautifully after also emerging the ebuilds from: #497518 and #497352 on my ~amd64 system.
Comment 14 Justin Lecher (RETIRED) gentoo-dev 2014-02-08 14:37:12 UTC
+*gitg-0.3.2 (08 Feb 2014)
+
+  08 Feb 2014; Justin Lecher <jlec@gentoo.org> +gitg-0.3.2.ebuild,
+  metadata.xml:
+  Version Bump, #497358; thanks for Mark R. Pariente, Konstantin and Jesús
+  Pérez (Chuso) working on the ebuild
+

I added the following changes

--- gitg-0.3.2.ebuild.original	2014-02-08 15:36:14.634482656 +0100
+++ gitg-0.3.2.ebuild	2014-02-08 15:33:20.000000000 +0100
@@ -1,12 +1,13 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: $
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/gitg/gitg-0.3.2.ebuild,v 1.1 2014/02/08 14:33:20 jlec Exp $
 
 EAPI=5
 
 VALA_MIN_API_VERSION="0.20"
 PYTHON_COMPAT=( python{3_2,3_3} )
-inherit base eutils gnome2 vala python-r1
+
+inherit autotools gnome2 python-r1 vala
 
 DESCRIPTION="git repository viewer for GNOME"
 HOMEPAGE="https://wiki.gnome.org/Apps/Gitg"
@@ -14,36 +15,46 @@
 LICENSE="|| ( GPL-2 GPL-3 )"
 SLOT="0"
 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-# FIXME: debug changes CFLAGS
-IUSE="debug glade python"
+IUSE="debug glade +python"
 
-RDEPEND=">=dev-libs/glib-2.38:2
-	>=x11-libs/gtk+-3.10.0:3
-	>=x11-libs/gtksourceview-3.10:3.0
-	>=gnome-base/gsettings-desktop-schemas-0.1.1
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# test if unbundling of libgd is possible
+# Currently it seems not to be (unstable API/ABI)
+RDEPEND="
 	dev-libs/libgee:0.8
 	>=dev-libs/json-glib-0.16
-	>=dev-libs/libpeas-1.5.0[gtk]
+	>=app-text/gtkspell-3.0.3:3
+	>=dev-libs/glib-2.38:2
 	>=dev-libs/gobject-introspection-0.10.1
-	>=net-libs/webkit-gtk-2.2:3[introspection]
 	dev-libs/libgit2[threads]
 	>=dev-libs/libgit2-glib-0.0.10
-	>=app-text/gtkspell-3.0.3:3
+	>=dev-libs/libpeas-1.5.0[gtk]
+	>=gnome-base/gsettings-desktop-schemas-0.1.1
+	>=net-libs/webkit-gtk-2.2:3[introspection]
+	>=x11-libs/gtk+-3.10.0:3
+	>=x11-libs/gtksourceview-3.10:3.0
 	glade? ( >=dev-util/glade-3.2:3.10 )
 	python? (
-		dev-libs/libpeas[python]
-		dev-python/pygobject:3
+		${PYTHON_DEPS}
+		dev-libs/libpeas[python,${PYTHON_USEDEP}]
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
 	)
 "
 DEPEND="${RDEPEND}
 	>=sys-devel/gettext-0.17
 	virtual/pkgconfig
-	>=dev-util/intltool-0.40"
+	>=dev-util/intltool-0.40
+	$(vala_depend)"
 
 DOCS="AUTHORS ChangeLog NEWS README"
 
 src_prepare() {
-	base_src_prepare
+	sed \
+		-e '/CFLAGS/s:-g::g' \
+		-e '/CFLAGS/s:-O0::g' \
+		-i configure.ac || die
+	eautoreconf
 	gnome2_src_prepare
 	vala_src_prepare
 }
@@ -62,9 +73,5 @@
 }
 
 src_install() {
-	emake -j1 DESTDIR="${D}" install || die
-}
-
-src_test() {
-	default
+	gnome2_src_install -j1
 }