| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #################################################################################################### | 
					
						
							|  |  |  | # Name:         Autodesk Fusion 360 - Cronjob for Update (Linux)                                   # | 
					
						
							|  |  |  | # Description:  This file checks whether there is a newer version of Autodesk Fusion 360.          # | 
					
						
							|  |  |  | # Author:       Steve Zabka                                                                        # | 
					
						
							|  |  |  | # Author URI:   https://cryinkfly.com                                                              # | 
					
						
							|  |  |  | # License:      MIT                                                                                # | 
					
						
							|  |  |  | # Copyright (c) 2020-2022                                                                          # | 
					
						
							| 
									
										
										
										
											2022-12-12 15:18:52 +01:00
										 |  |  | # Time/Date:    15:15/12.12.2022                                                                   # | 
					
						
							|  |  |  | # Version:      1.2                                                                                # | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | #################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Path: /$HOME/.fusion360/bin/update.sh | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Default-Path: | 
					
						
							|  |  |  | DL_PATH="$HOME/.fusion360" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Copy the file where the user can see the exits Wineprefixes of Autodesk Fusion 360 on the system. | 
					
						
							|  |  |  | function UP_GET_FILES { | 
					
						
							|  |  |  |   mkdir -p "/tmp/fusion360/logs" | 
					
						
							| 
									
										
										
										
											2022-06-09 08:15:43 +02:00
										 |  |  |   cp "$HOME/.fusion360/config/settings.txt" "/tmp/fusion360" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | # ALL FUNCTIONS ARE ARRANGED HERE:                                                                                                                            # | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function UP_LOAD_LOCALE { | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   UP_LOCALE=$(awk 'NR == 1' /tmp/fusion360/settings.txt) | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   if [[ $UP_LOCALE = "Czech" ]]; then | 
					
						
							|  |  |  |     echo "CS" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/cs-CZ/locale-cs.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/cs-CZ/locale-cs.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "English" ]]; then | 
					
						
							|  |  |  |     echo "EN" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/en-US/locale-en.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/en-US/locale-en.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "German" ]]; then | 
					
						
							|  |  |  |     echo "DE" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/de-DE/locale-de.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/de-DE/locale-de.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "Spanish" ]]; then | 
					
						
							|  |  |  |     echo "ES" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/es-ES/locale-es.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/es-ES/locale-es.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "French" ]]; then | 
					
						
							|  |  |  |     echo "FR" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/fr-FR/locale-fr.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/fr-FR/locale-fr.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "Italian" ]]; then | 
					
						
							|  |  |  |     echo "IT" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/it-IT/locale-it.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/it-IT/locale-it.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "Japanese" ]]; then | 
					
						
							|  |  |  |     echo "JP" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/ja-JP/locale-ja.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/ja-JP/locale-ja.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "Korean" ]]; then | 
					
						
							|  |  |  |     echo "KO" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/ko-KR/locale-ko.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/ko-KR/locale-ko.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $UP_LOCALE = "Chinese" ]]; then | 
					
						
							|  |  |  |     echo "ZH" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     # shellcheck source=../locale/zh-CN/locale-zh.sh | 
					
						
							|  |  |  |     source "$DL_PATH/locale/zh-CN/locale-zh.sh" | 
					
						
							|  |  |  |   else | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |    echo "EN" | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |    # shellcheck source=../locale/en-US/locale-en.sh | 
					
						
							|  |  |  |    source "$DL_PATH/locale/en-US/locale-en.sh" | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Checks if there is an update for Autodesk Fusion 360. | 
					
						
							|  |  |  | function UP_CHECK_INFO { | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   if [ "$GET_UPDATE" -eq 1 ]; then | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |     UP_QUESTION | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   elif [ "$GET_UPDATE" -eq 0 ]; then | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |     UP_NO_UPDATE_INFO | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   else | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |     UP_NO_CONNECTION_WARNING | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function UP_GET_UPDATE { | 
					
						
							|  |  |  |   wget https://dl.appstreaming.autodesk.com/production/installers/Fusion%20360%20Admin%20Install.exe -O Fusion360installer.exe | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  |   mv "Fusion360installer.exe" "$HOME/.fusion360/downloads/Fusion360installer.exe" | 
					
						
							|  |  |  |   cp "$HOME/.fusion360/downloads/Fusion360installer.exe" "$WP_BOX/drive_c/users/$USER/Downloads/Fusion360installer.exe" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Start Fusion360installer.exe - Part 1 | 
					
						
							|  |  |  | function UP_FUSION360_INSTALL_START_1 { | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   WINEPREFIX="$WP_BOX" wine "$WP_BOX/drive_c/users/$USER/Downloads/Fusion360installer.exe" | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Stop Fusion360installer.exe - Part 1 | 
					
						
							|  |  |  | function UP_FUSION360_INSTALL_STOP_1 { | 
					
						
							| 
									
										
										
										
											2022-06-08 22:37:24 +02:00
										 |  |  |   sleep 3m | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   pkill -9 -f '\.exe' | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Start Fusion360installer.exe - Part 2 | 
					
						
							|  |  |  | function UP_FUSION360_INSTALL_START_2 { | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   WINEPREFIX="$WP_BOX" wine "$WP_BOX/drive_c/users/$USER/Downloads/Fusion360installer.exe" | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Stop Fusion360installer.exe - Part 2 | 
					
						
							|  |  |  | function UP_FUSION360_INSTALL_STOP_2 { | 
					
						
							|  |  |  |   sleep 1m | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |   pkill -9 -f '\.exe' | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | # ALL DIALOGS ARE ARRANGED HERE:                                                                                                                              # | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The user get a informationt that no newer version of Autodesk Fusion 360 was found! | 
					
						
							|  |  |  | function UP_NO_UPDATE_INFO { | 
					
						
							| 
									
										
										
										
											2023-12-07 00:09:39 +11:00
										 |  |  |   yad --image dialog-information --title="$UP_TITLE" --text="$UP_NO_UPDATE_INFO_LABEL" --text-align=center --button=gtk-ok:1 | 
					
						
							| 
									
										
										
										
											2022-06-08 23:26:01 +02:00
										 |  |  |   LAUNCHER_RUN_FUSION360 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The user will be informed that he is skipping the update! | 
					
						
							|  |  |  | function UP_SKIP_INFO { | 
					
						
							| 
									
										
										
										
											2023-12-07 00:09:39 +11:00
										 |  |  |   yad --image dialog-information --title="$UP_TITLE" --text="$UP_SKIP_INFO_LABEL" --text-align=center --button=gtk-ok:1 | 
					
						
							| 
									
										
										
										
											2022-06-08 23:26:01 +02:00
										 |  |  |   LAUNCHER_RUN_FUSION360 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The user get a informationt that there is no connection to the server! | 
					
						
							|  |  |  | function UP_NO_CONNECTION_WARNING { | 
					
						
							| 
									
										
										
										
											2023-12-07 00:09:39 +11:00
										 |  |  |   yad --image dialog-warning --title="$UP_TITLE" --text="$UP_NO_CONNECTION_WARNING_LABEL" --text-align=center --button=gtk-ok:1 | 
					
						
							| 
									
										
										
										
											2022-06-08 23:26:01 +02:00
										 |  |  |   LAUNCHER_RUN_FUSION360 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # The user will be asked if he wants to update or not. | 
					
						
							|  |  |  | function UP_QUESTION { | 
					
						
							| 
									
										
										
										
											2023-12-07 00:09:39 +11:00
										 |  |  |   yad --image dialog-question --title="$UP_TITLE" --text="$UP_QUESTION_LABEL" --text-align=center --button=gtk-no:0 --button=gtk-yes:1 | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   answer=$? | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-12 15:18:52 +01:00
										 |  |  |   if [ "$answer" -eq 1 ]; then | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  |     UP_GET_UPDATE | 
					
						
							| 
									
										
										
										
											2022-06-08 21:05:41 +02:00
										 |  |  |     UP_FUSION360_INSTALL_UPDATE_PROGRESS | 
					
						
							| 
									
										
										
										
											2022-12-12 15:18:52 +01:00
										 |  |  |   elif [ "$answer" -eq 0 ]; then | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  |     UP_SKIP_INFO | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-30 17:58:11 +11:00
										 |  |  | # A question dialog is displayed here. | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | function UP_PROGRESS { | 
					
						
							| 
									
										
										
										
											2023-12-07 00:09:39 +11:00
										 |  |  |   yad --image dialog-question --title="$UP_TITLE" --text "$UP_WANT_TO_CHECK_FOR_UPDATES" --text-align=center --button=gtk-no:0 --button=gtk-yes:1 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |   ret=$? | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Responses to above button presses are below: | 
					
						
							|  |  |  |   if [[ $ret -eq 0 ]]; then | 
					
						
							| 
									
										
										
										
											2022-08-31 15:32:25 +02:00
										 |  |  |     UP_SKIP_INFO | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  |   elif [[ $ret -eq 1 ]]; then | 
					
						
							|  |  |  |     UP_CHECK_INFO | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-06-08 21:05:41 +02:00
										 |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function UP_FUSION360_INSTALL_UPDATE_PROGRESS { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | UP_FUSION360_INSTALL_PROGRESS_MAIN () { | 
					
						
							| 
									
										
										
										
											2022-08-31 16:25:13 +02:00
										 |  |  | cd "$WP_DIRECTORY" || return | 
					
						
							| 
									
										
										
										
											2022-06-08 21:05:41 +02:00
										 |  |  | echo "20" | 
					
						
							|  |  |  | UP_FUSION360_INSTALL_START_1 & UP_FUSION360_INSTALL_STOP_1 # These two commands run in the same time. | 
					
						
							|  |  |  | echo "70" | 
					
						
							|  |  |  | UP_FUSION360_INSTALL_START_2 & UP_FUSION360_INSTALL_STOP_2 # These two commands run in the same time. | 
					
						
							|  |  |  | sleep 5 | 
					
						
							|  |  |  | echo "100" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | UP_FUSION360_INSTALL_UPDATE_PROGRESS_MAIN | yad --progress --progress-text "$UP_INSTALL_UPDATE_PROGRESS_LABEL" --percentage=0 --auto-close | 
					
						
							| 
									
										
										
										
											2022-06-08 23:26:01 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | LAUNCHER_RUN_FUSION360 | 
					
						
							| 
									
										
										
										
											2022-06-08 21:05:41 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-06-08 08:57:47 +02:00
										 |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | # THE PROGRAM IS STARTED HERE:                                                                                                                                # | 
					
						
							|  |  |  | ############################################################################################################################################################### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | UP_GET_FILES | 
					
						
							|  |  |  | UP_LOAD_LOCALE | 
					
						
							| 
									
										
										
										
											2022-06-08 20:59:11 +02:00
										 |  |  | UP_PROGRESS |