Skip to main content

General Settings

THIS PAGE IS INTENDED FOR TRANSLATION but MAY ALSO BE USED FOR REFERENCE

As with much of computing, users will benefit from some basic understanding of English

However:

Click here to GOOGLE AUTO-TRANSLATE THIS PAGE


!/usr/bin/env bash

Copyright (c) Alex Genovese https://github.com/qqxproject/qqX

Licence: GPL3 https://www.gnu.org/licenses

EXTRACTED from qqX version 1.13.04 / 05

The actual source code may also be translated but Google may sometimes complain.

Click here to translate the actual current version


Settings file for qqX - quickemu quickget X terminal project

qqX installer will create a hidden folder at $HOME & will place the settings there

Settings may normally opened and edited via the qqX menu interface

Alternatively, may be edited via the file manager, usually ctrl-h to unhide/hide files

shellcheck disable=SC2034,SC2154


SET THE DEFAULT GENERAL VM FOLDER, where the Virtual Machines are normally stored

Installation pre-set is "$HOME/VMQs" - Reconfigure as appropriate

Contains the .conf files and the 'InstanceName' containers

Default_VM_Folder="$HOME/VMQs"

ADD any EXTRA FOLDERS OR SUB-FOLDERS where VM's may be located

leave blank for none, set one entry per folder as +=("/full/path/folder") or +=("$Default_VM_Folder/folder")

or multiple as quoted and space separated as in +=("/full/path/folder" "/full/path/folder" "/full/path/folder")

or as in +=("$HOME/VMQs/folder" "$HOME/VMQs/folder" "$HOME/VMQs/folder")

Extra_VM_Folder+=("")

Extra_VM_Folder+=("")

Extra_VM_Folder+=("")


GENERAL COLOR & THEMING

Yellow 3 (recommended), Blue 4, Cyan 6 (brighter blue), Red 1

On Ubuntu purple, recommend 1 or 6 More: https://en.wikipedia.org/wiki/ANSI_escape_code8-bit

X_Shade="3"

Translation LANGUAGE for [tx] pop-ups

@ 2025, the following have DIRECT PAIR Google data files and are KNOWN WORKABLE

af ar az bg bn ca cs cy da de el es et fa fi fr gl gu hi hr ht hu id is it ja ka ko lt lv mr ms nl no pa pl pt

ro ru sk sl sq sr sv sw th tr uk ur vi zh zh-TW See https://cloud.google.com/translate/docs/languagesautoml

qqX messages will normally display in English but will use one of the listed languages in limited amounts, if set or detected

Set here, FROM PAIRS LIST, if a non-autodetected option is preferred

This setting will also affect browser output, although forcing may be used

Default_TxLang=""

Set here to FORCE A BROWSER TRANSLATION in a language that is not in the list but is known to translate

See https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes

NOT ALL WILL WORK, but those two char that have been assigned are

Iso_639_1_List="aa ab ae af ak am an ar as av ay az ba be bg bi bm bn bo br bs ca ce ch co cr cs cu cv cy da de dv dz ee el en eo es et eu "

Iso_639_1_List+="fa ff fi fj fo fr fy ga gd gl gn gu gv ha he hi ho hr ht hu hy hz ia id ie ig ii ik io is it iu ja jv ka kg ki kj kk kl km "

Iso_639_1_List+="kn ko kr ks ku kv kw ky la lb lg li ln lo lt lu lv mg mh mi mk ml mn mr ms mt my na nb nd ne ng nl nn no nr nv ny oc oj om "

Iso_639_1_List+="or os pa pi pl ps pt qu rm rn ro ru rw sa sc sd se sg si sk sl sm sn so sq sr ss st su sv sw ta te tg th ti tk tl tn to tr "

Iso_639_1_List+="ts tt tw ty ug uk ur uz ve vi vo wa wo xh yi yo za zh zu"

Note that forced languages will normally show internal pop-ups in English but alternatives may be default set, if direct pair listed above

Forced_TxLang=""

