blob: 6838cd63490fc7ba104cbbd0741190105bb6a524 [file] [log] [blame]
#!/bin/sh
#---------------------------------------------
# xdg-copy
#
# Utility script to copy files specified by URLs, including
# downloading and uploading from/to remote sites.
#
# Refer to the usage() function below for usage.
#
# Copyright 2009-2010, Fathi Boudra <fabo@freedesktop.org>
# Copyright 2009-2010, Rex Dieter <rdieter@fedoraproject.org>
# Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at>
# Copyright 2006, Jeremy White <jwhite@codeweavers.com>
#
# LICENSE:
#
#---------------------------------------------
manualpage()
{
cat << _MANUALPAGE
_MANUALPAGE
}
usage()
{
cat << _USAGE
_USAGE
}
#@xdg-utils-common@
copy_kde()
{
kfmclient copy "$1" "$2"
if [ $? -eq 0 ]; then
exit_success
else
exit_failure_operation_failed
fi
}
copy_gnome()
{
if gvfs-copy --help 2>/dev/null 1>&2; then
gvfs-copy "$1" "$2"
else
gnomevfs-copy "$1" "$2"
fi
if [ $? -eq 0 ]; then
exit_success
else
exit_failure_operation_failed
fi
}
[ x"$1" != x"" ] || exit_failure_syntax
source=
dest=
while [ $# -gt 0 ] ; do
parm=$1
shift
case $parm in
-*)
exit_failure_syntax "unexpected option '$parm'"
;;
*)
if [ -n "$dest" ] ; then
exit_failure_syntax "unexpected argument '$parm'"
fi
if [ -n "$source" ] ; then
dest=$parm
else
source=$parm
fi
;;
esac
done
if [ -z "${source}" ] ; then
exit_failure_syntax "source argument missing"
fi
if [ -z "${dest}" ] ; then
exit_failure_syntax "destination argument missing"
fi
detectDE
case "$DE" in
kde)
copy_kde "$source" "$dest"
;;
gnome*)
copy_gnome "$source" "$dest"
;;
*)
exit_failure_operation_impossible "no method available for copying '$source' to '$dest'"
;;
esac