Last active 4 months ago

Install essentials, oh-my-zsh and vimconf

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 3 insertions

bootstrap.sh

@@ -4,6 +4,9 @@
4 4 sudo apt update
5 5 sudo apt install -y build-essential git zsh htop tmux
6 6
7 + # Enable mouse scrolling in tmux
8 + echo "setw -g mouse on" >> ~/.tmux.conf
9 +
7 10 # Install: oh-my-zsh
8 11 sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
9 12

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 36 insertions, 4 deletions

README.md

@@ -1,13 +1,45 @@
1 - # Installation
1 + # **Ubuntu Development Environment Setup Script**
2 2
3 - ## Curl
3 + This bash script automatically configures a comprehensive development environment on Ubuntu/Debian systems. Here's what it accomplishes:
4 +
5 + ## Installation
6 +
7 + ### Curl
4 8
5 9 ```sh
6 10 curl -fsSL https://opengist.internal.willithiel.net/wthiel/032ceca594884fce86ed8a6a32726bd2/raw/HEAD/bootstrap.sh | bash
7 11 ```
8 12
9 - ## wget
13 + ### wget
10 14
11 15 ```sh
12 16 wget -qO- https://opengist.internal.willithiel.net/wthiel/032ceca594884fce86ed8a6a32726bd2/raw/HEAD/bootstrap.sh | bash
13 - ```
17 + ```
18 +
19 + ## **System Updates & Essential Tools**
20 + - Updates package repositories
21 + - Installs core development tools: `build-essential`, `git`, `zsh`, `htop`, `tmux`
22 +
23 + ## **Advanced Shell Configuration**
24 + | Component | Purpose | Configuration |
25 + |-----------|---------|---------------|
26 + | **Oh My Zsh** | Enhanced Zsh framework | Installs from official repository |
27 + | **Powerlevel10k** | Advanced shell theme | Custom prompt with host, directory, git status, virtualenv |
28 + | **Syntax Highlighting** | Command syntax coloring | System package installation |
29 + | **Auto-suggestions** | Command completion | Plugin integration |
30 +
31 + ## **Vim Editor Enhancement**
32 + - Installs Vim with `exuberant-ctags` support
33 + - Deploys `timss/vimconf` configuration for enhanced editing experience
34 + - Creates symbolic links for configuration files
35 +
36 + ## **Security & Access Configuration**
37 + - **Passwordless Sudo**: Grants the current user unrestricted sudo access without password prompts
38 + - **SSH Key Installation**: Adds a predefined Ed25519 public key to `authorized_keys` for remote access
39 + - Sets appropriate file permissions (700 for `.ssh`, 600 for `authorized_keys`)
40 +
41 + ## **Key Features**
42 + - **Automated Setup**: Complete hands-off installation
43 + - **Developer-Focused**: Tools optimized for coding and system administration
44 + - **Security Integration**: SSH key deployment for remote access
45 + - **Shell Customization**: Modern, feature-rich terminal experience

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 13 insertions

README.md(file created)

@@ -0,0 +1,13 @@
1 + # Installation
2 +
3 + ## Curl
4 +
5 + ```sh
6 + curl -fsSL https://opengist.internal.willithiel.net/wthiel/032ceca594884fce86ed8a6a32726bd2/raw/HEAD/bootstrap.sh | bash
7 + ```
8 +
9 + ## wget
10 +
11 + ```sh
12 + wget -qO- https://opengist.internal.willithiel.net/wthiel/032ceca594884fce86ed8a6a32726bd2/raw/HEAD/bootstrap.sh | bash
13 + ```

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 9 insertions, 1 deletion

bootstrap.sh

@@ -23,4 +23,12 @@ sed -i -- 's/^plugins=(/plugins=(\n zsh-autosuggestions\n/g' ~/.zshrc
23 23 sudo apt install -y vim exuberant-ctags
24 24 mkdir -p ~/.vim/vimconf
25 25 git clone https://github.com/timss/vimconf.git ~/.vim/vimconf
26 - ln -s ~/.vim/vimconf/.vimrc ~/.vimrc
26 + ln -s ~/.vim/vimconf/.vimrc ~/.vimrc
27 +
28 + # Add user to sudoers with no password
29 + echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/$USER
30 + sudo chmod 440 /etc/sudoers.d/$USER
31 +
32 + # Install public key
33 + KEY="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILB5bVuBHYwgtCL+ppoOkKSpu/+wmSOt80yVE/S2qU0F"
34 + mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo "$KEY" >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 1 insertion, 1 deletion

bootstrap.sh

@@ -2,7 +2,7 @@
2 2
3 3 # Update packages, install essentials
4 4 sudo apt update
5 - sudo apt install -y build-essential git zsh htop
5 + sudo apt install -y build-essential git zsh htop tmux
6 6
7 7 # Install: oh-my-zsh
8 8 sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

wthiel's Avatar wthiel revised this gist 4 months ago. Go to revision

1 file changed, 26 insertions

bootstrap.sh(file created)

@@ -0,0 +1,26 @@
1 + #!/bin/bash
2 +
3 + # Update packages, install essentials
4 + sudo apt update
5 + sudo apt install -y build-essential git zsh htop
6 +
7 + # Install: oh-my-zsh
8 + sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
9 +
10 + # Install Powerlevel10k
11 + git clone --depth=1 https://github.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k"
12 + sed -i -- 's/ZSH_THEME="robbyrussell"/plugins=(virtualenv)\nPOWERLEVEL9K_CUSTOM_LIVE_BACKGROUND="red"\nPOWERLEVEL9K_CUSTOM_LIVE_FOREGROUND="white"\nPOWERLEVEL9K_MODE="nerdfont-complete"\nPOWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(custom_live host dir vcs virtualenv)\nPOWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs load ram disk_usage time)\nZSH_THEME="powerlevel10k\/powerlevel10k"\n/g' ~/.zshrc
13 +
14 + # zsh-syntax-highlighting
15 + sudo apt install zsh-syntax-highlighting
16 + echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
17 +
18 + # zsh-autosuggestions
19 + git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
20 + sed -i -- 's/^plugins=(/plugins=(\n zsh-autosuggestions\n/g' ~/.zshrc
21 +
22 + # Install: timss/vimconf (https://github.com/timss/vimconf#installation)
23 + sudo apt install -y vim exuberant-ctags
24 + mkdir -p ~/.vim/vimconf
25 + git clone https://github.com/timss/vimconf.git ~/.vim/vimconf
26 + ln -s ~/.vim/vimconf/.vimrc ~/.vimrc
Newer Older