Other SETTINGS SECTIONS AVAILABLE

VM SELECTOR INTERFACE

'QUICKEMU' & 'QUICKGET' SOURCE

qqX UPDATES

EDITOR & BROWSER PROGRAMS

BOOT DEFAULTS, MSR, LOCALE, SCREENS and SIZES

SHARED or SECOND DRIVES

ERROR HANDLING

QEMU VERSIONING

qqX CUSTOM BOOTING & EXTRA ARGS

TIANO BIOS

CUSTOM SETTINGS & DEVELOPMENT


VM SELECTOR

Normally the first opening menu, used to select VM's. Default style A

Style may be previewed in the menu. Suggest E or B as numbers of distros increases

VM_SelectorStyle="A"

OPTIONAL: select VM's to show AT THE TOP of the list

Where [n,0] is the full path general folder / sub-folder & [n,1] is the .conf file

eg

VM_Array[0,0]="$Default_VM_Folder" ; VM_Array[0,1]="windows-11.conf"

VM_Array[1,0]="$Default_VM_Folder/MAC" ; VM_Array[1,1]="macos-catalina.conf"

VM_Array[2,0]="/media/xxx/Storage/VMQs" ; VM_Array[2,1]="windows-insider.conf"

ADD here. Make sure to remove the '' in order to activate the line

VM_Array[0,0]="$Default_VM_Folder" ; VM_Array[0,1]=""

VM_Array[1,0]="$Default_VM_Folder" ; VM_Array[1,1]=""

VM_Array[2,0]= ; VM_Array[2,1]=

MUST BE set as CONTIGIUOUS, non-sparse, no numeric sequence gaps

ie: 0, 1, 2, 3 ... when counting the first number of the first pair, on each line

COMMENT OUT with any Non-Present VM entries

ITEMS PER LINE

Number counts starts at 0, may be adjusted to match terminal size and/or VM quota

Style A setting, default ="4"

VM_Select_Items_style_A_PerLine=

Style B setting, default ="1"

VM_Select_Items_style_B_PerLine=

Style C & D setting, default ="3"

VM_Select_Items_style_C_PerLine=

Style E setting, default ="2"

VM_Select_Items_style_E_PerLine=

Default is set internally at ="7" but certain internal functions may temporarily reduce this to as low as 2 or 3

Use with caution. Suggest 5 or 6 as lowest setting. Normally leave blank

Force_GetList_NewLinePoint=

For custom vm selector styles: see notes in the file "qqX_VM_array_and_Select", in the folder qqX.main

For custom main menu: see file "qqX_main_menu_interface"

Also see qqX wiki

FIND DISTRO

Set number of distros showing before find option shows on menu. Useful for large collections

Set value at 2x actual. Suggest around 15 or 20 distros, eg set @ 30 or 40, default = 32

ShowFindPoint="32"

FILTERS

From version 1.13, defaults to showing desktop focussed distros only, with in-menu filter selection for other types

="all" ="desktop" ="server-cl" etc to force otherwise, see filter menu for full list

VM_ListingFilterDefault=


'QUICKEMU' & 'QUICKGET' SOURCE

IMPORTANT @ 2024/04 quickemu underwent major changes

TO KEEP qqX STABLE, built-in releases were introduced from qqX version 1.8 onwards

These are essentially identical to the official releases, except for changes to the version number, for identification purposes

Quickemu is a good project but it has suffered at times from an intermittent maintenance cycle with

short notice releases and often months long periods of community-only activity

The idea is still to REMAIN CLOSELY CONNECTED TO THE QUICKEMU SOURCE but to protect qqX from any unexpected API or code changes

and to have the possibilty, if needed or wished, of allowing in selected pre-release community contributions

2024/04 was A TURNING POINT which came at the end of what was a frustratingly long period for many people

during which fixes and features from the quickemu community had accumulated and sat there waiting to be merged

However @ 2025/04 patchy upstream maintainence and developer differences continue

