Bug 195121 - graphics/linux-c6-gdk-pixbuf: rename to -pixbuf2 to avoid conflating with 0.22.0
Summary: graphics/linux-c6-gdk-pixbuf: rename to -pixbuf2 to avoid conflating with 0.22.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Johannes Jost Meixner
URL:
Keywords: patch, patch-ready
Depends on: 195120
Blocks:
  Show dependency treegraph
 
Reported: 2014-11-17 21:43 UTC by Jan Beich
Modified: 2015-01-07 14:36 UTC (History)
2 users (show)

See Also:


Attachments
rename (3.19 KB, patch)
2014-11-17 21:43 UTC, Jan Beich
no flags Details | Diff
rename, v2 (3.37 KB, patch)
2014-11-17 23:39 UTC, Jan Beich
no flags Details | Diff
linux-opera f10 log (41.05 KB, text/plain)
2014-11-17 23:40 UTC, Jan Beich
no flags Details
linux-firefox f10 log (18.55 KB, text/plain)
2014-11-17 23:41 UTC, Jan Beich
no flags Details
linux-opera c6 log (41.17 KB, text/plain)
2014-11-17 23:42 UTC, Jan Beich
no flags Details
linux-firefox c6 log (18.35 KB, text/plain)
2014-11-17 23:42 UTC, Jan Beich
no flags Details
linux-c6-flashplugin log (21.64 KB, text/plain)
2014-11-17 23:44 UTC, Jan Beich
no flags Details
rename, v3 (2.22 KB, patch)
2014-11-19 05:01 UTC, Jan Beich
no flags Details | Diff
rename, v3 (2.72 KB, patch)
2014-11-19 05:15 UTC, Jan Beich
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer freebsd_triage 2014-11-17 21:43:52 UTC
Created attachment 149534 [details]
rename

In order to follow upstream (centos) naming and of non-linux variants add the suffix. This should avoid confusing 0.22.0 and 2.x branches as they provide different .so libraries. The fix should better reflect current PORTNAME.

- graphics/gdk-pixbuf provides libgdk_pixbuf.so.2
- graphics/gdk-pixbuf2 provides libgdk_pixbuf-2.0.so.0
- graphics/linux-f10-gdk-pixbuf provides libgdk_pixbuf.so.2
- graphics/linux-c6-gdk-pixbuf provides libgdk_pixbuf-2.0.so.0

$ svn mv graphics/linux-c6-gdk-pixbuf{,2}
$ svn patch /path/to/gdkpixbuf2.diff
(Ignore rejects under www/linux-seamonkey before bug 195120)
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2014-11-17 21:43:52 UTC
Auto-assigned to maintainer emulation@FreeBSD.org
Comment 2 Johannes Jost Meixner freebsd_committer freebsd_triage 2014-11-17 22:20:24 UTC
While I generally like the idea of having the upstreamed naming scheme in our portstree, here's the problem:

Instead of your patch to www/linux-opera and www/linux-seamonkey you will need to discriminate the USE_LINUX_APPS= setting based on which linux distribution is used, given that you cannot use either gdkpixbuf2 with -f10, or gdkpixbuf with -c6.

So, something like

-USE_LINUX_APPS=	gdkpixbuf gtk2 naslibs png sqlite3 xorglibs
+USE_LINUX_APPS=	gtk2 naslibs png sqlite3 xorglibs
+.if ${USE_LINUX} == "f10"
+USE_LINUX_APPS+= gdkpixbuf
+.else
+USE_LINUX_APPS+= gdkpixbuf2
+.endif

for www/linux-opera

and 

something like 


 USE_LINUX_APPS+=alsalib alsa-plugins-oss atk dbusglib dbuslibs \
-		fontconfig gdkpixbuf gtk2 hicontheme pango
+		fontconfig gtk2 hicontheme pango
+.if ${USE_LINUX} == "f10"
+USE_LINUX_APPS+= gdkpixbuf
+.else
+USE_LINUX_APPS+= gdkpixbuf2
+.endif

for www/linux-seamonkey

becomes necessary, along with entry in MOVED and UPDATING telling users to reinstall (pkg set -o etc) instructions.
Comment 3 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:39:34 UTC
Created attachment 149539 [details]
rename, v2

Apologies for not testing the patch. Trying again with the quirk in bsd.linux-apps.mk.

The intent is to help linux-foo ports and leave linux-f10-foo + linux-c6-foo for infra. If an actual consumer for gdk-pixbuf 0.22.0 appears c6 flavor can be added from an unofficial repo.
Comment 4 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:40:59 UTC
Created attachment 149540 [details]
linux-opera f10 log
Comment 5 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:41:21 UTC
Created attachment 149541 [details]
linux-firefox f10 log
Comment 6 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:42:05 UTC
Created attachment 149542 [details]
linux-opera c6 log
Comment 7 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:42:24 UTC
Created attachment 149543 [details]
linux-firefox c6 log
Comment 8 Jan Beich freebsd_committer freebsd_triage 2014-11-17 23:44:47 UTC
Created attachment 149544 [details]
linux-c6-flashplugin log

Ignore unrelated bugs:

