I was doing the client_id bit completely wrong. This should be much better.
This commit is contained in:
		
							
								
								
									
										22
									
								
								ratatoskr.sh
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								ratatoskr.sh
									
									
									
									
									
								
							| @@ -17,28 +17,24 @@ get_oauth_token() { | |||||||
|             break |             break | ||||||
|         fi |         fi | ||||||
|     done |     done | ||||||
|     # Generate a client id |  | ||||||
|     clientId="$(shuf -en42 -- {a..z} {A..Z} {0..9} - _)" |  | ||||||
|     # Fix the output from shuf so that it is a single string. |  | ||||||
|     clientId="${clientId//[[:space:]]/}" |  | ||||||
|     # Create the redirect uri, basically not needed here, but we need something |  | ||||||
|     redirectURI="file://$(realpath ${0})" |     redirectURI="file://$(realpath ${0})" | ||||||
|     # Create the url to get the oauth token |     # get client id and secret | ||||||
|     local url="${instanceURL}/oauth/authorize?client_id=${clientId}&redirect_uri=${redirectURI}&response_type=code&scope=read%20write%20follow" |     curl -s -X POST -d client_name="${softwareName}" -d redirect_uris="://${redirectURI}" "${instanceURL}/api/v1/apps" | | ||||||
|     echo "Please open the following url in your browser." |         jq 'to_entries | .[] | "export \(.key)='\''\(.value)'\''"' > "${configPath}/${configFile}" | ||||||
|     echo "Copy the generated token, and paste it here." |  | ||||||
|     echo |  | ||||||
|     echo "${url}" |  | ||||||
|     echo |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
| # Variable initialization | # Variable initialization | ||||||
| configPath="${XDG_CONFIG_HOME:-$HOME/.config}/ratatoskr" # Path for settings, usually ~/.config/ratatoskr | configPath="${XDG_CONFIG_HOME:-$HOME/.config}/ratatoskr" # Path for settings, usually ~/.config/ratatoskr | ||||||
| configFile="default.token" # The default token, eventually will support multiple accounts. | configFile="default.conf" # The default config file, eventually will support multiple accounts. | ||||||
| softwareName="Ratatoskr" # The name of the client. | softwareName="Ratatoskr" # The name of the client. | ||||||
|  |  | ||||||
|  |  | ||||||
| # Main code starts here | # Main code starts here | ||||||
|  |  | ||||||
|  | # make sure the configuration path exists: | ||||||
|  | mkdir -p "${configPath}" | ||||||
|  |  | ||||||
| get_oauth_token | get_oauth_token | ||||||
|  |  | ||||||
| exit 0 | exit 0 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user