#!/bin/bash DSTUSER=$1 [ -z "$DSTUSER" ] && echo "** Missing target username!" && exit 1 SRCUSER=$(pwd) SRCTEST=$(dirname $SRCUSER) while [ 1 ] ; do [ "$SRCTEST" == "/" ] && echo "** Cannot find /home in current path!" && exit 1 [ "$SRCTEST" == "/home" ] && break; SRCUSER=$(basename $SRCTEST) SRCTEST=$(dirname $SRCTEST) done echo "-- Using user '$SRCUSER' as source!" DSTHOME="/home/$DSTUSER" SRCHOME="/home/$SRCUSER" [ "$DSTUSER" == "$SRCUSER" ] && echo "** Target ($DSTUSER) same as source ($SRCUSER)?" && exit 1 [ ! -d "$DSTHOME" ] && echo "** Cannot find target user path '$DSTHOME'!" && exit 1 [ ! -d "$SRCHOME" ] && echo "** Cannot find source user path '$SRCHOME'!" && exit 1 DST_GRP=$(groups $DSTUSER | sed 's/.* : \([^[:space:]]*\).*$/\1/') echo "-- Target:{$DSTUSER:$DST_GRP}" [ $UID -ne 0 ] && echo -e "\n** Must run as root!\n" && exit 1 CHKCONF="Thunar geany xfce4" for conf in $CHKCONF ; do SRCCONF="$SRCHOME/.config/$conf" [ ! -d "$SRCCONF" ] && continue DSTCONF="$DSTHOME/.config/$conf" if [ -d "$DSTCONF" ] ; then echo -n "-- Deleting $DSTCONF... " rm -rf $DSTCONF [ $? -ne 0 ] && echo -n "**error0** " echo "done." fi echo -n "-- Copying $SRCCONF as $DSTCONF... " cp -a $SRCCONF $(dirname $DSTCONF) [ $? -ne 0 ] && echo -n "**error1** " chown -R $DSTUSER:$DST_GRP $DSTCONF [ $? -ne 0 ] && echo -n "**error2** " echo "done." done