====> Running Q/A tests (stage-qa)
Warning: you may not need USES=desktop-file-utils
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: @dir %%LINUXBASE%%/usr/lib
Error: Orphaned: @dir %%LINUXBASE%%/usr
Error: Orphaned: @dir %%LINUXBASE%%
Error: Orphaned: @dir /compat
Comment 9 Johannes Jost Meixner freebsd_committer freebsd_triage 2014-11-18 07:25:34 UTC
Your logs show the exact problem I was hinting at: the -f10 versions don't install gdk-pixbuf.
Comment 10 Jan Beich freebsd_committer freebsd_triage 2014-11-18 09:03:43 UTC
(In reply to Johannes Jost Meixner from comment #9)
> Your logs show the exact problem I was hinting at: the -f10 versions don't
> install gdk-pixbuf.

Why that is a problem? I haven't found a single linux- port that depends on libgdk_pixbuf.so.2 provided by gdk-pixbuf among both f10 and c6. As the library is vestige of Gnome 1, no modern (often still gtk2) software depends on it. Then no need to install a non-leaf port that doesn't provide the required library.

  $ cd www/linux-opera
  $ readelf -d $(make -V WRKSRC)/lib/linux-opera/liboperagtk2.so | fgrep pixbuf
   0x00000001 (NEEDED)                     Shared library: [libgdk_pixbuf-2.0.so.0]

  $ cd graphics/linux-f10-gdk-pixbuf
  $ fgrep libgdk_pixbuf-2.0.so.0 pkg-plist

  $ cd x11-toolkits/linux-f10-gtk2
  $ fgrep libgdk_pixbuf-2.0.so.0 pkg-plist
  usr/lib/libgdk_pixbuf-2.0.so.0
  usr/lib/libgdk_pixbuf-2.0.so.0.1400.7

OTOH, native gdk-pixbuf actually has (mostly gtk12) consumers. Non-linux firefox and opera are not among them as they implicitly have USE_GNOME=gdkpixbuf2.
Comment 11 Johannes Jost Meixner freebsd_committer freebsd_triage 2014-11-18 13:17:16 UTC
> Why that is a problem? I haven't found a single linux- port that depends on libgdk_pixbuf.so.2 provided by gdk-pixbuf among both f10 and c6.

Yeah, it isn't. I didn't know about gdk-pixbuf(1!) being a  GNOME 1 "vestige".

Just to make sure I understand the versions/provisioning of things correctly:

* with linux-f10, linux-f10-gdk-pixbuf is GNOME1 and hence really old.
* with linux-f10, gdk-pixbuf2 is provided by linux-f10-gtk2
* with linux-c6 (6.6 but not 6.5), gdk-pixbuf2 is provided by linux-c6-gdk-pixbuf
* no linux-c6 port (so far) provides gdk-pixbuf (1!), and none seems needed ?

Does that sound right?
Comment 12 Jan Beich freebsd_committer freebsd_triage 2014-11-18 19:58:04 UTC
Yes. You can confirm with runtime testing on top of |poudriere jail -s|.

(In reply to Johannes Jost Meixner from comment #11)
> * with linux-f10, gdk-pixbuf2 is provided by linux-f10-gtk2

Which means there maybe more ports that depend on gdk-pixbuf2 but not properly marked so. They work fine with f10 but not with c6 anymore.
Comment 13 Jan Beich freebsd_committer freebsd_triage 2014-11-19 05:01:25 UTC
Created attachment 149577 [details]
rename, v3

Rebased against bug 195120.
Comment 14 Jan Beich freebsd_committer freebsd_triage 2014-11-19 05:15:43 UTC
Created attachment 149578 [details]
rename, v3

Oops, forgot about linux-c6-gtk2 itself.
Comment 15 Johannes Jost Meixner freebsd_committer freebsd_triage 2014-11-19 10:52:08 UTC
(In reply to Jan Beich from comment #14)
> Created attachment 149578 [details]
> rename, v3
> 
> Oops, forgot about linux-c6-gtk2 itself.


I've created a phabric review revision with the patches of 195120 and 195121.

https://reviews.freebsd.org/D1192

In preparation for making c6 default I've reversed the condition in Mk/bsd.linux-apps.com a little, asking for f10 OR "yes", else defaulting to centos (it'll make things easier in the future.)
Comment 16 commit-hook freebsd_committer freebsd_triage 2014-11-24 02:40:31 UTC
A commit references this bug:

Author: xmj
Date: Mon Nov 24 02:40:15 UTC 2014
New revision: 373192
URL: https://svnweb.freebsd.org/changeset/ports/373192

Log:
  graphics/linux-c6-gdk-pixbuf: rename to -pixbuf2

  - Rename gdk-pixbuf to linux-c6-gdk-pixbuf2 to properly distinguish between
    linux- gdk-pixbuf 1 and 2.
  - Change consumers dependencies to match.

  PR: 		195120, 195121
  Differential Revision:	https://reviews.freebsd.org/D1192
  Submitted by:	Jan Beich <jbeich@vfemail.net>
  Reviewed by:	rene (emulation)
  Approved by:	swills (mentor)
  Approved by:	portmgr (swills)

Changes:
  head/MOVED
  head/Mk/bsd.linux-apps.mk
  head/graphics/linux-c6-gdk-pixbuf/
  head/graphics/linux-c6-gdk-pixbuf2/
  head/www/linux-c6-flashplugin11/Makefile
  head/www/linux-opera/Makefile
  head/x11-toolkits/linux-c6-gtk2/Makefile
Comment 17 Johannes Jost Meixner freebsd_committer freebsd_triage 2014-11-24 02:42:54 UTC
Committed, thanks!