-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall-linux.sh
executable file
Β·166 lines (135 loc) Β· 5.72 KB
/
install-linux.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
#!/usr/bin/env bash
set -euo pipefail
sudo whoami
# https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH
echo; echo "π» Installing zsh..."
sudo apt install -y zsh
zsh --version
# https://www.vim.org/
echo; echo "π» Installing vim..."
sudo apt install -y vim
vim --version
# https://github.com/sharkdp/bat
echo; echo "π» Installing bat..."
sudo apt install -y bat
batcat --version
# https://github.com/jqlang/jq
echo; echo "π» Installing jq..."
sudo apt install -y jq
jq --version
# https://www.gnu.org/software/wget/
echo; echo "π» Installing wget..."
sudo apt install -y wget
wget --version
# https://gnupg.org/
echo; echo "π» Installing gpg..."
sudo apt install -y gpg
gpg --version
# https://www.gnu.org/software/stow/
echo; echo "π» Installing stow..."
sudo apt install -y stow
stow --version
# https://htop.dev/
echo; echo "π» Installing htop..."
sudo apt install -y htop
htop --version
# https://manpages.debian.org/unstable/apt/apt-transport-https.1.en.html
sudo apt install -y apt-transport-https
# fzf: A command-line fuzzy finder
# https://github.com/junegunn/fzf
sudo apt install -y fzf
# yq: A portable command-line YAML, JSON, XML, CSV, TOML and properties processor
# https://github.com/mikefarah/yq
sudo apt install -y yq
# xq: Command-line XML and HTML beautifier and content extractor
# https://github.com/sibprogrammer/xq
sudo apt install -y xq
# pre-commit: A framework for managing and maintaining multi-language pre-commit hooks.
# https://pre-commit.com/
sudo apt install -y pre-commit
# golang
sudo apt install build-essential -y
sudo add-apt-repository ppa:longsleep/golang-backports -y
sudo apt update
sudo apt install golang-go -y
# https://golangci-lint.run/welcome/install/
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.61.0
# https://www.digitalocean.com/community/tutorials/install-chrome-on-linux-mint
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo add-apt-repository "deb http://dl.google.com/linux/chrome/deb/ stable main"
sudo apt update
sudo apt install -y google-chrome-stable
# https://github.com/microsoft/vscode
# needs: wget gpg apt-transport-https
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/packages.microsoft.gpg
sudo install -D -o root -g root -m 644 /tmp/packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" |sudo tee /etc/apt/sources.list.d/vscode.list > /dev/null
rm -f /tmp/packages.microsoft.gpg
sudo apt update
sudo apt install -y code
# Rancher desktop
# https://docs.rancherdesktop.io/getting-started/installation/#linux
curl -s https://download.opensuse.org/repositories/isv:/Rancher:/stable/deb/Release.key | gpg --dearmor | sudo dd status=none of=/usr/share/keyrings/isv-rancher-stable-archive-keyring.gpg
echo 'deb [signed-by=/usr/share/keyrings/isv-rancher-stable-archive-keyring.gpg] https://download.opensuse.org/repositories/isv:/Rancher:/stable/deb/ ./' | sudo dd status=none of=/etc/apt/sources.list.d/isv-rancher-stable.list
sudo apt update
sudo apt install rancher-desktop -y
# https://github.com/casey/just
rm -rf ~/.local/bin/just
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to ~/.local/bin
# https://docs.dagger.io/
curl -fsSL https://dl.dagger.io/dagger/install.sh | BIN_DIR=$HOME/.local/bin sh
# https://www.cyberciti.biz/open-source/lnav-linux-unix-ncurses-terminal-log-file-viewer/
echo; echo "π» Installing lnav..."
sudo apt install lnav -y
lnav --version
# https://terragrunt.gruntwork.io/docs/getting-started/install/
echo; echo "π» Installing terragrunt..."
OS="linux"
ARCH="amd64"
VERSION="v0.72.0"
BINARY_NAME="terragrunt_${OS}_${ARCH}"
# Download the binary
curl -sL "https://github.com/gruntwork-io/terragrunt/releases/download/$VERSION/$BINARY_NAME" -o "/tmp/$BINARY_NAME"
sudo mv "/tmp/$BINARY_NAME" /usr/bin/terragrunt
chmod +x /usr/bin/terragrunt
terragrunt --version
# https://github.com/tfutils/tfenv
echo; echo "π» Installing tfenv..."
if [[ ! -d ~/.tfenv ]]; then
git clone https://github.com/tfutils/tfenv.git ~/.tfenv
sudo ln -s ~/.tfenv/bin/* /usr/local/bin
else
pushd ~/.tfenv
git pull
popd
fi
tfenv --version
# https://github.com/terraform-linters/tflint
echo; echo "π» Installing tflint..."
curl -s https://raw.githubusercontent.com/terraform-linters/tflint/master/install_linux.sh | bash
tflint --version
# https://trivy.dev/v0.58/getting-started/installation/
echo; echo "π» Installing trivy..."
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | gpg --dearmor | sudo tee /usr/share/keyrings/trivy.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/trivy.gpg] https://aquasecurity.github.io/trivy-repo/deb generic main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
sudo apt-get update
sudo apt-get install trivy
trivy --version
# https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
echo; echo "π» Installing awscli..."
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "/tmp/awscliv2.zip"
unzip /tmp/awscliv2.zip -d /tmp
sudo /tmp/aws/install --update
rm -rf /tmp/aws
aws --version
# https://tgswitch.warrensbox.com/Install/
echo; echo "π» Installing tgswitch..."
curl -L https://raw.githubusercontent.com/warrensbox/tgswitch/release/install.sh | sudo bash
tgswitch --version
# https://github.com/nvm-sh/nvm?tab=readme-ov-file#installing-and-updating
echo; echo "π» Installing nvm..."
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
nvm --version
echo; echo "π» Installing node..."
nvm install node
node --version