gnome-cleanup revision 15607
25cc5fbba63f84b47e389af749f55abbbde71c8cChristian Maeder# Cleans up the GNOME Desktop user configuration files. This
25cc5fbba63f84b47e389af749f55abbbde71c8cChristian Maeder# will return the user to the default desktop configuration.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# Useful if the user's configuration has become corrupted.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# By: Brian Cameron <Brian.Cameron@sun.com>
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# The first argument can be a user name. If so, then the script
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# will clean up the files for that specified user (if file
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# permissions permit). If no argument is given, the default value
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# is the current user.
76712faeb5ffeb3ff704404a34f2b8d284aa92bcChristian Maeder if [ -z "$LOGNAME" ]; then
ac0bbbcb2774629bb87986e69cf53d3402c5f575Christian Maeder# Error if the directory for this user does not exist.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maederif [ ! -d "$USRHOME" ]; then
c55a0f77be7e88d3620b419ec8961f4379a586e3Klaus Luettich echo "Error: user $LOGNAME does not exist on this system."
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# If USRHOME is the root directory, just set USRHOME to nothing
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# to avoid double-slash in the output since we refer to files
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# as $USRHOME/.gconf, for example.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# Check if GNOME is running:
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederGNOME_PROCESSES='(gnome-session|gconfd|gconfd-2|metacity|esd)'
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederRUNNING_PROCESSES=`/usr/bin/pgrep -l -U $LOGNAME "$GNOME_PROCESSES"`
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder echo "Error getting user process information for user $LOGNAME..."
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maederif [ ! -z "$RUNNING_PROCESSES" ]; then
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers echo "The following GNOME processes are still running for user $LOGNAME:"
ac0bbbcb2774629bb87986e69cf53d3402c5f575Christian Maeder echo "Please log out user $LOGNAME from GNOME, so this user has no"
ce50fe187cdae64e75e510daafb78156280bdb91Christian Maeder echo "GNOME processes running before using gnome-cleanup. For example,"
ebe517300051f765f2ed856a789dd5613d681ab0Klaus Luettich echo "log out, and log into a failsafe session to run gnome-cleanup."
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckerstmp_cleanup="gconfd-${LOGNAME} mapping-${LOGNAME} orbit-${LOGNAME} gvfs-${LOGNAME}*"
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maedergnome_files="$USRHOME/.dbus $USRHOME/.gconf $USRHOME/.gconfd $USRHOME/.gnome $USRHOME/.gnome-desktop $USRHOME/.gnome2 $USRHOME/.gnome2_private $USRHOME/.metacity $USRHOME/.nautilus $USRHOME/.esd_auth $USRHOME/.gtkrc $USRHOME/.gtkrc-1.2-gnome2 $USRHOME/.nautilus-metafile.xml $USRHOME/.gstreamer-0.10/registry.* $USRHOME/.local/share"
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers# GNOME 1.4 files
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckersgnome_14_files="$USRHOME/.gnome-help-browser $USRHOME/.gnome_private $USRHOME/.thumbnails $USRHOME/Nautilus"
5d4038657f6a63e131f5804af2f7957b69e15a43Klaus Luettichhas_files=`/bin/ls -1d $tmp_files $gnome_files $gnome_14_files 2> /dev/null`
857992065be4ed40a72c6296b6c0aec62ab4c5b9Christian Maeder echo "User $LOGNAME currently has the following GNOME configuration files:"
96ef2e46d048c357927f2795a40e9e66f21b85fbSonja Gröning echo "Do you wish to remove these files (Y/N) \c"
7d09621f989f5e6dfbf603b36b2fccbacf639a3cTill Mossakowski echo "Removed..."
857992065be4ed40a72c6296b6c0aec62ab4c5b9Christian Maeder echo "Error removing files..."
857992065be4ed40a72c6296b6c0aec62ab4c5b9Christian Maeder echo "Not removed..."
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers echo "User $LOGNAME does not have any GNOME configuration files."