From owner-freebsd-ports-bugs@FreeBSD.ORG Fri Jan 26 01:20:22 2007 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0AFC316A403 for ; Fri, 26 Jan 2007 01:20:22 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id DC5DB13C45D for ; Fri, 26 Jan 2007 01:20:21 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l0Q1KLWE008886 for ; Fri, 26 Jan 2007 01:20:21 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l0Q1KLd2008885; Fri, 26 Jan 2007 01:20:21 GMT (envelope-from gnats) Resent-Date: Fri, 26 Jan 2007 01:20:21 GMT Resent-Message-Id: <200701260120.l0Q1KLd2008885@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Danny Pansters Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8AFDC16A400 for ; Fri, 26 Jan 2007 01:10:19 +0000 (UTC) (envelope-from danny@ricin.com) Received: from smtpq2.groni1.gr.home.nl (smtpq2.groni1.gr.home.nl [213.51.130.201]) by mx1.freebsd.org (Postfix) with ESMTP id C9DB113C43E for ; Fri, 26 Jan 2007 01:10:18 +0000 (UTC) (envelope-from danny@ricin.com) Received: from [213.51.130.190] (port=36493 helo=smtp1.groni1.gr.home.nl) by smtpq2.groni1.gr.home.nl with esmtp (Exim 4.30) id 1HAIBh-0003J0-7z for FreeBSD-gnats-submit@freebsd.org; Fri, 26 Jan 2007 04:55:41 +0100 Received: from cp464173-a.dbsch1.nb.home.nl ([84.27.221.74]:52689 helo=desktop.homenet) by smtp1.groni1.gr.home.nl with smtp (Exim 4.30) id 1HAFbZ-00038U-DA for FreeBSD-gnats-submit@freebsd.org; Fri, 26 Jan 2007 02:10:13 +0100 Received: by desktop.homenet (sSMTP sendmail emulation); Fri, 26 Jan 2007 02:10:11 +0100 Message-Id: <20070126011018.C9DB113C43E@mx1.freebsd.org> Date: Fri, 26 Jan 2007 02:10:11 +0100 From: "Danny Pansters" To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/108364: [patch] x11-toolkits/gtk20: plist problem with icons dir X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Danny Pansters List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Jan 2007 01:20:22 -0000 >Number: 108364 >Category: ports >Synopsis: [patch] x11-toolkits/gtk20: plist problem with icons dir >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 26 01:20:21 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Danny Pansters >Release: FreeBSD 6.2-PRERELEASE i386 >Organization: >Environment: System: FreeBSD desktop.homenet 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #1: Fri Jan 12 23:22:55 CET 2007 danny@desktop.homenet:/usr/obj/usr/src/sys/DESKTOP i386 >Description: When gtk20 installs from port or package it creates icon cache files in icon directories under LOCALBASE/share/icons/. When gtk20 deinstalls from port or package it deletes such cache files. There can be situations when there have been icons installed in such directories that were removed, e.g. from the kdelibs3 or kdebase3 package If those are deinstalled before gtk20 gets deinstalled empty icon directories will remain and will cause things such as tinderbox package build runs to fail in the end because of the left over directories. I discovered this problem with the x11-themes/gtk-qt-engine port which has dependencies for both kdelibs and gtk20. It also has an optional (used by default) dependency for libbonoboui. When the latter is used, during a tinderbox run upon reinstall, gtk20 will be removed after kdelibs/kdehier and the crystalsvg icon dir is left behind, causing an error like this: === Checking filesystem state after all packages deleted ================================================================ list of extra files and directories in / (not present on clean system but present after everything was deinstalled) 2784229 4 drwxr-xr-x 3 root wheel 512 Jan 25 22:58 usr/local/share/icons 2874128 4 drwxr-xr-x 2 root wheel 512 Jan 25 22:58 usr/local/share/icons/crystalsvg ================================================================ build of /usr/ports/x11-themes/gtk-qt-engine ended at Thu Jan 25 23:00:29 UTC 2007 The solution for this kind of problem seems to be to make sure no empty icon dirs are left behind after deleting any cachefile in them upon gtk20 deinstall. After applying this my tinderbox no longer complains about a left-over crystalsvg directory. Tinderbox log for current gtk-qt-engine-0.7_4 with this plist patch: http://freebsd.ricin.com/misc/gtk-qt-engine-0.7_4-with.log Tinderbox log for current gtk-qt-engine-0.7_4 without: http://freebsd.ricin.com/misc/gtk-qt-engine-0.7_4-without.log >How-To-Repeat: Test gtk-qt-engine on tinderbox (problem found after PR'ing a revision of this port but with the current port the same problem will occur) >Fix: --- ports::x11-toolkits::gtk20.diff begins here --- diff -ruN ports/x11-toolkits/gtk20.orig/pkg-plist ports/x11-toolkits/gtk20/pkg-plist --- ports/x11-toolkits/gtk20.orig/pkg-plist Sat Jan 6 02:11:03 2007 +++ ports/x11-toolkits/gtk20/pkg-plist Thu Jan 25 21:25:14 2007 @@ -588,6 +588,7 @@ share/themes/Raleigh/gtk-2.0/gtkrc @exec /usr/bin/find %%LOCALBASE%%/share/icons -type d -depth 1 -exec %D/bin/gtk-update-icon-cache -q -f {} \; 2>/dev/null || /usr/bin/true @unexec /usr/bin/find %%LOCALBASE%%/share/icons -type f -depth 2 -name icon-theme.cache -delete 2>/dev/null || /usr/bin/true +@unexec /usr/bin/find %%LOCALBASE%%/share/icons -type d -depth 1 -empty -delete 2>/dev/null || /usr/bin/true @dirrm share/themes/Raleigh/gtk-2.0 @dirrm share/themes/Raleigh @dirrm share/themes/Emacs/gtk-2.0-key --- ports::x11-toolkits::gtk20.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: