Compare commits

..

3 commits

3 changed files with 53 additions and 20 deletions

View file

@ -23,6 +23,9 @@ case "$1" in
spice) spice)
basedir=sockets/spice basedir=sockets/spice
;; ;;
shared)
basedir=shared
;;
*) *)
false false
;; ;;

View file

@ -1,11 +1,24 @@
#!/usr/bin/env sh #!/usr/bin/env perl
base=$(echo "$QEMUSH_BASE" | cut -d , -f 1) use warnings;
QEMUSH_BASE=$(echo "$QEMUSH_BASE" | sed "s/^${base}//" | sed 's/^,//') use strict;
set -- "$base" \ my @launchers_chain = ("kvm");
-fsdev local,security_model=passthrough,id=fsdev0,path="${HOME}/shared/${QEMUSH_NAME}" \
-device virtio-9p-pci,id=fs0,fsdev=fsdev0,mount_tag=shared \
"$@"
set -x if (defined $ENV{'QEMUSH_BASE'}) {
exec "$@" @launchers_chain = split ",", $ENV{'QEMUSH_BASE'};
}
my $base = shift @launchers_chain;
$ENV{'QEMUSH_BASE'} = join ",", @launchers_chain;
chomp(my $shared_folder = `pathof shared`);
my @command = (
$base,
"-fsdev", "local,security_model=passthrough,id=fsdev0,path=${shared_folder}",
"-device", "virtio-9p-pci,id=fs0,fsdev=fsdev0,mount_tag=shared",
@ARGV
);
print "+ exec ", join(" ", @command), "\n";
exec @command;

View file

@ -1,12 +1,29 @@
#!/bin/sh -x #!/usr/bin/env perl
base=$(echo "$QEMUSH_BASE" | cut -d , -f 1) use warnings;
QEMUSH_BASE=$(echo "$QEMUSH_BASE" | sed "s/^${base}//" | sed 's/^,//') use strict;
exec "$base" \ my @launchers_chain = ("kvm");
-vga qxl \
-chardev spicevmc,id=vdagent,debug=0,name=vdagent \ if (defined $ENV{'QEMUSH_BASE'}) {
-device virtio-serial \ @launchers_chain = split ",", $ENV{'QEMUSH_BASE'};
-device virtserialport,chardev=vdagent,name=com.redhat.spice.0 \ }
-spice port="$(first-free-port 5900)",addr=::1,disable-ticketing=on \
-audiodev spice,id=snd0 \ my $base = shift @launchers_chain;
"$@" $ENV{'QEMUSH_BASE'} = join ",", @launchers_chain;
chomp(my $socket_path = `pathof spice`);
my @command = (
$base,
"-vga", "qxl",
"-chardev", "spicevmc,id=vdagent,debug=0,name=vdagent",
"-device", "virtio-serial",
"-device", "virtserialport,chardev=vdagent,name=com.redhat.spice.0",
"-spice", "unix=on,addr=${socket_path},disable-ticketing=on",
"-audiodev", "spice,id=snd0",
@ARGV
);
print "+ exec ", join(" ", @command), "\n";
exit;
exec @command;