You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			33 lines
		
	
	
		
			957 B
		
	
	
	
		
			Bash
		
	
			
		
		
	
	
			33 lines
		
	
	
		
			957 B
		
	
	
	
		
			Bash
		
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
set -euo pipefail
 | 
						|
 | 
						|
source "${XDG_DATA_HOME}/buddy-up/includes/utils.sh"
 | 
						|
 | 
						|
main () (
 | 
						|
    APP=nushell
 | 
						|
    VERSION=${VERSION:-0.100.0}
 | 
						|
    DEST=${XDG_DATA_HOME}/apps/releases/${APP}
 | 
						|
    URL=https://github.com/nushell/nushell/releases/download/${VERSION}/nu-${VERSION}-$(uname -m)-$(get_os).tar.gz
 | 
						|
    PLUGIN_DIR=${XDG_CONFIG_HOME}/nushell/plugins
 | 
						|
 | 
						|
    extract_tarball "${URL}" "${DEST}/${VERSION}" "--strip-component 1"
 | 
						|
    set_current_link "${DEST}" "${VERSION}"
 | 
						|
    set_link "${XDG_BIN_HOME}/nu" "${DEST}" nu
 | 
						|
 | 
						|
    mkdir_if_missing "${PLUGIN_DIR}"
 | 
						|
    find "${DEST}" -type f -executable -exec basename {} \; | grep plugin | while read -r plugin ; do
 | 
						|
        set_link "${PLUGIN_DIR}/${plugin}" "${DEST}" "${plugin}"
 | 
						|
    done
 | 
						|
)
 | 
						|
 | 
						|
get_os () (
 | 
						|
    case $(uname -s) in
 | 
						|
        Linux*)     echo unknown-linux-gnu;;
 | 
						|
        Darwin*)    echo apple-darwin;;
 | 
						|
        *)          >&2 echo "unsupported os: $(uname -s)"; exit 1;;
 | 
						|
    esac
 | 
						|
)
 | 
						|
 | 
						|
main "$@"
 |