Martin Wimpress
7ebc66cc50
Add --version argument
2021-09-28 17:43:38 +01:00
Martin Wimpress
494d3ca22a
Fix VGA VRAM allocation
2021-09-28 17:38:06 +01:00
Martin Wimpress
232bddeed6
Optimise Hyper-V Enlightenments
2021-09-28 17:37:40 +01:00
Martin Wimpress
c755e10405
Overwrite the log for each VM launch
2021-09-28 15:51:06 +01:00
Martin Wimpress
4f68841daa
Minor disk configuration refactor
2021-09-28 15:50:24 +01:00
Martin Wimpress
c83b0ff7fc
Only expose org.spice-space.webdav.0 on Linux and Windows
...
Not supported on macOS
2021-09-28 15:49:46 +01:00
Martin Wimpress
f9d1bc21a1
White space cleanup
2021-09-28 15:48:18 +01:00
Martin Wimpress
ab994d3859
Only expose virtio-rng-pci to Linux and Windows
...
Not supported on macOS
2021-09-28 15:47:32 +01:00
Martin Wimpress
9378d6b637
Refactor video configuration
...
macOS now ignores any resolution coercion. Display resolution on macOS is now configured via macOS System Preferences only.
2021-09-28 15:43:18 +01:00
Martin Wimpress
fc2331ae92
Switch macOS video device to qxl by default
2021-09-28 15:40:00 +01:00
Martin Wimpress
3527001973
Add $virtio_blk to disable VirtIO Block Media
...
Currently only required for macOS High Sierra and Mojave
2021-09-28 15:37:36 +01:00
Martin Wimpress
f60e92d80e
Change $driver_iso to $fixed_iso
...
Compatibility for configurations using $driver_iso is preserved.
2021-09-28 15:32:12 +01:00
Martin Wimpress
ac13c5875a
Do not use VirtIO Balloon on macOS
2021-09-28 15:27:02 +01:00
Martin Wimpress
b4ec24fa07
Fix Hyper-V Enlightenments
2021-09-28 05:03:40 +01:00
Martin Wimpress
a4cfed64e1
Minor code clean up
2021-09-28 02:14:30 +01:00
Martin Wimpress
7e04f471bc
Only connect a CD/DVD to macOS when an ISO image is presented
2021-09-28 02:13:54 +01:00
Martin Wimpress
bf461eb966
Drop macOS High Sierra support
...
High Sierra doesn't support VirtIO Disk devices so dropping support from Quickemu.
2021-09-28 02:11:06 +01:00
Martin Wimpress
eee84e0c0b
Minor clean up
2021-09-27 22:53:34 +01:00
Martin Wimpress
b96587dabd
Optimise guest CPU for Windows
2021-09-27 22:53:18 +01:00
Martin Wimpress
58faf5c299
Optimise guest CPU for macOS
2021-09-27 22:52:56 +01:00
Martin Wimpress
2609189dbb
Add NET_DEVICE and USB_HOST_PASSTHROUGH_CONTROLLER variables
...
macOS doesn't support USB3 in Qemu and needs a different network interface device from Linux and Windows.
2021-09-27 22:51:48 +01:00
Martin Wimpress
89e61c4e9e
Refactor VM configuration builder using an array or arguments
...
Also create a (non-executable) shell script in the VM directory which includes the last used VM configuration.
2021-09-27 22:50:06 +01:00
Martin Wimpress
0dcbe75fb5
Refactor web_get() and add progress
2021-09-27 22:47:10 +01:00
Martin Wimpress
3a86f6c2dd
Add host CPU vendor detection
2021-09-27 22:46:26 +01:00
Martin Wimpress
0237499331
Default to sane disk image size based on OS
2021-09-25 23:26:50 +01:00
Martin Wimpress
01ca84566a
Default to EFI booting
2021-09-25 23:25:18 +01:00
Martin Wimpress
5ed1904f64
Migrate macOS to OpenCore bootloader
2021-09-25 22:50:00 +01:00
Martin Wimpress
a6fc0cac56
Reorder variables
2021-09-25 13:57:22 +01:00
Martin Wimpress
63c32ae0c3
Minor code corrections
2021-09-25 13:42:04 +01:00
Martin Wimpress
780735cce6
Qemu version check is now major/minor version only
2021-09-25 13:41:37 +01:00
Martin Wimpress
d88ae70aa8
Make usage() match README.md
2021-09-25 13:40:52 +01:00
Martin Wimpress
df4f12a3ad
Refactor enable_usb_passthrough()
...
USB host pass-through no longer builds a script and executes it. It will now display any required USB permission changes and halt execution until they are correct.
2021-09-25 13:38:54 +01:00
Martin Wimpress
f18d8e994e
Refactor qemu launcher
...
Disks, network device, Smartcard and USB pass-through are exported platform specific variables then composed in a single launcher.
2021-09-25 13:35:02 +01:00
Martin Wimpress
bf69f54d74
Add initial SPICE support. Close #35 Close #51 Close #53
2021-09-25 13:30:56 +01:00
Martin Wimpress
29e4922e6e
Refactor ssh port forwarding
2021-09-25 13:14:32 +01:00
Martin Wimpress
f7bcd3ccf5
Refactor CPU and graphics configuration
2021-09-25 13:13:26 +01:00
Martin Wimpress
f061c3a67f
Drop smbd support
2021-09-25 13:08:56 +01:00
Yannick Mauray
288d779e2c
Feature : --screen option
...
This option allows to select which screen is used to compute the window's size. Usefull when the main monitor is not the smallest one, and the VM doesn't need to be moved around. Also mandatory to make the fullscreen mode work properly.
2021-09-24 11:25:46 +01:00
Yannick Mauray
3e0d45e660
Fixed : -full-screen option to qemu
...
The option is -full-screen and not --full-screen, and should not be part of the -device option
2021-09-24 11:00:47 +01:00
Yannick Mauray
d083b69ec7
Fixed a typo
2021-09-21 10:27:34 +01:00
Martin Wimpress
334c137c99
Remove obsolete code.
2021-09-07 12:38:15 +01:00
Martin Wimpress
960056b9d9
Use standard VGA if an unknown guest OS is presented
2021-09-07 12:37:59 +01:00
Martin Wimpress
57f888ae4c
More shellcheck compliance. Closes #38 Closes #44
2021-09-07 12:35:33 +01:00
Martin Wimpress
5912d669b1
White space clean up
2021-09-06 22:27:06 +01:00
Martin Wimpress
5d5d925469
Remove unused arguments
2021-09-06 22:26:48 +01:00
Martin Wimpress
afaad48fbf
Correct syntax for deprecated shorthand code
2021-09-06 22:25:54 +01:00
Martin Wimpress
943612589b
Add a check for minimum support Qemu version
2021-09-06 22:24:20 +01:00
Martin Wimpress
0332b23b31
Update graphics/resolution support for new Qemu
2021-09-06 22:23:10 +01:00
Martin Wimpress
8c642fd3ef
Remove dependency on qemu-virgl
2021-09-06 22:21:06 +01:00
Martin Wimpress
3124138e47
Cater to high ram systems
2021-09-06 15:31:07 +01:00
Martin Wimpress
c368e7ee9e
Cater for high core count systems
2021-09-06 15:30:41 +01:00
Martin Wimpress
211e5ca90c
Add missing function keyword
2021-09-06 15:30:01 +01:00
Martin Wimpress
ad13351455
Make shellcheck happy
2021-09-06 15:29:37 +01:00
Martin Wimpress
c4bc80f0ad
Removed unused variable
2021-09-06 15:28:15 +01:00
Martin Wimpress
170bff092a
Correct typo
2021-09-06 15:27:49 +01:00
Ben
628d1ee088
Added Basic SMB Managment ( #43 )
...
Co-authored-by: Sec Scout <secscout@localhost.localdomain>
2020-10-20 09:49:56 +01:00
Martin Wimpress
4aa38ad8f9
Catch no arguments being passed
2020-08-10 13:07:45 +01:00
Mike Glover
ee0a76dbbb
Fix #32 Added fullscreen option ( #33 )
...
* Added fullscreen option
* Add fullscreen instructions to Readme
* Add fullscreen exit instructions to Readme
2020-08-10 12:17:06 +01:00
Yannick Mauray
63f5c11a8e
Enable arbitrary port forwarding via config file ( #40 )
...
* Add the possibility to forward ports from host to guest
* Reorganized code, fixed a bug, updated the README
* Updated the README
* Forgot to remove 'exit' ....
2020-08-10 12:15:18 +01:00
Philipp Kiemle
b7f8e859dc
Fix typo
2020-06-12 17:35:21 +01:00
marosg42
7f408e59cf
find free port for spice ( #29 )
...
allows to run more VMs in parallel
Co-authored-by: Marian Gasparovic <marian.gasparovic@canonical.com>
2020-06-12 17:34:19 +01:00
MatejSpindler
df51b17d71
Allow using installed version of qemu ( #28 )
2020-06-12 17:32:38 +01:00
Marcus Grenängen
8618421abb
Fix #21 configurable RAM and #22 configurable cores ( #24 )
...
* Fix #21 configurable RAM and #22 configurable cores
* Initialize new config values with empty strings
2020-04-12 23:30:11 +01:00
Martin Wimpress
e78bb9dc88
Add 128MB ram to fallback video device.
2020-04-04 12:57:15 +01:00
Martin Wimpress
0b19d918d9
Add macOS support
2020-04-04 12:55:16 +01:00
Mark Crouch
7a5433f8fc
Add create .desktop shortcut feature.
...
Deleted debug messages. Use `quemu-virgil` icon from the 'current' directory, not a specified version's directory. Tidied some code.
2020-04-02 23:23:12 +01:00
Martin Wimpress
ec67184925
Add USB pass-through support
...
I decided to not have `quickemu` create `udev` rules and apply them because I was cautious about permanently altering the system `udev` configuration.
Instead the permissions of the requested USB devices are modified so that the invoking user has write permission; which will persist until next boot.
All changes are clearly communicated.
2020-03-22 17:39:51 +00:00
Martin Wimpress
735e3a4ee8
Quote all file/directory variables. Closes #12
...
File handling is more robust and will support filename and directories with spaces in them.
2020-03-22 17:23:46 +00:00
Martin Wimpress
142eac3001
Round up host RAM. Closes #11
...
Avoid "integer expression expected" errors when host RAM enumeration returns a floating point value.
* https://github.com/wimpysworld/quickemu/issues/11
2020-03-22 15:10:13 +00:00
Martin Wimpress
9808adecea
Fix standard VGA fallback
2020-03-21 17:20:13 +00:00
Martin Wimpress
c2a2c08396
Attach keyboard and mouse to xhci USB bus
2020-03-21 17:19:55 +00:00
Martin Wimpress
d8490b3120
Reorder boot string to logically group components
2020-03-21 16:59:45 +00:00
Martin Wimpress
3881e25b49
Make video device setup consistent
...
Also restores some GTK compatibility with Virgil 3D by defaulting to `gl=es` when GTK output is used.
2020-03-21 16:56:59 +00:00
Martin Wimpress
4e9457a2b1
Disable emulated audio mixer
2020-03-21 15:26:06 +00:00
Martin Wimpress
602d1fdb42
Migrate disk configuration to virtio-blk-pci device
2020-03-21 15:25:46 +00:00
Martin Wimpress
6e6b5ae702
Add $GUEST_TWEAKS variable to allow for guest_os specific tweaks
2020-03-21 15:22:01 +00:00
Martin Wimpress
061abfe9b5
Add $CPU variable to enable guest_os specific tweaks
2020-03-21 15:21:16 +00:00
Martin Wimpress
2dfe88bd5a
Start CD-ROMs at logical index 0
2020-03-21 15:20:13 +00:00
Martin Wimpress
2a59ad8b15
Drop accel=kvm from -machine
...
The `-machine` option `accel-kvm` is equivalent to `-enable-kvm`.
2020-03-21 14:45:43 +00:00
Martin Wimpress
3233738b86
Update README
2020-03-21 12:00:49 +00:00
Martin Wimpress
97a2ebf3d0
Replace --efi flag with boot= property in the VM configuration
...
Choosing between Legacy BIOS and EFI booting is really a fixed feature of the VM not something that can be toggled at will.
`boot=` has been added to the VM configuration file. Valid options are `legacy` or `efi|uefi`, if undefined it defaults to `legacy`.
2020-03-21 11:59:33 +00:00
Martin Wimpress
84efcf2bf3
Vars refactor: Simplify initialisation of disk
2020-03-21 11:40:20 +00:00
Martin Wimpress
01fbc2bbef
Vars refactor: Simplify initialisation of guest_os
2020-03-21 11:39:31 +00:00
Martin Wimpress
3816fe4028
Vars refactor: Replace UI with OUTPUT
2020-03-21 11:32:56 +00:00
Martin Wimpress
dd4c6bf80d
Fix regression in xres/yres settings for virtio-vga
2020-03-21 11:17:23 +00:00
Martin Wimpress
ab286f39b7
Make casing of status output consistent
2020-03-21 11:15:51 +00:00
Martin Wimpress
ce5aecd33d
Replace hardcoded paths to qemu-virgil with a variable
2020-03-21 11:06:54 +00:00
Martin Wimpress
dbd0885f82
Vars refactor: Tidy up initial vars layout
2020-03-21 11:05:31 +00:00
Martin Wimpress
eebd5f0605
Vars refactor: Replace STATUSQUO with STATUS_QUO
2020-03-21 10:57:27 +00:00
Martin Wimpress
fe718a8423
Vars refactor: Replace xres/yres with X_RES/Y_RES
2020-03-21 10:52:09 +00:00
Martin Wimpress
7682463e27
Vars refactor: Replace ram with RAM_VM
2020-03-21 10:49:42 +00:00
Martin Wimpress
1399d62a69
Vars refactor: Replace allram with RAM_HOST
2020-03-21 10:47:59 +00:00
Martin Wimpress
d5e669441b
Vars refactor: Replace cores with CORES_VM
2020-03-21 10:46:38 +00:00
Martin Wimpress
62b6286564
Vars refactor: Replace allcores with CORES_HOST
2020-03-21 10:45:27 +00:00
Martin Wimpress
bd987f55d2
Vars refactor: Replace disk_curr_size with DISK_CURR_SIZE
2020-03-21 10:43:00 +00:00
Martin Wimpress
74718b2399
Vars refactor: Replace disk_min_size with DISK_MIN_SIZE
2020-03-21 10:41:25 +00:00
Martin Wimpress
21ff829078
Vars refactor: Replace snapshot_tag with TAG
2020-03-21 10:39:09 +00:00
Martin Wimpress
ce523fecdf
Add support for guest_os hinting
...
Adds an optional `$guest_so` variable to the config files. Supported options are `linux` and `windows` which defaults to `linux` if not provided. Allows for OS specific tuning in `quickemu`.
2020-03-21 10:34:21 +00:00
Martin Wimpress
373a83f9a4
Fix a logic error is -vm flag validation
2020-03-21 10:30:25 +00:00
Martin Wimpress
e566e38e9c
Catch missing iso with non-bootable disk scenario
2020-03-21 10:29:48 +00:00