summaryrefslogtreecommitdiff
path: root/contrib/nodeck.sh
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/nodeck.sh')
-rwxr-xr-xcontrib/nodeck.sh168
1 files changed, 0 insertions, 168 deletions
diff --git a/contrib/nodeck.sh b/contrib/nodeck.sh
deleted file mode 100755
index 29dca940..00000000
--- a/contrib/nodeck.sh
+++ /dev/null
@@ -1,168 +0,0 @@
-#!/bin/bash
-
-## Pre-parse arugments for ease of use
-CLONEFOLDER=${1:-""}
-LOADERBRANCH=${2:-""}
-LIBRARYBRANCH=${3:-""}
-TEMPLATEBRANCH=${4:-""}
-LATEST=${5:-""}
-
-## gather options into an array
-OPTIONSARRAY=("$CLONEFOLDER" "$LOADERBRANCH" "$LIBRARYBRANCH" "$TEMPLATEBRANCH" "$LATEST")
-
-## iterate through options array to check their presence
-count=0
-for OPTION in ${OPTIONSARRAY[@]}; do
- ! [[ "$OPTION" == "" ]] && count=$(($count+1))
- # printf "OPTION=$OPTION\n"
-done
-
-clonefromto() {
- # printf "repo=$1\n"
- # printf "outdir=$2\n"
- # printf "branch=$3\n"
- printf "Repository: $1\n"
- git clone $1 $2 &> '/dev/null'
- CODE=$?
- # printf "CODE=${CODE}"
- if [[ $CODE -eq 128 ]]; then
- cd $2
- git fetch --all &> '/dev/null'
- fi
- if [[ -z $3 ]]; then
- printf "Enter the desired branch for repository "$1" :\n"
- local OUT="$(git branch -r | sed '/\/HEAD/d')"
- # $OUT="$($OUT > )"
- printf "$OUT\nbranch: "
- read BRANCH
- else
- printf "on branch: $3\n"
- BRANCH="$3"
- fi
- if ! [[ -z ${BRANCH} ]]; then
- git checkout $BRANCH &> '/dev/null'
- fi
- if [[ ${LATEST} == "true" ]]; then
- git pull --all
- elif [[ ${LATEST} == "true" ]]; then
- printf "Assuming user not pulling latest commits.\n"
- else
- printf "Pull latest commits? (y/N): "
- read PULL
- case ${PULL:0:1} in
- y|Y )
- printf "Pulling latest commits.\n"
- git pull --all
- ;;
- * )
- printf "Not pulling latest commits.\n"
- ;;
- esac
- if ! [[ "$PULL" =~ ^[[:alnum:]]+$ ]]; then
- printf "Assuming user not pulling latest commits.\n"
- fi
- fi
-}
-
-pnpmtransbundle() {
- cd $1
- if [[ "$2" == "library" ]]; then
- npm install --quiet &> '/dev/null'
- npm run build --quiet &> '/dev/null'
- sudo npm link --quiet &> '/dev/null'
- elif [[ "$2" == "frontend" ]]; then
- pnpm i &> '/dev/null'
- pnpm run build &> '/dev/null'
- elif [[ "$2" == "template" ]]; then
- pnpm i &> '/dev/null'
- pnpm run build &> '/dev/null'
- fi
-}
-
-
-if ! [[ $count -gt 4 ]] ; then
- printf "Installing Steam Deck Plugin Loader contributor/developer (no Steam Deck)..."
-
- printf "\nTHIS SCRIPT ASSUMES YOU ARE RUNNING IT ON A PC, NOT THE DECK!
- Not planning to contribute to or develop for PluginLoader?
- Then you should not be using this script.\n"
-
- printf "\nThis script requires you to have nodejs installed. (If nodejs doesn't bundle npm on your OS/distro, then npm is required as well).\n"
-fi
-
-if ! [[ $count -gt 0 ]] ; then
- read -p "Press any key to continue"
-fi
-
-printf "\n"
-
-if [[ "$CLONEFOLDER" == "" ]]; then
- printf "Enter the directory in /home/user/ to clone to.\n"
- printf "The clone directory would be: ${HOME}/git \n"
- read -p "Enter your clone directory: " CLONEFOLDER
- if ! [[ "$CLONEFOLDER" =~ ^[[:alnum:]]+$ ]]; then
- printf "Folder name not provided. Using default, '${DEFAULT}'.\n"
- CLONEFOLDER="${DEFAULT}"
- fi
-fi
-
-CLONEDIR="$HOME/$CLONEFOLDER"
-
-## Create folder structure
-
-printf "Cloning git repositories.\n"
-
-mkdir -p ${CLONEDIR} &> '/dev/null'
-
-### remove folders just in case
-# rm -r ${CLONEDIR}/pluginloader
-# rm -r ${CLONEDIR}/pluginlibrary
-# rm -r ${CLONEDIR}/plugintemplate
-
-clonefromto "https://github.com/SteamDeckHomebrew/PluginLoader" ${CLONEDIR}/pluginloader "$LOADERBRANCH"
-
-clonefromto "https://github.com/SteamDeckHomebrew/decky-frontend-lib" ${CLONEDIR}/pluginlibrary "$LIBRARYBRANCH"
-
-clonefromto "https://github.com/SteamDeckHomebrew/decky-plugin-template" ${CLONEDIR}/plugintemplate "$TEMPLATEBRANCH"
-
-## install python dependencies (maybe use venv?)
-
-python -m pip install -r ${CLONEDIR}/pluginloader/requirements.txt &> '/dev/null'
-
-## Transpile and bundle typescript
-
-[ "$UID" -eq 0 ] || printf "Input password to proceed with install.\n"
-
-type npm &> '/dev/null'
-
-NPMLIVES=$?
-
-if ! [[ "$PNPMLIVES" -eq 0 ]]; then
- printf "npm does not appear to be installed, exiting.\n"
- exit 1
-fi
-
-sudo npm install -g pnpm &> '/dev/null'
-
-type pnpm &> '/dev/null'
-
-PNPMLIVES=$?
-
-if ! [[ "$PNPMLIVES" -eq 0 ]]; then
- printf "pnpm does not appear to be installed, exiting.\n"
- exit 1
-fi
-
-printf "Transpiling and bundling typescript.\n"
-
-pnpmtransbundle ${CLONEDIR}/pluginlibrary/ "library"
-
-pnpmtransbundle ${CLONEDIR}/pluginloader/frontend "frontend"
-
-pnpmtransbundle ${CLONEDIR}/plugintemplate "template"
-
-printf "Plugin Loader is located at '${CLONEDIR}/pluginloader/'.\n"
-
-printf "Run in console or in a script these commands to run your development version:\n'export PLUGIN_PATH=${CLONEDIR}/plugins; export CHOWN_PLUGIN_PATH=0; sudo -E python3 ${CLONEDIR}/pluginloader/backend/main.py'\n"
-
-printf "All done!\n"