Merge branch 'update-181223' into 'main'

Update

See merge request sagidayan/linux-config!24
This commit is contained in:
Sagi Dayan 2023-12-18 15:55:38 +00:00
commit e380df05f9
12 changed files with 85 additions and 191 deletions

View file

@ -33,56 +33,3 @@ Run Workstation playbook on fedora:
reports: reports:
junit: report.xml junit: report.xml
Run cli-tools playbook on centos:
stage: x86 Systems
image:
name: quay.io/centos/centos:stream8
script:
- dnf install -y epel-release dnf-plugins-core
- dnf install -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm
- dnf makecache
- dnf install -y ansible python3-pip
- pip3 install -r ci-requirements.txt
- mkdir /tmp/artifacts
- ./run_play.sh cli-tools
- mv /tmp/artifacts/cli-tools-*.xml report.xml
artifacts:
when: always
reports:
junit: report.xml
Run Workstation playbook on ubuntu:
stage: x86 Systems
image:
name: ubuntu:latest
script:
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt install -y software-properties-common
- add-apt-repository -y --update ppa:ansible/ansible
- apt-get install -y ansible python3-pip python3-apt
- pip3 install -r ci-requirements.txt
- mkdir /tmp/artifacts
- ./run_play.sh workstation
- mv /tmp/artifacts/workstation-*.xml report.xml
artifacts:
when: always
reports:
junit: report.xml
Run cli-tools playbook on debian:
stage: x86 Systems
image:
name: debian:latest
script:
- apt-get update
- apt-get install -y ansible python3-pip python3-apt
- pip3 install -r ci-requirements.txt
- mkdir /tmp/artifacts
- ./run_play.sh cli-tools
- mv /tmp/artifacts/cli-tools-*.xml report.xml
artifacts:
when: always
reports:
junit: report.xml

View file

@ -6,7 +6,7 @@ Playbooks will install software and configure most of the tools.
Since dotfiles are the most basic thing this repo provides, It is constantly a WIP. Since dotfiles are the most basic thing this repo provides, It is constantly a WIP.
I do try to make sure playbooks work on RHEL/Debian based distros via gitlab CI. I do try to make sure playbooks work on fedora:latest via gitlab CI.
This repo was created for my own use, But feel free to use it as you please. This repo was created for my own use, But feel free to use it as you please.

View file

@ -17,7 +17,16 @@ end
-- Git signs (Gutter) -- Git signs (Gutter)
local gitsigns_status_ok, gitsigns = pcall(require, "gitsigns") local gitsigns_status_ok, gitsigns = pcall(require, "gitsigns")
if gitsigns_status_ok then if gitsigns_status_ok then
gitsigns.setup() gitsigns.setup {
current_line_blame = true, -- Toggle with `:Gitsigns toggle_current_line_blame`
current_line_blame_opts = {
virt_text = true,
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
delay = 1000,
ignore_whitespace = false,
},
current_line_blame_formatter = '[<abbrev_sha>] <author>, <author_time:%Y-%m-%d> - <summary>',
}
end end
-- Telescope -- Telescope

View file

@ -37,3 +37,11 @@ nnoremap('<C-J>', '<C-W><C-J>')
nnoremap('<C-K>', '<C-W><C-K>') nnoremap('<C-K>', '<C-W><C-K>')
nnoremap('<C-L>', '<C-W><C-L>') nnoremap('<C-L>', '<C-W><C-L>')
nnoremap('<C-H>', '<C-W><C-H>') nnoremap('<C-H>', '<C-W><C-H>')
-- Wrap in...
nnoremap('<leader>w"', 'ciw""<Esc>hp')
nnoremap("<leader>w'", "ciw''<Esc>hp")
nnoremap('<leader>w]', 'ciw[]<Esc>hp')
nnoremap('<leader>w[', 'ciw[]<Esc>hp')
nnoremap('<leader>w(', 'ciw()<Esc>hp')
nnoremap('<leader>w)', 'ciw()<Esc>hp')

View file