Running of STANDARD QUICKEMU FILES is NOW DEPRECATED as not all of the features and functions will work

qqX versions now contain multiple downstream fixes and general improvements, plus various adjustments to runtime process controls

To run qqX generated machines in original upstream mode, use 'quickemu -vm distro-name.conf' at the command line

Versions may be start default set and additionally hot-swapped via the standard qqX menus

Branches - Source code and diff comparisons are at https://github.com/qqxproject/quickemu/branches

Named versions are generally as follows

FreeSpirit - As FreeBird, or as FreeBird but more spirited, with newer ideas and fixes if they are EXPECTED TO BE STABLE

Probably includes some official pre-release, or qqX and Community pre-release, or both

FreeBird - Based on time tested FreeSpirit or on official code. Generally tested as STABLE

Contains the usual qqX additions and tweaks. May contain a few official pre-release improvements

HomeBird - An older FreeBird release. Just in case of the unforeseen

Echo - An older official quickemu release. Should generally work with qqX. May be useful?

System - The latest official quickemu release, as it is on the system. Use with caution. New releases can often have problems

Custom/Dev - Your own customised or development version. SEE THE NOTES TOWARDS THE END OF THE SETTINGS FILE

Set qqX start default in the settings file as quoted "name" or may be set blank for qqX selected

FreeBird or FreeSpirit are recommended

QE_SourceVersion="FreeBird"


qqX UPDATES

Checks quietly for new GitHub releases (set =1 if not required)

Disable_qqX_upd_Checks=

Hide beta releases (when checking is enabled) Default = blank (show)

Hide_qqX_BetaUpdates=

Option for a Specified folder, in which sub folder "qqX.releases" gets to be placed, other than the usual like ~/Downloads

Give full path eg "/media/xxx/Storage/qqX.files"

Specified_Updates_Location=


OTHER PROGRAMS

TEXT EDITOR

Leave blank to use system defaults for editing the settings file, otherwise give "name" of a specific editor

eg. gedit, pluma, gnome-text-editor, kate, mousepad, leafpad ... If not found qqX will try defaults

For qt based distros, eg KDE, LXQT, then Kate is recommended, for gnome base use gnome-text-editor

Typing/pasting 'xdg-mime query default text/plain' at the terminal may help

TextEditor=

FILE MANAGER

Allows opening of the VM folder into new window, to view log files and contents (distro behaviour may vary)

XDG default followed by popular names selected in the following order: caja, nautilus, dolphin, pcmanfm

Terminal command 'xdg-mime query default inode/directory' may help

May be left blank, if not known. Or may be set ="no" to hide menu options, if name cannot be resolved

FileManager=

WEB BROWSER

Allows opening of VM homepages and other URL's (distro behaviour may vary)

Terminal command 'xdg-settings get default-web-browser' may help

Known issue https://discourse.ubuntu.com/t/firefox-snap-testing-2021-2022/24663/93

XDG default followed popular names selected in the following order: firefox, google-chrome, falkon

Give quoted name or may be left blank, if not known. Or may be set ="no" to hide menu options, if name cannot be resolved

WebBrowser=


BOOT DEFAULTS

For BIOS settings, see TIANO BIOS further down

SCREEN %PERCENTAGE may be added here or INDIVIDUALLY in the .conf file as 'Custom_SDL_ScreenPercent'

Use just the value, eg. ="68" Suggested values from 50 to 70 as a percentage of the physical monitor

From quickemu 4.8 onwards, where value is integer from 25 to 99 & for Linux VM's, SDL only

Default_SDL_ScreenPercent="60"

VM SCREEN SIZE may be added here. Standard values are suggested. Oddball sizes may cause unsharp display

Or INDIVIDUALLY in the .conf file as 'Custom_SDL_ScreenSize'

From quickemu 4.9.5 onwards For Linux VM's, SDL only

qqX still allows percent as a value in later code. Size, if present, takes priority over percent

Windows determines its own sizes, as does earlier code for Macs

For later code MacOS should now use Size as per release in the conf files. See qqX wiki notes for Mac

