Copying Gnome settings

Dear community,

I want to apply the same settings of Gnome among a group of users. I configured a “master”-user and exported his Gnome settings using

gconftool-2 --dump > gnome_settings.xml

For the other users, where the settings from the “master”-user shall apply, I did

gconftool-2 --load gnome_settings.xml

While most of the settings were set properly, I am missing the links for Firefox and OpenOffice in the panel which I had configured.

Does anyone knows how I can copy the Gnome settings from one user to another, including links to Firefox and OpenOffice in the main panel?

Many thanks in advance

Does no one has any idea? Unfortunately, google did not help either. Also sweeping through the exported XML did not give any indication of e.g. user-specific information like absolute paths.

I would guess you need to do the same thing with the panel. You might
also look at using AppArmor to configure profiles as it may give you
additional control?

Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel
up 4 days 14:06, 4 users, load average: 0.25, 0.24, 0.31
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

You could copy the .gnome directories in the master then save to the new user accounts. Note you would also need to change ownership of all the files. Once you have a system establish write a script to do it.

If you mean the launcher buttons, they are desktop files in ~/.gnome2/panel2.d/default/launchers and gconf entries in ~/.gconf/apps/panel/objects.

I put the desktop files in the skeleton directory /etc/skel/.gnome2/panel2.d/launchers and create the panel objects with:

#_________ code executed by other users _______________________________________________________________________________________

echo " - setting Gnome user default ..."
set pset = "gconftool-2 --direct --config-source xml:readwrite:$home/.gconf" >/dev/null

# launcher objects ----------------
set pos = 1
set launchers = "menu_bar"
set launcher = ( run gnome-terminal aterm nautilus mc opera firefox chromium thunderbird pidgin pan akregator wireshark etherape )
foreach l ( $launcher )
	@ pos = $pos + 1
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/action_type "lock" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/attached_toplevel_id "" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/bonobo_iid "" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/custom_icon "" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/launcher_location "${l}.desktop" >/dev/null
	$pset --type=bool	--set /apps/panel/objects/${l}_launcher/locked false >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/menu_path "applications:/" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/object_type "launcher-object" >/dev/null
	$pset --type=bool	--set /apps/panel/objects/${l}_launcher/panel_right_stick false >/dev/null
	$pset --type=int	--set /apps/panel/objects/${l}_launcher/position $pos >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/tooltip "" >/dev/null
	$pset --type=string	--set /apps/panel/objects/${l}_launcher/toplevel_id "$top_panel" >/dev/null
	$pset --type=bool	--set /apps/panel/objects/${l}_launcher/use_custom_icon false >/dev/null
	$pset --type=bool	--set /apps/panel/objects/${l}_launcher/use_menu_path false >/dev/null
	$pset --owner=$user --type=int --set /apps/panel/objects/${l}_launcher/position $pos >/dev/null
	set launchers = $launchers,${l}_launcher
$pset --type=string	--set /apps/panel/objects/run_launcher/action_type "run" >/dev/null
$pset --type=string	--set /apps/panel/objects/run_launcher/launcher_location "" >/dev/null
$pset --type=string	--set /apps/panel/objects/run_launcher/object_type "action-applet" >/dev/null

$pset --type=list   --set /apps/panel/general/object_id_list "$launchers]" --list-type=string >/dev/null

It’s just a snip of a very long script (might be incomplete) written in csh since I wrote it originanlly on BSD. Hope it helps. However … I’m sure they are easier ways to do it. :wink: