Compare commits
34 Commits
72fd45736a
...
dev
Author | SHA1 | Date | |
---|---|---|---|
|
9e887fe990 | ||
|
a94a26841c | ||
|
570ee1b4e2 | ||
0843517021 | |||
db18e41874 | |||
|
c5fc379d0f | ||
3044fb774b | |||
2f34a664ba | |||
d85ea6c5d4 | |||
ca247164ea | |||
48937f75bb | |||
6a7134147e | |||
f0a9c874ed | |||
e8d2fb6aae | |||
b32328e5fa | |||
7222f2b93e | |||
e8cc922c61 | |||
1740c9b5ee | |||
4d39769cac | |||
0cbb8a326d | |||
082355aee6 | |||
e047bc3109 | |||
3dc64233d5 | |||
f2c024cd51 | |||
074a67e7eb | |||
209f1a3cac | |||
a40948c75e | |||
fea0297084 | |||
258e3d47dc | |||
d7c5624bd6 | |||
59c99ff53e | |||
fb948873c6 | |||
8369dbd3da | |||
9392b7e31a |
29
README.md
29
README.md
@@ -1,28 +1,33 @@
|
|||||||
# Installify
|
# Installify
|
||||||
Installify is a Bash shell script to download new software and applications.
|
Installify is a Bash shell script to download new software and applications.
|
||||||
|
|
||||||
## Applications & Software
|
## Important installs
|
||||||
* Android Studio (TO-DO)
|
Important installs are installs that might be needed to install other software. These installs will have a prioritisation over the rest of the files.
|
||||||
* Bootstrap Studio
|
|
||||||
* Chrome
|
|
||||||
* Chromium
|
|
||||||
* Defold (TO-DO)
|
|
||||||
* Discord (TO-DO)
|
|
||||||
* Docker
|
|
||||||
* Firefox
|
|
||||||
* Gcc
|
* Gcc
|
||||||
* Git
|
* Git
|
||||||
* Golang
|
* Golang
|
||||||
* Node/NVM
|
* Node/NVM
|
||||||
* NordVPN
|
|
||||||
* OBS
|
|
||||||
* Open-jdk
|
* Open-jdk
|
||||||
* PHP
|
* PHP
|
||||||
|
|
||||||
|
## Applications & Software
|
||||||
|
* ADB
|
||||||
|
* Bootstrap Studio
|
||||||
|
* Chrome
|
||||||
|
* Chromium
|
||||||
|
* Defold
|
||||||
|
* Discord (TO-DO)
|
||||||
|
* Docker
|
||||||
|
* Firefox
|
||||||
|
* Ionic
|
||||||
|
* NordVPN
|
||||||
|
* OBS
|
||||||
* Postman
|
* Postman
|
||||||
* Python (TO-DO)
|
|
||||||
* Slack
|
* Slack
|
||||||
* Spotify
|
* Spotify
|
||||||
* Teams
|
* Teams
|
||||||
|
* TypeScript
|
||||||
* Visual Studio Code
|
* Visual Studio Code
|
||||||
* Yarn
|
* Yarn
|
||||||
* Xampp (TO-DO)
|
* Xampp (TO-DO)
|
||||||
|
84
install.sh
84
install.sh
@@ -40,23 +40,37 @@ zsh_prompt() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# run option
|
# run option
|
||||||
if [[ ${zshOption,,} = "n" ]]; then
|
if [[ ${zshOption,,} = "y" ]]; then
|
||||||
return
|
# Create temporary zsh file
|
||||||
elif [[ ${zshOption,,} = "y" ]]; then
|
sudo -u $SUDO_USER touch ~/.tempzshrc
|
||||||
sh ../applications/Oh-MY-ZSH.sh
|
|
||||||
|
# set up the basics of zsh
|
||||||
|
./src/services/zsh/zsh.sh
|
||||||
|
./src/services/zsh/Oh-My-ZSH.sh
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
get_files() {
|
get_files() {
|
||||||
|
|
||||||
# Create temp place where files will be stored
|
# Create temp place where files will be stored
|
||||||
cd src/applications
|
cd src/importantinstalls
|
||||||
|
> ../temp/importantinstalls.txt
|
||||||
> ../temp/installations.txt
|
> ../temp/installations.txt
|
||||||
|
|
||||||
# File info
|
# File info
|
||||||
applications=""
|
applications=""
|
||||||
counter=0
|
counter=0
|
||||||
|
|
||||||
|
|
||||||
|
for file in *; do
|
||||||
|
# Every .sh file in application folder will be noted in installations.txt
|
||||||
|
if [[ $file == *.sh ]]; then
|
||||||
|
echo "${file%.*}" >> ../temp/importantinstalls.txt
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
cd ../applications
|
||||||
|
|
||||||
# Write every file name into installations
|
# Write every file name into installations
|
||||||
for file in *; do
|
for file in *; do
|
||||||
# Every .sh file in application folder will be noted in installations.txt
|
# Every .sh file in application folder will be noted in installations.txt
|
||||||
@@ -80,6 +94,9 @@ select_files() {
|
|||||||
printf %s "$YELLOW"
|
printf %s "$YELLOW"
|
||||||
# Show all the options
|
# Show all the options
|
||||||
echo "The following items will be installed."
|
echo "The following items will be installed."
|
||||||
|
echo "-------------Must install-------------"
|
||||||
|
cat importantinstalls.txt
|
||||||
|
echo "--------------------------------------"
|
||||||
cat installations.txt
|
cat installations.txt
|
||||||
|
|
||||||
printf %s "$RESET"
|
printf %s "$RESET"
|
||||||
@@ -117,6 +134,9 @@ select_files() {
|
|||||||
|
|
||||||
printf %s "$YELLOW"
|
printf %s "$YELLOW"
|
||||||
echo "The following items will be installed."
|
echo "The following items will be installed."
|
||||||
|
echo "-------------Must install-------------"
|
||||||
|
cat importantinstalls.txt
|
||||||
|
echo "--------------------------------------"
|
||||||
cat installations.txt
|
cat installations.txt
|
||||||
echo
|
echo
|
||||||
printf %s "$RESET"
|
printf %s "$RESET"
|
||||||
@@ -132,11 +152,25 @@ select_files() {
|
|||||||
install_files() {
|
install_files() {
|
||||||
# Check if debug is activated
|
# Check if debug is activated
|
||||||
if $debug; then
|
if $debug; then
|
||||||
|
|
||||||
|
# Download important files
|
||||||
while read line; do
|
while read line; do
|
||||||
|
|
||||||
#Reading each line and execute file
|
#Reading each line and execute file
|
||||||
if ! [ -x "$(command -v $line)" ]; then
|
if ! [ -x "$(command -v $line)" ]; then
|
||||||
sh ../applications/$line.sh
|
./../importantinstalls/$line.sh
|
||||||
|
else
|
||||||
|
echo "$line is already installed"
|
||||||
|
fi
|
||||||
|
|
||||||
|
done < "importantinstalls.txt"
|
||||||
|
|
||||||
|
# Download the selected applications
|
||||||
|
while read line; do
|
||||||
|
|
||||||
|
#Reading each line and execute file
|
||||||
|
if ! [ -x "$(command -v $line)" ]; then
|
||||||
|
./../applications/$line.sh
|
||||||
else
|
else
|
||||||
echo "$line is already installed"
|
echo "$line is already installed"
|
||||||
fi
|
fi
|
||||||
@@ -148,6 +182,7 @@ install_files() {
|
|||||||
start=1
|
start=1
|
||||||
end=100
|
end=100
|
||||||
amount="$(wc -l < installations.txt)"
|
amount="$(wc -l < installations.txt)"
|
||||||
|
amount=$(($amount + "$(wc -l < importantinstalls.txt)"))
|
||||||
amount=$(($end / $amount))
|
amount=$(($end / $amount))
|
||||||
|
|
||||||
# set design
|
# set design
|
||||||
@@ -155,17 +190,40 @@ install_files() {
|
|||||||
|
|
||||||
printf %s "$YELLOW"
|
printf %s "$YELLOW"
|
||||||
echo "The following items are going to be installed:"
|
echo "The following items are going to be installed:"
|
||||||
|
cat importantinstalls.txt
|
||||||
cat installations.txt
|
cat installations.txt
|
||||||
echo ""
|
echo ""
|
||||||
printf %s "$RESET"
|
printf %s "$RESET"
|
||||||
|
|
||||||
|
# download important files
|
||||||
while read line; do
|
while read line; do
|
||||||
printf %s "$YELLOW"
|
printf %s "$YELLOW"
|
||||||
|
|
||||||
ProgressBar ${start} ${end} ${line}
|
ProgressBar ${start} ${end} ${line}
|
||||||
#Reading each line and execute file
|
#Reading each line and execute file
|
||||||
if ! [ -x "$(command -v $line)" ]; then
|
if ! [ -x "$(command -v $line)" ]; then
|
||||||
sh ../applications/$line.sh >> /dev/null 2>&1
|
./../importantinstalls/$line.sh >> /dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# update progressbar
|
||||||
|
reach=$(( $start + $amount ))
|
||||||
|
for number in $(seq ${start} ${reach}); do
|
||||||
|
ProgressBar ${number} ${end} ${line}
|
||||||
|
sleep 0.02
|
||||||
|
done
|
||||||
|
printf %s "$RESET"
|
||||||
|
start=$reach
|
||||||
|
|
||||||
|
done < "importantinstalls.txt"
|
||||||
|
|
||||||
|
# download selected applications
|
||||||
|
while read line; do
|
||||||
|
printf %s "$YELLOW"
|
||||||
|
|
||||||
|
ProgressBar ${start} ${end} ${line}
|
||||||
|
#Reading each line and execute file
|
||||||
|
if ! [ -x "$(command -v $line)" ]; then
|
||||||
|
./../applications/$line.sh >> /dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# update progressbar
|
# update progressbar
|
||||||
@@ -182,7 +240,9 @@ install_files() {
|
|||||||
# Completing
|
# Completing
|
||||||
if [[ $start != 100 ]]; then
|
if [[ $start != 100 ]]; then
|
||||||
for number in $(seq ${start} 100); do
|
for number in $(seq ${start} 100); do
|
||||||
|
printf %s "$YELLOW"
|
||||||
ProgressBar ${number} ${end} "..."
|
ProgressBar ${number} ${end} "..."
|
||||||
|
printf %s "$RESET"
|
||||||
sleep 0.02
|
sleep 0.02
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
@@ -231,6 +291,14 @@ check_sudo_arguments() {
|
|||||||
main
|
main
|
||||||
}
|
}
|
||||||
|
|
||||||
|
install_oh_my_zsh() {
|
||||||
|
# run option
|
||||||
|
if [[ ${zshOption,,} = "y" ]]; then
|
||||||
|
# Run Ohmyzsh (ends script)
|
||||||
|
./services/zsh/Oh-My-ZSH.sh
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
main() {
|
main() {
|
||||||
# check if the computer has a stable connections
|
# check if the computer has a stable connections
|
||||||
source ./src/services/connection.sh
|
source ./src/services/connection.sh
|
||||||
@@ -264,6 +332,8 @@ main() {
|
|||||||
cd $dir
|
cd $dir
|
||||||
cd src
|
cd src
|
||||||
rm temp/*
|
rm temp/*
|
||||||
|
|
||||||
|
# install_oh_my_zsh
|
||||||
}
|
}
|
||||||
|
|
||||||
# PROGRAM BODY
|
# PROGRAM BODY
|
||||||
|
@@ -1,9 +0,0 @@
|
|||||||
# install ZSH
|
|
||||||
sudo apt install zsh -y
|
|
||||||
|
|
||||||
# Get oh my zsh and switch to zsh
|
|
||||||
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh
|
|
||||||
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
|
|
||||||
|
|
||||||
# recompile zsh
|
|
||||||
source ~/.zshrc
|
|
2
src/applications/adb.sh
Executable file
2
src/applications/adb.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install android-tools-adb -y
|
0
src/applications/chrome.sh
Normal file → Executable file
0
src/applications/chrome.sh
Normal file → Executable file
2
src/applications/firefox.sh
Normal file → Executable file
2
src/applications/firefox.sh
Normal file → Executable file
@@ -1,2 +1,2 @@
|
|||||||
sudo apt-get update
|
sudo apt update
|
||||||
sudo apt install firefox -y
|
sudo apt install firefox -y
|
@@ -1,17 +0,0 @@
|
|||||||
# Get the full html and get the link of the button
|
|
||||||
wget https://go.dev/dl/
|
|
||||||
|
|
||||||
# get latest Linux download row
|
|
||||||
latestversionsh="$(grep -w 'downloadBox' "index.html")"
|
|
||||||
latestversionsh=$(echo "$latestversionsh" | grep 'linux')
|
|
||||||
|
|
||||||
a="$(grep -w 'data-linux="' "download")"
|
|
||||||
latestversionsh=${latestversionsh#*'href="'}
|
|
||||||
latestversionsh=${latestversionsh%'">'*}
|
|
||||||
|
|
||||||
# Download latest golang version
|
|
||||||
wget "https://go.dev"$latestversionsh
|
|
||||||
|
|
||||||
# Remove any previous Go installation then extract the archive
|
|
||||||
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.1.linux-amd64.tar.gz
|
|
||||||
export PATH=$PATH:/usr/local/go/bin
|
|
4
src/applications/ionic.sh
Executable file
4
src/applications/ionic.sh
Executable file
@@ -0,0 +1,4 @@
|
|||||||
|
# remove older versions if needed
|
||||||
|
npm uninstall -g ionic
|
||||||
|
# install ionic
|
||||||
|
npm install -g @ionic/cli
|
@@ -1,16 +0,0 @@
|
|||||||
# get nvm package
|
|
||||||
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
|
|
||||||
|
|
||||||
# export nvm to env table
|
|
||||||
if [[ $(which zsh) == "/usr/bin/zsh" ]]; then
|
|
||||||
echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.zshrc
|
|
||||||
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.zshrc
|
|
||||||
source ~/.zshrc
|
|
||||||
else
|
|
||||||
echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.bashrc
|
|
||||||
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc
|
|
||||||
source ~/.bashrc
|
|
||||||
fi
|
|
||||||
|
|
||||||
# install latest version of node
|
|
||||||
nvm install node
|
|
0
src/applications/nordVPN.sh
Normal file → Executable file
0
src/applications/nordVPN.sh
Normal file → Executable file
44
src/applications/obs.sh
Normal file → Executable file
44
src/applications/obs.sh
Normal file → Executable file
@@ -1,2 +1,42 @@
|
|||||||
sudo apt update
|
#!/usr/bin/env bash
|
||||||
sudo apt install obs-studio -y
|
# Plugin for enabling virtual camera
|
||||||
|
sudo apt-get install v4l2loopback-dkms
|
||||||
|
|
||||||
|
sudo apt install obs-studio -y
|
||||||
|
|
||||||
|
sudo apt install -y libobs-dev libopencv-dev language-pack-en wget git build-essential cmake libsimde-dev
|
||||||
|
sudo -u $SUDO_USER wget https://github.com/microsoft/onnxruntime/releases/download/v1.7.0/onnxruntime-linux-x64-1.7.0.tgz
|
||||||
|
sudo tar xzvf onnxruntime-linux-x64-1.7.0.tgz --strip-components=1 -C /usr/local/ --wildcards "*/include/*" "*/lib*/"
|
||||||
|
|
||||||
|
# Clone and donwload plugin
|
||||||
|
sudo -u $SUDO_USER mkdir -p Applications
|
||||||
|
cd Applications
|
||||||
|
sudo -u $SUDO_USER git clone https://github.com/royshil/obs-backgroundremoval.git
|
||||||
|
cd obs-backgroundremoval
|
||||||
|
|
||||||
|
# There is still a build failure in the plugin for Ubuntu
|
||||||
|
# Edit cmake and filter files to fix the problem
|
||||||
|
sed -i 's/find_package(obs-frontend-api Required)/#find_package(obs-frontend-api Required)/g' CMakeLists.txt
|
||||||
|
sed -i 's/OBS::libobs OBS::obs-frontend-api/obs obs-frontend-api/g' CMakeLists.txt
|
||||||
|
|
||||||
|
# add if statement for a function thats not needed on ubuntu
|
||||||
|
ex /src/background-filter.cpp <<eof
|
||||||
|
214 insert
|
||||||
|
#if _WIN32
|
||||||
|
.
|
||||||
|
|
||||||
|
219 insert
|
||||||
|
#endif
|
||||||
|
.
|
||||||
|
|
||||||
|
xit
|
||||||
|
eof
|
||||||
|
|
||||||
|
# Build the package
|
||||||
|
sudo -u $SUDO_USER mkdir build && cd build
|
||||||
|
cmake .. && cmake --build . && sudo cmake --install .
|
||||||
|
|
||||||
|
# add links to plugin / add the plugin to user
|
||||||
|
sudo -u $SUDO_USER mkdir -p ~/.config/obs-studio/plugins/obs-backgroundremoval/bin/64bit
|
||||||
|
ln -s /usr/local/lib/obs-plugins/obs-backgroundremoval.so ~/.config/obs-studio/plugins/obs-backgroundremoval/bin/64bit/
|
||||||
|
ln -s /usr/local/share/obs/obs-plugins/obs-backgroundremoval ~/.config/obs-studio/plugins/obs-backgroundremoval/data
|
||||||
|
18
src/applications/postman.sh
Normal file → Executable file
18
src/applications/postman.sh
Normal file → Executable file
@@ -1,3 +1,5 @@
|
|||||||
|
#!/bin/bash -i
|
||||||
|
|
||||||
# Get install file
|
# Get install file
|
||||||
wget https://dl.pstmn.io/download/latest/linux64
|
wget https://dl.pstmn.io/download/latest/linux64
|
||||||
|
|
||||||
@@ -6,15 +8,15 @@ sudo tar -xvf linux64 -C /usr/bin
|
|||||||
|
|
||||||
# export postman to env table
|
# export postman to env table
|
||||||
if [[ $(which zsh) == "/usr/bin/zsh" ]]; then
|
if [[ $(which zsh) == "/usr/bin/zsh" ]]; then
|
||||||
echo '# Postman path' >> ~/.zshrc
|
sudo -u $SUDO_USER echo '# Postman path' >> ~/.tempzshrc
|
||||||
echo 'export PATH="$PATH:/usr/bin/Postman"' >> ~/.zshrc
|
sudo -u $SUDO_USER echo 'export PATH="$PATH:/usr/bin/Postman"' >> ~/.tempzshrc
|
||||||
source ~/.zshrc
|
|
||||||
else
|
|
||||||
echo '# Postman path' >> ~/.bashrc
|
|
||||||
echo 'export PATH="$PATH:/usr/bin/Postman"' >> ~/.bashrc
|
|
||||||
source ~/.bashrc
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# always put in bashrc aswell, so that the user can always rely on the standard shell
|
||||||
|
sudo -u $SUDO_USER echo '# Postman path' >> ~/.bashrc
|
||||||
|
sudo -u $SUDO_USER echo 'export PATH="$PATH:/usr/bin/Postman"' >> ~/.bashrc
|
||||||
|
source ~/.bashrc
|
||||||
|
|
||||||
# Create file and set info
|
# Create file and set info
|
||||||
touch Postman.desktop
|
touch Postman.desktop
|
||||||
{
|
{
|
||||||
@@ -32,4 +34,4 @@ touch Postman.desktop
|
|||||||
} >> Postman.desktop
|
} >> Postman.desktop
|
||||||
|
|
||||||
# move file to applications
|
# move file to applications
|
||||||
sudo mv Postman.desktop /usr/share/applications/Postman.Desktop
|
sudo mv Postman.desktop /usr/share/applications/postman.desktop
|
0
src/applications/slack.sh
Normal file → Executable file
0
src/applications/slack.sh
Normal file → Executable file
0
src/applications/spotify.sh
Normal file → Executable file
0
src/applications/spotify.sh
Normal file → Executable file
0
src/applications/teams.sh
Normal file → Executable file
0
src/applications/teams.sh
Normal file → Executable file
1
src/applications/typescript.sh
Executable file
1
src/applications/typescript.sh
Executable file
@@ -0,0 +1 @@
|
|||||||
|
npm install typescript -g
|
0
src/applications/vscode.sh
Normal file → Executable file
0
src/applications/vscode.sh
Normal file → Executable file
2
src/applications/yarn.sh
Normal file → Executable file
2
src/applications/yarn.sh
Normal file → Executable file
@@ -1,3 +1,3 @@
|
|||||||
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
|
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
|
||||||
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
|
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
|
||||||
sudo apt-get update && sudo apt-get install yarn
|
sudo apt-get update && sudo apt-get install yarn -y
|
@@ -1,2 +1,4 @@
|
|||||||
sudo -u $SUDO_USER wget -O discord.deb "https://discordapp.com/api/download?platform=linux&format=deb"
|
sudo -u $SUDO_USER wget -O discord.deb "https://discordapp.com/api/download?platform=linux&format=deb"
|
||||||
sudo dpkg -i discord.deb
|
|
||||||
|
sudo apt install ./discord-0.0.16.deb -y
|
||||||
|
sudo apt-cache policy discord
|
||||||
|
0
src/applications/gcc.sh → src/importantinstalls/gcc.sh
Normal file → Executable file
0
src/applications/gcc.sh → src/importantinstalls/gcc.sh
Normal file → Executable file
31
src/importantinstalls/golang.sh
Executable file
31
src/importantinstalls/golang.sh
Executable file
@@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/bash -i
|
||||||
|
|
||||||
|
# Get the full html and get the link of the button
|
||||||
|
wget https://go.dev/dl/
|
||||||
|
|
||||||
|
# get latest Linux download row
|
||||||
|
latestversionsh="$(grep -w 'downloadBox' "index.html")"
|
||||||
|
latestversionsh=$(echo "$latestversionsh" | grep 'linux')
|
||||||
|
|
||||||
|
latestversionsh=${latestversionsh#*'href="'}
|
||||||
|
latestversionsh=${latestversionsh%'">'*}
|
||||||
|
|
||||||
|
# Download latest golang version
|
||||||
|
sudo -u $SUDO_USER wget "https://go.dev"$latestversionsh
|
||||||
|
|
||||||
|
# Remove dashes from latest version string
|
||||||
|
latestversionsh=${latestversionsh#*'/'}
|
||||||
|
latestversionsh=${latestversionsh#*'/'}
|
||||||
|
|
||||||
|
# Remove any previous Go installation then extract the archive
|
||||||
|
rm -rf /usr/local/go && tar -C /usr/local -xzf $latestversionsh
|
||||||
|
|
||||||
|
if [[ $(which zsh) == "/usr/bin/zsh" ]]; then
|
||||||
|
sudo -u $SUDO_USER echo 'export PATH=$PATH:/usr/local/go/bin # This is the path to the Golang install' >> ~/.zshrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat >> ~/.bashrc << EOT
|
||||||
|
export PATH=$PATH:/usr/local/go/bin # This is the path to the Golang install
|
||||||
|
EOT
|
||||||
|
|
||||||
|
source ~/.bashrc
|
21
src/importantinstalls/node.sh
Executable file
21
src/importantinstalls/node.sh
Executable file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash -i
|
||||||
|
|
||||||
|
# get nvm package
|
||||||
|
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
|
||||||
|
|
||||||
|
# export nvm to env table
|
||||||
|
if [[ $(which zsh) == "/usr/bin/zsh" ]]; then
|
||||||
|
sudo -u $SUDO_USER echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.zshrc
|
||||||
|
sudo -u $SUDO_USER echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.zshrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
# always put in bashrc aswell, so that the user can always rely on the standard shell
|
||||||
|
cat >> ~/.bashrc << EOT
|
||||||
|
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
|
||||||
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
|
EOT
|
||||||
|
|
||||||
|
source ~/.bashrc
|
||||||
|
|
||||||
|
# install latest version of node
|
||||||
|
nvm install node
|
0
src/applications/openjdk.sh → src/importantinstalls/openjdk.sh
Normal file → Executable file
0
src/applications/openjdk.sh → src/importantinstalls/openjdk.sh
Normal file → Executable file
0
src/applications/php.sh → src/importantinstalls/php.sh
Normal file → Executable file
0
src/applications/php.sh → src/importantinstalls/php.sh
Normal file → Executable file
@@ -11,6 +11,6 @@ ProgressBar() {
|
|||||||
# program=$(printf "${_program}")
|
# program=$(printf "${_program}")
|
||||||
|
|
||||||
printf "\rProgress : |${fill// /▇}${empty// / }| ${_progress}%%"
|
printf "\rProgress : |${fill// /▇}${empty// / }| ${_progress}%%"
|
||||||
printf " Installing ${program} \r"
|
printf " Installing ${program} \r"
|
||||||
|
|
||||||
}
|
}
|
8
src/services/zsh/Oh-My-ZSH.sh
Normal file
8
src/services/zsh/Oh-My-ZSH.sh
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# Oh my zsh manual install
|
||||||
|
git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
|
||||||
|
|
||||||
|
# use the ohmyzsh template as zshrc
|
||||||
|
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
|
||||||
|
|
||||||
|
# set zsh as main terminal
|
||||||
|
chsh -s $(which zsh)
|
3
src/services/zsh/zsh.sh
Normal file
3
src/services/zsh/zsh.sh
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# install ZSH
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install zsh -y
|
Reference in New Issue
Block a user