-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
executable file
·181 lines (159 loc) · 5.92 KB
/
install.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
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
#!/bin/bash
#background
gsettings set org.gnome.desktop.background picture-uri ''
gsettings set org.gnome.desktop.background picture-uri-dark ''
gsettings set org.gnome.desktop.background primary-color '#000000'
gsettings set org.gnome.desktop.background secondary-color '#5789ca'
#media keys
gsettings set org.gnome.settings-daemon.plugins.media-keys volume-down "['<Alt><Super>Delete']"
gsettings set org.gnome.settings-daemon.plugins.media-keys volume-up "['<Alt><Super>Insert']"
gsettings set org.gnome.settings-daemon.plugins.media-keys previous "['<Alt><Super>Page_Up']"
gsettings set org.gnome.settings-daemon.plugins.media-keys next "['<Alt><Super>Page_Down']"
gsettings set org.gnome.settings-daemon.plugins.media-keys volume-mute "['<Alt><Super>End']"
# this does play/pause
gsettings set org.gnome.settings-daemon.plugins.media-keys play '<Alt><Super>Home'
# I use these in tmux
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-down "['']"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-up "['']"
# packages
sudo apt update
apt_packages=(
make
build-essentials
libreadline-dev
bison
flex
htop
gnome-tweaks
gnome-shell-extensions
chrome-gnome-shell
neovim
gawk
xsel
zsh
wget
curl
apt-transport-https
ca-certificates
gnupg-agent
libnss3-tools
software-properties-common
tmux
telnet
python3
python3-dev
python-is-python3
maven
gir1.2-gtop-2.0
gir1.2-nm-1.0
gir1.2-clutter-1.0
fzf
jq
flameshot
stow)
sudo apt install -y "${apt_packages[@]}"
# pyenv
curl https://pyenv.run | bash
# pyenv need to be loaded, but that's done on a zsh plugin
# pyenv install 3.11
# pyenv global 3.11
# snaps
# sudo snap install code --classic
# sudo snap install intellij-idea-community --classic
# sudo snap install intellij-idea-ultimate --classic
sudo snap install spotify
sudo snap install zoom-client
# sudo snap install skype --classic
# chrome
# curl -o chrome.deb -J -L https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
# sudo apt install ./chrome.deb
# rm -rf ./chrome.deb
# wavebox
# curl -o wavebox.deb -J -L https://download.wavebox.app/latest/stable/linux/deb
# sudo apt install ./wavebox.deb
# rm -rf ./wavebox.deb
# 1password
# curl -sS https://downloads.1password.com/linux/keys/1password.asc \
# | sudo gpg --dearmor --output /usr/share/keyrings/1password-archive-keyring.gpg
# echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/1password-archive-keyring.gpg] https://downloads.1password.com/linux/debian/amd64 stable main' \
# | sudo tee /etc/apt/sources.list.d/1password.list
# sudo mkdir -p /etc/debsig/policies/AC2D62742012EA22/
# curl -sS https://downloads.1password.com/linux/debian/debsig/1password.pol \
# | sudo tee /etc/debsig/policies/AC2D62742012EA22/1password.pol
# sudo mkdir -p /usr/share/debsig/keyrings/AC2D62742012EA22
# curl -sS https://downloads.1password.com/linux/keys/1password.asc \
# | sudo gpg --dearmor --output /usr/share/debsig/keyrings/AC2D62742012EA22/debsig.gpg
# sudo apt update
# sudo apt install -y 1password
# docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
# coretto (managed through sdkman)
# wget -O- https://apt.corretto.aws/corretto.key | sudo apt-key add -
# sudo add-apt-repository 'deb https://apt.corretto.aws stable main'
# sudo apt update
# sudo apt install -y java-11-amazon-corretto-jdk
#jenv
#git clone https://github.com/jenv/jenv.git ~/.jenv
#sdkman
curl -s "https://get.sdkman.io" | bash
# nvm, no "latest"
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
# Google cloud SDK
curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-326.0.0-linux-x86_64.tar.gz
tar xzvf google-cloud-sdk-326.0.0-linux-x86_64.tar.gz -C "$HOME"
rm -rf google-cloud-sdk-326.0.0-linux-x86_64.tar.gz
# Still need to ./google-cloud-sdk/install.sh
#zplug
# curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
# antidote
git clone --depth=1 https://github.com/mattmc3/antidote.git ${ZDOTDIR:-~}/.antidote
#tmux plugin manager
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
# vim-plug
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs '\
'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
# stow config files
stow zsh
stow tmux
stow git
stow curl
stow wget
stow -t "$HOME"/.config/nvim nvim
stow powerlevel10k
# init commands, should work (maybe)
vim +PlugInstall +all
# does not work
# tmux run-shell "$HOME"/.tmux/plugins/tpm/scripts/install_plugins.sh
#jenv add /usr/lib/jvm/java-11-amazon-coretto/
#jenv global 11
#jenv enable-plugin maven
#jenv enable-plugin export
sed -i 's/sdkman_auto_answer=false/sdkman_auto_answer=true/' "$HOME/.sdkman/etc/config"
sed -i 's/sdkman_auto_env=false/sdkman_auto_env=true/' "$HOME/.sdkman/etc/config"
# sdk install java 8.282.08.1-amzn
# sdk install java 11.0.10.9.1-amzn
# sdk install maven
# sdk install mvnd
# sdk default java 11.0.10.9.1-amzn
# set zsh as the default
chsh -s "$(which zsh)"
# remove sdkman autoinit (it's in the plugin)
# logout and relogin to pick up changes
# extensions
# don't now how to enable them automatically but probably through
# `gnome-extensions` https://wiki.gnome.org/Projects/GnomeShell/Extensions
# https://extensions.gnome.org/extension/779/clipboard-indicator/
# https://extensions.gnome.org/extension/906/sound-output-device-chooser/
# https://extensions.gnome.org/extension/120/system-monitor/
# https://extensions.gnome.org/extension/19/user-themes/
#
# install krew https://krew.sigs.k8s.io/docs/user-guide/setup/install/
# krew install ctx
# krew install ns
#