[MacPorts] #14729: gnome installations do not register the schema files with gconf
MacPorts
trac at macosforge.org
Fri Mar 21 16:28:51 PDT 2008
#14729: gnome installations do not register the schema files with gconf
------------------------------------+---------------------------------------
Reporter: reiffert at macports.org | Owner: reiffert at macports.org
Type: defect | Status: assigned
Priority: Normal | Milestone: Port Enhancements
Component: ports | Version: 1.6.0
Resolution: | Keywords: gnome gconf gconftool-2
------------------------------------+---------------------------------------
Changes (by reiffert at macports.org):
* status: new => assigned
Comment:
Unfourtunatly my first attempt doesnt work well on port variants.
Currently I'm writing a gnome portgroup for handling the situation. Until
the portgroup reaches your macports installation with a new macports
release, use the following on your gnome port:
{{{
set storagedir ${prefix}/etc/macports/gconf
set storagefile $storagedir/${name}
post-destroot {
# 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 file 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 {
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"
}
}}}
--
Ticket URL: <http://trac.macosforge.org/projects/macports/ticket/14729#comment:1>
MacPorts </projects/macports>
Ports system for Mac OS
More information about the macports-tickets
mailing list