| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  | function check_disk_space { | 
					
						
							|  |  |  |     # Set the directory to check | 
					
						
							|  |  |  |     local SELECTED_DIRECTORY="$HOME"  # Replace with the actual directory | 
					
						
							|  |  |  |     local GREEN="\033[0;32m" | 
					
						
							|  |  |  |     local YELLOW="\033[1;33m" | 
					
						
							|  |  |  |     local RED="\033[0;31m" | 
					
						
							|  |  |  |     local NOCOLOR="\033[0m" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |     # Debug output | 
					
						
							|  |  |  |     echo -e "${YELLOW}Checking disk space for directory: $SELECTED_DIRECTORY${NOCOLOR}" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  |     # Get the free disk space in the selected directory | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |     local GET_DISK_SPACE | 
					
						
							|  |  |  |     GET_DISK_SPACE=$(df -h "$SELECTED_DIRECTORY" 2>/dev/null | awk 'NR==2 {print $4}') | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     if [[ -z "$GET_DISK_SPACE" ]]; then | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |         echo -e "${RED}Failed to retrieve disk space information. Ensure the directory exists and try again.${NOCOLOR}" | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  |         exit 1 | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     echo -e "${GREEN}The free disk memory size is: $GET_DISK_SPACE${NOCOLOR}" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |     # Extract numerical value and unit, and replace comma with dot | 
					
						
							|  |  |  |     local DISK_SPACE_NUM | 
					
						
							|  |  |  |     local DISK_SPACE_UNIT | 
					
						
							|  |  |  |     DISK_SPACE_NUM=$(echo "$GET_DISK_SPACE" | sed 's/[A-Za-z]//g' | sed 's/,/./g') | 
					
						
							|  |  |  |     DISK_SPACE_UNIT=$(echo "$GET_DISK_SPACE" | sed 's/[0-9.,]//g') | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     # Convert to gigabytes | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |     local DISK_SPACE_GB | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  |     case $DISK_SPACE_UNIT in | 
					
						
							|  |  |  |         G) DISK_SPACE_GB=$DISK_SPACE_NUM ;; | 
					
						
							|  |  |  |         M) DISK_SPACE_GB=$(echo "scale=2; $DISK_SPACE_NUM / 1024" | bc) ;; | 
					
						
							| 
									
										
										
										
											2024-09-04 20:05:57 +02:00
										 |  |  |         T) DISK_SPACE_GB=$(echo "scale=2; $DISK_SPACE_NUM * 1024" | bc) ;; | 
					
						
							| 
									
										
										
										
											2024-09-04 19:53:24 +02:00
										 |  |  |         *) DISK_SPACE_GB=0 ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # Check if the free disk space is greater than 10GB | 
					
						
							|  |  |  |     if (( $(echo "$DISK_SPACE_GB > 10" | bc -l) )); then | 
					
						
							|  |  |  |         echo -e "${GREEN}The free disk memory size is greater than 10GB.${NOCOLOR}" | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |         echo -e "${YELLOW}There is not enough disk free memory to continue installing Fusion on your system!${NOCOLOR}" | 
					
						
							|  |  |  |         echo -e "${YELLOW}Make more space in your selected disk or select a different hard drive.${NOCOLOR}" | 
					
						
							|  |  |  |         echo -e "${RED}The installer has been terminated!${NOCOLOR}" | 
					
						
							|  |  |  |         exit 1 | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | check_disk_space |