Skip to content

Commit 0349eb1

Browse files
authored
Merge pull request nicolaka#60 from nicolaka/zsh-update
switched to zsh
2 parents 1017976 + b6a8fcf commit 0349eb1

File tree

4 files changed

+159
-46
lines changed

4 files changed

+159
-46
lines changed

Dockerfile

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,9 @@ RUN set -ex \
5656
tcptraceroute \
5757
tshark \
5858
util-linux \
59-
vim \
59+
vim \
60+
git \
61+
zsh \
6062
websocat
6163

6264
# Installing ctop - top-like container monitor
@@ -68,8 +70,17 @@ COPY --from=fetcher /tmp/calicoctl /usr/local/bin/calicoctl
6870
# Installing termshark
6971
COPY --from=fetcher /tmp/termshark /usr/local/bin/termshark
7072

71-
# Settings
72-
ADD motd /etc/motd
73-
ADD profile /etc/profile
73+
# Setting User and Home
74+
USER root
75+
WORKDIR /root
76+
ENV HOSTNAME netshoot
7477

75-
CMD ["/bin/bash","-l"]
78+
# ZSH Themes
79+
RUN wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh || true
80+
RUN git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
81+
RUN git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
82+
COPY zshrc .zshrc
83+
COPY motd motd
84+
85+
# Running ZSH
86+
CMD ["zsh"]

motd

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@
55
88 88 88. ... 88 88 88 88 88. .88 88. .88 88
66
dP dP `88888P' dP `88888P' dP dP `88888P' `88888P' dP
77

8-
Welcome to Netshoot! (github.com/nicolaka/netshoot)
8+
Welcome to Netshoot! (github.com/nicolaka/netshoot)
9+

profile

Lines changed: 0 additions & 40 deletions
This file was deleted.

zshrc

Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
# If you come from bash you might have to change your $PATH.
2+
# export PATH=$HOME/bin:/usr/local/bin:$PATH
3+
4+
# Path to your oh-my-zsh installation.
5+
export ZSH=$HOME/.oh-my-zsh
6+
7+
# Set name of the theme to load. Optionally, if you set this to "random"
8+
# it'll load a random theme each time that oh-my-zsh is loaded.
9+
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
10+
#export TERM="xterm-256color"
11+
ZSH_THEME="powerlevel10k/powerlevel10k"
12+
13+
# Set list of themes to load
14+
# Setting this variable when ZSH_THEME=random
15+
# cause zsh load theme from this variable instead of
16+
# looking in ~/.oh-my-zsh/themes/
17+
# An empty array have no effect
18+
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
19+
20+
# Uncomment the following line to use case-sensitive completion.
21+
# CASE_SENSITIVE="true"
22+
23+
# Uncomment the following line to use hyphen-insensitive completion. Case
24+
# sensitive completion must be off. _ and - will be interchangeable.
25+
# HYPHEN_INSENSITIVE="true"
26+
27+
# Uncomment the following line to disable bi-weekly auto-update checks.
28+
# DISABLE_AUTO_UPDATE="true"
29+
30+
# Uncomment the following line to change how often to auto-update (in days).
31+
# export UPDATE_ZSH_DAYS=13
32+
33+
# Uncomment the following line to disable colors in ls.
34+
# DISABLE_LS_COLORS="true"
35+
36+
# Uncomment the following line to disable auto-setting terminal title.
37+
# DISABLE_AUTO_TITLE="true"
38+
39+
# Uncomment the following line to enable command auto-correction.
40+
# ENABLE_CORRECTION="true"
41+
42+
# Uncomment the following line to display red dots whilst waiting for completion.
43+
# COMPLETION_WAITING_DOTS="true"
44+
45+
# Uncomment the following line if you want to disable marking untracked files
46+
# under VCS as dirty. This makes repository status check for large repositories
47+
# much, much faster.
48+
# DISABLE_UNTRACKED_FILES_DIRTY="true"
49+
50+
# Uncomment the following line if you want to change the command execution time
51+
# stamp shown in the history command output.
52+
# The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
53+
# HIST_STAMPS="mm/dd/yyyy"
54+
55+
# Would you like to use another custom folder than $ZSH/custom?
56+
# ZSH_CUSTOM=/path/to/new-custom-folder
57+
58+
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
59+
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
60+
# Example format: plugins=(rails git textmate ruby lighthouse)
61+
# Add wisely, as too many plugins slow down shell startup.
62+
plugins=(
63+
git
64+
zsh-autosuggestions
65+
yarn
66+
web-search
67+
jsontools
68+
macports
69+
node
70+
sudo
71+
docker
72+
)
73+
74+
source $ZSH/oh-my-zsh.sh
75+
# User configuration
76+
cat motd
77+
78+
# export MANPATH="/usr/local/man:$MANPATH"
79+
80+
# You may need to manually set your language environment
81+
# export LANG=en_US.UTF-8
82+
83+
# Preferred editor for local and remote sessions
84+
# if [[ -n $SSH_CONNECTION ]]; then
85+
# export EDITOR='vim'
86+
# else
87+
# export EDITOR='mvim'
88+
# fi
89+
90+
# Compilation flags
91+
# export ARCHFLAGS="-arch x86_64"
92+
93+
# ssh
94+
# export SSH_KEY_PATH="~/.ssh/rsa_id"
95+
96+
# Set personal aliases, overriding those provided by oh-my-zsh libs,
97+
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
98+
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
99+
# For a full list of active aliases, run `alias`.
100+
#
101+
# Example aliases
102+
# alias zshconfig="mate ~/.zshrc"
103+
# alias ohmyzsh="mate ~/.oh-my-zsh"
104+
105+
# test -e "${HOME}/.iterm2_shell_integration.zsh" && source "${HOME}/.iterm2_shell_integration.zsh"
106+
107+
# Reload the plugin to highlight the commands each time Iterm2 starts
108+
#source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
109+
110+
111+
### VISUAL CUSTOMISATION ###
112+
# Elements options of left prompt (remove the @username context)
113+
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(host dir rbenv)
114+
# Elements options of right prompt
115+
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=()
116+
# Add a second prompt line for the command
117+
POWERLEVEL9K_PROMPT_ON_NEWLINE=false
118+
119+
# Add a space in the first prompt
120+
POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX=''
121+
122+
# Visual customisation of the second prompt line
123+
#local user_symbol="$"
124+
#if [[ $(print -P "%#") =~ "#" ]]; then
125+
# user_symbol = "#"
126+
#fi
127+
#POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX="%{%B%F{black}%K{yellow}%} $user_symbol%{%b%f%k%F{yellow}%} %{%f%}"
128+
129+
130+
# Change the git status to red when something isn't committed and pushed
131+
POWERLEVEL9K_VCS_MODIFIED_BACKGROUND='red'
132+
133+
# Add a new line after the global prompt
134+
POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
135+
136+
137+
# Colorise the top Tabs of Iterm2 with the same color as background
138+
# Just change the 18/26/33 wich are the rgb values
139+
echo -e "\033]6;1;bg;red;brightness;18\a"
140+
echo -e "\033]6;1;bg;green;brightness;26\a"
141+
echo -e "\033]6;1;bg;blue;brightness;33\a"

0 commit comments

Comments
 (0)