qubes-rpc: fix issues found by shellcheck
Most of them are missing quotes, `` -> $(), and -o/-a usage in conditions. Also add few directives disabling checks where were too verbose.
This commit is contained in:
		
							parent
							
								
									bb220ce2eb
								
							
						
					
					
						commit
						9c839d789f
					
				@ -18,7 +18,7 @@ QUBES_RPC=/etc/qubes-rpc
 | 
			
		||||
LOCAL_QUBES_RPC=/usr/local/etc/qubes-rpc
 | 
			
		||||
 | 
			
		||||
if ! [ $# = 2 ] ; then
 | 
			
		||||
	echo $0: bad argument count, usage: $0 SERVICE-NAME REMOTE-DOMAIN-NAME >&2
 | 
			
		||||
	echo "$0: bad argument count, usage: $0 SERVICE-NAME REMOTE-DOMAIN-NAME" >&2
 | 
			
		||||
	exit 1
 | 
			
		||||
fi
 | 
			
		||||
export QREXEC_REMOTE_DOMAIN="$2"
 | 
			
		||||
 | 
			
		||||
@ -8,10 +8,10 @@ action=$1
 | 
			
		||||
 | 
			
		||||
MODULES_BLACKLIST=""
 | 
			
		||||
if [ -r /etc/qubes-suspend-module-blacklist ]; then
 | 
			
		||||
    MODULES_BLACKLIST="$MODULES_BLACKLIST `grep -v '^#' /etc/qubes-suspend-module-blacklist`"
 | 
			
		||||
    MODULES_BLACKLIST="$MODULES_BLACKLIST $(grep -v '^#' /etc/qubes-suspend-module-blacklist)"
 | 
			
		||||
fi
 | 
			
		||||
if [ -r /rw/config/suspend-module-blacklist ]; then
 | 
			
		||||
    MODULES_BLACKLIST="$MODULES_BLACKLIST `grep -v '^#' /rw/config/suspend-module-blacklist`"
 | 
			
		||||
    MODULES_BLACKLIST="$MODULES_BLACKLIST $(grep -v '^#' /rw/config/suspend-module-blacklist)"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if [ x"$action" = x"suspend" ]; then
 | 
			
		||||
@ -23,23 +23,28 @@ if [ x"$action" = x"suspend" ]; then
 | 
			
		||||
            service NetworkManager stop
 | 
			
		||||
    fi
 | 
			
		||||
    # Force interfaces down, just in case when NM didn't done it
 | 
			
		||||
    for if in `ls /sys/class/net|grep -v "lo\|vif"`; do
 | 
			
		||||
        if [ "`cat /sys/class/net/$if/device/devtype 2>/dev/null`" = "vif" ]; then
 | 
			
		||||
    for intf in /sys/class/net/*; do
 | 
			
		||||
        intf=$(basename "$intf")
 | 
			
		||||
        if [ "$intf" = "lo" ] || [[ "$intf" = "vif"* ]]; then
 | 
			
		||||
            continue
 | 
			
		||||
        fi
 | 
			
		||||
        ip l s $if down
 | 
			
		||||
        if [ "$(cat "/sys/class/net/$intf/device/devtype" 2>/dev/null$)" = "vif" ]; then
 | 
			
		||||
            continue
 | 
			
		||||
        fi
 | 
			
		||||
        ip l s "$intf" down
 | 
			
		||||
    done
 | 
			
		||||
    LOADED_MODULES=""
 | 
			
		||||
    for mod in $MODULES_BLACKLIST; do
 | 
			
		||||
        if lsmod |grep -q $mod; then
 | 
			
		||||
        if lsmod |grep -q "$mod"; then
 | 
			
		||||
            LOADED_MODULES="$LOADED_MODULES $mod"
 | 
			
		||||
            modprobe -r $mod
 | 
			
		||||
            modprobe -r "$mod"
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
    echo $LOADED_MODULES > /var/run/qubes/suspend-modules-loaded
 | 
			
		||||
    echo "$LOADED_MODULES" > /var/run/qubes/suspend-modules-loaded
 | 
			
		||||
else
 | 
			
		||||
    for mod in `cat /var/run/qubes/suspend-modules-loaded`; do
 | 
			
		||||
        modprobe $mod
 | 
			
		||||
    # shellcheck disable=SC2013
 | 
			
		||||
    for mod in $(cat /var/run/qubes/suspend-modules-loaded); do
 | 
			
		||||
        modprobe "$mod"
 | 
			
		||||
    done
 | 
			
		||||
    if qsvc network-manager ; then
 | 
			
		||||
        dbus-send --system --print-reply          \
 | 
			
		||||
 | 
			
		||||
@ -1,22 +1,22 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
echo Starting Backupcopy
 | 
			
		||||
read args
 | 
			
		||||
echo Arguments: $args
 | 
			
		||||
read -r args
 | 
			
		||||
echo Arguments: "$args"
 | 
			
		||||
if [ -d "$args" ] ; then
 | 
			
		||||
  echo "Performing backup to directory $args"
 | 
			
		||||
  TARGET="$args/qubes-backup-`date +'%Y-%m-%dT%H%M%S'`"
 | 
			
		||||
  TARGET="$args/qubes-backup-$(date +'%Y-%m-%dT%H%M%S')"
 | 
			
		||||
  echo "Copying STDIN data to $TARGET"
 | 
			
		||||
  cat > $TARGET
 | 
			
		||||
  cat > "$TARGET"
 | 
			
		||||
else
 | 
			
		||||
  echo "Checking if arguments is matching a command"
 | 
			
		||||
  COMMAND=`echo $args | cut -d ' ' -f 1`
 | 
			
		||||
  if type "$COMMAND"; then
 | 
			
		||||
  COMMAND=$(echo "$args" | cut -d ' ' -f 1)
 | 
			
		||||
  if command -v "$COMMAND" >/dev/null; then
 | 
			
		||||
    echo "Redirecting STDIN to $args"
 | 
			
		||||
    # Parsing args to handle quotes correctly
 | 
			
		||||
    # Dangerous method if args are uncontrolled
 | 
			
		||||
    eval "set -- $args"
 | 
			
		||||
    $@
 | 
			
		||||
    "$@"
 | 
			
		||||
  else
 | 
			
		||||
    echo "Invalid command $COMMAND"
 | 
			
		||||
    exit 1
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
read dev
 | 
			
		||||
read -r dev
 | 
			
		||||
BDF=0000:$dev
 | 
			
		||||
echo $BDF > /sys/bus/pci/devices/$BDF/driver/unbind
 | 
			
		||||
echo "$BDF" > "/sys/bus/pci/devices/$BDF/driver/unbind"
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,5 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
# shellcheck disable=SC2016
 | 
			
		||||
find /usr/share/applications/ /usr/local/share/applications/ -name '*.desktop' -print0 2>/dev/null | \
 | 
			
		||||
         xargs -0 awk '
 | 
			
		||||
         BEGINFILE { entry="" }
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
set -e
 | 
			
		||||
read filename
 | 
			
		||||
read -r filename
 | 
			
		||||
 | 
			
		||||
ICON_MAXSIZE=512
 | 
			
		||||
 | 
			
		||||
@ -29,8 +29,8 @@ if [ "$m" = SVG ]; then
 | 
			
		||||
    tmpfile2="$(mktemp /tmp/qimg-XXXXXXXX.png)"
 | 
			
		||||
    rsvg-convert -o "$tmpfile2" "$filename"
 | 
			
		||||
    # downscale the image if necessary
 | 
			
		||||
    if [ -n "$forcemaxsize" -a \
 | 
			
		||||
            \( "$w" -gt "$forcemaxsize" -o "$h" -gt "$forcemaxsize" \) ]; then
 | 
			
		||||
    if [ -n "$forcemaxsize" ] && \
 | 
			
		||||
            ( [ "$w" -gt "$forcemaxsize" ] || [ "$h" -gt "$forcemaxsize" ] ); then
 | 
			
		||||
        convert "$tmpfile2" -scale "${forcemaxsize}x${forcemaxsize}" "$tmpfile2"
 | 
			
		||||
        # read the size again, because icon may not be a square
 | 
			
		||||
        s="$(identify -format '%w %h' "$tmpfile2")"
 | 
			
		||||
@ -42,7 +42,11 @@ fi
 | 
			
		||||
echo "$w $h"
 | 
			
		||||
convert -depth 8 -size "${w}x${h}" "$filename" rgba:-
 | 
			
		||||
 | 
			
		||||
[ -n "${tmpfile}" ] && rm -f "${tmpfile}" || true
 | 
			
		||||
[ -n "${tmpfile2}" ] && rm -f "${tmpfile2}" || true
 | 
			
		||||
if [ -n "${tmpfile}" ]; then
 | 
			
		||||
    rm -f "${tmpfile}"
 | 
			
		||||
fi
 | 
			
		||||
if [ -n "${tmpfile2}" ]; then
 | 
			
		||||
    rm -f "${tmpfile2}"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# vim: ft=sh ts=4 sw=4 et
 | 
			
		||||
 | 
			
		||||
@ -4,13 +4,13 @@
 | 
			
		||||
# If you are creating package for other distribution, feel free to replace it
 | 
			
		||||
# with distribution-specific script.
 | 
			
		||||
 | 
			
		||||
if [ -e /etc/redhat-release -a -x /usr/bin/dnf ]; then
 | 
			
		||||
if [ -e /etc/redhat-release ] && [ -x /usr/bin/dnf ]; then
 | 
			
		||||
    update_cmd='dnf update --best'
 | 
			
		||||
elif [ -e /etc/redhat-release -a -x /usr/bin/yum ]; then
 | 
			
		||||
elif [ -e /etc/redhat-release ] && [ -x /usr/bin/yum ]; then
 | 
			
		||||
    update_cmd='yum update'
 | 
			
		||||
elif [ -e /etc/debian_version ]; then
 | 
			
		||||
    update_cmd='apt-get update && apt-get -V dist-upgrade'
 | 
			
		||||
elif [ -e /etc/arch-release -a -x /usr/bin/powerpill ]; then
 | 
			
		||||
elif [ -e /etc/arch-release ] && [ -x /usr/bin/powerpill ]; then
 | 
			
		||||
    update_cmd='powerpill -Suy'
 | 
			
		||||
elif [ -e /etc/arch-release ]; then
 | 
			
		||||
    update_cmd='pacman -Suy'
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
read url
 | 
			
		||||
read -r url
 | 
			
		||||
 | 
			
		||||
case "$url" in
 | 
			
		||||
    http://*|\
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
read disk_name
 | 
			
		||||
read -r disk_name
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
@ -15,7 +15,7 @@ case $disk_name in
 | 
			
		||||
        head /dev/xvda > /dev/null
 | 
			
		||||
        new_size=$(cat /sys/block/xvda/size)
 | 
			
		||||
        ro=$(/sys/block/xvda/ro)
 | 
			
		||||
        if [ $ro -eq 1 ]; then
 | 
			
		||||
        if [ "$ro" -eq 1 ]; then
 | 
			
		||||
            new_table="0 $new_size snapshot /dev/xvda /dev/xvdc2 N 16"
 | 
			
		||||
        else
 | 
			
		||||
            new_table="0 $new_size linear /dev/xvda 0"
 | 
			
		||||
 | 
			
		||||
@ -1,27 +1,29 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
echo Starting Restorecopy >&2
 | 
			
		||||
read args
 | 
			
		||||
read paths
 | 
			
		||||
echo Arguments: $args >&2
 | 
			
		||||
echo Paths: $paths >&2
 | 
			
		||||
read -r args
 | 
			
		||||
read -r paths
 | 
			
		||||
echo "Arguments: $args" >&2
 | 
			
		||||
echo "Paths: $paths" >&2
 | 
			
		||||
if [ -f "$args" ] ; then
 | 
			
		||||
  echo "Performing restore from backup file $args" >&2
 | 
			
		||||
  TARGET="$args"
 | 
			
		||||
  echo "Copying $TARGET to STDOUT" >&2
 | 
			
		||||
  # shellcheck disable=SC2086
 | 
			
		||||
  /usr/lib/qubes/tar2qfile "$TARGET" $paths
 | 
			
		||||
else
 | 
			
		||||
  echo "Checking if arguments is matching a command" >&2
 | 
			
		||||
  COMMAND=`echo $args | cut -d ' ' -f 1`
 | 
			
		||||
  if type "$COMMAND" >/dev/null; then
 | 
			
		||||
    tmpdir=`mktemp -d`
 | 
			
		||||
    mkfifo $tmpdir/backup-data
 | 
			
		||||
  COMMAND=$(echo "$args" | cut -d ' ' -f 1)
 | 
			
		||||
  if command -v "$COMMAND" >/dev/null; then
 | 
			
		||||
    tmpdir=$(mktemp -d)
 | 
			
		||||
    mkfifo "$tmpdir/backup-data"
 | 
			
		||||
    echo "Redirecting $args to STDOUT" >&2
 | 
			
		||||
    # Parsing args to handle quotes correctly
 | 
			
		||||
    # Dangerous method if args are uncontrolled
 | 
			
		||||
    eval "set -- $args"
 | 
			
		||||
    # Use named pipe to pass original stdin to tar2file
 | 
			
		||||
    $@ > $tmpdir/backup-data < /dev/null &
 | 
			
		||||
    /usr/lib/qubes/tar2qfile $tmpdir/backup-data $paths
 | 
			
		||||
    "$@" > "$tmpdir/backup-data" < /dev/null &
 | 
			
		||||
    # shellcheck disable=SC2086
 | 
			
		||||
    /usr/lib/qubes/tar2qfile "$tmpdir/backup-data" $paths
 | 
			
		||||
    # Restoration may be terminated earlier because of selected files. This
 | 
			
		||||
    # will be seen as EPIPE to the retrieving process, which may cause retcode
 | 
			
		||||
    # other than 0 in some cases - which would be incorrectly treated as backup
 | 
			
		||||
@ -29,9 +31,9 @@ else
 | 
			
		||||
    # detect if anything wrong with actual data)
 | 
			
		||||
    retcode=$?
 | 
			
		||||
    wait -n
 | 
			
		||||
    rm $tmpdir/backup-data
 | 
			
		||||
    rmdir $tmpdir
 | 
			
		||||
    exit $retcode
 | 
			
		||||
    rm "$tmpdir/backup-data"
 | 
			
		||||
    rmdir "$tmpdir"
 | 
			
		||||
    exit "$retcode"
 | 
			
		||||
  else
 | 
			
		||||
    echo "Invalid command $COMMAND" >&2
 | 
			
		||||
    exit 2
 | 
			
		||||
 | 
			
		||||
@ -2,9 +2,9 @@
 | 
			
		||||
 | 
			
		||||
# it is in format of `date -u -Iseconds`, example: 2014-09-29T22:59:21+0000
 | 
			
		||||
# it comes from dom0, so is trusted
 | 
			
		||||
read timestamp
 | 
			
		||||
timediff=$(( `date -u +'+%Y%m%d%H%M%S'` - `date -u -d "$timestamp" +'+%Y%m%d%H%M%S'` ))
 | 
			
		||||
if [ $timediff -le 2 -a $timediff -ge -2 ]; then
 | 
			
		||||
read -r timestamp
 | 
			
		||||
timediff=$(( $(date -u +'+%Y%m%d%H%M%S') - $(date -u -d "$timestamp" +'+%Y%m%d%H%M%S') ))
 | 
			
		||||
if [ "$timediff" -le 2 ] && [ "$timediff" -ge -2 ]; then
 | 
			
		||||
    # don't bother
 | 
			
		||||
    exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@ -16,7 +16,7 @@ for dir in $(echo "$XDG_DATA_HOME:$XDG_DATA_DIRS" | tr : ' '); do
 | 
			
		||||
    if ! [ -d "$dir/applications" ]; then
 | 
			
		||||
        continue
 | 
			
		||||
    fi
 | 
			
		||||
    for subdir in $(find $dir/applications -type d | sort); do
 | 
			
		||||
    for subdir in $(find "$dir/applications" -type d | sort); do
 | 
			
		||||
        if [ -f "$subdir/$app_basename" ]; then
 | 
			
		||||
            exec qubes-desktop-run "$subdir/$app_basename"
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
read USERNAME
 | 
			
		||||
read -r USERNAME
 | 
			
		||||
cmd='echo $$ >> /tmp/qubes-session-waiter; [ ! -f /tmp/qubes-session-env ] && exec sleep inf'
 | 
			
		||||
if [ "$(id -un)" = "$USERNAME" ]; then
 | 
			
		||||
    sh -c "$cmd" 2>/dev/null
 | 
			
		||||
 | 
			
		||||
@ -22,7 +22,7 @@ set -e
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
if [ $# -lt 2 ] ; then
 | 
			
		||||
	echo usage: $0 '[--without-progress] dest_vmname file [file]+'
 | 
			
		||||
	echo "usage: $0 [--without-progress] dest_vmname file [file]+"
 | 
			
		||||
	exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@ -38,7 +38,8 @@ VM="$1"
 | 
			
		||||
shift
 | 
			
		||||
 | 
			
		||||
if [ $PROGRESS_TYPE = console ] ; then
 | 
			
		||||
	export FILECOPY_TOTAL_SIZE=$(du --apparent-size -c -- "$@" 2> /dev/null | tail -1 | cut -f 1)
 | 
			
		||||
    FILECOPY_TOTAL_SIZE=$(du --apparent-size -c -- "$@" 2> /dev/null | tail -1 | cut -f 1)
 | 
			
		||||
    export FILECOPY_TOTAL_SIZE
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
/usr/lib/qubes/qrexec-client-vm "$VM" qubes.Filecopy /usr/lib/qubes/qfile-agent "$@"
 | 
			
		||||
 | 
			
		||||
@ -24,8 +24,9 @@ SIZE=$(du --apparent-size -c -- "$@" 2>/dev/null | tail -1 | cut -f 1)
 | 
			
		||||
 | 
			
		||||
export PROGRESS_TYPE=gui
 | 
			
		||||
 | 
			
		||||
# shellcheck disable=SC2016
 | 
			
		||||
/usr/lib/qubes/qrexec-client-vm '$default' qubes.Filecopy /usr/lib/qubes/qfile-agent "$@" |
 | 
			
		||||
(while read sentsize ; do
 | 
			
		||||
	CURRSIZE=$(($sentsize/1024))
 | 
			
		||||
	echo $((100*$CURRSIZE/$SIZE))
 | 
			
		||||
(while read -r sentsize ; do
 | 
			
		||||
	CURRSIZE=$((sentsize / 1024))
 | 
			
		||||
	echo $((100 * CURRSIZE / SIZE))
 | 
			
		||||
done) | zenity --progress --text="Copying files..." --auto-close
 | 
			
		||||
 | 
			
		||||
@ -19,21 +19,22 @@
 | 
			
		||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
if type kdialog 2> /dev/null; then
 | 
			
		||||
if command -v kdialog 2> /dev/null; then
 | 
			
		||||
    SIZE=$(du --apparent-size -c -- "$@" 2> /dev/null | tail -1 | cut -f 1)
 | 
			
		||||
    REF=$(kdialog --progressbar "Copy progress")
 | 
			
		||||
    qdbus $REF org.freedesktop.DBus.Properties.Set "" maximum $SIZE
 | 
			
		||||
    qdbus "$REF" org.freedesktop.DBus.Properties.Set "" maximum "$SIZE"
 | 
			
		||||
 | 
			
		||||
    export PROGRESS_TYPE=gui
 | 
			
		||||
 | 
			
		||||
    # shellcheck disable=SC2016
 | 
			
		||||
    /usr/lib/qubes/qrexec-client-vm '$default' qubes.Filecopy \
 | 
			
		||||
        /usr/lib/qubes/qfile-agent "$@" |
 | 
			
		||||
    (while read sentsize ; do
 | 
			
		||||
        CURRSIZE=$(($sentsize/1024))
 | 
			
		||||
        qdbus $REF  org.freedesktop.DBus.Properties.Set "" value $CURRSIZE
 | 
			
		||||
    (while read -r sentsize ; do
 | 
			
		||||
        CURRSIZE=$((sentsize / 1024))
 | 
			
		||||
        qdbus "$REF" org.freedesktop.DBus.Properties.Set "" value "$CURRSIZE"
 | 
			
		||||
    done)
 | 
			
		||||
 | 
			
		||||
    qdbus $REF close
 | 
			
		||||
    qdbus "$REF" close
 | 
			
		||||
    # we do not want a dozen error messages, do we
 | 
			
		||||
    # if ! [ "x"$agentstatus = xDONE ] ; then
 | 
			
		||||
    # 	kdialog --sorry 'Abnormal file copy termination; see /var/log/qubes/qrexec.xid.log in dom0 for more details'
 | 
			
		||||
 | 
			
		||||
@ -26,9 +26,10 @@ export PROGRESS_TYPE=gui
 | 
			
		||||
 | 
			
		||||
set -o pipefail
 | 
			
		||||
set -e
 | 
			
		||||
# shellcheck disable=SC2016
 | 
			
		||||
/usr/lib/qubes/qrexec-client-vm '$default' qubes.Filecopy /usr/lib/qubes/qfile-agent "$@" |
 | 
			
		||||
(while read sentsize ; do
 | 
			
		||||
	CURRSIZE=$(($sentsize/1024))
 | 
			
		||||
	echo $((100*$CURRSIZE/$SIZE))
 | 
			
		||||
(while read -r sentsize ; do
 | 
			
		||||
	CURRSIZE=$((sentsize / 1024))
 | 
			
		||||
	echo $((100 * CURRSIZE / SIZE))
 | 
			
		||||
done) | zenity --progress --text="Moving files..." --auto-close
 | 
			
		||||
rm -rf "$@"
 | 
			
		||||
 | 
			
		||||
@ -21,26 +21,27 @@
 | 
			
		||||
#
 | 
			
		||||
if type kdialog 2> /dev/null; then
 | 
			
		||||
    VM=$(kdialog -inputbox "Enter the VM name to send files to:")
 | 
			
		||||
    if [ X$VM = X ] ; then exit 0 ; fi
 | 
			
		||||
    if [ "X$VM" = X ] ; then exit 0 ; fi
 | 
			
		||||
 | 
			
		||||
    SIZE=$(du --apparent-size -c -- "$@" 2> /dev/null | tail -1 | cut -f 1)
 | 
			
		||||
    REF=$(kdialog --progressbar "Move progress")
 | 
			
		||||
    qdbus $REF org.freedesktop.DBus.Properties.Set "" maximum $SIZE
 | 
			
		||||
    qdbus "$REF" org.freedesktop.DBus.Properties.Set "" maximum "$SIZE"
 | 
			
		||||
 | 
			
		||||
    export PROGRESS_TYPE=gui
 | 
			
		||||
 | 
			
		||||
    set -o pipefail
 | 
			
		||||
    /usr/lib/qubes/qrexec-client-vm $VM qubes.Filecopy \
 | 
			
		||||
    /usr/lib/qubes/qrexec-client-vm "$VM" qubes.Filecopy \
 | 
			
		||||
        /usr/lib/qubes/qfile-agent "$@" |
 | 
			
		||||
    (while read sentsize ; do
 | 
			
		||||
        CURRSIZE=$(($sentsize/1024))
 | 
			
		||||
        qdbus $REF  org.freedesktop.DBus.Properties.Set "" value $CURRSIZE
 | 
			
		||||
    (while read -r sentsize ; do
 | 
			
		||||
        CURRSIZE=$((sentsize / 1024))
 | 
			
		||||
        qdbus "$REF"  org.freedesktop.DBus.Properties.Set "" value "$CURRSIZE"
 | 
			
		||||
    done)
 | 
			
		||||
    # shellcheck disable=SC2181
 | 
			
		||||
    if [ $? -eq 0 ]; then
 | 
			
		||||
        rm -rf "$@"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    qdbus $REF close
 | 
			
		||||
    qdbus "$REF" close
 | 
			
		||||
    # we do not want a dozen error messages, do we
 | 
			
		||||
    # if ! [ "x"$agentstatus = xDONE ] ; then
 | 
			
		||||
    # 	kdialog --sorry 'Abnormal file copy termination; see /var/log/qubes/qrexec.xid.log in dom0 for more details'
 | 
			
		||||
 | 
			
		||||
@ -25,4 +25,5 @@ if ! [ $# = 1 ] ; then
 | 
			
		||||
	exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# shellcheck disable=SC2016
 | 
			
		||||
exec qvm-open-in-vm '$dispvm' "$1"
 | 
			
		||||
 | 
			
		||||
@ -44,6 +44,7 @@ VMNAME="$1"
 | 
			
		||||
shift
 | 
			
		||||
 | 
			
		||||
if [ "$VMNAME" = "--dispvm" ] ; then
 | 
			
		||||
    # shellcheck disable=SC2016
 | 
			
		||||
    VMNAME='$dispvm'
 | 
			
		||||
elif [ "$VMNAME" = "" ] ; then
 | 
			
		||||
    print_usage
 | 
			
		||||
 | 
			
		||||
@ -18,4 +18,5 @@
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# shellcheck disable=SC2016
 | 
			
		||||
qrexec-client-vm '$default' qubes.GetDate /usr/lib/qubes/qubes-sync-clock
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user