mirror of
				https://github.com/oSoWoSo/DistroHopper.git
				synced 2024-08-14 22:46:53 +00:00 
			
		
		
		
	ccccc
This commit is contained in:
		
							parent
							
								
									7f9a85e1f7
								
							
						
					
					
						commit
						2a6f75b1f5
					
				
					 85 changed files with 1914 additions and 329 deletions
				
			
		|  | @ -29,6 +29,7 @@ Licensed under AGPL3 | ||||||
| # Still Beta version! | # Still Beta version! | ||||||
| <details> | <details> | ||||||
|   <summary>Click for screenshot</summary> |   <summary>Click for screenshot</summary> | ||||||
|  |   <img src="https://github.com/oSoWoSo/DistroHopper/blob/dev/docs/distrohopper.png"> | ||||||
|  |  | ||||||
| </details> | </details> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								dh
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								dh
									
										
									
									
									
								
							|  | @ -28,7 +28,7 @@ do | ||||||
| 		echo "$MSG_IMPROVE" | 		echo "$MSG_IMPROVE" | ||||||
| 		echo "$MSG_KNOW" | 		echo "$MSG_KNOW" | ||||||
| 		echo "" | 		echo "" | ||||||
| 		echo "$MSG_FLAWLESS" | 		echo "$MSQ_FLAWLESS" | ||||||
| 		echo "			zenobit" | 		echo "			zenobit" | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -398,7 +398,7 @@ EOF | ||||||
| 			if [ "$os" = windows ]; then | 			if [ "$os" = windows ]; then | ||||||
| 				tui_windows | 				tui_windows | ||||||
| 			else | 			else | ||||||
| 				tui_get_releases_and_editions | 				quickget_get_releases_and_editions | ||||||
| 				fzf_choose_release | 				fzf_choose_release | ||||||
| 				if [ "$(echo "$choices" | wc -l)" = 1 ]; then | 				if [ "$(echo "$choices" | wc -l)" = 1 ]; then | ||||||
| 					quickget_download_os_release | 					quickget_download_os_release | ||||||
|  | @ -672,6 +672,7 @@ EOF | ||||||
| 				shift | 				shift | ||||||
| 				;; | 				;; | ||||||
| 			l|language) | 			l|language) | ||||||
|  | 				ttt="dh" | ||||||
| 				TOOL_distrohopper_translate | 				TOOL_distrohopper_translate | ||||||
| 				shift | 				shift | ||||||
| 				;; | 				;; | ||||||
|  |  | ||||||
|  | @ -35,12 +35,12 @@ MSG_H_TUI="Spuštění uživatelského rozhraní terminálu (TUI)" | ||||||
| MSG_CHAT="Chatovací skupina na SimpleX: https://tinyurl.com/7hm4kcjx" | MSG_CHAT="Chatovací skupina na SimpleX: https://tinyurl.com/7hm4kcjx" | ||||||
| MSG_ICONS="vytvoření adresáře s ikonami jako root..." | MSG_ICONS="vytvoření adresáře s ikonami jako root..." | ||||||
| MSG_IMPROVE="Co lze zlepšit, přidat, změnit?" | MSG_IMPROVE="Co lze zlepšit, přidat, změnit?" | ||||||
| MSG_INSTALLING="Instalace programu DistroHopper..." | MSG_INSTALLING="Instalace DistroHopperu..." | ||||||
| MSG_INVALID="Neplatná možnost:" | MSG_INVALID="Neplatná možnost:" | ||||||
|  | MSG_KNOW=" Dejte mi vědět..." | ||||||
| MSG_LANG_CODE="Pokud chcete vytvořit nový, vložte dvoumístný kód jazyka..." | MSG_LANG_CODE="Pokud chcete vytvořit nový, vložte dvoumístný kód jazyka..." | ||||||
| MSG_LANG_CHANGE="Která jazyková změna? (cs/cs)" | MSG_LANG_CHANGE="Která jazyková změna? (cs/cs)" | ||||||
| MSG_LANG="Zvolený jazyk je:" | MSG_LANG="Zvolený jazyk je:" | ||||||
| MSG_LETMEKNOW=" Dejte mi vědět..." |  | ||||||
| MSG_LIKE="Jak se vám líbí DistroHopper?" | MSG_LIKE="Jak se vám líbí DistroHopper?" | ||||||
| MSG_MERG="Sloučení změn... (Udělejte si to sami)" | MSG_MERG="Sloučení změn... (Udělejte si to sami)" | ||||||
| MSG_MODE="Přepnutí do přenosného režimu!" | MSG_MODE="Přepnutí do přenosného režimu!" | ||||||
|  |  | ||||||
|  | @ -37,10 +37,10 @@ MSG_ICONS="Icons-Verzeichnis als Root erstellen..." | ||||||
| MSG_IMPROVE="Was kann verbessert, hinzugefügt, verändert werden?" | MSG_IMPROVE="Was kann verbessert, hinzugefügt, verändert werden?" | ||||||
| MSG_INSTALLING="Installation von DistroHopper..." | MSG_INSTALLING="Installation von DistroHopper..." | ||||||
| MSG_INVALID="Ungültige Option:" | MSG_INVALID="Ungültige Option:" | ||||||
|  | MSG_KNOW=" Sag mir Bescheid..." | ||||||
| MSG_LANG_CODE="Wenn Sie einen neuen erstellen möchten, geben Sie den zweistelligen Sprachcode ein..." | MSG_LANG_CODE="Wenn Sie einen neuen erstellen möchten, geben Sie den zweistelligen Sprachcode ein..." | ||||||
| MSG_LANG="Die gewählte Sprache ist:" | MSG_LANG="Die gewählte Sprache ist:" | ||||||
| MSG_LANG_CHANGE="Welche Sprache wechseln? (en/cs)" | MSG_LANG_CHANGE="Welche Sprache wechseln? (en/cs)" | ||||||
| MSG_LETMEKNOW=" Sag mir Bescheid..." |  | ||||||
| MSG_LIKE="Wie gefällt Ihnen DistroHopper?" | MSG_LIKE="Wie gefällt Ihnen DistroHopper?" | ||||||
| MSG_MERG="Zusammenführen von Änderungen... (Do it yourself)" | MSG_MERG="Zusammenführen von Änderungen... (Do it yourself)" | ||||||
| MSG_MODE="Umschalten auf portablen Modus!" | MSG_MODE="Umschalten auf portablen Modus!" | ||||||
|  | @ -63,7 +63,7 @@ MSG_S_CHOOSED=" Starte %s..." | ||||||
| MSG_S_INSTALL="Start der Installation..." | MSG_S_INSTALL="Start der Installation..." | ||||||
| MSG_SORTING="Sortierfunktionen in der Vorlage..." | MSG_SORTING="Sortierfunktionen in der Vorlage..." | ||||||
| MSG_STRUCTURE="Verzeichnisstruktur erstellen..." | MSG_STRUCTURE="Verzeichnisstruktur erstellen..." | ||||||
| MSG_U_READY="Aktualisieren von fertigen VMs..." | MSG_U_READY="Aktualisierung der fertigen VMs..." | ||||||
| MSG_U_SUPPORTED="Aktualisieren unterstützter VMs..." | MSG_U_SUPPORTED="Aktualisieren unterstützter VMs..." | ||||||
| MSG_VM="Desktop-Eintrag erstellen..." | MSG_VM="Desktop-Eintrag erstellen..." | ||||||
| MSG_YAD="Ich vermisse Yad!" | MSG_YAD="Ich vermisse Yad!" | ||||||
|  |  | ||||||
|  | @ -37,16 +37,16 @@ MSG_ICONS="creating icons dir as root..." | ||||||
| MSG_IMPROVE="What can be improved, added, changed?" | MSG_IMPROVE="What can be improved, added, changed?" | ||||||
| MSG_INSTALLING="Installing DistroHopper..." | MSG_INSTALLING="Installing DistroHopper..." | ||||||
| MSG_INVALID="Invalid option:" | MSG_INVALID="Invalid option:" | ||||||
|  | MSG_KNOW=" Let me know..." | ||||||
| MSG_LANG_CODE="If you want create new one, insert two digit language code..." | MSG_LANG_CODE="If you want create new one, insert two digit language code..." | ||||||
| MSG_LANG_CHANGE="Which language change? (en/cs)" | MSG_LANG_CHANGE="Which language change? (en/cs)" | ||||||
| MSG_LANG="Choosed language is:" | MSG_LANG="Choosed language is:" | ||||||
| MSG_LETMEKNOW=" Let me know..." |  | ||||||
| MSG_LIKE="How do you like DistroHopper?" | MSG_LIKE="How do you like DistroHopper?" | ||||||
| MSG_MERG="Merging changes... (Do it yourself)" | MSG_MERG="Merging changes... (Do it yourself)" | ||||||
| MSG_MODE="Switching to portable mode!" | MSG_MODE="Switching to portable mode!" | ||||||
| MSG_MO="Generating .mo file..." | MSG_MO="Generating .mo file..." | ||||||
| MSG_NEEDED="Installing needed..." | MSG_NEEDED="Installing needed..." | ||||||
| MSG_NEW=" Do you want to create a new VM? (c)" | MSG_NEW=" Do you want to create a new VM?" | ||||||
| MSG_NO_CONF="No .conf files found" | MSG_NO_CONF="No .conf files found" | ||||||
| MSG_NO_DISTROERROR="I currently don't have support for your distro" | MSG_NO_DISTROERROR="I currently don't have support for your distro" | ||||||
| MSG_NO="No argumet provided!" | MSG_NO="No argumet provided!" | ||||||
|  |  | ||||||
							
								
								
									
										71
									
								
								lang/en.cfgZ
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								lang/en.cfgZ
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,71 @@ | ||||||
|  | MSG_ADD_STARTED="Adding new distro started..." | ||||||
|  | MSG_BUGS="PS: You saw some bugs?" | ||||||
|  | MSG_C_DESKTOP="Copying desktop entries and locales..." | ||||||
|  | MSG_C_ENTRY="Copying desktop entry..." | ||||||
|  | MSG_C_ICONS="Copying icons..." | ||||||
|  | MSG_C_ISOS="Copying ISOs to dir. It will take some time..." | ||||||
|  | MSG_C_LANG="Do you want copy translation to system? (y/n)" | ||||||
|  | MSG_C_TRANS="Copying translation..." | ||||||
|  | MSG_D_INTERM="Do you want DistroHopper to run in the terminal? (y/n)" | ||||||
|  | MSG_DIR="creating config dir..." | ||||||
|  | MSG_D_LANG=" Trying to download Windows %s %s..." | ||||||
|  | MSG_DONE="Done" | ||||||
|  | MSG_D_OS=" Trying to download %s %s..." | ||||||
|  | MSG_D_RELEASE=" Trying to download %s %s %s..." | ||||||
|  | MSG_DUMP="Dumping language source..." | ||||||
|  | MSG_ERROR="Error" | ||||||
|  | MSG_FEEDBACK="Could you please provide feedback?" | ||||||
|  | MSG_FZF="Missing fzf!" | ||||||
|  | MSG_H_ADD="	a	add			Add new distro to quickget" | ||||||
|  | MSG_H_COPY="	c	copy			Copy all ISOs to target dir (for Ventoy)" | ||||||
|  | MSG_H_DIR="	d	dir			Set default directory where VMs are stored" | ||||||
|  | MSG_H_FIRST="	example for First run from terminal:" | ||||||
|  | MSG_H_GUI="	g	gui			Run graphical user interface (GUI)" | ||||||
|  | MSG_H_HELP="	h	help			Show this help and exit" | ||||||
|  | MSG_H_INSTALL="	i	install			Install DistroHopper" | ||||||
|  | MSG_H_LANG="	l	language		Translate DistroHopper" | ||||||
|  | MSG_H_MODE="	m	mode			Portable mode" | ||||||
|  | MSG_HOMEPAGE="Homepage: dh.osowoso.xyz" | ||||||
|  | MSG_HOSTED="Project hosted at: https://github.com/oSoWoSo/DistroHopper" | ||||||
|  | MSG_H_PUSH="	p	push			Push changed quickget to quickemu project" | ||||||
|  | MSG_H_READY="	r	ready			Update ready to run VMs" | ||||||
|  | MSG_H_SORT="	f	functions		Sort functions in quickget" | ||||||
|  | MSG_H_SUPPORTED="	s	supported		Update supported VMs" | ||||||
|  | MSG_H_TUI="	t	tui			Run terminal user interface (TUI)" | ||||||
|  | MSG_CHAT="Chat group on SimpleX: https://tinyurl.com/7hm4kcjx" | ||||||
|  | MSG_ICONS="creating icons dir as root..." | ||||||
|  | MSG_IMPROVE="What can be improved, added, changed?" | ||||||
|  | MSG_INSTALLING="Installing DistroHopper..." | ||||||
|  | MSG_INVALID="Invalid option:" | ||||||
|  | MSG_LANG_CODE="If you want create new one, insert two digit language code..." | ||||||
|  | MSG_LANG_CHANGE="Which language change? (en/cs)" | ||||||
|  | MSG_LANG="Choosed language is:" | ||||||
|  | MSG_LETMEKNOW=" Let me know..." | ||||||
|  | MSG_LIKE="How do you like DistroHopper?" | ||||||
|  | MSG_MERG="Merging changes... (Do it yourself)" | ||||||
|  | MSG_MODE="Switching to portable mode!" | ||||||
|  | MSG_MO="Generating .mo file..." | ||||||
|  | MSG_NEEDED="Installing needed..." | ||||||
|  | MSG_NEW=" Do you want to create a new VM? (c)" | ||||||
|  | MSG_NO_CONF="No .conf files found" | ||||||
|  | MSG_NO_DISTROERROR="I currently don't have support for your distro" | ||||||
|  | MSG_NO="No argumet provided!" | ||||||
|  | MSG_NO_VM="No VMs found." | ||||||
|  | MSG_OR_RUN="  or run an existing one? (press anything)" | ||||||
|  | MSG_PREPARED=" Prepared VMs:-------------" | ||||||
|  | MSG_PUSHING="Pushing changes to..." | ||||||
|  | MSG_Q_INTERM="Do you want quickget to show outputs in the terminal? (y/n)" | ||||||
|  | MSG_R_TUI="Running DistroHopper TUI..." | ||||||
|  | MSG_RUNNING="DistroHopper is running... Press Ctrl-Q anytime to exit." | ||||||
|  | MSG_SETTINGUP="Setting up directory..." | ||||||
|  | MSG_S_GUI="Starting DistroHopper GUI..." | ||||||
|  | MSG_S_CHOOSED=" Starting %s..." | ||||||
|  | MSG_S_INSTALL="Starting installation..." | ||||||
|  | MSG_SORTING="Sorting functions in template..." | ||||||
|  | MSG_STRUCTURE="Creating directory structure..." | ||||||
|  | MSG_U_READY="Updating ready VMs..." | ||||||
|  | MSG_U_SUPPORTED="Updating supported VMs..." | ||||||
|  | MSG_VM="Creating desktop entry..." | ||||||
|  | MSG_YAD="Missing yad!" | ||||||
|  | MSQ_ARGUMENTS="Possible arguments:" | ||||||
|  | MSQ_FLAWLESS="Wish you flawless distro hopping..." | ||||||
|  | @ -37,10 +37,10 @@ MSG_ICONS="création d'un répertoire d'icônes en tant que racine..." | ||||||
| MSG_IMPROVE="Qu'est-ce qui peut être amélioré, ajouté, modifié ?" | MSG_IMPROVE="Qu'est-ce qui peut être amélioré, ajouté, modifié ?" | ||||||
| MSG_INSTALLING="Installation de DistroHopper..." | MSG_INSTALLING="Installation de DistroHopper..." | ||||||
| MSG_INVALID="Option non valide :" | MSG_INVALID="Option non valide :" | ||||||
|  | MSG_KNOW=" Tenez-moi au courant." | ||||||
| MSG_LANG_CODE="Si vous souhaitez en créer un nouveau, insérez un code de langue à deux chiffres..." | MSG_LANG_CODE="Si vous souhaitez en créer un nouveau, insérez un code de langue à deux chiffres..." | ||||||
| MSG_LANG_CHANGE="Quel changement de langue ? (en/cs)" | MSG_LANG_CHANGE="Quel changement de langue ? (en/cs)" | ||||||
| MSG_LANG="La langue choisie est :" | MSG_LANG="La langue choisie est :" | ||||||
| MSG_LETMEKNOW=" Tenez-moi au courant." |  | ||||||
| MSG_LIKE="Que pensez-vous de DistroHopper ?" | MSG_LIKE="Que pensez-vous de DistroHopper ?" | ||||||
| MSG_MERG="Fusionner les changements... (Faites-le vous-même)" | MSG_MERG="Fusionner les changements... (Faites-le vous-même)" | ||||||
| MSG_MODE="Passer en mode portable !" | MSG_MODE="Passer en mode portable !" | ||||||
|  |  | ||||||
							
								
								
									
										91
									
								
								new_translate_function
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								new_translate_function
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,91 @@ | ||||||
|  | 	function TOOL_distrohopper_translate() { | ||||||
|  | 		# Shell options | ||||||
|  | 		shopt -s progcomp | ||||||
|  | 		shopt -u dirspell progcomp_alias | ||||||
|  | 
 | ||||||
|  | 		_sort_strings() { | ||||||
|  | 			# RM duplicate strings from an array and sorts them alphabetically | ||||||
|  | 			# Usage: _sort_strings "$@" (array of strings) | ||||||
|  | 			# Returns: $sorted_strings (array) | ||||||
|  | 			local string strings | ||||||
|  | 			declare -A strings | ||||||
|  | 			for string in "${@}"; do | ||||||
|  | 				[[ $string ]] && IFS=" " strings["${string:- }"]=1 | ||||||
|  | 			done | ||||||
|  | 			# shellcheck disable=SC2207 | ||||||
|  | 			IFS=$'\n' sorted_strings=($(sort <<< "${!strings[*]}")) | ||||||
|  | 			unset IFS | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		_clean_cfg_files() { | ||||||
|  | 			# RM duplicates lines and sorts them alphabetically | ||||||
|  | 			# Usage: _clean_cfg_files "$@" (array of files) | ||||||
|  | 			local file | ||||||
|  | 			for file in "$@"; do | ||||||
|  | 				mapfile -t strings < "$file" | ||||||
|  | 				_sort_strings "${strings[@]}" | ||||||
|  | 				printf "%s\n" "${sorted_strings[@]}" > "$file" | ||||||
|  | 			done | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		_get_strings_from_cfg() { | ||||||
|  | 			# Grabs strings from CFG files | ||||||
|  | 			# Usage: _get_strings_from_cfg "$@" (array of files) | ||||||
|  | 			# Returns: $<language_code>_strings $cfg_list (arrays) | ||||||
|  | 			local file name | ||||||
|  | 			for file in "$@"; do | ||||||
|  | 				name=${file##*/}; name="${name/.cfg/_strings}" | ||||||
|  | 				mapfile -t "$name" < "$file" | ||||||
|  | 				[[ $name != en_strings ]] && cfg_list+=("$name") | ||||||
|  | 			done | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		_get_string_data() { | ||||||
|  | 			# Grabs string name and string value | ||||||
|  | 			# Returns: $data (array) | ||||||
|  | 			IFS=$'\n' read -d "" -ra data <<< "${1//=/$'\n'}" | ||||||
|  | 			data[1]=${data[1]//\"} | ||||||
|  | 			unset IFS | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		_translate_string() { | ||||||
|  | 			# Usage: _translate_string "string" "language code" | ||||||
|  | 			# Returns: $translated (string) | ||||||
|  | 			translated="$(curl -s https://api-free.deepl.com/v2/translate \ | ||||||
|  | 				-d auth_key=f1414922-db81-5454-67bd-9608cdca44b3:fx \ | ||||||
|  | 				-d "text=$1" -d "target_lang=${2^^}" \ | ||||||
|  | 				| grep -o '"text":"[^"]*' | grep -o '[^"]*$')" | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		_translate_and_add_missing_strings_into_cfg() { | ||||||
|  | 			# Translates then write missing strings from base language | ||||||
|  | 			# into the various translation files (from $cfg_list) | ||||||
|  | 			local line language trad_strings | ||||||
|  | 			for line in "${en_strings[@]:?}"; do | ||||||
|  | 				_get_string_data "$line" | ||||||
|  | 				for language in "${cfg_list[@]}"; do | ||||||
|  | 					declare -n trad_strings="$language" | ||||||
|  | 					if [[ "${trad_strings[*]}" != *"${data[0]}="* ]]; then | ||||||
|  | 						_translate_string "${data[1]}" "${language/_strings}" | ||||||
|  | 						[[ -n $translated ]] && line="${data[0]}=\"${translated}\"" | ||||||
|  | 						[[ -n $translated ]] && note="translated" || note="original" | ||||||
|  | 						trad_strings+=("$line"); file="${language/_strings/.cfg}" | ||||||
|  | 						printf "%s\n" "${trad_strings[@]}" > "lang/$file" | ||||||
|  | 						echo "=> ${data[0]} (${note}) added into $file" | ||||||
|  | 					fi | ||||||
|  | 				done | ||||||
|  | 			done | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		# Run ZMB Translate | ||||||
|  | 		if [[ $ttt == dh ]]; then | ||||||
|  | 			echo "Running ZMB translate (this could take a while)..." | ||||||
|  | 			_clean_cfg_files lang/*.cfg | ||||||
|  | 			_get_strings_from_cfg lang/*.cfg | ||||||
|  | 			_translate_and_add_missing_strings_into_cfg | ||||||
|  | 			_clean_cfg_files lang/*.cfg | ||||||
|  | 			[[ $note ]] && echo "==> done" || echo "==> nothing to translate" | ||||||
|  | 		else | ||||||
|  | 			echo "ERROR: you must specify 'dh' as argument" | ||||||
|  | 		fi | ||||||
|  | 	} | ||||||
							
								
								
									
										853
									
								
								quickemu-tools
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										853
									
								
								quickemu-tools
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,853 @@ | ||||||
|  | #! /bin/bash | ||||||
|  | 
 | ||||||
|  | ##  Copyright (c)  Alex Genovese   https://github.com/TuxVinyards | ||||||
|  | 
 | ||||||
|  | # 	licence:  GPL3   https://www.gnu.org/licenses | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  Provides a set of qcow snapshot & msr tools to work with quickemu | ||||||
|  | 
 | ||||||
|  | #   https://github.com/quickemu-project/quickemu   https://gitlab.com/qemu-project/qemu | ||||||
|  | 
 | ||||||
|  | #   Users should install 'quickemu' and may set up Virtual Machines as normal. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  Install by placing script in /usr/bin  (ensure chmod +x) | ||||||
|  | 
 | ||||||
|  | #   Run by opening a terminal in the VM folder and typing: | ||||||
|  | 
 | ||||||
|  | #   quickemu-tools --vm  "file.conf" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  Based on 'quickemu-mod'  https://github.com/TuxVinyards/quickemu-mod | ||||||
|  | 
 | ||||||
|  | #   but, as having run time mods & hypervisor recipes removed, this 'tools' version | ||||||
|  | 
 | ||||||
|  | #   now disengages it from having to keep track of the main project ... | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | #   In theory, further disengagement could be achieved by routing straight 'qemu-img' | ||||||
|  | 
 | ||||||
|  | #   But as this should work with any version of the original 'quickemu' | ||||||
|  | 
 | ||||||
|  | #   the quickemu methods have been left, so any future add-ons might be possible.   REVIEW | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  Any snippets re-used from https://github.com/quickemu-project/quickemu | ||||||
|  | 
 | ||||||
|  | #   are used to make the two projects work together easily & are used mainly | ||||||
|  | 
 | ||||||
|  | #   for the benefit of the original project. | ||||||
|  | 
 | ||||||
|  | #   Original snippets may be subject the original MIT licence. | ||||||
|  | 
 | ||||||
|  | #   The 'tools' project, as separate script, is covered by GPL3 | ||||||
|  | 
 | ||||||
|  | #   even it it becomes adopted by the original project. | ||||||
|  | 
 | ||||||
|  | #   IF ANY 'MODDED' CODE BECOMES USED IN THE ORIGINAL QUICKEMU SCRIPTS, | ||||||
|  | 
 | ||||||
|  | #   OR ANY OTHER SIMILAR PROJECT, YOU SHOULD SHOW BOTH OF THE LICENCES | ||||||
|  | 
 | ||||||
|  | #   & SHOW CLEAR ATTRIBUTIONS TO THE CODE SECTIONS USED. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | QtoolsVersion="2023.03.28" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  API    --vm  "file.conf"   [ --path  "path/folder" ] | ||||||
|  | 
 | ||||||
|  | #   where path to be used if .conf file not in current folder / present working directory | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## SETTINGS | ||||||
|  | 
 | ||||||
|  | #  General color & theming | ||||||
|  | 
 | ||||||
|  | X_Shade="3" | ||||||
|  | 
 | ||||||
|  | #  Yellow 3 (recommended), Blue 4, Cyan 6 (brighter blue), Red 1 | ||||||
|  | 
 | ||||||
|  | #  https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | #  File for default KVM behaviour for unhandled machine-specific registers. ( REVIEW ) | ||||||
|  | 
 | ||||||
|  | #  Edit here if your OS locates 'modprobe.d' differently.  Default is "/etc/modprobe.d/kvm-quickemu.conf" | ||||||
|  | 
 | ||||||
|  | KVM_MSR_ModProbeFile="/etc/modprobe.d/kvm-quickemu.conf" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | CurrentFolder="$(pwd)" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## Make sure shell is set during session to decimal separator of dot | ||||||
|  | 
 | ||||||
|  | #  LC_ALL=C changes too much, just set the numeric. | ||||||
|  | 
 | ||||||
|  | #  See locale setting discussion:  https://unix.stackexchange.com/a/149129 | ||||||
|  | 
 | ||||||
|  | #  Also  https://unix.stackexchange.com/questions/62316/why-is-there-no-euro-english-locale?rq=1 | ||||||
|  | 
 | ||||||
|  | #  &   http://www.unicode.org/L2/L2001/01102-POSIX15897.htm | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | export "LC_NUMERIC=C" | ||||||
|  | 
 | ||||||
|  | export "LC_COLLATE=C" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  MOD  Standard Quickemu checks for '< 4' which at 2022/3 now needs a bump. | ||||||
|  | 
 | ||||||
|  | #   Some ver 5 script is now present in the standard release too ... | ||||||
|  | 
 | ||||||
|  | #   More Version 5 style scripting should be used: | ||||||
|  | 
 | ||||||
|  | #   See http://mywiki.wooledge.org/BashGuide/Practices#Choose_Your_Shell | ||||||
|  | 
 | ||||||
|  | if ((BASH_VERSINFO[0] < 5)); then | ||||||
|  |   echo "Sorry, you need Bash 5.0 or newer to run this script." | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | LAUNCHER="$(basename "$0")" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | if [[ ! $(type -p quickemu) ]]; then | ||||||
|  |   echo "ERROR! QuickEmu not found. Please install." | ||||||
|  |   exit 1 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | #  TODO   add 'guestfs-tools'  &  an interface for 'virt-resize' | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | printColor () { | ||||||
|  | 
 | ||||||
|  | 	tput setaf "$X_Shade" | ||||||
|  | 
 | ||||||
|  | 	# shellcheck disable=SC2059 | ||||||
|  | 
 | ||||||
|  | 	printf "$@" | ||||||
|  | 
 | ||||||
|  | 	tput sgr0 | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | exit () { | ||||||
|  | 
 | ||||||
|  |   # trap to keep terminal open if started by mouse click  -t secs | ||||||
|  | 
 | ||||||
|  |   printf "\n\n" | ||||||
|  | 
 | ||||||
|  |   if [[ ! $CLI ]] && [[ $1 ]]; then | ||||||
|  | 
 | ||||||
|  |     printColor "  ERROR : [Enter] to quit  or [h] to hold terminal open \n\n" | ||||||
|  | 
 | ||||||
|  |     read -rp  "  >  "  -t 30  ExitTrap | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   [[ ! $CLI ]] && [[ $ExitTrap == "h" ]] &&  printf "\n\n  Holding terminal open  [Enter] to quit  \n\n"  && read -rp "  >  " | ||||||
|  | 
 | ||||||
|  |   tput cnorm | ||||||
|  | 
 | ||||||
|  |   command exit "$@" | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | function_find_kvm_msr_default_and_status () { | ||||||
|  | 
 | ||||||
|  |   # outputs boths vars 'KVM_MSR_DefaultConf' & 'KVM_MSR_status' with value Y or N | ||||||
|  | 
 | ||||||
|  |   # finds and flags if MSRS has a config conflict | ||||||
|  | 
 | ||||||
|  |   KVM_MSR_status="$(cat /sys/module/kvm/parameters/ignore_msrs)" | ||||||
|  | 
 | ||||||
|  |   [[ ! $KVM_MSR_ModProbeFile ]] && KVM_MSR_ModProbeFile="/etc/modprobe.d/kvm-quickemu.conf" | ||||||
|  | 
 | ||||||
|  |   KVM_MSR_DefaultConf="$(cat "$KVM_MSR_ModProbeFile" 2> /dev/null)" | ||||||
|  | 
 | ||||||
|  |   [[ "$KVM_MSR_DefaultConf" == *'=Y' ]] &&  KVM_MSR_default="Y" | ||||||
|  | 
 | ||||||
|  |   [[ "$KVM_MSR_DefaultConf" == *'=N' ]] || [[ ! -e "$KVM_MSR_ModProbeFile" ]] &&  KVM_MSR_default="N" | ||||||
|  | 
 | ||||||
|  |   if [[ $VM_InstanceName ]]; then | ||||||
|  | 
 | ||||||
|  |     if [[ "$VM_InstanceName" == *windows*  ]] ||	[[ "$VM_InstanceName" == *macos*  ]] ; then | ||||||
|  | 
 | ||||||
|  |       if [[ $KVM_MSR_status == "N" ]]; then KVM_MSR_Error=1 ; else KVM_MSR_Error= ; fi | ||||||
|  | 
 | ||||||
|  |     elif [[ "$VM_InstanceName" != *windows*  ]] &&	[[ "$VM_InstanceName" != *macos*  ]] ; then | ||||||
|  | 
 | ||||||
|  |       if [[ $KVM_MSR_status == "Y" ]]; then KVM_MSR_Error=1 ; else KVM_MSR_Error= ; fi | ||||||
|  | 
 | ||||||
|  |     else | ||||||
|  | 
 | ||||||
|  |       KVM_MSR_Error= | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | print_kvm_status () { | ||||||
|  | 
 | ||||||
|  |   function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |   if [[ $KVM_MSR_status == "Y" ]] ; then | ||||||
|  | 
 | ||||||
|  |     printf "\n\n  KVM:  /sys/module/kvm/parameters/ignore_msrs  = Y" | ||||||
|  | 
 | ||||||
|  |     [[ $VM_InstanceName ]] && [[ $KVM_MSR_Error ]] && printColor "  ERROR " | ||||||
|  | 
 | ||||||
|  |     printf "\n" | ||||||
|  | 
 | ||||||
|  |   else | ||||||
|  | 
 | ||||||
|  |     printf "\n\n  KVM:  /sys/module/kvm/parameters/ignore_msrs  = N" | ||||||
|  | 
 | ||||||
|  |     [[ $VM_InstanceName ]] && [[ $KVM_MSR_Error ]] && printColor "  ERROR " | ||||||
|  | 
 | ||||||
|  |     printf "\n" | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | toggle_msr_defaults () { | ||||||
|  | 
 | ||||||
|  |   # Modded & now reversible rewrite of original quickemu's function 'ignore_msrs_always' | ||||||
|  | 
 | ||||||
|  |   # https://www.linux-kvm.org/page/Category:Docs | ||||||
|  | 
 | ||||||
|  |   if [[ ! -d /etc/modprobe.d ]]; then | ||||||
|  | 
 | ||||||
|  |     printf "\n  ERROR! /etc/modprobe.d was not found. \n\n  See notes, it may be possible to manually create modprobe.d/kvm-quickemu.conf \n\n" | ||||||
|  | 
 | ||||||
|  |   else | ||||||
|  | 
 | ||||||
|  |     printColor "\n\n  Configure default, boot-up, KVM behaviour " | ||||||
|  | 
 | ||||||
|  |     printf "for unhandled machine-specific registers" | ||||||
|  | 
 | ||||||
|  |     printf "\n\n  Normal setting is N (don't ignore) but Windows and MacOS require Y (true) 'ignore' " | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |     function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |     printColor "\n\n  Status:  /sys/module/kvm/parameters/ignore_msrs = %s   Current Default = %s"   "$KVM_MSR_status"  "$KVM_MSR_default" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |     [[ ! $KVM_MSR_ModProbeFile ]] && KVM_MSR_ModProbeFile="/etc/modprobe.d/kvm-quickemu.conf" | ||||||
|  | 
 | ||||||
|  |     if [[ ! -e "$KVM_MSR_ModProbeFile" ]]; then | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  \'%s\'  needs to be created "  "$KVM_MSR_ModProbeFile" | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     printf "\n\n  [y] to set Y  [n] to set N  [b] to go back \n\n" | ||||||
|  | 
 | ||||||
|  |     read -rp  "  > "  Set_MSR_defaults | ||||||
|  | 
 | ||||||
|  |     # set .conf file content & update initramfs in all kernels (y/n or none) | ||||||
|  | 
 | ||||||
|  |     if [[ $Set_MSR_defaults == "y" ]]; then | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  Updating 'initramfs' may take a moment or two ... \n\n" | ||||||
|  | 
 | ||||||
|  |       # As per Martin's solution in original quickemu, needs 'tee' to get this to work, | ||||||
|  |       # but route tee's stdout to null to tidy the screen | ||||||
|  | 
 | ||||||
|  |       echo "options kvm ignore_msrs=Y" | sudo tee "$KVM_MSR_ModProbeFile" 1> /dev/null | ||||||
|  |       sudo update-initramfs -k all -u | ||||||
|  | 
 | ||||||
|  |     elif [[ $Set_MSR_defaults == "n" ]]; then | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  Updating 'initramfs' may take a moment or two ... \n\n" | ||||||
|  | 
 | ||||||
|  |       echo "options kvm ignore_msrs=N" | sudo tee "$KVM_MSR_ModProbeFile" 1> /dev/null | ||||||
|  |       sudo update-initramfs -k all -u | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   [[ $CLI ]] && exit 1 | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | show_kvm_sudo_security_note () { | ||||||
|  | 
 | ||||||
|  |   printColor     "\n  QuickEmu-Tools require 'sudo' permissions to echo true or false to 'ignore_msrs'" | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  This allows you to create a temporary MSRS status that may be changed at any time," | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  allowing you to match the selected guest VM that you want to run." | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n\n  If you have concerns about this script, or about giving elevated permissions, " | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  then the script should be checked or you should issue these commands manually:" | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  Open a side terminal, use shift-crtl-c to copy the displayed command & shift-crtl-v to paste it. " | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  Elevated permissions will then exist only in the side terminal & cease once it is closed. " | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  Return to q-tools & select 'leave as'.  Q-Tools will re-read msrs settings & auto-update. " | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n\n  If you mainly use Windows or Mac VM's then a file '.../modprobe.d/kvm-quickemu.conf' " | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  can be created to modify the load up settings. Quickemu-Tools has a new built in function" | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  that can set this up & also allows future adjustments may be made." | ||||||
|  | 
 | ||||||
|  |   printf   "\n\n  Or it may be carried out manually...  See settings, script & further notes for details." | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n\n  Status:  /sys/module/kvm/parameters/ignore_msrs = %s   Current Default = %s"   "$KVM_MSR_status"  "$KVM_MSR_default" | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  Windows or MacOS should be set to 'Y' " | ||||||
|  | 
 | ||||||
|  |   printf   "\n" | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | select_msr_config () { | ||||||
|  | 
 | ||||||
|  |   # MSR_offer normally present if MSRS/OS conflict previously detected, | ||||||
|  |   # however, presume selector is being used to change current status  REVIEW | ||||||
|  | 
 | ||||||
|  |   print_kvm_status | ||||||
|  | 
 | ||||||
|  |   if [[ $KVM_MSR_status == "Y" ]]; then MSR_offer="N" ; else MSR_offer="Y" ; fi | ||||||
|  | 
 | ||||||
|  |   KVM_MSR_selector= | ||||||
|  | 
 | ||||||
|  |   [[ $KVM_MSR_selector_LoadHelp ]] && show_kvm_sudo_security_note | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   while true ; do | ||||||
|  | 
 | ||||||
|  |     if [[ $MSR_offer == "Y" ]]; then | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  Set Y : echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs ? " | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n  [y] to set Y " | ||||||
|  | 
 | ||||||
|  |       printf "  [enter]  leave as N" | ||||||
|  | 
 | ||||||
|  |     else | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  Set N : echo 0 | sudo tee /sys/module/kvm/parameters/ignore_msrs ? " | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n  [n] to set N " | ||||||
|  | 
 | ||||||
|  |       printf "  [enter]  leave as Y" | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     printf "    [d] to set the boot defaults" | ||||||
|  | 
 | ||||||
|  |     [[ $KVM_MSR_selector != "h" ]] || [[ $KVM_MSR_selector_LoadHelp ]] &&  printf "   [h] see help  " | ||||||
|  | 
 | ||||||
|  |     printf "\n\n" | ||||||
|  | 
 | ||||||
|  |     read -rp "  >  "  KVM_MSR_selector | ||||||
|  | 
 | ||||||
|  |     printf "\n" | ||||||
|  | 
 | ||||||
|  |     [[ $KVM_MSR_selector == "h" ]] &&  show_kvm_sudo_security_note | ||||||
|  | 
 | ||||||
|  |     [[ ! $KVM_MSR_selector ]]  &&  break | ||||||
|  | 
 | ||||||
|  |     [[ $KVM_MSR_selector == "y" && $MSR_offer == "N" ]] || [[ $KVM_MSR_selector == "n" && $MSR_offer == "Y" ]] && break | ||||||
|  | 
 | ||||||
|  |     if [[ $KVM_MSR_selector == "y" ]]|| [[ $KVM_MSR_selector == "n" ]]; then | ||||||
|  | 
 | ||||||
|  |       # As per Martin's solution in original quickemu, needs 'tee' to get this to work, | ||||||
|  |       # but route tee's stdout to null to tidy the screen | ||||||
|  | 
 | ||||||
|  |       [[ $KVM_MSR_selector == "y" ]] &&  echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs  1> /dev/null | ||||||
|  | 
 | ||||||
|  |       [[ $KVM_MSR_selector == "n" ]] &&  echo 0 | sudo tee /sys/module/kvm/parameters/ignore_msrs  1> /dev/null | ||||||
|  | 
 | ||||||
|  |       print_kvm_status | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n  [enter]  to return \n\n" | ||||||
|  |       read -rp  "  > " | ||||||
|  | 
 | ||||||
|  |       break | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |     if [[ $KVM_MSR_selector == "d" ]]; then | ||||||
|  | 
 | ||||||
|  |       toggle_msr_defaults | ||||||
|  | 
 | ||||||
|  |       if [[ $Set_MSR_defaults == "b" ]]; then | ||||||
|  | 
 | ||||||
|  |         Set_MSR_defaults= | ||||||
|  |         print_kvm_status | ||||||
|  |         printColor "\n\n  Make TEMPORARY setting adjustments to MSRS ?" | ||||||
|  | 
 | ||||||
|  |       else | ||||||
|  |         function_find_kvm_msr_default_and_status | ||||||
|  |         break | ||||||
|  |       fi | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   done | ||||||
|  | 
 | ||||||
|  |   KVM_MSR_selector= | ||||||
|  |   KVM_MSR_selector_LoadHelp= | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | msrs_conflict_check_resolver() { | ||||||
|  | 
 | ||||||
|  |   # Do a check ... | ||||||
|  | 
 | ||||||
|  |   function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |   # Display & Offer config settings if MSRS/OS CONFLICT exists | ||||||
|  | 
 | ||||||
|  |   if [[ $KVM_MSR_status == "N" ]] ; then | ||||||
|  | 
 | ||||||
|  |     # usual system default = N | ||||||
|  | 
 | ||||||
|  |     if [[ "$VM_InstanceName" == *windows*  ]] ||	[[ "$VM_InstanceName" == *macos*  ]] ; then | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n  Selected: %s "  "$VM_InstanceName" | ||||||
|  | 
 | ||||||
|  |       printf " 'ignore_msrs' is recommended for Windows and Mac" | ||||||
|  | 
 | ||||||
|  |       #printf "\n\n  Status:  /sys/module/kvm/parameters/ignore_msrs = N   Default = %s"  "$KVM_MSR_default" | ||||||
|  | 
 | ||||||
|  |       MSR_offer="Y" | ||||||
|  | 
 | ||||||
|  |       select_msr_config | ||||||
|  | 
 | ||||||
|  |       function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |       if [[ $KVM_MSR_status == "N" ]]; then KVM_MSR_Error=1 ; else KVM_MSR_Error= ; fi | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   else | ||||||
|  | 
 | ||||||
|  |     #  Status = Y  &  which is only recommended for Windows & Mac | ||||||
|  | 
 | ||||||
|  |     if [[ "$VM_InstanceName" != *windows*  ]] &&	[[ "$VM_InstanceName" != *macos*  ]] ; then | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n  Selected: %s "  "$VM_InstanceName" | ||||||
|  | 
 | ||||||
|  |       printf " 'ignore_msrs' is only recommended for Windows and Mac" | ||||||
|  | 
 | ||||||
|  |       #printf "\n\n  Status:  /sys/module/kvm/parameters/ignore_msrs = Y   Default = %s"  "$KVM_MSR_default" | ||||||
|  | 
 | ||||||
|  |       MSR_offer="N" | ||||||
|  | 
 | ||||||
|  |       select_msr_config | ||||||
|  | 
 | ||||||
|  |       function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |       if [[ $KVM_MSR_status == "Y" ]]; then KVM_MSR_Error=1 ; else KVM_MSR_Error= ; fi | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | function_conf_error () { | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  ERROR  Quickemu-Tools  Settings, VM folder & conf file(s)" | ||||||
|  | 
 | ||||||
|  |   if [[ $1 ]] ; then printf "\n\n  Please check %s settings, location & content ... \n\n"  "$1" | ||||||
|  | 
 | ||||||
|  |   else printf "\n\n  Please check the settings and re-run this script ... \n\n" ; fi | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n  [Enter] for help  [q] to quit \n\n" | ||||||
|  | 
 | ||||||
|  |   read -rp "  >  " | ||||||
|  | 
 | ||||||
|  |   [[ $REPLY == "q" ]] && printf "\n\n" && command exit | ||||||
|  | 
 | ||||||
|  |   show_quickemu_tools_help | ||||||
|  | 
 | ||||||
|  |   command exit | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | function_snapshot_list() { | ||||||
|  | 
 | ||||||
|  |   printf "\n\n" | ||||||
|  | 
 | ||||||
|  | 	quickemu -vm "$VM_Conf_File"  --snapshot info | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | function show_quickemu_tools_help { | ||||||
|  | 
 | ||||||
|  |   printColor  "\n\n  QuickEmu-Tools version %s "  "$QtoolsVersion" | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n  Easy snapshot & MSRS tools for the QuickEmu Project" | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  Manage multiple snapshots. Recover Disk Space. " | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  Toggle boot-up & temporary MSRS's " | ||||||
|  | 
 | ||||||
|  |   printf "\n\n\n  For code contributions, add-ons, info & updates see:" | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  https://github.com/TuxVinyards/" | ||||||
|  | 
 | ||||||
|  |   printf  "\n\n\n  From a terminal:  " | ||||||
|  | 
 | ||||||
|  |   printColor  "%s --vm  \"vm-name.conf\"  [ --path \"path/folder\" ] "  "$LAUNCHER" | ||||||
|  | 
 | ||||||
|  |   printf  "\n\n  Add path if working from outside the VM's .conf folder" | ||||||
|  | 
 | ||||||
|  |   printf      "\n\n  [enter] to return  \n\n" | ||||||
|  | 
 | ||||||
|  |   read -rp "  >  " | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | show_qmod_title() { | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n  Quickemu Tools -  Version %s"  "$QtoolsVersion" | ||||||
|  | 
 | ||||||
|  |   printf "\n\n  A menu interfaced tool set for the quickemu project ..... \n\n" | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | function_show_main_menu_header () { | ||||||
|  | 
 | ||||||
|  |   printf "\033c" | ||||||
|  | 
 | ||||||
|  |   show_qmod_title | ||||||
|  | 
 | ||||||
|  |   printColor "    %s " "$VM_InstanceName" | ||||||
|  | 
 | ||||||
|  |   printf "  @   %s"  "$VM_Conf_Dir" | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ##  API READ  #################################################################################################### | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # https://unix.stackexchange.com/questions/220330/hide-and-unhide-cursor-with-tput | ||||||
|  | 
 | ||||||
|  | tput civis | ||||||
|  | 
 | ||||||
|  | if [[ ! $1 ]]; then | ||||||
|  | 
 | ||||||
|  |   show_quickemu_tools_help | ||||||
|  | 
 | ||||||
|  |   echo | ||||||
|  |   command exit 1 | ||||||
|  | 
 | ||||||
|  | else | ||||||
|  | 
 | ||||||
|  |   ##  API    --vm  "file.conf"   [ --path  "path/folder" ] | ||||||
|  | 
 | ||||||
|  |   #   where path to be used if .conf file not in current folder / present working directory | ||||||
|  | 
 | ||||||
|  |   while [[ $# -gt 0 ]]; do | ||||||
|  | 
 | ||||||
|  |     case "$1" in | ||||||
|  | 
 | ||||||
|  |       -vm|--vm) | ||||||
|  |         VM_Conf_File="$2" | ||||||
|  |         shift | ||||||
|  |         shift ;; | ||||||
|  | 
 | ||||||
|  |       --path|-path) | ||||||
|  |         VM_Conf_Dir="$2" | ||||||
|  |         shift | ||||||
|  |         shift ;; | ||||||
|  | 
 | ||||||
|  |     esac | ||||||
|  | 
 | ||||||
|  |   done | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   [[ ! $VM_Conf_Dir ]] && VM_Conf_Dir="$CurrentFolder" | ||||||
|  | 
 | ||||||
|  |   [[ ! $VM_Conf_File ]] && function_conf_error  "Qtools COMMAND LINE Instruction," | ||||||
|  | 
 | ||||||
|  |   [[ ! -e  "$VM_Conf_Dir/$VM_Conf_File" ]] && function_conf_error  "Qtools COMMAND LINE Instruction," | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   ## Check file/folder exists | ||||||
|  | 
 | ||||||
|  |   [[ ! -d "$VM_Conf_Dir" ]] &&  function_conf_error  "folder" | ||||||
|  | 
 | ||||||
|  |   # change directory to where the VM is | ||||||
|  | 
 | ||||||
|  |   if [[ $CurrentFolder != "$VM_Conf_Dir" ]]; then | ||||||
|  | 
 | ||||||
|  |     ! cd "$VM_Conf_Dir"  &&  printColor "\n\n  ERROR  .conf  folder switching \n\n" && exit 1 | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  |   [[ ! -e "$VM_Conf_File" ]] &&  function_conf_error  ".conf file" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   # Quickemu sets the same name to the .conf file and to the main folder | ||||||
|  | 
 | ||||||
|  |   VM_InstanceName="${VM_Conf_File/.conf}" | ||||||
|  | 
 | ||||||
|  |   # VM_QCOW_Dir="$VM_Conf_Dir/$VM_InstanceName" | ||||||
|  | 
 | ||||||
|  |   # check that the dir contains the right files  &&  grep .conf for right content | ||||||
|  | 
 | ||||||
|  |   [[ ! $(ls "$VM_InstanceName"/*.qcow2 2> /dev/null) ]] && function_conf_error  "folder" | ||||||
|  | 
 | ||||||
|  |   ! grep -q 'guest_os=' "$VM_Conf_File" && function_conf_error  ".conf file" | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   ## Check KVM parameter settings & advise according to guest OS | ||||||
|  | 
 | ||||||
|  |   KVM_MSR_selector= | ||||||
|  | 
 | ||||||
|  |   function_find_kvm_msr_default_and_status | ||||||
|  | 
 | ||||||
|  |   #msrs_conflict_check_resolver | ||||||
|  | 
 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | printf "\033c" | ||||||
|  | 
 | ||||||
|  | show_qmod_title | ||||||
|  | 
 | ||||||
|  | MultiInstanceError="$(pgrep -c 'quickemu-mod')" | ||||||
|  | 
 | ||||||
|  | if [[ $MultiInstanceError -gt 1 ]]; then | ||||||
|  | 
 | ||||||
|  |   printColor "\n\n  ERROR more than one instance of q-tools is running \n\n" | ||||||
|  | 
 | ||||||
|  |   read -rp "  Close the other instances, then press [enter] to continue  > " | ||||||
|  | 
 | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | check_instance_runtime() { | ||||||
|  | 
 | ||||||
|  |   # https://www.qemu.org/docs/master/tools/qemu-img.html | ||||||
|  | 
 | ||||||
|  |   InstancePID="$(pgrep "$VM_InstanceName")" | ||||||
|  | 
 | ||||||
|  |   if [[ $InstancePID ]]; then | ||||||
|  | 
 | ||||||
|  |     printColor "\n\n  WARNING snapshots operations should NOT be carried out when VM running \n\n" | ||||||
|  | 
 | ||||||
|  |     read -rp "  Close down the VM, then press [enter] to continue  > " | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | check_instance_runtime | ||||||
|  | 
 | ||||||
|  | # MAIN MENU  (select VM then choose actions to do) | ||||||
|  | 
 | ||||||
|  | while true ; do | ||||||
|  | 
 | ||||||
|  |   MainMenuChoice= | ||||||
|  | 
 | ||||||
|  |   SnapTitle= | ||||||
|  | 
 | ||||||
|  |   SnapNumber= | ||||||
|  | 
 | ||||||
|  |   SnapName= | ||||||
|  | 
 | ||||||
|  |   function_show_main_menu_header | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   if [[ ! $MainMenuChoice ]]; then | ||||||
|  | 
 | ||||||
|  |     print_kvm_status | ||||||
|  | 
 | ||||||
|  |     printf  "\n\n  [m] toggle msrs " | ||||||
|  | 
 | ||||||
|  |     printf  "\n\n\n  [sl]  list   [sc]  create   [sd]  delete   [sa]  apply    snapshots " | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |     printf  "\n\n\n  [h]   show help & info  " | ||||||
|  | 
 | ||||||
|  |     printf  "\n\n  [q]   quit " | ||||||
|  | 
 | ||||||
|  |     printf  "\n\n\n" | ||||||
|  | 
 | ||||||
|  |     read -rp "  >  "  MainMenuChoice | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |   # ACTIONS: | ||||||
|  | 
 | ||||||
|  |   if [[ $MainMenuChoice == "h" ]] ; then | ||||||
|  | 
 | ||||||
|  |     show_quickemu_tools_help | ||||||
|  | 
 | ||||||
|  |   elif [[ $MainMenuChoice == "m" ]] ; then | ||||||
|  | 
 | ||||||
|  |     #KVM_MSR_selector_LoadHelp=1 | ||||||
|  |     select_msr_config | ||||||
|  |     #msrs_conflict_check_resolver | ||||||
|  | 
 | ||||||
|  |   elif  [[ $MainMenuChoice == "q" ]] ; then | ||||||
|  | 
 | ||||||
|  |     printf "\n\n" | ||||||
|  |     MainMenuChoice= | ||||||
|  |     break | ||||||
|  |     exit | ||||||
|  | 
 | ||||||
|  |   elif  [[ $MainMenuChoice == "sl" ]] ; then | ||||||
|  | 
 | ||||||
|  |     check_instance_runtime | ||||||
|  |     function_snapshot_list | ||||||
|  |     printf "\n\n  [enter] to return to menu \n\n " | ||||||
|  |     read -rp "  >  " | ||||||
|  | 
 | ||||||
|  |   elif  [[ $MainMenuChoice == "sc" ]] ; then | ||||||
|  | 
 | ||||||
|  |     check_instance_runtime | ||||||
|  |     function_snapshot_list | ||||||
|  |     printColor "\n\n  Give [title] or [enter] for date.time  [b] back to menu " | ||||||
|  |     SnapTitle= | ||||||
|  |     printf "\n\n" | ||||||
|  |     read -rp "  >  "  SnapTitle | ||||||
|  |     printf "\n\n" | ||||||
|  | 
 | ||||||
|  |     [[ ! $SnapTitle ]] && SnapTitle="$(date +%b%d.%R)" | ||||||
|  | 
 | ||||||
|  |     [[ $SnapTitle != "b" ]] && quickemu  -vm "$VM_Conf_File"  --snapshot create  "$SnapTitle" | ||||||
|  | 
 | ||||||
|  |     printf "\n\n  [enter] to return to menu \n\n " | ||||||
|  |     read -rp "  >  " | ||||||
|  | 
 | ||||||
|  |   elif  [[ $MainMenuChoice == "sd" ]] ; then | ||||||
|  | 
 | ||||||
|  |     printColor "\n\n Quickemu-Tools Snapshot Deletion:" | ||||||
|  | 
 | ||||||
|  |     check_instance_runtime | ||||||
|  |     function_snapshot_list | ||||||
|  | 
 | ||||||
|  |     # Create range-selectable array | ||||||
|  |     SnapListString="$(function_snapshot_list | grep '[0-9][0-9]:')" | ||||||
|  |     mapfile -t SnapListArrRaw <<< "$SnapListString" | ||||||
|  | 
 | ||||||
|  |     i=0 | ||||||
|  |     printColor "\n\n ID  Array  Name \n\n" | ||||||
|  |     while [[ "${SnapListArrRaw[$i]}" ]]; do | ||||||
|  |       IFS=' ' read -ra SnapListArrSeparated <<< "${SnapListArrRaw[$i]}" | ||||||
|  |       printf "%2d    %2d    %s \n"  "${SnapListArrSeparated[0]}"  "$i"  "${SnapListArrSeparated[1]}" | ||||||
|  |       ((i+=1)) | ||||||
|  |     done | ||||||
|  | 
 | ||||||
|  |     SnapListArrTotal=$((i-1)) | ||||||
|  | 
 | ||||||
|  |     printColor "\n\n Give ARRAY number 0 to %s of snapshot or start of snapshot range to delete"  "$SnapListArrTotal" | ||||||
|  |     printf "\n\n [enter] to return to main menu " | ||||||
|  | 
 | ||||||
|  |     SnapName= | ||||||
|  |     SnapDeleteStart= | ||||||
|  |     SnapDeleteEnd= | ||||||
|  |     SnapDeleteConfirm= | ||||||
|  | 
 | ||||||
|  |     printf "\n\n" | ||||||
|  |     read -rp " >  "  SnapDeleteStart | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |     if [[ $SnapDeleteStart ]]; then | ||||||
|  | 
 | ||||||
|  |         printColor "\n\n [enter] for individual snapshot  or  ARRAY [number] for end of range (inclusive) \n\n" | ||||||
|  |         read -rp " >  "  SnapDeleteEnd | ||||||
|  | 
 | ||||||
|  |         if [[ $SnapDeleteEnd ]]; then | ||||||
|  |           printf "\n Array Range = %s to %s " "$SnapDeleteStart"  "$SnapDeleteEnd" | ||||||
|  |         else | ||||||
|  |           printf "\n Delete = Array entry %s " "$SnapDeleteStart" | ||||||
|  |           SnapDeleteEnd="$SnapDeleteStart" | ||||||
|  |         fi | ||||||
|  | 
 | ||||||
|  |       printColor "\n\n [enter] to continue  [b] back to main menu \n\n" | ||||||
|  | 
 | ||||||
|  |       read -rp " >  "  SnapDeleteConfirm | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |       if [[ $SnapDeleteConfirm == "b" ]]; then | ||||||
|  | 
 | ||||||
|  |         printf "\n\n Deletion schedule has been CANCELLED" | ||||||
|  | 
 | ||||||
|  |       else | ||||||
|  | 
 | ||||||
|  |         SnapDeleteRangeCounter=$SnapDeleteStart | ||||||
|  | 
 | ||||||
|  |         while [[ $SnapDeleteRangeCounter -le $SnapDeleteEnd ]]; do | ||||||
|  |           IFS=' ' read -ra SnapListArrSeparated <<< "${SnapListArrRaw[$SnapDeleteRangeCounter]}" | ||||||
|  |           SnapName="${SnapListArrSeparated[1]}" | ||||||
|  | 
 | ||||||
|  |           if [[ ! $SnapName ]]; then | ||||||
|  |             printColor "\n\n ERROR with SnapShot Array List \n\n" | ||||||
|  |             exit 1 | ||||||
|  |           else | ||||||
|  |             printColor "\n\n Deleting SnapShot %2d   %2d  %s \n\n"  "${SnapListArrSeparated[0]}"  "$SnapDeleteRangeCounter"  "${SnapListArrSeparated[1]}" | ||||||
|  |             quickemu  -vm "$VM_Conf_File"  --snapshot delete  "$SnapName" | ||||||
|  |           fi | ||||||
|  |           ((SnapDeleteRangeCounter+=1)) | ||||||
|  |         done | ||||||
|  | 
 | ||||||
|  |       fi | ||||||
|  | 
 | ||||||
|  |       printf "\n\n [enter] to return to menu \n\n " | ||||||
|  |       read -rp " >  " | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   elif  [[ $MainMenuChoice == "sa" ]] ; then | ||||||
|  | 
 | ||||||
|  |     check_instance_runtime | ||||||
|  |     function_snapshot_list | ||||||
|  |     printColor "\n\n  Give number of snapshot to use  [enter] to return to menu " | ||||||
|  |     SnapNumber= | ||||||
|  | 
 | ||||||
|  |     printf "\n\n" | ||||||
|  |     read -rp "  >  "  SnapNumber | ||||||
|  |     printf "\n\n" | ||||||
|  | 
 | ||||||
|  |     if [[ $SnapNumber ]]; then | ||||||
|  | 
 | ||||||
|  |       quickemu -vm "$VM_Conf_File"  --snapshot apply  "$SnapNumber" | ||||||
|  | 
 | ||||||
|  |       printf "\n\n  May take a moment .... \n\n" | ||||||
|  |       printColor "\n\n  Snapshot %s has been applied. \n\n"  "$SnapNumber " | ||||||
|  | 
 | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|  |   fi | ||||||
|  | 
 | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # vim:tabstop=2:shiftwidth=2:expandtab | ||||||
|  | 
 | ||||||
|  | ## | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=agarimos | Name=agarimos | ||||||
| releases=latest | GenericName= | ||||||
| editions=plasma gnome xfce | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "plasma"!"gnome"!"xfce" | xargs -I{} sh -c "./quickget agarimos {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "plasma"!"gnome"!"xfce" | xargs -I{} sh -c "./quickget agarimos {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/agarimos.png | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=alma | Name=alma | ||||||
| releases=8.6 8.7 9.0 9.1 | GenericName= | ||||||
| editions=minimal dvd | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8.6"!"8.7"!"9.0"!"9.1" --field="Edition:CB" "minimal"!"dvd" | xargs -I{} sh -c "./quickget alma {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8.6"!"8.7"!"9.0"!"9.1" --field="Edition:CB" "minimal"!"dvd" | xargs -I{} sh -c "./quickget alma {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/alma.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=alpine | Name=alpine | ||||||
| releases=3.12 3.13 3.14 3.15 latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "3.12"!"3.13"!"3.14"!"3.15"!"latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget alpine {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "3.12"!"3.13"!"3.14"!"3.15"!"latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget alpine {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/alpine.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=android | Name=android | ||||||
| releases=7.1 8.1 9.0 | GenericName= | ||||||
| editions=x86 x86_64 | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "7.1"!"8.1"!"9.0" --field="Edition:CB" "x86"!"x86_64" | xargs -I{} sh -c "./quickget android {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "7.1"!"8.1"!"9.0" --field="Edition:CB" "x86"!"x86_64" | xargs -I{} sh -c "./quickget android {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/android.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=archcraft | Name=archcraft | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget archcraft {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget archcraft {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/archcraft.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=archlinux | Name=archlinux | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget archlinux {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget archlinux {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/archlinux.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=arcolinux | Name=arcolinux | ||||||
| releases=v21.09.11 v21.11.05 v22.01.10 | GenericName= | ||||||
| editions=large small | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "v21.09.11"!"v21.11.05"!"v22.01.10" --field="Edition:CB" "large"!"small" | xargs -I{} sh -c "./quickget arcolinux {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "v21.09.11"!"v21.11.05"!"v22.01.10" --field="Edition:CB" "large"!"small" | xargs -I{} sh -c "./quickget arcolinux {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/arcolinux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=batocera | Name=batocera | ||||||
| releases=32 33 34 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "32"!"33"!"34" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget batocera {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "32"!"33"!"34" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget batocera {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/batocera.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=blendos | Name=blendos | ||||||
| releases=23.01 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "23.01" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget blendos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "23.01" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget blendos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/blendos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=cachyos | Name=cachyos | ||||||
| releases=latest | GenericName= | ||||||
| editions=kde gnome cli | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "kde"!"gnome"!"cli" | xargs -I{} sh -c "./quickget cachyos {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "kde"!"gnome"!"cli" | xargs -I{} sh -c "./quickget cachyos {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/cachyos.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=centos-stream | Name=centos-stream | ||||||
| releases=8 9 | GenericName= | ||||||
| editions=dvd1 boot | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8"!"9" --field="Edition:CB" "dvd1"!"boot" | xargs -I{} sh -c "./quickget centos-stream {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8"!"9" --field="Edition:CB" "dvd1"!"boot" | xargs -I{} sh -c "./quickget centos-stream {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/centos-stream.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=cereus | Name=cereus | ||||||
| releases=latest | GenericName= | ||||||
| editions=lxqt xfce | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "lxqt"!"xfce" | xargs -I{} sh -c "./quickget cereus {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "lxqt"!"xfce" | xargs -I{} sh -c "./quickget cereus {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/cereus.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=debian | Name=debian | ||||||
| releases=10.0.0 10.1.0 10.2.0 10.3.0 10.4.0 10.5.0 10.6.0 10.7.0 10.8.0 10.9.0 10.10.0 10.11.0 10.12.0 10.13.0 11.0.0 11.1.0 11.2.0 11.3.0 11.4.0 11.5.0 11.6.0 | GenericName= | ||||||
| editions=standard cinnamon gnome kde lxde lxqt mate xfce netinst | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "10.0.0"!"10.1.0"!"10.2.0"!"10.3.0"!"10.4.0"!"10.5.0"!"10.6.0"!"10.7.0"!"10.8.0"!"10.9.0"!"10.10.0"!"10.11.0"!"10.12.0"!"10.13.0"!"11.0.0"!"11.1.0"!"11.2.0"!"11.3.0"!"11.4.0"!"11.5.0"!"11.6.0" --field="Edition:CB" "standard"!"cinnamon"!"gnome"!"kde"!"lxde"!"lxqt"!"mate"!"xfce"!"netinst" | xargs -I{} sh -c "./quickget debian {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "10.0.0"!"10.1.0"!"10.2.0"!"10.3.0"!"10.4.0"!"10.5.0"!"10.6.0"!"10.7.0"!"10.8.0"!"10.9.0"!"10.10.0"!"10.11.0"!"10.12.0"!"10.13.0"!"11.0.0"!"11.1.0"!"11.2.0"!"11.3.0"!"11.4.0"!"11.5.0"!"11.6.0" --field="Edition:CB" "standard"!"cinnamon"!"gnome"!"kde"!"lxde"!"lxqt"!"mate"!"xfce"!"netinst" | xargs -I{} sh -c "./quickget debian {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/debian.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=deepin | Name=deepin | ||||||
| releases=20 20.1 20.2 20.2.1 20.2.2 20.2.3 20.2.4 20.3 20.4 20.5 20.6 20.7 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "20"!"20.1"!"20.2"!"20.2.1"!"20.2.2"!"20.2.3"!"20.2.4"!"20.3"!"20.4"!"20.5"!"20.6"!"20.7" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget deepin {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "20"!"20.1"!"20.2"!"20.2.1"!"20.2.2"!"20.2.3"!"20.2.4"!"20.3"!"20.4"!"20.5"!"20.6"!"20.7" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget deepin {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/deepin.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=devuan | Name=devuan | ||||||
| releases=beowulf chimaera | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "beowulf"!"chimaera" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget devuan {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "beowulf"!"chimaera" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget devuan {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/devuan.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=dietpi | Name=dietpi | ||||||
| releases=bios uefi | GenericName= | ||||||
| editions=bookworm bookworm-installer bullseye bullseye-installer | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "bios"!"uefi" --field="Edition:CB" "bookworm"!"bookworm-installer"!"bullseye"!"bullseye-installer" | xargs -I{} sh -c "./quickget dietpi {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "bios"!"uefi" --field="Edition:CB" "bookworm"!"bookworm-installer"!"bullseye"!"bullseye-installer" | xargs -I{} sh -c "./quickget dietpi {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/dietpi.png | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=dragonflybsd | Name=dragonflybsd | ||||||
| releases=6.4.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "6.4.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget dragonflybsd {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "6.4.0"!"6.2.2"!"6.2.1"!"6.0.1"!"6.0.0"!"5.8.3"!"5.8.2"!"5.8.1"!"5.6.3"!"5.8.0"!"5.6.2"!"5.6.1"!"5.6.0"!"5.4.3"!"5.4.2"!"5.4.1"!"5.4.0"!"5.2.2"!"5.2.1"!"5.2.0"!"5.0.2"!"5.0.1"!"5.0.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget dragonflybsd {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/dragonflybsd.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=elementary | Name=elementary | ||||||
| releases=7.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "7.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget elementary {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "7.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget elementary {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/elementary.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=endeavouros | Name=endeavouros | ||||||
| releases=apollo_22_1 artemis-22_6 artemis_neo_22_7 artemis_neo_22_8 artemis_nova_22_9 atlantis-21_4 atlantis_neo-21_5 cassini_22_12 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "apollo_22_1"!"artemis-22_6"!"artemis_neo_22_7"!"artemis_neo_22_8"!"artemis_nova_22_9"!"atlantis-21_4"!"atlantis_neo-21_5"!"cassini_22_12" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget endeavouros {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "apollo_22_1"!"artemis-22_6"!"artemis_neo_22_7"!"artemis_neo_22_8"!"artemis_nova_22_9"!"atlantis-21_4"!"atlantis_neo-21_5"!"cassini_22_12" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget endeavouros {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/endeavouros.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=endless | Name=endless | ||||||
| releases=5.0.0 | GenericName= | ||||||
| editions=base en fr pt_BR es | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "5.0.0" --field="Edition:CB" "base"!"en"!"fr"!"pt_BR"!"es" | xargs -I{} sh -c "./quickget endless {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "5.0.0" --field="Edition:CB" "base"!"en"!"fr"!"pt_BR"!"es" | xargs -I{} sh -c "./quickget endless {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/endless.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=fedora | Name=fedora | ||||||
| releases=33 34 35 36 37 | GenericName= | ||||||
| editions=Workstation Cinnamon i3 KDE LXDE LXQt Mate Xfce Silverblue Server | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "33"!"34"!"35"!"36"!"37" --field="Edition:CB" "Workstation"!"Cinnamon"!"i3"!"KDE"!"LXDE"!"LXQt"!"Mate"!"Xfce"!"Silverblue"!"Server" | xargs -I{} sh -c "./quickget fedora {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "33"!"34"!"35"!"36"!"37" --field="Edition:CB" "Workstation"!"Cinnamon"!"i3"!"KDE"!"LXDE"!"LXQt"!"Mate"!"Xfce"!"Silverblue"!"Server" | xargs -I{} sh -c "./quickget fedora {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/fedora.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=freebsd | Name=freebsd | ||||||
| releases=12.3 12.4 13.0 13.1 13.2 | GenericName= | ||||||
| editions=disc1 dvd1 | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "12.3"!"12.4"!"13.0"!"13.1"!"13.2" --field="Edition:CB" "disc1"!"dvd1" | xargs -I{} sh -c "./quickget freebsd {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "12.3"!"12.4"!"13.0"!"13.1"!"13.2" --field="Edition:CB" "disc1"!"dvd1" | xargs -I{} sh -c "./quickget freebsd {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/freebsd.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=freedos | Name=freedos | ||||||
| releases=1.2 1.3 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "1.2"!"1.3" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget freedos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "1.2"!"1.3" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget freedos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/freedos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=fvoid | Name=fvoid | ||||||
| releases=latest 20230222 20230124 20221021 20220818 | GenericName= | ||||||
| editions=lxqt | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest"!"20230222"!"20230124"!"20221021"!"20220818" --field="Edition:CB" "lxqt" | xargs -I{} sh -c "./quickget fvoid {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest"!"20230222"!"20230124"!"20221021"!"20220818" --field="Edition:CB" "lxqt" | xargs -I{} sh -c "./quickget fvoid {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/tux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=gabeeos | Name=gabeeos | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget gabeeos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget gabeeos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/gabeeos.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=garuda | Name=garuda | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget garuda {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget garuda {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/garuda.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=gentoo | Name=gentoo | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget gentoo {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget gentoo {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/gentoo.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ghostbsd | Name=ghostbsd | ||||||
| releases=21.10.16 21.11.24 22.01.12 | GenericName= | ||||||
| editions=mate xfce | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.10.16"!"21.11.24"!"22.01.12" --field="Edition:CB" "mate"!"xfce" | xargs -I{} sh -c "./quickget ghostbsd {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.10.16"!"21.11.24"!"22.01.12" --field="Edition:CB" "mate"!"xfce" | xargs -I{} sh -c "./quickget ghostbsd {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/ghostbsd.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=haiku | Name=haiku | ||||||
| releases=r1beta3 r1beta4 | GenericName= | ||||||
| editions=x86_64 x86_gcc2h | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "r1beta3"!"r1beta4" --field="Edition:CB" "x86_64"!"x86_gcc2h" | xargs -I{} sh -c "./quickget haiku {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "r1beta3"!"r1beta4" --field="Edition:CB" "x86_64"!"x86_gcc2h" | xargs -I{} sh -c "./quickget haiku {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/haiku.png | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=kali | Name=kali | ||||||
| releases=current kali-weekly | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "current"!"kali-weekly" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget kali {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "current"!"kali-weekly" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget kali {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/kali.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=kdeneon | Name=kdeneon | ||||||
| releases=user testing unstable developer | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "user"!"testing"!"unstable"!"developer" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget kdeneon {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "user"!"testing"!"unstable"!"developer" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget kdeneon {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/kdeneon.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=kolibrios | Name=kolibrios | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget kolibrios {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget kolibrios {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/kolibrios.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=kubuntu | Name=kubuntu | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget kubuntu {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget kubuntu {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/kubuntu.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=linuxmint | Name=linuxmint | ||||||
| releases=20.2 20.3 21 21.1 | GenericName= | ||||||
| editions=cinnamon mate xfce | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "20.2"!"20.3"!"21"!"21.1" --field="Edition:CB" "cinnamon"!"mate"!"xfce" | xargs -I{} sh -c "./quickget linuxmint {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "20.2"!"20.3"!"21"!"21.1" --field="Edition:CB" "cinnamon"!"mate"!"xfce" | xargs -I{} sh -c "./quickget linuxmint {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/linuxmint.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=lmde | Name=lmde | ||||||
| releases=5 | GenericName= | ||||||
| editions=cinnamon | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "5" --field="Edition:CB" "cinnamon" | xargs -I{} sh -c "./quickget lmde {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "5" --field="Edition:CB" "cinnamon" | xargs -I{} sh -c "./quickget lmde {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/lmde.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=lubuntu | Name=lubuntu | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget lubuntu {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget lubuntu {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/lubuntu.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=macos | Name=macos | ||||||
| releases=high-sierra mojave catalina big-sur monterey ventura | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "high-sierra"!"mojave"!"catalina"!"big-sur"!"monterey"!"ventura" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget macos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "high-sierra"!"mojave"!"catalina"!"big-sur"!"monterey"!"ventura" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget macos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/macos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=mageia | Name=mageia | ||||||
| releases=8 | GenericName= | ||||||
| editions=Plasma GNOME Xfce | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8" --field="Edition:CB" "Plasma"!"GNOME"!"Xfce" | xargs -I{} sh -c "./quickget mageia {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8" --field="Edition:CB" "Plasma"!"GNOME"!"Xfce" | xargs -I{} sh -c "./quickget mageia {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/mageia.png | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=manjaro | Name=manjaro | ||||||
| releases=xfce gnome kde budgie cinnamon i3 mate | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "xfce"!"gnome"!"kde"!"budgie"!"cinnamon"!"i3"!"mate" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget manjaro {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "xfce"!"gnome"!"kde"!"budgie"!"cinnamon"!"i3"!"mate" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget manjaro {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/manjaro.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=miyo | Name=miyo | ||||||
| releases=latest 2022 2020 2019 2018 2017 2016 | GenericName= | ||||||
| editions=kwin ceres jwm openbox mate | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest"!"2022"!"2020"!"2019"!"2018"!"2017"!"2016" --field="Edition:CB" "kwin"!"ceres"!"jwm"!"openbox"!"mate" | xargs -I{} sh -c "./quickget miyo {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest"!"2022"!"2020"!"2019"!"2018"!"2017"!"2016" --field="Edition:CB" "kwin"!"ceres"!"jwm"!"openbox"!"mate" | xargs -I{} sh -c "./quickget miyo {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/tux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=mxlinux | Name=mxlinux | ||||||
| releases=21.3 | GenericName= | ||||||
| editions=Xfce KDE Fluxbox | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.3" --field="Edition:CB" "Xfce"!"KDE"!"Fluxbox" | xargs -I{} sh -c "./quickget mxlinux {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.3" --field="Edition:CB" "Xfce"!"KDE"!"Fluxbox" | xargs -I{} sh -c "./quickget mxlinux {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/mxlinux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=netboot | Name=netboot | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget netboot {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget netboot {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/netboot.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=netbsd | Name=netbsd | ||||||
| releases=9.0 9.1 9.2 9.3 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "9.0"!"9.1"!"9.2"!"9.3" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget netbsd {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "9.3"!"9.2"!"9.1"!"9.0"!"8.2"!"8.1"!"8.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget netbsd {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/netbsd.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=nixos | Name=nixos | ||||||
| releases=21.05 21.11 22.05 22.11 | GenericName= | ||||||
| editions=gnome plasma5 minimal | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.05"!"21.11"!"22.05"!"22.11" --field="Edition:CB" "gnome"!"plasma5"!"minimal" | xargs -I{} sh -c "./quickget nixos {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "21.05"!"21.11"!"22.05"!"22.11" --field="Edition:CB" "gnome"!"plasma5"!"minimal" | xargs -I{} sh -c "./quickget nixos {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/nixos.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=openbsd | Name=openbsd | ||||||
| releases=6.8 6.9 7.0 7.1 7.2 7.3 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "6.8"!"6.9"!"7.0"!"7.1"!"7.2"!"7.3" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget openbsd {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "6.8"!"6.9"!"7.0"!"7.1"!"7.2"!"7.3" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget openbsd {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/openbsd.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=opensuse | Name=opensuse | ||||||
| releases=15.0 15.1 15.2 15.3 15.4 microos tumbleweed | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "15.0"!"15.1"!"15.2"!"15.3"!"15.4"!"microos"!"tumbleweed" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget opensuse {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "15.0"!"15.1"!"15.2"!"15.3"!"15.4"!"microos"!"tumbleweed" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget opensuse {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/opensuse.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=oraclelinux | Name=oraclelinux | ||||||
| releases=7.7 7.8 7.9 8.4 8.5 8.6 9.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "7.7"!"7.8"!"7.9"!"8.4"!"8.5"!"8.6"!"9.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget oraclelinux {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "7.7"!"7.8"!"7.9"!"8.4"!"8.5"!"8.6"!"9.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget oraclelinux {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/oraclelinux.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=popos | Name=popos | ||||||
| releases=20.04 21.10 22.04 | GenericName= | ||||||
| editions=intel nvidia | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "20.04"!"21.10"!"22.04" --field="Edition:CB" "intel"!"nvidia" | xargs -I{} sh -c "./quickget popos {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "20.04"!"21.10"!"22.04" --field="Edition:CB" "intel"!"nvidia" | xargs -I{} sh -c "./quickget popos {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/popos.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=reactos | Name=reactos | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget reactos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget reactos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/reactos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=rebornos | Name=rebornos | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget rebornos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget rebornos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/rebornos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=rockylinux | Name=rockylinux | ||||||
| releases=8.3 8.4 8.5 9.0 9.1 | GenericName= | ||||||
| editions=minimal dvd (dvd1 prior to 9.0) | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8.3"!"8.4"!"8.5"!"9.0"!"9.1" --field="Edition:CB" "minimal"!"dvd"!"(dvd1"!"prior"!"to"!"9.0)" | xargs -I{} sh -c "./quickget rockylinux {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "8.3"!"8.4"!"8.5"!"9.0"!"9.1" --field="Edition:CB" "minimal"!"dvd"!"(dvd1"!"prior"!"to"!"9.0)" | xargs -I{} sh -c "./quickget rockylinux {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/rockylinux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=siduction | Name=siduction | ||||||
| releases=latest | GenericName= | ||||||
| editions=kde lxqt nox xfce xorg | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "kde"!"lxqt"!"nox"!"xfce"!"xorg" | xargs -I{} sh -c "./quickget siduction {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "latest" --field="Edition:CB" "kde"!"lxqt"!"nox"!"xfce"!"xorg" | xargs -I{} sh -c "./quickget siduction {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/siduction.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=slackware | Name=slackware | ||||||
| releases=14.2 15.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "14.2"!"15.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget slackware {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "14.2"!"15.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget slackware {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/slackware.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=slitaz | Name=slitaz | ||||||
| releases=preferred core core64 loram core-5in1 preinit | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "preferred"!"core"!"core64"!"loram"!"core-5in1"!"preinit" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget slitaz {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "preferred"!"core"!"core64"!"loram"!"core-5in1"!"preinit" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget slitaz {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/slitaz.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=solus | Name=solus | ||||||
| releases=4.3 | GenericName= | ||||||
| editions=Budgie GNOME MATE Plasma | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "4.3" --field="Edition:CB" "Budgie"!"GNOME"!"MATE"!"Plasma" | xargs -I{} sh -c "./quickget solus {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "4.3" --field="Edition:CB" "Budgie"!"GNOME"!"MATE"!"Plasma" | xargs -I{} sh -c "./quickget solus {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/solus.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=steamos | Name=steamos | ||||||
| releases=4.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "4.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget steamos {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "4.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget steamos {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/steamos.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=tails | Name=tails | ||||||
| releases=stable | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "stable" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget tails {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "stable" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget tails {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/tails.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=truenas-core | Name=truenas-core | ||||||
| releases=12.0 13.0 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "12.0"!"13.0" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget truenas-core {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "12.0"!"13.0" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget truenas-core {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/truenas-core.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=truenas-scale | Name=truenas-scale | ||||||
| releases=22.02 22.12 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "22.02"!"22.12" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget truenas-scale {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "22.02"!"22.12" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget truenas-scale {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/truenas-scale.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntu-budgie | Name=ubuntu-budgie | ||||||
| releases=18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntu-budgie {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntu-budgie {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntu-budgie.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntu-mate | Name=ubuntu-mate | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntu-mate {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntu-mate {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntu-mate.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntu-unity | Name=ubuntu-unity | ||||||
| releases=22.10 daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "22.10"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntu-unity {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "22.10"!"23.04"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntu-unity {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntu-unity.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntu | Name=ubuntu | ||||||
| releases=14.04 16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "14.04"!"16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntu {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "14.04"!"16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntu {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntu.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										16
									
								
								supported/ubuntucinnamon.desktop
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								supported/ubuntucinnamon.desktop
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,16 @@ | ||||||
|  | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
|  | Type=Application | ||||||
|  | Name=ubuntucinnamon | ||||||
|  | GenericName= | ||||||
|  | Comment= | ||||||
|  | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "23.04"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntucinnamon {}";/usr/bin/fish' | ||||||
|  | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
|  | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
|  | 
 | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntukylin | Name=ubuntukylin | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntukylin {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntukylin {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntukylin.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ubuntustudio | Name=ubuntustudio | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ubuntustudio {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ubuntustudio {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ubuntustudio.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=ventoy | Name=ventoy | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget ventoy {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget ventoy {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/ventoy.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=void | Name=void | ||||||
| releases=current 20221001 20210316 20210930 20210218 20191109 20190526 20190217 20181111 20171007 20170825 20170220 | GenericName= | ||||||
| editions=base base-musl cinnamon cinnamon-musl enlightenment enlightenment-musl gnome gnome-musl lxde lxde-musl lxqt lxqt-musl mate mate-musl xfce xfce-musl | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "current"!"20221001"!"20210316"!"20210930"!"20210218"!"20191109"!"20190526"!"20190217"!"20181111"!"20171007"!"20170825"!"20170220" --field="Edition:CB" "base"!"base-musl"!"cinnamon"!"cinnamon-musl"!"enlightenment"!"enlightenment-musl"!"gnome"!"gnome-musl"!"lxde"!"lxde-musl"!"lxqt"!"lxqt-musl"!"mate"!"mate-musl"!"xfce"!"xfce-musl" | xargs -I{} sh -c "./quickget void {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "current"!"20221001"!"20210316"!"20210930"!"20210218"!"20191109"!"20190526"!"20190217"!"20181111"!"20171007"!"20170825"!"20170220" --field="Edition:CB" "base"!"base-musl"!"cinnamon"!"cinnamon-musl"!"enlightenment"!"enlightenment-musl"!"gnome"!"gnome-musl"!"lxde"!"lxde-musl"!"lxqt"!"lxqt-musl"!"mate"!"mate-musl"!"xfce"!"xfce-musl" | xargs -I{} sh -c "./quickget void {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/void.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=voidpup | Name=voidpup | ||||||
| releases=latest | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "latest" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget voidpup {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "latest" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget voidpup {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/voidpup.png | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=vxlinux | Name=vxlinux | ||||||
| releases=7.0 6.1.2 6.1 5.0 4.2 4.1 4.0. | GenericName= | ||||||
| editions=lxqt kde | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "7.0"!"6.1.2"!"6.1"!"5.0"!"4.2"!"4.1"!"4.0." --field="Edition:CB" "lxqt"!"kde" | xargs -I{} sh -c "./quickget vxlinux {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "7.0"!"6.1.2"!"6.1"!"5.0"!"4.2"!"4.1"!"4.0." --field="Edition:CB" "lxqt"!"kde" | xargs -I{} sh -c "./quickget vxlinux {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/vxlinux.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=windows | Name=windows | ||||||
| releases=8 10 11 | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "8"!"10"!"11" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget windows {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "8"!"10"!"11" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget windows {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/windows.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=xerolinux | Name=xerolinux | ||||||
| releases=kde | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "kde" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget xerolinux {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "kde" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget xerolinux {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/xerolinux.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,9 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=xubuntu | Name=xubuntu | ||||||
| releases=16.04 18.04 20.04 22.04 22.10 jammy-daily daily-live daily-canary | GenericName= | ||||||
| replace="!" | Comment= | ||||||
| Exec=sh -c 'cd "/home/zen/git/distrohopper" && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d"|" -f1 | xargs -I{} sh -c "./quickget xubuntu {}"' | Exec=xterm-256color -e sh -c 'cd /home/zen/git/distrohopper && yad --form --field="Release:CB" "16.04"!"18.04"!"20.04"!"22.04"!"22.10"!"23.04"!"jammy-daily"!"daily-live"!"daily-canary" | cut -d\' | \' -f1 | xargs -I{} sh -c "./quickget xubuntu {}";/usr/bin/fish' | ||||||
| Icon=/home/zen/git/distrohopper/icons/xubuntu.svg | Icon=hop | ||||||
|  | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,16 @@ | ||||||
| [Desktop Entry] | [Desktop Entry] | ||||||
|  | Version=0.77b | ||||||
| Type=Application | Type=Application | ||||||
| Name=zorin | Name=zorin | ||||||
| releases=16 | GenericName= | ||||||
| editions=core64 lite64 education64 edulite64 | Comment= | ||||||
| replace="!" | Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "16" --field="Edition:CB" "core64"!"lite64"!"education64"!"edulite64" | xargs -I{} sh -c "./quickget zorin {}";/usr/bin/fish' | ||||||
| Exec=sh -c 'cd /home/zen/git/distrohopper && yad --form --separator=" " --field="Release:CB" "16" --field="Edition:CB" "core64"!"lite64"!"education64"!"edulite64" | xargs -I{} sh -c "./quickget zorin {}"' | Icon=hop | ||||||
| Icon=/home/zen/git/distrohopper/icons/zorin.svg | Terminal= | ||||||
|  | X-MultipleArgs= | ||||||
|  | Type=Application | ||||||
| Categories=System;Virtualization; | Categories=System;Virtualization; | ||||||
|  | StartupNotify= | ||||||
|  | MimeType= | ||||||
|  | Keywords= | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										44
									
								
								yadtest.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								yadtest.sh
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,44 @@ | ||||||
|  | #!/bin/bash | ||||||
|  | 
 | ||||||
|  | # Define function for Yad dialog box | ||||||
|  | function show_dialog { | ||||||
|  |   yad --title="DistroHopper" \ | ||||||
|  |     --text="Please select an option:" \ | ||||||
|  |     --button="Help:1" \ | ||||||
|  |     --button="Choose VM directory:2" \ | ||||||
|  |     --button="Install:3" \ | ||||||
|  |     --button="Portable mode:4" \ | ||||||
|  |     --button="Update supported VMs:5" \ | ||||||
|  |     --button="Update ready VMs:6" \ | ||||||
|  |     --button="Run TUI:7" \ | ||||||
|  |     --button="Start GUI:8" \ | ||||||
|  |     --button="Add new distro:9" \ | ||||||
|  |     --button="Sort functions:10" \ | ||||||
|  |     --button="Push changes:11" \ | ||||||
|  |     --button="Copy ISOs:12" \ | ||||||
|  |     --button="Translate:13" \ | ||||||
|  |     --button="Run new TUI:14" | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | # Call Yad function and store result in $button | ||||||
|  | button=$(show_dialog) | ||||||
|  | 
 | ||||||
|  | # Parse $button and execute corresponding function | ||||||
|  | case $button in | ||||||
|  |   1) help_show ;; | ||||||
|  |   2) virtual_machines_directory_choose ;; | ||||||
|  |   3) echo $"Starting installation..." ; installation_process ;; | ||||||
|  |   4) echo $"Switching to portable mode!" ; work_in_current_dir ;; | ||||||
|  |   5) echo $"Updating supported VMs..." ; virtual_machines_update_supported ;; | ||||||
|  |   6) echo $"Updating ready VMs..." ; virtual_machines_update_ready ;; | ||||||
|  |   7) echo $"Running DistroHopper TUI..." ; distrohopper_run_tui ;; | ||||||
|  |   8) echo $"Starting DistroHopper GUI..." ; distrohopper_run_gui ;; | ||||||
|  |   9) echo $"Adding new distro started..." ; add_distro ;; | ||||||
|  |   10) echo $"Sorting functions in template..." ; TOOL_sort_functions_in_quickget ;; | ||||||
|  |   11) echo $"Pushing changes to... #TODO" ; push_changes ;; | ||||||
|  |   12) echo $"Copying ISOs to dir. It will take some time..." ; TOOL_copy_ISOs_to_dir ;; | ||||||
|  |   13) TOOL_translate ;; | ||||||
|  |   14) run_tui_new ;; | ||||||
|  |   *) echo $"No option selected." ;; | ||||||
|  | 
 | ||||||
|  | esac | ||||||
							
								
								
									
										25
									
								
								yadtest2.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										25
									
								
								yadtest2.sh
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,25 @@ | ||||||
|  | #!/bin/bash | ||||||
|  | 
 | ||||||
|  | key=$((RANDOM % 9000 + 1000)) | ||||||
|  | yad --plug="$key" --tabnum=1 --monitor --icons --borders=0 --icon-size=46 --item-width=76 --form --no-buttons --text-align=center \ | ||||||
|  |  --field="Help!!Show this help and exit":fbtn "$HELP" \ | ||||||
|  |  --field="Set VMs Directory:2!!Set default directory where VMs are stored":fbtn "$DIR" \ | ||||||
|  |  --field="!Enter new language string" "${lang:-$lang}" \ | ||||||
|  |  --field="Install DistroHopper:3!!Install DistroHopper":fbtn "$INSTALL" \ | ||||||
|  |  --field="Portable mode:4!Portable mode":fbtn "$MODE" \ | ||||||
|  |  --field="Supported!!Update supported VMs":fbtn "$SUPPORTED" \ | ||||||
|  |  --field="Ready!!Update ready to run VMs":fbtn "$READY" \ | ||||||
|  |  --field="Tui!!Run terminal user interface (TUI)":fbtn "$TUI" \ | ||||||
|  |  --field="Add!!Add new distro to quickget":fbtn "$ADD" \ | ||||||
|  |  --field="Sort!!Sort functions in quickget":fbtn "$SORT" \ | ||||||
|  |  --field="Push!!Push changed quickget to quickemu project #todo":fbtn "$PUSH" \ | ||||||
|  |  --field="Copy!!Copy all ISOs to target dir (for Ventoy)":fbtn "$COPY" \ | ||||||
|  |  --field="Translate DistroHopper!!Translate DistroHopper":fbtn "$TRANSLATE" \ | ||||||
|  |  --field="Test!!Work in Progress":fbtn "$TEST" \ | ||||||
|  |  --field="ne!!XXX":fbtn "$NEXT" \ | ||||||
|  |  --button="Exit":0 & | ||||||
|  | yad --dynamic --notebook --key="$key" --monitor --listen --window-icon="$DH_ICON_DIR"/hop.svg \ | ||||||
|  |  --width=900 --height=900 --no-buttons --title="DistroHopper" --tab="Advanced" | ||||||
|  | VAR1="$?" | ||||||
|  | echo "  DEBUG: VAR1 = $VAR1" | ||||||
|  | echo $? | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue