most recent changes, diff for gconf-editor

Index: gnome/gconf-editor/Portfile
--- gnome/gconf-editor/Portfile (revision 35245)
+++ gnome/gconf-editor/Portfile (revision 35246)
@@ -3,19 +3,19 @@
PortSystem 1.0

name gconf-editor
-version 2.20.0
+version 2.22.0
description gconf-editor is a gconf database editor for GNOME 2.0.
long_description gconf-editor is a gconf database editor for \
GNOME 2.0. It is similar to regedit on Windows
maintainers nomaintainer
categories gnome
-platforms darwin
+platforms darwin
homepage http://www.gnome.org/projects/gconf/
-master_sites gnome:sources/gconf-editor/2.20/
+master_sites gnome:sources/gconf-editor/2.22/

-checksums md5 b686677878b5754ffa8d0a2cc1129988 \
- sha1 628404983b89e005cbd688d841291ddc46c361a2 \
- rmd160 b951b2a7db1fd315e0068ec00612297cb7ffd14f
+checksums md5 7ca99aec214dd855b5de7dacc8937055 \
+ sha1 7ca44dbb09136203b37d7dd5398b62bcf15ee528 \
+ rmd160 c1ac899ac48a907420af28295de8fa66c1d45add

depends_lib \
port:libgnomeui \
@@ -28,12 +28,54 @@
use_bzip2 yes

configure.args --mandir=${prefix}/share/man --disable-scrollkeeper
-configure.cppflags-append "-L${prefix}/lib"
+configure.cppflags-append "-L${prefix}/lib"

+set storagedir ${prefix}/etc/macports/gconf
+set storagefile $storagedir/${name}
+
post-destroot {
file delete -force ${destroot}${prefix}/var/scrollkeeper
+
+ # We need to register some stuff to gconf. Just putting the
+ # schema files to the right place is not enough.
+ # For now we store the files in
+ # ${prefix}/etc/macports/gconf/${name} and use that file
+ # in post-activate. Until there is no better solution
+ # this will make it into the gnomeportgroup
+
+ # Find all .schemas files in the destroot
+ fs-traverse schema ${destroot}${prefix}/etc/gconf/schemas {
+ if { [ file isfile $schema ] } {
+ lappend schemafiles $schema
+ }
+ }
+
+ # And put them in etc/macports/gconf/$name
+ if { [ llength $schemafiles ] > 0 } {
+ file mkdir ${destroot}${storagedir}
+ set fh [open ${destroot}${storagefile} w]
+ foreach file $schemafiles {
+ puts $fh [exec basename $file]
+ }
+ close $fh
+ }
+
}

post-activate {
system "scrollkeeper-update"
+
+ if { [file exists ${storagefile} ] } {
+ set fh [open ${storagefile} r]
+ while { ! [eof $fh] } {
+ lappend schemafiles [gets $fh]
+ }
+ close $fh
+ }
+
+ set schemastring [join $schemafiles " "]
+
+ system "cd ${prefix}/etc/gconf/schemas && \
+ GCONF_CONFIG_SOURCE=`${prefix}/bin/gconftool-2 --get-default-source` ${prefix}/bin/gconftool-2 --makefile-install-rule $schemastring"
+
}