Originally Posted by underkz
Finally I came up with decent solution for this.
1. Create following script, save it to your home folder as "RunPreservingIconPos" and make it runnable.
NOTE! Rename all of these "icons.screen0-1280x1024.rc" filenames in the script to correspond to your resolution in use!
cp -f ./icons.screen0-1280x1024.rc ./icons.screen0-1280x1024.rc_bak
# This will launch application given as argument (as background process).
# This will get PID of the application (if it launches multiple processes this script might not work).
echo "Looking for process which has pid of $PID."
# Let's wait until ps doesn't see the process anymore.
while [ ! -z `ps -p $PID -o pid=` ]; do
echo "Execution of the process ended."
# These lines forces new configs to be read (apparently by flushing some config cache).
# Wait and restore backed up configs.
cp -f ./icons.screen0-1280x1024.rc_bak ./icons.screen0-1280x1024.rc
2. Modify all problem application launchers to start with the script, example:
3. Done. After one second you exit the application, all your icons will be just where you wanted.
If you find it useful, please share it.