@ -113,7 +113,7 @@ function ide() {
pre_check_tmux_for_layout "ide" || return 1 pre_check_tmux_for_layout "ide" || return 1
clear; clear;
tmux split-window -v -p 20 tmux split-window -v -l 20
huh "${IDE_NAME}"; huh "${IDE_NAME}";
tmux split-window -h tmux split-window -h
tmux select-pane -t 0 tmux select-pane -t 0
@ -147,7 +147,7 @@ function layout() {
for col in {1..$(($cols))} for col in {1..$(($cols))}
do do
H_SIZE=$((100 - (col * H_RATIO))) H_SIZE=$((100 - (col * H_RATIO)))
tmux split-window -h -p $((H_SIZE)) tmux split-window -h -l $((H_SIZE))
done done
fi fi
@ -165,7 +165,7 @@ function layout() {
for row in {1..$((ROWS - 1))} for row in {1..$((ROWS - 1))}
do do
V_SIZE=$((100 - (row * V_RATIO))) V_SIZE=$((100 - (row * V_RATIO)))
tmux split-window -v -p $((V_SIZE)) tmux split-window -v -l $((V_SIZE))
done done
fi fi
done done

View file

@ -26,7 +26,7 @@ setw -g mouse on
# Set easier window split keys # Set easier window split keys
bind-key | split-window -h -c "#{pane_current_path}" bind-key | split-window -h -c "#{pane_current_path}"
bind-key \ split-window -h -c "#{pane_current_path}" bind-key \\ split-window -h -c "#{pane_current_path}"
bind-key - split-window -v -c "#{pane_current_path}" bind-key - split-window -v -c "#{pane_current_path}"
# close window with <prefix-q> # close window with <prefix-q>
bind-key q kill-window bind-key q kill-window

View file

@ -1,11 +1,3 @@
- name: Install Alacritty PPA (Debian Based)
become: true
apt_repository:
repo: "ppa:aslatter/ppa"
validate_certs: no
state: present
when: ansible_facts['os_family'] == "Debian"
- name: Install Alacritty - name: Install Alacritty
become: true become: true
package: package:

View file

@ -14,14 +14,15 @@
- npm - npm
- man-db - man-db
- clang - clang
state: present
- name: Some more packages (RedHat based)
become: true
package:
name:
- podman - podman
when: ansible_facts['os_family'] == "RedHat" - ripgrep
- lsd
- gitui
- NetworkManager-tui
- tldr
- bat
- fzf
state: present
- name: Copy gitconfig base - name: Copy gitconfig base
copy: copy:
@ -36,7 +37,6 @@
dest: ~/.oh-my-zsh dest: ~/.oh-my-zsh
version: master version: master
- name: Making sure to use ZSH as shell - name: Making sure to use ZSH as shell
become: true become: true
user: user:
@ -167,4 +167,31 @@
force: yes force: yes
mode: preserve mode: preserve
# Gitui
- name: Verifying gitui config
file:
path: ~/.config/gitui
state: directory
mode: '0755'
- name: Copy gitui keybindings
copy:
src: dotfiles/gitui/key_bindings.ron
dest: ~/.config/gitui/key_bindings.ron
force: yes
mode: preserve
- name: Copy gitui theme config
copy:
src: dotfiles/gitui/theme.ron
dest: ~/.config/gitui/theme.ron
force: yes
mode: preserve
# bat (cat)
- name: verify Bat (better Cat) theme
changed_when: false
ansible.builtin.lineinfile:
path: "~/.shellconfig/common.sh"
regexp: "^export BAT_THEME="
line: 'export BAT_THEME="${{ theme }}"'

View file

@ -17,17 +17,11 @@
name: name:
- org.gimp.GIMP - org.gimp.GIMP
- org.telegram.desktop - org.telegram.desktop
- net.christianbeier.Gromit-MPX
- com.logseq.Logseq - com.logseq.Logseq
- com.bitwarden.desktop - com.bitwarden.desktop
- com.github.tchx84.Flatseal - com.github.tchx84.Flatseal
- com.github.alexr4535.siglo
- com.nextcloud.desktopclient.nextcloud - com.nextcloud.desktopclient.nextcloud
- com.github.unrud.VideoDownloader
- com.github.liferooter.textpieces
- nl.hjdskes.gcolor3
- re.sonny.Junction - re.sonny.Junction
- org.gnome.DejaDup
state: present state: present
- name: Check if open function is set - name: Check if open function is set

View file

@ -1,96 +1,13 @@
--- ---
- name: Installing fzf #- name: Installing fzf
ansible.builtin.include_role: # ansible.builtin.include_role:
name: gh_release_bin # name: gh_release_bin
vars: # vars:
name: fzf # name: fzf
repo: junegunn/fzf # repo: junegunn/fzf
bin_path: "/fzf" # bin_path: "/fzf"
autocomplete_path: "/fzf-*/shell/completion.zsh" # autocomplete_path: "/fzf-*/shell/completion.zsh"
man_path: "/fzf-*/man/man1/fzf.1" # man_path: "/fzf-*/man/man1/fzf.1"
include_source: yes # include_source: yes
filter: linux_amd64.tar.gz # filter: linux_amd64.tar.gz
- name: Installing bat (cat like)
ansible.builtin.include_role:
name: gh_release_bin
vars:
name: bat
repo: sharkdp/bat
bin_path: "/bat-*/bat"
man_path: "/bat-*/bat.1"
filter: x86_64-unknown-linux-gnu
- name: verify Bat (better Cat) theme
changed_when: false
ansible.builtin.lineinfile:
path: "~/.shellconfig/common.sh"
regexp: "^export BAT_THEME="
line: 'export BAT_THEME="${{ theme }}"'
- name: Instaling TLDR (pip3)
become: true
shell: pip3 install tldr || true
changed_when: false
- name: Installing bottom (btm) (Top like)
ansible.builtin.include_role:
name: gh_release_bin
vars:
name: btm
repo: ClementTsang/bottom
bin_path: "/btm"
#autocomplete_path: "/completion/btm.bash"
filter: bottom_x86_64-unknown-linux-gnu.tar.gz
- name: Installing gitui
ansible.builtin.include_role:
name: gh_release_bin
vars:
name: gitui
repo: extrawurst/gitui
bin_path: "/gitui"
filter: gitui-linux-musl
- name: Verifying gitui config
file:
path: ~/.config/gitui
state: directory
mode: '0755'
- name: Copy gitui keybindings
copy:
src: dotfiles/gitui/key_bindings.ron
dest: ~/.config/gitui/key_bindings.ron
force: yes
mode: preserve
- name: Copy gitui theme config
copy:
src: dotfiles/gitui/theme.ron
dest: ~/.config/gitui/theme.ron
force: yes
mode: preserve
- name: Installing LSD (ls like)
ansible.builtin.include_role:
name: gh_release_bin
vars:
name: lsd
repo: lsd-rs/lsd
bin_path: "/lsd-*/lsd"
man_path: "/lsd-*/lsd.1"
autocomplete_path: "/lsd-*/autocomplete/lsd.bash-completion"
filter: x86_64-unknown-linux-gnu.tar.gz
- name: Installing ripgrep (grep like)
ansible.builtin.include_role:
name: gh_release_bin
vars:
name: rg
repo: BurntSushi/ripgrep
bin_path: "/ripgrep-*/rg"
man_path: "/ripgrep-*/doc/rg.1"
autocomplete_path: "/ripgrep-*/complete/rg.bash"
filter: x86_64-unknown-linux-musl.tar.gz