Set Linux sizes as ="XxY" Eg 3200x1800 2560x1440 2560x1080 1600x900 1920x1080 1920x720 etc

Default_SDL_ScreenSize=""

PHYSICAL MONITOR SIZE - quickemu 4.9.5 onwards

Set here, if 'xrandr' is not detecting size correctly eg 3840x2160

PhysicalMonitor=

PHYSICAL MONITOR - SELECTION See Extra Args section

GL GRAPHICS by default are "on". Individually, placing gl as = "off" in the .conf file will reverse this

This state may be toggled from the main menu or set here to normally boot as "off"

While "on" can give enhanced output, "off" has increased distro compatibility and also allows scaling in SDL mode

Leave blank for "on" or set =1 for "off" Individually, both states of "on" or "off" may be set in the .conf file

SetGL_DefaultAsOff=

LOCALE

Setting to =1 will increase the use of more locale-centric language/typeface features, if needed

BUT this may upset some input/output filters .... (CAUTION)

AllowMoreLocale=

MSR

Set =1 for more prompting. Standard prompting will be less active in warning situations

Setting MSR_Warnings to =1 will unhide minor warnings on the standard (non technical) interface

MSR_Warnings= Verbose_MSR_dialog=

File location for default KVM behaviour for unhandled machine-specific registers

Leave blank for standard settings. Edit here if your OS locates 'modprobe.d' differently

quickemu / qwrap / qqX default is "/etc/modprobe.d/kvm-quickemu.conf"

KVM_MSR_ModProbeFile=

KILL DIALOG

Time adjuster for pkill display. Adds a delay to allow background processes time to output to screen

Normal recommended integer = 2 to 10 secs Adjust if your guest/host combo's find this too fast or slow

Originally intended, primarily, to handle the "gl_version 46" output. This particular is now filtered from QEMU 8.0 on

P_Kill_WaitSecs="4"


SHARED or SECOND DRIVES

May be auto-created in qqX via the utils menu

The Shared drive is a useful when in SDL mode & available to all VMs while a Second drive is a quick way to expand

an individual VM's storage. Use Gparted, 'Disks' or similar, inside a VM, to set a file table, format and mount

Give SharedDrive full location here eg. ="$Default_VM_Folder/SharedDrive/shared.qcow2"

SET SharedDrive_Conf as ="no-shared" IN THE .CONF FILE to individually stop the Shared Drive from loading

SharedDrive=""

For WINDOWS, the drive should be set as GPT & formatted as NTFS. The process should carried out by a Linux OS

MAC OS older than and including 10.13 Mojave 2018 might need a flag IN THE .CONF FILE to stop possible drive conflicts

Quickemu code has the following note: "VirtIO Block Media doesn't work in High Sierra (at all) or the Mojave (Recovery Image)"

Development tests with Mojave show both a Shared NTFS and a Second APFS to be working

SET MacLegacyDrive as ="true" to load Second Drive (& not Shared) as 'ide-hd' instead of 'virtio-blk-pci'

SharedDrive always loads as 'virtio-blk-pci' See https://en.wikipedia.org/wiki/MacOS_version_history

qqX adds SecondDrives to the .CONF FILE, eg as ="Windows-11/storage.qcow2"


ERRORS

QEMU ERROR FILTER - QL LOG

Add here any 'errors' that changes in QEMU might throw up and that we want to generally ignore eg. "warning" or "deprecated"

Add QemuError_VM_Filter=("warning" "deprecated") eg. to the .conf file for INDIVIDUALLY problematic distros

@ 2023/12 Defaults: QemuErrorFilter=("gl_version" "signal 15 from pid")

2024/07 add https://discussion.fedoraproject.org/t/selinux-alert-gst-plugin-scan-getattr-run-pcscd-pcscd-comm/79378

MacOS can often throw "usb_desc_get_descriptor" if the mouse/keyboard setting is not quite right

but these not always critical and can be session supressed in the [ql] menu, then permanently in the .conf when the config is okay

