mirror of
				https://github.com/the-sane/lug-helper.git
				synced 2025-11-04 05:43:12 +00:00 
			
		
		
		
	Compare commits
	
		
			12 Commits
		
	
	
		
			342a8ebc2b
			...
			c0c0728e38
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					c0c0728e38 | ||
| 
						 | 
					c1591f15cb | ||
| 
						 | 
					5c70243448 | ||
| 
						 | 
					0cf1fdc669 | ||
| 
						 | 
					a70d2426ad | ||
| 
						 | 
					e6d79125a6 | ||
| 
						 | 
					c1dae30e5e | ||
| 
						 | 
					69d402cb10 | ||
| 
						 | 
					1f826de2c6 | ||
| 
						 | 
					bc3d7d8fe7 | ||
| 
						 | 
					73c4f7346d | ||
| 
						 | 
					9f9480b99d | 
							
								
								
									
										121
									
								
								lug-helper.sh
									
									
									
									
									
								
							
							
						
						
									
										121
									
								
								lug-helper.sh
									
									
									
									
									
								
							@@ -646,7 +646,7 @@ getdirs() {
 | 
			
		||||
                        if [ ! -d "$game_path" ]; then
 | 
			
		||||
                            printf "That directory is invalid or does not exist. Please try again.\n\n"
 | 
			
		||||
                        elif [ "$(basename "$game_path")" != "$sc_base_dir" ]; then
 | 
			
		||||
                            printf "You must enter the full path to the directory named '$sc_base_dir'\n\n"
 | 
			
		||||
                            printf "You must enter the full path to the directory named '%s'\n\n" "$sc_base_dir"
 | 
			
		||||
                        else
 | 
			
		||||
                            break
 | 
			
		||||
                        fi
 | 
			
		||||
@@ -857,9 +857,9 @@ lutris_check() {
 | 
			
		||||
 | 
			
		||||
    # Check the native lutris version number
 | 
			
		||||
    if [ "$lutris_native" = "true" ]; then
 | 
			
		||||
        lutris_current="$(lutris -v)"
 | 
			
		||||
        lutris_current="$(lutris -v | awk -F '-' '{print $2}')"
 | 
			
		||||
        if [ "$lutris_required" != "$lutris_current" ] &&
 | 
			
		||||
            [ "$lutris_current" = "$(printf "$lutris_current\n$lutris_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
            [ "$lutris_current" = "$(printf "%s\n%s" "$lutris_current" "$lutris_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
            preflight_fail+=("Lutris is out of date.\nVersion $lutris_required or newer is required.")
 | 
			
		||||
        else
 | 
			
		||||
            preflight_pass+=("Lutris is installed and up to date.")
 | 
			
		||||
@@ -868,9 +868,9 @@ lutris_check() {
 | 
			
		||||
 | 
			
		||||
    # Check the flatpak lutris version number
 | 
			
		||||
    if [ "$lutris_flatpak" = "true" ]; then
 | 
			
		||||
        lutris_current="$(flatpak run net.lutris.Lutris -v)"
 | 
			
		||||
        lutris_current="$(flatpak run net.lutris.Lutris -v | awk -F '-' '{print $2}')"
 | 
			
		||||
        if [ "$lutris_required" != "$lutris_current" ] &&
 | 
			
		||||
            [ "$lutris_current" = "$(printf "$lutris_current\n$lutris_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
            [ "$lutris_current" = "$(printf "%s\n%s" "$lutris_current" "$lutris_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
            preflight_fail+=("Flatpak Lutris is out of date.\nVersion $lutris_required or newer is required.")
 | 
			
		||||
        else
 | 
			
		||||
            preflight_pass+=("Flatpak Lutris is installed and up to date.")
 | 
			
		||||
@@ -883,7 +883,7 @@ winetricks_check() {
 | 
			
		||||
    if [ -x "$(command -v winetricks)" ]; then
 | 
			
		||||
        winetricks_current="$(winetricks --version | awk '{print $1}')"
 | 
			
		||||
        if [ "$winetricks_required" != "$winetricks_current" ] &&
 | 
			
		||||
           [ "$winetricks_current" = "$(printf "$winetricks_current\n$winetricks_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
           [ "$winetricks_current" = "$(printf "%s\n%s" "$winetricks_current" "$winetricks_required" | sort -V | head -n1)" ]; then
 | 
			
		||||
            preflight_fail+=("Winetricks is out of date.\nVersion $winetricks_required or newer is required.\nIf installing the game through Lutris, this can be ignored.\nCheck that Use System Winetricks is disabled in Lutris Runner Options.")
 | 
			
		||||
        else
 | 
			
		||||
            preflight_pass+=("Winetricks is installed and up to date.")
 | 
			
		||||
@@ -896,7 +896,7 @@ winetricks_check() {
 | 
			
		||||
# Check total system memory
 | 
			
		||||
memory_check() {
 | 
			
		||||
    memtotal="$(LC_NUMERIC=C awk '/MemTotal/ {printf "%.1f \n", $2/1024/1024}' /proc/meminfo)"
 | 
			
		||||
    if [ ${memtotal%.*} -ge "15" ]; then
 | 
			
		||||
    if [ "${memtotal%.*}" -ge "15" ]; then
 | 
			
		||||
        preflight_pass+=("Your system has $memtotal GB of memory.")
 | 
			
		||||
    else
 | 
			
		||||
        preflight_fail+=("Your system has $memtotal GB of memory.\nWe recommend at least 16 GB to avoid crashes.")
 | 
			
		||||
@@ -914,7 +914,7 @@ avx_check() {
 | 
			
		||||
 | 
			
		||||
# Check if swap is set up
 | 
			
		||||
swap_check() {
 | 
			
		||||
    if cat /proc/swaps | grep -vq "Filename"; then
 | 
			
		||||
    if grep -vq "Filename" /proc/swaps; then
 | 
			
		||||
        preflight_pass+=("You have swap space configured.")
 | 
			
		||||
    else
 | 
			
		||||
        preflight_fail+=("You don't appear to have swap space configured.\nWe recommend configuring an 8-16 GB swap file.")
 | 
			
		||||
@@ -984,7 +984,7 @@ preflight_check() {
 | 
			
		||||
        
 | 
			
		||||
        message info "$message_heading\n\nYour system is optimized for Star Citizen!\n\n$preflight_pass_string"
 | 
			
		||||
    else
 | 
			
		||||
        if [ -z "$preflight_action_funcs" ]; then
 | 
			
		||||
        if [ "${#preflight_action_funcs[@]}" -eq 0 ]; then
 | 
			
		||||
            message warning "$preflight_fail_string$preflight_pass_string"
 | 
			
		||||
        elif message question "$preflight_fail_string$preflight_pass_string\n\nWould you like configuration issues to be fixed for you?"; then
 | 
			
		||||
            # Call functions to build fixes for any issues found
 | 
			
		||||
@@ -1001,7 +1001,7 @@ preflight_check() {
 | 
			
		||||
            done
 | 
			
		||||
 | 
			
		||||
            # Execute the actions set by the functions
 | 
			
		||||
            if [ ! -z "$preflight_actions_string" ]; then
 | 
			
		||||
            if [ -n "$preflight_actions_string" ]; then
 | 
			
		||||
                # Try to execute the actions as root
 | 
			
		||||
                try_exec "$preflight_actions_string"
 | 
			
		||||
                if [ "$?" -eq 1 ]; then
 | 
			
		||||
@@ -1029,7 +1029,7 @@ preflight_check() {
 | 
			
		||||
        else
 | 
			
		||||
            # User declined to automatically fix configuration issues
 | 
			
		||||
            # Show manual configuration options
 | 
			
		||||
            if [ ! -z "$preflight_manual_string" ]; then
 | 
			
		||||
            if [ -n "$preflight_manual_string" ]; then
 | 
			
		||||
                message info "$preflight_manual_string"
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
@@ -1148,9 +1148,9 @@ post_download() {
 | 
			
		||||
        # We need to configure and restart Lutris
 | 
			
		||||
        unset lutris_game_ymls
 | 
			
		||||
        # Build an array of all Lutris Star Citizen yml files
 | 
			
		||||
        while IFS= read -rd ''; do
 | 
			
		||||
            lutris_game_ymls+=("$REPLY")
 | 
			
		||||
        done < <(grep -RlZ --include="*.yml" "Roberts Space Industries/RSI Launcher/RSI Launcher.exe" "$lutris_native_conf_dir" "$lutris_flatpak_conf_dir" 2>/dev/null)
 | 
			
		||||
        while IFS='' read -r line; do
 | 
			
		||||
            lutris_game_ymls+=("$line")
 | 
			
		||||
        done < <(grep -iRlE --include="*.yml" "Roberts Space Industries|starcitizen|star citizen|star-citizen" "$lutris_native_conf_dir" "$lutris_flatpak_conf_dir" 2>/dev/null)
 | 
			
		||||
 | 
			
		||||
        # We handle installs and deletions differently
 | 
			
		||||
        if [ "$download_action_success" = "installed" ]; then
 | 
			
		||||
@@ -1388,11 +1388,11 @@ download_install() {
 | 
			
		||||
        if [ "$?" -eq 1 ]; then
 | 
			
		||||
            # User clicked cancel
 | 
			
		||||
            debug_print continue "Download aborted. Removing $tmp_dir/$download_file..."
 | 
			
		||||
            rm "$tmp_dir/$download_file"
 | 
			
		||||
            rm "$tmp_dir/lugpipe"
 | 
			
		||||
            rm "${tmp_dir:?}/$download_file"
 | 
			
		||||
            rm "${tmp_dir:?}/lugpipe"
 | 
			
		||||
            return 1
 | 
			
		||||
        fi
 | 
			
		||||
        rm "$tmp_dir/lugpipe"
 | 
			
		||||
        rm "${tmp_dir:?}/lugpipe"
 | 
			
		||||
    else
 | 
			
		||||
        # Standard curl progress bar
 | 
			
		||||
        (cd "$tmp_dir" && curl -LO "$download_url")
 | 
			
		||||
@@ -1440,7 +1440,7 @@ download_install() {
 | 
			
		||||
            if [ -d "${download_dirs[i]}/$download_name" ]; then
 | 
			
		||||
                # This item has already been installed. Delete it before reinstalling
 | 
			
		||||
                debug_print continue "$download_type exists, deleting ${download_dirs[i]}/$download_name..."
 | 
			
		||||
                rm -r "${download_dirs[i]}/$download_name"
 | 
			
		||||
                rm -r "${download_dirs[i]:?}/$download_name"
 | 
			
		||||
                debug_print continue "Reinstalling $download_type into ${download_dirs[i]}/$download_name..."
 | 
			
		||||
            else
 | 
			
		||||
                debug_print continue "Installing $download_type into ${download_dirs[i]}/$download_name..."
 | 
			
		||||
@@ -1467,7 +1467,7 @@ download_install() {
 | 
			
		||||
            if [ -d "${download_dirs[i]}/$download_name" ]; then
 | 
			
		||||
                # This item has already been installed. Delete it before reinstalling
 | 
			
		||||
                debug_print continue "$download_type exists, deleting ${download_dirs[i]}/$download_name..."
 | 
			
		||||
                rm -r "${download_dirs[i]}/$download_name"
 | 
			
		||||
                rm -r "${download_dirs[i]:?}/$download_name"
 | 
			
		||||
                debug_print continue "Reinstalling $download_type into ${download_dirs[i]}/$download_name..."
 | 
			
		||||
            else
 | 
			
		||||
                debug_print continue "Installing $download_type into ${download_dirs[i]}/$download_name..."
 | 
			
		||||
@@ -1492,8 +1492,8 @@ download_install() {
 | 
			
		||||
 | 
			
		||||
    # Cleanup tmp download
 | 
			
		||||
    debug_print continue "Cleaning up $tmp_dir/$download_file..."
 | 
			
		||||
    rm "$tmp_dir/$download_file"
 | 
			
		||||
    rm -r "$tmp_dir/$download_name"
 | 
			
		||||
    rm "${tmp_dir:?}/$download_file"
 | 
			
		||||
    rm -r "${tmp_dir:?}/$download_name"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# List available items for download. Called by download_manage()
 | 
			
		||||
@@ -1535,7 +1535,7 @@ download_select_install() {
 | 
			
		||||
    esac
 | 
			
		||||
 | 
			
		||||
    # For runners, check GlibC version against runner requirements
 | 
			
		||||
    if [ "$download_type" = "runner" ] && ( [ "$contributor_name" = "/dev/null" ] || [ "$contributor_name" = "TKG" ] ); then
 | 
			
		||||
    if [ "$download_type" = "runner" ] && { [ "$contributor_name" = "/dev/null" ] || [ "$contributor_name" = "TKG" ]; }; then
 | 
			
		||||
        unset glibc_fail
 | 
			
		||||
        required_glibc="2.33"
 | 
			
		||||
 | 
			
		||||
@@ -1549,7 +1549,7 @@ download_select_install() {
 | 
			
		||||
 | 
			
		||||
            # Sort the versions and check if the installed glibc is smaller
 | 
			
		||||
            if [ "$required_glibc" != "$native_glibc" ] &&
 | 
			
		||||
            [ "$native_glibc" = "$(printf "$native_glibc\n$required_glibc" | sort -V | head -n1)" ]; then
 | 
			
		||||
            [ "$native_glibc" = "$(printf "%s\n%s" "$native_glibc" "$required_glibc" | sort -V | head -n1)" ]; then
 | 
			
		||||
                glibc_fail+=("Native")
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
@@ -1560,13 +1560,13 @@ download_select_install() {
 | 
			
		||||
 | 
			
		||||
            # Sort the versions and check if the installed glibc is smaller
 | 
			
		||||
            if [ "$required_glibc" != "$flatpak_glibc" ] &&
 | 
			
		||||
            [ "$flatpak_glibc" = "$(printf "$flatpak_glibc\n$required_glibc" | sort -V | head -n1)" ]; then
 | 
			
		||||
            [ "$flatpak_glibc" = "$(printf "%s\n%s" "$flatpak_glibc" "$required_glibc" | sort -V | head -n1)" ]; then
 | 
			
		||||
                glibc_fail+=("Flatpak")
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
        # Display a warning message
 | 
			
		||||
        if [ -n "$glibc_fail" ]; then
 | 
			
		||||
        if [ "${#glibc_fail[@]}" -gt 0 ]; then
 | 
			
		||||
            unset glibc_message
 | 
			
		||||
            # Prepare the warning message
 | 
			
		||||
            for (( i=0; i<"${#glibc_fail[@]}"; i++ )); do
 | 
			
		||||
@@ -1602,8 +1602,11 @@ download_select_install() {
 | 
			
		||||
    # Fetch a list of versions from the selected contributor
 | 
			
		||||
    # To add new sources, handle them here, in the if statement
 | 
			
		||||
    # just above, and the download_install function above
 | 
			
		||||
    unset download_versions
 | 
			
		||||
    if [ "$download_url_type" = "github" ]; then
 | 
			
		||||
        download_versions=($(curl -s "$contributor_url" | awk '/browser_download_url/ {print $2}' | xargs basename -a))
 | 
			
		||||
        while IFS='' read -r line; do
 | 
			
		||||
            download_versions+=("$line")
 | 
			
		||||
        done < <(curl -s "$contributor_url" | awk '/browser_download_url/ {print $2}' | xargs basename -a)
 | 
			
		||||
    else
 | 
			
		||||
        debug_print exit "Script error:  Unknown api/url format in ${download_type}_sources array. Aborting."
 | 
			
		||||
    fi
 | 
			
		||||
@@ -2000,7 +2003,7 @@ rm_shaders() {
 | 
			
		||||
            # If a shaders directory is found, delete it
 | 
			
		||||
            if message question "The following directory will be deleted:\n\n$appdata_dir/$shaders_subdir\n\nDo you want to proceed?"; then
 | 
			
		||||
                debug_print continue "Deleting $appdata_dir/$shaders_subdir..."
 | 
			
		||||
                rm -r "$appdata_dir/$shaders_subdir"
 | 
			
		||||
                rm -r "${appdata_dir:?}/$shaders_subdir"
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
@@ -2101,7 +2104,7 @@ reset_helper() {
 | 
			
		||||
    # Delete the shader directory
 | 
			
		||||
    if message question "All config files will be deleted from:\n\n$conf_dir/$conf_subdir\n\nDo you want to proceed?"; then
 | 
			
		||||
        debug_print continue "Deleting $conf_dir/$conf_subdir/*.conf..."
 | 
			
		||||
        rm "$conf_dir/$conf_subdir/"*.conf
 | 
			
		||||
        rm "${conf_dir:?}/$conf_subdir/"*.conf
 | 
			
		||||
        message info "The Helper has been reset!"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
@@ -2211,16 +2214,6 @@ eac_workaround() {
 | 
			
		||||
    eac_dir="$wine_prefix/drive_c/users/$USER/AppData/Roaming/EasyAntiCheat"
 | 
			
		||||
    eac_hosts="127.0.0.1 modules-cdn.eac-prod.on.epicgames.com"
 | 
			
		||||
 | 
			
		||||
    # Check if EAC workaround is already applied
 | 
			
		||||
    if grep -q "$eac_hosts" /etc/hosts; then
 | 
			
		||||
        if grep -q "^$eac_hosts" /etc/hosts; then
 | 
			
		||||
            message info "The Easy Anti-Cheat workaround has already been applied.\nYou're all set!"
 | 
			
		||||
        else
 | 
			
		||||
            message info "The Easy Anti-Cheat workaround has already been applied, but may be commented out.\nNo changes have been made, please edit /etc/hosts manually."
 | 
			
		||||
        fi
 | 
			
		||||
        return 0
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Configure message variables
 | 
			
		||||
    eac_title="Easy Anti-Cheat Workaround"
 | 
			
		||||
    eac_hosts_formatted="$eac_hosts"
 | 
			
		||||
@@ -2231,14 +2224,44 @@ eac_workaround() {
 | 
			
		||||
        eac_dir_formatted="<i>$eac_dir_formatted</i>"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if message question "$eac_title\n\nThe following entry will be added to /etc/hosts:\n$eac_hosts_formatted\n\nThe following directory will be deleted:\n$eac_dir_formatted\n\n\nTo revert these changes, delete the above line from\n/etc/hosts and relaunch the game\n\nDo you want to proceed?"; then
 | 
			
		||||
        debug_print continue "Editing hosts file..."
 | 
			
		||||
    apply_eac_hosts="false"
 | 
			
		||||
    delete_eac_dir="false"
 | 
			
		||||
    if grep -q "^$eac_hosts" /etc/hosts; then
 | 
			
		||||
        # Hosts workaround is in place
 | 
			
		||||
        # Check if we still need to delete the eac directory
 | 
			
		||||
        if [ -d "$eac_dir" ]; then
 | 
			
		||||
            delete_eac_dir="true"
 | 
			
		||||
            eac_message="$eac_title\n\nYour /etc/hosts is already modified with the Easy Anti-Cheat workaround.\n\nThe following directory must still be deleted:\n$eac_dir_formatted"
 | 
			
		||||
        fi
 | 
			
		||||
    else
 | 
			
		||||
        # Hosts workaround is needed
 | 
			
		||||
        apply_eac_hosts="true"
 | 
			
		||||
        eac_message="$eac_title\n\nThe following entry will be added to /etc/hosts:\n$eac_hosts_formatted"
 | 
			
		||||
        # Check if we also need to delete the eac directory
 | 
			
		||||
        if [ -d "$eac_dir" ]; then
 | 
			
		||||
            delete_eac_dir="true"
 | 
			
		||||
            eac_message="$eac_message\n\nThe following directory will be deleted:\n$eac_dir_formatted"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    # Finish up the message
 | 
			
		||||
    eac_message="$eac_message\n\n\nTo revert these changes, delete the marked EAC workaround line\nin /etc/hosts and relaunch the game\n\nDo you want to proceed?"
 | 
			
		||||
 | 
			
		||||
        # Try to modify /etc/hosts as root
 | 
			
		||||
        try_exec "printf '\n$eac_hosts #Star Citizen EAC workaround\n' >> /etc/hosts"
 | 
			
		||||
        if [ "$?" -eq 1 ]; then
 | 
			
		||||
            message error "Authentication failed or there was an error modifying /etc/hosts.\nSee terminal for more information.\n\nReturning to main menu."
 | 
			
		||||
            return 0
 | 
			
		||||
    # Check if the EAC workaround has already been fully applied
 | 
			
		||||
    if [ "$apply_eac_hosts" = "false" ] && [ "$delete_eac_dir" = "false" ]; then
 | 
			
		||||
        message info "The Easy Anti-Cheat workaround has already been applied.\nYou're all set!"
 | 
			
		||||
        return 0
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if message question "$eac_message"; then
 | 
			
		||||
        # Apply the hosts workaround if needed
 | 
			
		||||
        if [ "$apply_eac_hosts" = "true" ]; then
 | 
			
		||||
            debug_print continue "Editing hosts file..."
 | 
			
		||||
            # Try to modify /etc/hosts as root
 | 
			
		||||
            try_exec "printf '\n$eac_hosts #Star Citizen EAC workaround\n' >> /etc/hosts"
 | 
			
		||||
            if [ "$?" -eq 1 ]; then
 | 
			
		||||
                message error "Authentication failed or there was an error modifying /etc/hosts.\nSee terminal for more information.\n\nReturning to main menu."
 | 
			
		||||
                return 0
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
        # Delete the EAC directory if it exists
 | 
			
		||||
@@ -2310,7 +2333,7 @@ latest_version="$(get_latest_release "$repo")"
 | 
			
		||||
 | 
			
		||||
# Sort the versions and check if the installed Helper is smaller
 | 
			
		||||
if [ "$latest_version" != "$current_version" ] &&
 | 
			
		||||
   [ "$current_version" = "$(printf "$current_version\n$latest_version" | sort -V | head -n1)" ]; then
 | 
			
		||||
   [ "$current_version" = "$(printf "%s\n%s" "$current_version" "$latest_version" | sort -V | head -n1)" ]; then
 | 
			
		||||
 | 
			
		||||
    message info "The latest version of the LUG Helper is $latest_version\nYou are using $current_version\n\nYou can download new releases here:\n$releases_url"
 | 
			
		||||
fi
 | 
			
		||||
@@ -2372,7 +2395,7 @@ Usage: lug-helper <options>
 | 
			
		||||
                elif [ "$live_or_ptu" = "ptu" ] || [ "$live_or_ptu" = "PTU" ]; then
 | 
			
		||||
                    live_or_ptu="$ptu_dir"
 | 
			
		||||
                else
 | 
			
		||||
                    printf "$0: Invalid option '$1'\n"
 | 
			
		||||
                    printf "$0: Invalid option '%s'\n" "$1"
 | 
			
		||||
                    exit 0
 | 
			
		||||
                fi
 | 
			
		||||
                ;;
 | 
			
		||||
@@ -2386,7 +2409,7 @@ Usage: lug-helper <options>
 | 
			
		||||
                    elif [ "$use_zenity" = "no" ] || [ "$use_zenity" = "NO" ] || [ "$use_zenity" = "0" ]; then
 | 
			
		||||
                        use_zenity=0
 | 
			
		||||
                    else
 | 
			
		||||
                        printf "$0: Invalid option '$1'\n"
 | 
			
		||||
                        printf "$0: Invalid option '%s'\n" "$1"
 | 
			
		||||
                        exit 0
 | 
			
		||||
                    fi
 | 
			
		||||
                fi
 | 
			
		||||
@@ -2404,7 +2427,7 @@ Usage: lug-helper <options>
 | 
			
		||||
                cargs+=("reset_helper")
 | 
			
		||||
                ;;
 | 
			
		||||
            * )
 | 
			
		||||
                printf "$0: Invalid option '$1'\n"
 | 
			
		||||
                printf "$0: Invalid option '%s'\n" "$1"
 | 
			
		||||
                exit 0
 | 
			
		||||
                ;;
 | 
			
		||||
        esac
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,7 @@
 | 
			
		||||
      "notes": "Performance may be choppy for the first couple minutes after visiting a new place or performing a new activity while shaders compile. Subsequent arrival should not be choppy.\r\n\r\nIf you receive a Runtime Error you can continue using Star Citizen by dragging the dialog box to the side, but in-game VoIP and FoIP will cease to function until Star Citizen is restarted. Drop in to the LUG group's chat and forums; we have custom runners to work around this problem.\r\n\r\nPlease make sure you have all Wine dependencies properly installed or your game may crash during start-up. See our wiki linked above for more information and instructions.\r\n\r\nTo prevent crashes in areas with lots of geometry, the game needs a Linux resource limit named \"vm.max_map_count\" increased. If you are following our Quick Start Guide and using our LUG Helper, the Preflight Check will do this for you. To set it manually, execute:\r\n\r\nsudo sysctl -w vm.max_map_count=16777216\r\n\r\nConsult your distro's documentation on how to set this permanently or ask a LUG member.\r\n\r\nSee you in the 'verse!",
 | 
			
		||||
      "credits": "",
 | 
			
		||||
      "created_at": "2018-11-15T17:43:07.367000Z",
 | 
			
		||||
      "updated_at": "2023-01-30T01:31:09.714671Z",
 | 
			
		||||
      "updated_at": "2023-01-30T21:43:51.079643Z",
 | 
			
		||||
      "draft": false,
 | 
			
		||||
      "published": true,
 | 
			
		||||
      "published_by": 64834,
 | 
			
		||||
@@ -89,11 +89,12 @@
 | 
			
		||||
          "dxvk": true,
 | 
			
		||||
          "esync": true,
 | 
			
		||||
          "system_winetricks": false,
 | 
			
		||||
          "dxvk_nvapi": false,
 | 
			
		||||
          "overrides": {
 | 
			
		||||
            "nvapi,nvapi64": "disabled",
 | 
			
		||||
            "libglesv2": "builtin"
 | 
			
		||||
          },
 | 
			
		||||
          "version": "lutris-GE-Proton7-35-x86_64"
 | 
			
		||||
          "version": "lutris-GE-Proton7-36-x86_64"
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user