Commit Graph

619 Commits

Author SHA1 Message Date
Martin Wimpress d7fe13356c fix(darwin): allow display of 'none' 2024-05-17 23:18:54 +01:00
Martin Wimpress 5ab447e18e fix(darwin): update DISPLAY_DEVICE configuration to support cocoa 2024-05-17 23:18:54 +01:00
Martin Wimpress 98802b4891 refactor(darwin): overhaul CPU configuration 2024-05-17 23:18:54 +01:00
Martin Wimpress 83c16dad2c feat: add host and VM architecture; host is hard coded to x86_64 2024-05-17 23:18:54 +01:00
Martin Wimpress cefa2556f3 refactor: get QEMU version from qemu-img; avoids architecture complications 2024-05-17 23:18:54 +01:00
Martin Wimpress 6c07e3acdc fix(darwin): disable huge pages 2024-05-17 23:18:54 +01:00
Martin Wimpress a4818025d8 fix(darwin): convert CPU flags from Linux format to Darwin format 2024-05-17 23:18:54 +01:00
Martin Wimpress c3792c61f4 fix(darwin): call sw_vers with single switch for improved compatibility 2024-05-17 23:18:54 +01:00
Martin Wimpress 085dfea742 refactor(darwin): change DARWIN to OS_KERNEL for clear conditionals 2024-05-17 23:18:54 +01:00
Martin Wimpress 7e5d26daab refactor: rename HOST_OS to OS_RELEASE 2024-05-17 23:18:54 +01:00
Martin Wimpress eb661221ef refactor: change IN_VM to HYPERVISOR; 2024-05-17 23:18:54 +01:00
Martin Wimpress f14eed78ce fix(darwin): default display to cocoa on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress c5b96cfcd5 fix(darwin): disable viewer_param_check() for darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 63409682f2 fix(darwin): update display_param_check() to correctly verify displays 2024-05-17 23:18:54 +01:00
Martin Wimpress 6528520d0f refactor: check qemu-img, qemu-system-x86_64 and curl are executable 2024-05-17 23:18:54 +01:00
Martin Wimpress 685b2ef742 style: add missing function prefix 2024-05-17 23:18:54 +01:00
Martin Wimpress 20684681c6 feat: detect if running in a VM and use an emulated CPU 2024-05-17 23:18:54 +01:00
Martin Wimpress 3d83553d62 refactor: add CPU_MODEL variable 2024-05-17 23:18:54 +01:00
Martin Wimpress b8c6465581 fix(darwin): do not enable kvm-pit.lost_tick_policy=discard on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress fb103ef072 fix(darwin): do not enable kvm=on or kvm_pv_unhalt on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress a67386755e refactor: set NET before any other configuration 2024-05-17 23:18:54 +01:00
Martin Wimpress c194bad2d4 fix(linux): resolve regression in check_cpu_flag() 2024-05-17 23:18:54 +01:00
Martin Wimpress 79a8f474f7 fix(darwin): don't configure braille on darwin; it requires SDL 2024-05-17 23:18:54 +01:00
Martin Wimpress 62f6e30c70 fix(darwin): don't configure SPICE device on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 0e6fe28141 fix(darwin): do not try and change process name on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 2ccfac7ec0 feat(darwin): add support for coreaudio on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 4b36aed8c6 fix(darwin): correct path to search for firmware on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 57019e72dd wip: disable VT-d for testing 2024-05-17 23:18:54 +01:00
Martin Wimpress f0b41749f6 feat(darwin): get the host OS info 2024-05-17 23:18:54 +01:00
Martin Wimpress 178619d673 feat(darwin): update check_cpu_flag() to support Darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 6000546e35 refactor(darwin): make uname use portable between Darwin and Linux 2024-05-17 23:18:54 +01:00
Martin Wimpress c30c4612b5 feat(darwin): check if SMT is enabled on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress e1ee983245 feat(darwin): disable ignore_msrs_alert() on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress c4b2216617 feat(darwin): search for OVMF in brew paths 2024-05-17 23:18:54 +01:00
Martin Wimpress aeacc82b32 feat(darwin): add support for cocoa display 2024-05-17 23:18:54 +01:00
Martin Wimpress 22d6932ce2 feat(darwin): get host RAM for Darwin and make Linux result consistent 2024-05-17 23:18:54 +01:00
Martin Wimpress 5515a9e7d7 feat(darwin): add get_nproc() to support Linux and Darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 37c89a62f6 feat(darwin): add get_cpu_info() to support Linux and Darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 1158f5a207 feat(darwin): add support for gstat on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress 8f9f7d8aed feat(darwin): add support for guname on darwin 2024-05-17 23:18:54 +01:00
Martin Wimpress aaf4ae4ff6 chore: white space clean up 2024-05-14 11:15:29 +01:00
Martin Wimpress 325dc7f904 chore: remove comment line of code 2024-05-14 11:15:29 +01:00
Martin Wimpress f17cfe4e78 refactor: clean up configure_file_sharing() 2024-05-14 11:15:29 +01:00
Martin Wimpress 0b892f82a0 refactor: simplify macOS core count to power of 2 2024-05-14 11:15:29 +01:00
Martin Wimpress cbc3c20104 refactor: move all port checks to ports_param_check() 2024-05-14 11:15:29 +01:00
Martin Wimpress 124202511a style: correct output of CPU, MSR and RAM 2024-05-14 11:15:29 +01:00
Martin Wimpress cfa131fb9c fix(shellcheck): get Public folder permissions in a shellcheck safe way 2024-05-14 11:15:29 +01:00
Martin Wimpress f3b475ec42 fix: fallback to ~/Public if xdg-user-dir is not available. close #627 2024-05-14 11:15:29 +01:00
Martin Wimpress f850dcb8db refactor: add fileshare_param_check() to validate public directory 2024-05-14 11:15:29 +01:00
Martin Wimpress e29173a16d refactor: initial refactor of vm_boot() to separate sub-system config 2024-05-14 11:15:29 +01:00
Martin Wimpress 212a5bd6d0 style: indent warnings in vm_boot() 2024-05-14 11:15:29 +01:00
Martin Wimpress 94cdce7dd2 fix: check for braille support before enabling it 2024-05-14 11:15:29 +01:00
Martin Wimpress 980fb1f66a refactor: move SDL_MOUSE_FOCUS_CLICKTHROUGH config to display_param_check() 2024-05-14 11:15:29 +01:00
Martin Wimpress 45191a796e refactor: update initialisation to use new param check functions 2024-05-14 11:15:29 +01:00
Martin Wimpress 44e653a48d feat: create tpm_param_check() 2024-05-14 11:15:29 +01:00
Martin Wimpress 6d44ca8c2d feat: create ports_param_check() 2024-05-14 11:15:29 +01:00
Martin Wimpress f723ce6196 refactor: add braille and gl checking to display_param_check() 2024-05-14 11:15:29 +01:00
Martin Wimpress e6fe7602b9 style: minor corrections 2024-05-14 11:15:29 +01:00
Martin Wimpress c83dc45b11 refactor: derive macOS OSK inline 2024-05-14 11:15:29 +01:00
Martin Wimpress 96b7e8f991 chore: make tabstop hints the same for quickemu and quickget 2024-05-14 11:15:29 +01:00
Martin Wimpress 88cc5f0056 fix(macos): enable ept_1gb flag to improve compatibility. close #1214 2024-05-14 11:15:29 +01:00
Martin Wimpress 9cb021b174 refactor: move all disk_size configuration to quickget 2024-05-14 11:15:29 +01:00
Martin Wimpress 355f0b14ed chore!(quickemu): remove backwards compatibility for old config options 2024-05-14 11:15:29 +01:00
Martin Wimpress b2012ab641 style: clean up some comments 2024-05-14 11:15:29 +01:00
Martin Wimpress b45926f83c refactor: macOS big-sur and newer honour --sound-card configuration 2024-05-14 11:15:29 +01:00
Martin Wimpress 398d4e7246 feat: add support for qemu usb-audio devices 2024-05-14 11:15:29 +01:00
Martin Wimpress a0d33ca42b feat: add support for sound duplex. closes #935
Passing `--sound-duplex hda-output` to quickemu will only present an audio output, but no microphine/line-in device.
2024-05-14 11:15:29 +01:00
Martin Wimpress 48f74d2cec refactor: consolidate macOS virtio configuration 2024-05-14 11:15:29 +01:00
Martin Wimpress 46fb3e60fb chore: increase default disk size for macOS to 128GB 2024-05-14 11:15:29 +01:00
Martin Wimpress ef711a0bbc style: make snapshot actions consistent with other actions 2024-05-14 11:15:29 +01:00
Martin Wimpress b3a1300144 refactor: if disk_img is not configured, automatically configure it 2024-05-14 11:15:29 +01:00
Martin Wimpress 622f6046c7 docs: add comments for the main VM variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 054f471f18 refactor: process all single run actions; make output consistent 2024-05-14 11:15:29 +01:00
Martin Wimpress 70055b746e chore: bump version to 4.9.5 2024-05-14 11:15:29 +01:00
Martin Wimpress 90c373f0ab refactor: make socket variable names consistent 2024-05-14 11:15:29 +01:00
Martin Wimpress bbc57c14e9 refactor: clean up serial connection variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 50111513be refactor: clean up qemu monitor variables 2024-05-14 11:15:29 +01:00
Martin Wimpress a628ee687d refactor: clean up ssh port variables 2024-05-14 11:15:29 +01:00
Martin Wimpress c6eadae173 refactor: clean up spice port variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 7163384c3c refactor: consolidate fullscreen variable 2024-05-14 11:15:29 +01:00
Martin Wimpress faa24eb7f2 refactor: clean up viewer variables 2024-05-14 11:15:29 +01:00
Martin Wimpress edcc5a0f43 refactor: clean up display variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 8d2b99bf46 refactor: change double shifts into shift 2 in the option parser 2024-05-14 11:15:29 +01:00
Martin Wimpress 4b3cb8ac0d refactor: clean up keyboard_layout variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 10ccf892cd refactor: clean up keyboard variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 49b1397350 refactor: clean up usb_controller variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 06a18b0045 refactor: clean up sound_card variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 2d4157f4c1 refactor: clean up mouse variables 2024-05-14 11:15:29 +01:00
Martin Wimpress 7f877d108b refactor: clean up extra_args variables 2024-05-14 11:15:29 +01:00
Phil Clifford 116c35a0c6 fix: correct incorrect use of apostrophe in help 2024-05-13 19:52:07 +01:00
Martin Wimpress 5edc931726 feat: check if VM launched successfully; if not show the logs 2024-05-12 23:22:58 +01:00
Martin Wimpress f09a3b740a feat: improve macOS and *BSD default display device support
The display resolution can be set using `--width` and`--height` for macOS and *BSD.
- close #926
- close #1202
2024-05-12 23:22:58 +01:00
Martin Wimpress 5f9ff30643 refactor: increase VGA device video memory to 256MB 2024-05-12 23:22:58 +01:00
Martin Wimpress db1e602cf1 refactor: simplify setting the default display resolution 2024-05-12 23:22:58 +01:00
Martin Wimpress a9576fb3a4 fix: capture and displaying the PID when launching a VM 2024-05-12 23:22:58 +01:00
Martin Wimpress 0b5050511b refactor!: remove --screenpct and simplify use of --width/--height 2024-05-12 23:22:58 +01:00
Martin Wimpress 493bacc318 refactor: simplify disk_format implementation 2024-05-12 23:22:58 +01:00
Martin Wimpress d2b5ee4b18 feat: add disk integrity checking 2024-05-12 11:11:15 +01:00
Martin Wimpress 9dc669b44e style: improve the output when attempting to start a running VM 2024-05-12 11:11:15 +01:00
Martin Wimpress 27ca4a27f0 refactor: improve kill VM logic by using VM_PID 2024-05-12 11:11:15 +01:00