first commit
This commit is contained in:
commit
cd077a9bc0
1836
data/.p10k.zsh
Normal file
1836
data/.p10k.zsh
Normal file
File diff suppressed because it is too large
Load Diff
143
data/.zshrc
Normal file
143
data/.zshrc
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||||
|
# Initialization code that may require console input (password prompts, [y/n]
|
||||||
|
# confirmations, etc.) must go above this block; everything else may go below.
|
||||||
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||||
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If you come from bash you might have to change your $PATH.
|
||||||
|
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||||
|
|
||||||
|
# Path to your oh-my-zsh installation.
|
||||||
|
export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
|
||||||
|
# Set name of the theme to load --- if set to "random", it will
|
||||||
|
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||||
|
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||||
|
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||||
|
#ZSH_THEME="robbyrussell"
|
||||||
|
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||||
|
# Set list of themes to pick from when loading at random
|
||||||
|
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||||
|
# a theme from this variable instead of looking in $ZSH/themes/
|
||||||
|
# If set to an empty array, this variable will have no effect.
|
||||||
|
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||||
|
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
# CASE_SENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to use hyphen-insensitive completion.
|
||||||
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||||
|
# HYPHEN_INSENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to change the auto-update behavior
|
||||||
|
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||||
|
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||||
|
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||||
|
|
||||||
|
# Uncomment the following line to change how often to auto-update (in days).
|
||||||
|
# zstyle ':omz:update' frequency 13
|
||||||
|
|
||||||
|
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||||
|
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable colors in ls.
|
||||||
|
# DISABLE_LS_COLORS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable auto-setting terminal title.
|
||||||
|
# DISABLE_AUTO_TITLE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to enable command auto-correction.
|
||||||
|
# ENABLE_CORRECTION="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||||
|
# You can also set it to another string to have that shown instead of the default red dots.
|
||||||
|
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||||
|
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||||
|
# COMPLETION_WAITING_DOTS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to disable marking untracked files
|
||||||
|
# under VCS as dirty. This makes repository status check for large repositories
|
||||||
|
# much, much faster.
|
||||||
|
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to change the command execution time
|
||||||
|
# stamp shown in the history command output.
|
||||||
|
# You can set one of the optional three formats:
|
||||||
|
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||||
|
# or set a custom format using the strftime function format specifications,
|
||||||
|
# see 'man strftime' for details.
|
||||||
|
# HIST_STAMPS="mm/dd/yyyy"
|
||||||
|
|
||||||
|
# Would you like to use another custom folder than $ZSH/custom?
|
||||||
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||||
|
|
||||||
|
# Which plugins would you like to load?
|
||||||
|
# Standard plugins can be found in $ZSH/plugins/
|
||||||
|
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||||
|
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||||
|
# Add wisely, as too many plugins slow down shell startup.
|
||||||
|
plugins=(git zsh-syntax-highlighting zsh-autosuggestions zsh-history-substring-search)
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
|
# User configuration
|
||||||
|
|
||||||
|
# export MANPATH="/usr/local/man:$MANPATH"
|
||||||
|
|
||||||
|
# You may need to manually set your language environment
|
||||||
|
# export LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
# Preferred editor for local and remote sessions
|
||||||
|
# if [[ -n $SSH_CONNECTION ]]; then
|
||||||
|
# export EDITOR='vim'
|
||||||
|
# else
|
||||||
|
# export EDITOR='mvim'
|
||||||
|
# fi
|
||||||
|
|
||||||
|
# Compilation flags
|
||||||
|
# export ARCHFLAGS="-arch x86_64"
|
||||||
|
|
||||||
|
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||||
|
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||||
|
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||||
|
# For a full list of active aliases, run `alias`.
|
||||||
|
#
|
||||||
|
# Example aliases
|
||||||
|
# alias zshconfig="mate ~/.zshrc"
|
||||||
|
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||||
|
|
||||||
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||||
|
|
||||||
|
if [ -x "$(command -v eza)" ]; then
|
||||||
|
alias ls="eza --long --all --group"
|
||||||
|
fi
|
||||||
|
alias cat="bat"
|
||||||
|
alias df="duf"
|
||||||
|
alias ..="cd .. && eza --long --all --group"
|
||||||
|
alias d='sudo -E docker'
|
||||||
|
alias dc="docker-compose"
|
||||||
|
alias e="exit"
|
||||||
|
alias j="sudo journalctl"
|
||||||
|
alias p1="ping 1.1.1.1"
|
||||||
|
alias p8="ping 8.8.8.8"
|
||||||
|
alias please='sudo'
|
||||||
|
alias reborn="sudo shutdown -r now"
|
||||||
|
alias s='sudo'
|
||||||
|
alias sctl="sudo systemctl"
|
||||||
|
alias svi="sudo vim"
|
||||||
|
alias svim="sudo vim"
|
||||||
|
alias t='terraform'
|
||||||
|
alias k="kubectl"
|
||||||
|
alias kd="kubectl describe"
|
||||||
|
alias kg="kubectl get"
|
||||||
|
alias ky="kubectl get -o yaml"
|
||||||
|
alias ke='kubectl exec -it'
|
||||||
|
alias vi="vim"
|
||||||
|
alias g="git"
|
||||||
|
alias b="sudo btrfs"
|
||||||
|
alias c="code ."
|
||||||
|
alias ansible-time="time ansible-playbook"
|
||||||
|
alias t1="traceroute 1.1.1.1"
|
||||||
|
alias dns="dig ya.ru"
|
||||||
54
data/99-mymotd-generator
Normal file
54
data/99-mymotd-generator
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/zsh
|
||||||
|
#
|
||||||
|
# Text Color Variables http://misc.flogisoft.com/bash/tip_colors_and_formatting
|
||||||
|
tcLtG="\033[00;37m" # LIGHT GRAY
|
||||||
|
tcDkG="\033[01;30m" # DARK GRAY
|
||||||
|
tcLtR="\033[01;31m" # LIGHT RED
|
||||||
|
tcLtGRN="\033[01;32m" # LIGHT GREEN
|
||||||
|
tcLtBL="\033[01;34m" # LIGHT BLUE
|
||||||
|
tcLtP="\033[01;35m" # LIGHT PURPLE
|
||||||
|
tcLtC="\033[01;36m" # LIGHT CYAN
|
||||||
|
tcW="\033[01;37m" # WHITE
|
||||||
|
tcRESET="\033[0m"
|
||||||
|
tcORANGE="\033[38;5;209m"
|
||||||
|
#
|
||||||
|
# Time of day
|
||||||
|
HOUR=$(date +"%H")
|
||||||
|
if [ $HOUR -lt 12 -a $HOUR -ge 0 ]; then TIME="morning"
|
||||||
|
elif [ $HOUR -lt 17 -a $HOUR -ge 12 ]; then TIME="afternoon"
|
||||||
|
else TIME="evening"
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
# System uptime
|
||||||
|
uptime=`cat /proc/uptime | cut -f1 -d.`
|
||||||
|
upDays=$((uptime/60/60/24))
|
||||||
|
upHours=$((uptime/60/60%24))
|
||||||
|
upMins=$((uptime/60%60))
|
||||||
|
#
|
||||||
|
# System + Memory
|
||||||
|
SYS_LOADS=`cat /proc/loadavg | awk '{print $1}'`
|
||||||
|
MEMORY_USED=`free -b | grep Mem | awk '{print $3/$2 * 100.0}'`
|
||||||
|
SWAP_USED=`free -b | grep Swap | awk '{print $3/$2 * 100.0}'`
|
||||||
|
NUM_PROCS=`ps aux | wc -l`
|
||||||
|
IPADDRESS=`hostname --all-ip-addresses`
|
||||||
|
#
|
||||||
|
# AstraInfra
|
||||||
|
BREST_BUILD='cat /etc/brest/build_version'
|
||||||
|
|
||||||
|
echo $tcDkG "================================================================="
|
||||||
|
echo $tcLtG " Good $TIME ! $tcORANGE p8o.ru"
|
||||||
|
echo $tcDkG "================================================================="
|
||||||
|
echo $tcLtG " - Hostname :$tcW `hostname -f`"
|
||||||
|
echo $tcLtG " - IP Address :$tcW $IPADDRESS"
|
||||||
|
echo $tcLtG " - Release :$tcW $(lsb_release -s -d)[$(cat /etc/astra/build_version)]"
|
||||||
|
echo $tcLtG " - BREST_BUILD :$tcW $BREST_BUILD"
|
||||||
|
echo $tcLtG " - Kernel : `uname -a | awk '{print $1" "$3" "$12}'`"
|
||||||
|
echo $tcLtG " - Users : Currently `users | wc -w` user(s) logged on"
|
||||||
|
echo $tcLtG " - Server Time : `date`"
|
||||||
|
echo $tcLtG " - System load : $SYS_LOADS / $NUM_PROCS processes running"
|
||||||
|
echo $tcLtG " - Memory used % : $MEMORY_USED"
|
||||||
|
echo $tcLtG " - Swap used % : $SWAP_USED"
|
||||||
|
echo $tcLtG " - System uptime : $upDays days $upHours hours $upMins minutes"
|
||||||
|
echo $tcDkG "================================================================="
|
||||||
|
echo $tcRESET ""
|
||||||
|
#
|
||||||
153
install-packages.yml
Normal file
153
install-packages.yml
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
---
|
||||||
|
- name: Configure VM
|
||||||
|
hosts: all
|
||||||
|
vars_files:
|
||||||
|
- vars.yml
|
||||||
|
tasks:
|
||||||
|
- name: Update apt
|
||||||
|
ansible.builtin.shell:
|
||||||
|
cmd: apt update
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: Install packages
|
||||||
|
apt:
|
||||||
|
name: "{{ item.name }}"
|
||||||
|
state: present
|
||||||
|
loop: "{{ packages_list }}"
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: install Oh-My-Zsh
|
||||||
|
shell: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
|
||||||
|
args:
|
||||||
|
creates: "/home/{{ user_name }}/.oh-my-zsh"
|
||||||
|
|
||||||
|
- name: set Zsh was dafault for {{ user_name }}
|
||||||
|
user:
|
||||||
|
name: "{{ user_name }}"
|
||||||
|
shell: /bin/zsh
|
||||||
|
tags:
|
||||||
|
- zsh-was-default
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: install Powerlevel10k
|
||||||
|
git:
|
||||||
|
repo: https://github.com/romkatv/powerlevel10k.git
|
||||||
|
dest: "/home/{{ user_name }}/.oh-my-zsh/custom/themes/powerlevel10k"
|
||||||
|
depth: 1
|
||||||
|
|
||||||
|
- name: install plugin Zsh-Syntax-Highlighting
|
||||||
|
git:
|
||||||
|
repo: https://github.com/zsh-users/zsh-syntax-highlighting.git
|
||||||
|
dest: "/home/{{ user_name }}/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting"
|
||||||
|
depth: 1
|
||||||
|
|
||||||
|
- name: install plugin Zsh-Autosuggestions
|
||||||
|
git:
|
||||||
|
repo: https://github.com/zsh-users/zsh-autosuggestions.git
|
||||||
|
dest: "/home/{{ user_name }}/.oh-my-zsh/custom/plugins/zsh-autosuggestions"
|
||||||
|
depth: 1
|
||||||
|
|
||||||
|
- name: install plugin Zsh-History-Substring-Search
|
||||||
|
git:
|
||||||
|
repo: https://github.com/zsh-users/zsh-history-substring-search.git
|
||||||
|
dest: "/home/{{ user_name }}/.oh-my-zsh/custom/plugins/zsh-history-substring-search"
|
||||||
|
depth: 1
|
||||||
|
|
||||||
|
- name: copy file .zshrc
|
||||||
|
copy:
|
||||||
|
src: data/.zshrc
|
||||||
|
dest: "/home/{{ user_name }}/.zshrc"
|
||||||
|
owner: "{{ user_name }}"
|
||||||
|
group: "{{ user_name }}"
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
|
- name: copy file .p10k.zsh
|
||||||
|
copy:
|
||||||
|
src: data/.p10k.zsh
|
||||||
|
dest: "/home/{{ user_name }}/.p10k.zsh"
|
||||||
|
owner: "{{ user_name }}"
|
||||||
|
group: "{{ user_name }}"
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
|
- name: Create directory
|
||||||
|
file:
|
||||||
|
path: /etc/apt/keyrings
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: Downloading and accepting gpg key
|
||||||
|
command: wget -qO- https://raw.githubusercontent.com/eza-community/eza/main/deb.asc | gpg --dearmor -o /etc/apt/keyrings/gierens.gpg
|
||||||
|
args:
|
||||||
|
creates: /etc/apt/keyrings/gierens.gpg
|
||||||
|
register: gpg_key_added
|
||||||
|
|
||||||
|
- name: accepting GPG key rewriting
|
||||||
|
command: echo "Y"
|
||||||
|
when: gpg_key_added.stdout is search("Файл '/etc/apt/keyrings/gierens.gpg' существует. Записать поверх?")
|
||||||
|
|
||||||
|
- name: Add repository to source list
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/apt/sources.list.d/gierens.list
|
||||||
|
line: "deb [signed-by=/etc/apt/keyrings/gierens.gpg] http://deb.gierens.de stable main"
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: Modify permissions of files
|
||||||
|
file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
mode: '0644'
|
||||||
|
with_items:
|
||||||
|
- /etc/apt/keyrings/gierens.gpg
|
||||||
|
- /etc/apt/sources.list.d/gierens.list
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: Update apt and install eza
|
||||||
|
apt:
|
||||||
|
name: eza
|
||||||
|
update_cache: yes
|
||||||
|
state: present
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: Downloading bat-musl_0.24.0_amd64.deb
|
||||||
|
shell: wget https://github.com/sharkdp/bat/releases/download/v0.24.0/bat-musl_0.24.0_amd64.deb
|
||||||
|
args:
|
||||||
|
chdir: "/home/{{ user_name }}"
|
||||||
|
|
||||||
|
- name: Downloading bat-musl_0.24.0_amd64.deb
|
||||||
|
shell: dpkg -i bat-musl_0.24.0_amd64.deb
|
||||||
|
args:
|
||||||
|
chdir: "/home/{{ user_name }}"
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: Install bat-musl_0.24.0_amd64.deb
|
||||||
|
file:
|
||||||
|
path: "/home/{{ user_name }}/bat-musl_0.24.0_amd64.deb"
|
||||||
|
state: absent
|
||||||
|
|
||||||
|
- name: Downloading duf_0.8.1_linux_amd64.deb
|
||||||
|
shell: wget https://github.com/muesli/duf/releases/download/v0.8.1/duf_0.8.1_linux_amd64.deb
|
||||||
|
args:
|
||||||
|
chdir: "/home/{{ user_name }}"
|
||||||
|
|
||||||
|
- name: Install duf_0.8.1_linux_amd64.deb
|
||||||
|
shell: dpkg -i duf_0.8.1_linux_amd64.deb
|
||||||
|
args:
|
||||||
|
chdir: "/home/{{ user_name }}"
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: rm duf_0.8.1_linux_amd64.deb
|
||||||
|
file:
|
||||||
|
path: "/home/{{ user_name }}/duf_0.8.1_linux_amd64.deb"
|
||||||
|
state: absent
|
||||||
|
|
||||||
|
- name: create directory /etc/update-motd.d
|
||||||
|
file:
|
||||||
|
path: /etc/update-motd.d
|
||||||
|
state: directory
|
||||||
|
become: yes
|
||||||
|
|
||||||
|
- name: copy 99-mymotd-generator
|
||||||
|
copy:
|
||||||
|
src: data/99-mymotd-generator
|
||||||
|
dest: /etc/update-motd.d/99-mymotd-generator
|
||||||
|
mode: '0755'
|
||||||
|
become: yes
|
||||||
|
...
|
||||||
2
invertory.ini
Executable file
2
invertory.ini
Executable file
@ -0,0 +1,2 @@
|
|||||||
|
[vm]
|
||||||
|
192.168.3.227 ansible_user=p8o ansible_ssh_private_key_file=~/.ssh/prokopenko
|
||||||
Loading…
Reference in New Issue
Block a user