My system doesn't have xdg-user-dir, and shows the following errors on
startup:
./quickemu: line 828: xdg-user-dir: command not found
mkdir: cannot create directory '': No such file or directory
basename: missing operand
Try 'basename --help' for more information.
Usage
quickemu --vm ubuntu.conf
You can also pass optional parameters
--delete : Delete the disk image.
--display : Select display backend. 'sdl' (default), 'gtk' or 'spice'
--shortcut : Create a desktop shortcut
--snapshot apply <tag> : Apply/restore a snapshot.
--snapshot create <tag> : Create a snapshot.
--snapshot delete <tag> : Delete a snapshot.
--snapshot info : Show disk/snapshot info.
--status-quo : Do not commit any changes to disk/snapshot.
--fullscreen : Starts VM in full screen mode (Ctl+Alt+f to exit)
--screen <screen> : Use specified screen to determine the window size.
--version : Print version
From a quick look it should still function correctly, but better to deal
with this case explicitly.
It's only used to get the PUBLIC, which is optional anyway. If I install
it then it just returns ~, at which point it's set to "" anyway.
I also removed it from the list of "requirements" for this reason.
This also deals with an edge case I happened to notice: "xdg-user-dir
PUBLICSHARE" returns "/home/martin/" on my system, whereas $HOME is
"/home/martin", so the equality check fails. This is arguable a problem
in xdg-user-dir, but better to fix it here. This only deals with a
single slash (multiple slashes is harder in bash), which should be
sufficient.
Do not try and coerce the screen resolution on macOS. Resolution is defined via System Preferences only on macOS.
qxl is the display device on Catalina and Big Sur and VGA is used on Mahave and High Sierra.
bochs-display also appears to work correctly on Big Sur providing the QEMU moniotor is set to none, which Quickemu does by default.