Add any new values to the checking arrays as double quoted & space separated. Use the '+=' for further lines

QemuErrorFilter=("gl_version" "signal 15 from pid" "gst-plugin-scan")

QemuErrorFilter+=("")

FIXES for QUICKEMU'S QEMU 'args'

Selected fixes & hot-fixes for the quickemu code that gets passed to QEMU

where quickemu has not yet fixed things or has released the fix. Some may not be needed or may be distro specfic

Set = blank to disable, if causing problems or if not needed with your particular installation. Set = 1 to activate

FixArgs_hpet=1 FixArgs_smartcard=1


QEMU VERSION

QEMU version 8.1.0 or newer is currently required for all functions to work

while QEMU version 6.1.0 is baseline for GL functions

An overide may be used, if needed. Set =1 to force version present on system

QemuShortVerOveride=

Hardcoded quickemu default is 'qemu-system-x86_64' with machine 'q35'

For unexpected QEMU changes, system may be set here, if required

At the cmd line, type: "qemu-system-x86_64 -machine help" to see machine options

QEMU_Default_SystemType= QEMU_Default_MachineType=

qqX CUSTOM BOOTING, including simple tweaks or the Arm, Risc-V and other machine & system types

The file "Qemu_ShortArgs_List.txt" in the VM folder may be used as the basis for INDIVIDUAL custom boot scripts

Run the VM in the boot mode required, eg sdl, spice etc. Verbose output may be used, esp. if the VM is not expected to boot

Then either via the Utils menu or manually from the VM folder the ShortArgs file may be renamed as "Qemu_ShortArgs_Custom.txt"

Edits may be made line by line. Comments and blank lines may be used, and will be ignored

See qqX wiki for further how to details and discussion

Set default menu style to load up if a custom args file is present. Set =1 for Hybrid instead of Standard. (may be in menu toggled)

PreferHybridCustomMenus=

Extra QEMU args may be added here, as GLOBAL. Also add ad hoc via the main menu

Format = "group quoted" with single-space separated elements eg: ExtraArgs="-device tpm-tis,tpmdev=tpm0"

See https://qemu.readthedocs.io/en/latest/system/invocation.html

ExtraArgs=

Extra QUICKEMU parameters to be used GLOBALLY at VM run time

Format = "group quoted" with single-space separated elements eg: Extra_QE_Params="--screen 0"

See quickemu --help for full list NB not all options can be applicable CAUTION

Of note: "--full-screen" only works with spice display ... && will overide --screenpct

DUAL DISPLAY users should set "--screen 0" or "--screen 1" to select the monitor

See quickemu project main page for more details: https://github.com/quickemu-project/quickemu

Extra_QE_Params=

HEADLESS commands may be set using Extra_QE_Params using "--display none" BUT

to avoid this affecting all machines it is recommended to add 'HeadlessDisplay' as ="true" to the .conf file

NB headless ONLY RUNS IN SPICE and an SSH connection may need to be set as an extra QE parameter

Originally: https://github.com/quickemu-project/quickemuheadless --ssh-port port : Set ssh-port manually

BUT Improved from Quickemu 4.9.1 https://github.com/quickemu-project/quickemu/pull/835

--access : Enable remote spice access support. 'local' | 'remote' | 'clientipaddress'

May be set INDIVIDUALLY by placing eg ACCESS="1.1.1.1" in the .conf file (NB 'ACCESS' in CAPS, but value in lower case)

Note that if unset then quickemu will default this to = local

VERBOSE BOOT

Set =1 to normally display the qemu args, with okay dialogue, in human readable & before booting

Set blank for log file only. NB A main menu toggle is also available and a log file is always outputted to the VM's folder

VerboseArgs=


TIANO BIOS

The Tiano boot system that is used by quickemu will require updating if there are feature or security changes made to the code

(03/2024) Quickemu, currently places edk.fd vars into the VM folder. And there they remain

It is theoretically possible that system updates containing feature changes may seek variables in these files that don't exist

Quickemu will also place binary files, in the case of MacOS, which are only downloaded by running Quickget

There are also .bin files listed in the Quickemu code for use by some Linux distros

qqX features an [rtv] option which may be run manually, to Refresh (the) Tiano Variables (and such)

But to avoid tedium, this feature defaults to periodically auto-running. Set = 1 to turn this off, if required (?)

RtvManualOnly=

In manual-only mode, qqX will remind you, from time to time, to run the updater

The MacOS reminder runs more frequently, as this is viewed as more critical

As above, set = 1 to turn these off too, if required (?)

RtvStdRmdOff= RtvMacosRmdOff=

Standard Arm AAVMF source folder = "/usr/share/AAVMF" >> Variations may be placed here

Defaults to auto-update, as below

RtvArmFolder=

The Tiano core provides a 3 second window to access the BIOS via the escape key

This allows you to select a boot from ISO option and can also be useful for Windows updates

Instance Session overides can be toggled from the Utilities menu, or individually by placing

'BootStyle' either as ="fast" or ="slow" in the .conf file

Default ="fast" as this will slightly speed up the normal boot sequence

BootStyle="fast"

Set ="fast" to skip the ISO boot checks and instructions

Default ="slow" as this only shows if BootStyle has been specifically set to slow

Also use 'BootStyleMsg' for individual overides in the .conf if wished

BootStyleMsg="slow"


CUSTOM SETTINGS FILE

The qqX upgrader utility will tidy up and possibly remove any 'obsolete' code and comments from this file

For advanced custom tweaks or things that you want to keep safe, you should make a custom settings file

next door to this one, in '.qqX' in your home folder (normally use ctrl-h to unhide) "$HOME/.qqX/custom_settings"

CUSTOM QUICKEMU & QUICKGET and DEVELOPMENT

Sometimes different quickemu/quickget versions maybe be needed, or different custom versions produced

Official versions may be downloaded at https://github.com/quickemu-project/quickemu/releases

Remember that official releases of quickget tend to check quickemu for the version number

In the past, different quickget/quickemu release/custom versions have been generally mix/matchable

as long as, a structure similar to quickemu 4.4 onwards has been used

Place 'Custom' scripts in a 'QE.Custom' sub-folder to "$Default_VM_Folder/qqX.custom" in a similar manner

to that used for FreeBird. This preset path will be auto-checked

For 'Dev' give full path of your Quickemu source clone here, "$HOME/Files/myClone"

QE_DevPath may be left set. This path will only be used if Version is set to 'Dev'

QE_DevPath=

QE_SourceVersion may also be set here as a temporary overwrite to the main settings at the top of the script

This will get reset here, if doing a settings update

QE_SourceVersion="Dev"

Inside the folder, all script names should be as standard. Plus, add all ancilliary scripts, such as macrecovery/chunkcheck etc

qqX will select this folder and will also add it to '$PATH' to make sure the correct ancilliaries are found

NB no spaces in path, as quoted paths can only be added to the end of $PATH and we need the source path as first

Branches - Source code and diff comparisons are at https://github.com/qqxproject/quickemu/branches

Named versions are generally as follows

FreeSpirit - As FreeBird, or as FreeBird but more spirited, with newer ideas and fixes if they are EXPECTED TO BE STABLE

Probably includes some official pre-release, or qqX and Community pre-release, or both

FreeBird - Based on time tested FreeSpirit or on official code. Generally tested as STABLE

Contains the usual qqX additions and tweaks. May contain a few official pre-release improvements

HomeBird - An older FreeBird release. Just in case of the unforeseen

Echo - An older official quickemu release. Should generally work with qqX. May be useful?

System - The latest official quickemu release, as it is on the system. Use with caution. New releases can often have problems

Custom/Dev - Your own customised or development version. See the notes here, at the end of the settings file

FreeBird is default. Set blank for default

End of Settings

https://code.visualstudio.com/

vim:tabstop=2:shiftwidth=2:expandtab