From a7155289316d76064ef234f50ac52cb1f1d442b1 Mon Sep 17 00:00:00 2001 From: Rick van Lieshout Date: Tue, 11 Jun 2024 22:59:12 +0200 Subject: [PATCH] replaced powerline with oh-my-posh, new deps and alias fixes --- .vscode/settings.json | 10 ++++- bash/.alias.sh | 1 + bash/.aliases/docker.sh | 2 +- bash/.aliases/node.sh | 2 +- bash/.bashrc | 13 +----- config/environment | 1 + config/gtk/portals.conf | 2 + config/{gtk-3.0 => gtk}/settings.ini | 5 +-- config/mimeapps.list | 1 + config/poshthemes/mastermindzh.yaml | 61 ++++++++++++++++++++++++++++ config/rofi/rofi.rasi | 13 +++--- dependencies/aur.txt | 12 +++--- dependencies/pacman.txt | 2 + i3/config | 6 +-- install.sh | 17 ++++++-- 15 files changed, 113 insertions(+), 35 deletions(-) create mode 100644 config/gtk/portals.conf rename config/{gtk-3.0 => gtk}/settings.ini (92%) create mode 100644 config/poshthemes/mastermindzh.yaml diff --git a/.vscode/settings.json b/.vscode/settings.json index f164661..6ac3a0c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,11 @@ { - "cSpell.words": ["autohint", "hintstyle", "rgba"] + "cSpell.words": [ + "autohint", + "hintstyle", + "rgba" + ], + "sonarlint.connectedMode.project": { + "connectionId": "public-sonarcloud", + "projectKey": "Mastermindzh_dotfiles" + } } diff --git a/bash/.alias.sh b/bash/.alias.sh index 266deb4..2a40a38 100644 --- a/bash/.alias.sh +++ b/bash/.alias.sh @@ -61,6 +61,7 @@ alias suspend='sudo bash ~/.config/i3/scripts/suspend.sh' alias clean-all='sudo pacman -R $(pacman -Qtdq) && sudo paccache -rk 1 && sudo paccache -ruk0 && sudo journalctl --vacuum-time=2d && docker-clean-all && rm -rf ~/.local/share/Trash/' alias delete-empty='find . -type d -empty -delete' alias addwireguard='sudo nmcli connection import type wireguard file ' +alias defaultfonts='for family in serif sans-serif monospace Arial Helvetica Verdana "Times New Roman" "Courier New"; do echo -e "\033[1m$family: \033[0m" && fc-match "$family" && echo ""; done' # might be useful in demos... alias oopsie='fuck' diff --git a/bash/.aliases/docker.sh b/bash/.aliases/docker.sh index b78fa9a..2ae2450 100644 --- a/bash/.aliases/docker.sh +++ b/bash/.aliases/docker.sh @@ -1,6 +1,6 @@ #!/bin/bash # useful docker commands -alias stop-dockers='docker stop $(docker ps -aq)' +alias stop-dockers='if [ $(docker ps -aq | wc -l) != 0 ]; then docker stop $(docker ps -aq); fi' alias docker-clean-containers='docker container prune -f --filter "until=48h"' alias docker-clean-images='docker image prune -a -f --filter "until=48h"' alias docker-clean-volumes='docker volume prune -f --filter "label!=keep"' diff --git a/bash/.aliases/node.sh b/bash/.aliases/node.sh index 8ac4db1..00c6f1a 100644 --- a/bash/.aliases/node.sh +++ b/bash/.aliases/node.sh @@ -1,4 +1,4 @@ #!/bin/bash -alias clean-node-modules='find . -name "node_modules" -type d -print0 |xargs -0 rm -r --' +alias clean-node-modules='find . -not -path "*/.*" -name "node_modules" -type d -print0 | xargs -0 rm -rf' alias organize-package-json='npx format-package -w && npx sort-package-json' diff --git a/bash/.bashrc b/bash/.bashrc index 56fcd20..54561f1 100644 --- a/bash/.bashrc +++ b/bash/.bashrc @@ -1,10 +1,4 @@ #!/bin/bash -# if powerline-shell is available use it. -function _update_ps1() { - if hash powerline-rs 2>/dev/null; then - PS1="$(powerline-rs --shell bash $?)" - fi -} # sourceIfExists function sourceIfExists() { @@ -19,6 +13,7 @@ source ~/.custom source ~/.variables sourceIfExists ~/lib/azure-cli/az.completion eval "$(thefuck --alias)" +eval "$(oh-my-posh init bash --config ~/.config/poshthemes/mastermindzh.yaml)" # load keychain with private key if test -f "$HOME/.ssh/id_ed25519"; then @@ -40,10 +35,4 @@ if hash dotnet 2>/dev/null; then export PATH="${PATH}:${DOTNET_ROOT}:~/.dotnet/tools" fi -PS1='[\u@\h \W]\$ ' - -if [[ $TERM != linux && ! $PROMPT_COMMAND =~ _update_ps1 ]]; then - PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND" -fi - export PATH=$PATH:/home/mastermindzh/bin diff --git a/config/environment b/config/environment index 8502579..3cd03df 100644 --- a/config/environment +++ b/config/environment @@ -5,3 +5,4 @@ # XCURSOR_THEME="Adwaita" EDITOR="nano" +GTK_THEME=Adwaita-dark diff --git a/config/gtk/portals.conf b/config/gtk/portals.conf new file mode 100644 index 0000000..0527934 --- /dev/null +++ b/config/gtk/portals.conf @@ -0,0 +1,2 @@ +[preferred] +default=gtk;wlr diff --git a/config/gtk-3.0/settings.ini b/config/gtk/settings.ini similarity index 92% rename from config/gtk-3.0/settings.ini rename to config/gtk/settings.ini index f87c804..dbfcc1a 100644 --- a/config/gtk-3.0/settings.ini +++ b/config/gtk/settings.ini @@ -1,15 +1,14 @@ [Settings] gtk-theme-name=Adwaita-dark -gtk-icon-theme-name="Papirus-Dark" gtk-font-name="Ubuntu 12" gtk-cursor-theme-name=Adwaita gtk-cursor-theme-size=0 +gtk-enable-event-sounds=1 +gtk-enable-input-feedback-sounds=1 gtk-toolbar-style=GTK_TOOLBAR_BOTH gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR gtk-button-images=1 gtk-menu-images=1 -gtk-enable-event-sounds=1 -gtk-enable-input-feedback-sounds=1 gtk-xft-antialias=1 gtk-xft-hinting=1 gtk-xft-hintstyle=hintmedium diff --git a/config/mimeapps.list b/config/mimeapps.list index a51494d..bdc4d77 100644 --- a/config/mimeapps.list +++ b/config/mimeapps.list @@ -29,6 +29,7 @@ x-scheme-handler/tidal=tidal-hifi.desktop # files #-------------- inode/director=thunar.desktop +x-scheme-handler/ftb=ftb-app.desktop [Added Associations] # browser-stuff diff --git a/config/poshthemes/mastermindzh.yaml b/config/poshthemes/mastermindzh.yaml new file mode 100644 index 0000000..e737b97 --- /dev/null +++ b/config/poshthemes/mastermindzh.yaml @@ -0,0 +1,61 @@ +version: 2 +blocks: + # prompt on the right + - type: rprompt + overflow: hidden + segments: + - background: transparent + foreground: yellow + style: plain + template: "{{ .FormattedMs }}" + type: executiontime + properties: + threshold: 1 + + # prompt segment + - type: prompt + alignment: left + newline: true + segments: + - foreground: "#77E4F7" + template: "{{ .Path }} " + type: path + properties: + home_icon: " " + style: agnoster_short + + # git segment + - type: git + foreground: "#C678DD" + properties: + fetch_status: true + style: plain + # template: + # "<#ffffff>on {{ .HEAD }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}{{ if and (.Working.Changed) + # (.Staging.Changed) }} |{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String + # }}{{ end }}" + template: "<#ffffff>on {{ .HEAD }}{{ if or (.Working.Changed) (.Staging.Changed) }}  {{end}} " + + # current language info + - type: node + foreground: "#98C379" + properties: + fetch_version: true + style: plain + template: "  {{ if .PackageManagerIcon }}{{ .PackageManagerIcon }} {{ end }} {{ .Full }} " + + - alignment: left + segments: + - foreground: "#63F08C" + style: plain + template: "➜ " + type: text + type: prompt +# bash won't play along :) +# transient_prompt: +# background: transparent +# foreground_templates: +# - "{{if gt .Code 0}}red{{end}}" +# - "{{if eq .Code 0}}magenta{{end}}" +# template: "❯ " + diff --git a/config/rofi/rofi.rasi b/config/rofi/rofi.rasi index f555432..5196533 100644 --- a/config/rofi/rofi.rasi +++ b/config/rofi/rofi.rasi @@ -6,11 +6,14 @@ configuration { ssh-command: "{terminal} -e "{ssh-client} {host}""; show-icons: true; - display-drun: ""; - display-run: ""; - display-ssh: ""; - display-filebrowser: ""; - display-window: ""; + display-drun: " "; + display-run: " "; + display-ssh: " "; + display-clipboard: " "; + display-emoji: " "; + display-calc: " "; + display-filebrowser: " "; + display-window: " "; drun-display-format: "{name} [({generic})]"; window-format: "{w} · {c} · {t}"; } diff --git a/dependencies/aur.txt b/dependencies/aur.txt index f2e29fa..fe4bd6a 100644 --- a/dependencies/aur.txt +++ b/dependencies/aur.txt @@ -1,27 +1,27 @@ visual-studio-code-bin i3blocks-contrib insync -ttf-font-awesome-4 awesome-terminal-fonts-git otf-droid-sans-mono-powerline-git downgrade -powerline-rs +oh-my-posh dive xorg-xev networkmanager-l2tp -snapd -azure-cli notify-osd-customizable notifyconf dotnet-host-bin -sysmontask keychain nomachine chili-sddm-theme dive gnome-text-editor greenclip -kind pulseaudio-ctl seafile seafile-client +awf-gtk4 + +azure-cli +sysmontask +kind diff --git a/dependencies/pacman.txt b/dependencies/pacman.txt index fbe3c34..7dcc086 100644 --- a/dependencies/pacman.txt +++ b/dependencies/pacman.txt @@ -92,6 +92,8 @@ eog feh firefox flameshot +gtk-engine-murrine +gnome-themes-standard gnome-themes-extra htop i3blocks diff --git a/i3/config b/i3/config index addfb15..ed28fb0 100644 --- a/i3/config +++ b/i3/config @@ -62,7 +62,6 @@ bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right # move focused workspace - bindsym $mod+Ctrl+Right move workspace to output right bindsym $mod+Ctrl+Left move workspace to output left @@ -234,6 +233,7 @@ for_window [title="Tidal-hifi - settings"] floating enable for_window [class="Sysmontask"] floating enable for_window [class="Sysmontask"] resize set 930 665 for_window [instance="Godot_Engine"] floating enable +for_window [class="Alert"] floating enable ############################################ # Workspace specific tools # @@ -322,8 +322,8 @@ exec --no-startup-id i3-msg 'workspace $workspace2; exec xfce4-terminal' && i3-m exec --no-startup-id i3-msg 'workspace $workspace12; exec bitwarden-desktop' exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 exec --no-startup-id nm-applet -exec /usr/bin/compton -exec /bin/bash ~/.config/i3/scripts/startup.sh exec --no-startup-id greenclip daemon exec --no-startup-id seafile-applet exec --no-startup-id obsidian +exec /usr/bin/compton +exec /bin/bash ~/.config/i3/scripts/startup.sh diff --git a/install.sh b/install.sh index 4aea42a..cac1615 100644 --- a/install.sh +++ b/install.sh @@ -91,15 +91,28 @@ function setDateTimeConfig { sudo ln -sf "$PWD"/config/networkmanager/09-timezone /etc/NetworkManager/dispatcher.d/09-timezone } +function install_gtk { + mkdir -p ~/.config/xdg-desktop-portal + mkdir -p "$HOME/.config/gtk-3.0" + mkdir -p "$HOME/.config/gtk-4.0" + ln -sf "$PWD"/config/gtk/portals.conf ~/.config/xdg-desktop-portal/portals.conf + ln -sf "$PWD"/config/gtk/settings.ini ~/.gtkrc-2.0.mine + ln -sf "$PWD"/config/gtk/settings.ini ~/.config/gtk-3.0/settings.ini + ln -sf "$PWD"/config/gtk/settings.ini ~/.config/gtk-4.0/settings.ini +} + # install other configs function install_config { + install_gtk + # link directories linkDir "$PWD"/wallpapers/images ~/Pictures/wallpapers linkDir "$PWD"/i3 ~/.config/i3 linkDir "$PWD"/config/notify-osd/notify-osd ~/.notify-osd linkDir "$PWD"/config/terminal/xfce4-term ~/.config/xfce4/terminal linkDir "$PWD"/config/polybar ~/.config/polybar + linkDir "$PWD"/config/poshthemes ~/.config/poshthemes # link user files ln -sf "$PWD"/bash/.aliases ~/ @@ -108,9 +121,7 @@ function install_config { ln -sf "$PWD"/bash/.alias.sh ~/.alias ln -sf "$PWD"/config/nano/.nanorc ~/.nanorc ln -sf "$PWD"/bash/.powerline-shell.json ~/.powerline-shell.json - ln -sf "$PWD"/config/gtk-3.0/settings.ini ~/.gtkrc-2.0.mine - mkdir -p "$HOME/.config/gtk-3.0" - ln -sf "$PWD"/config/gtk-3.0/settings.ini ~/.config/gtk-3.0/settings.ini + ln -sf "$PWD"/config/mimeapps.list ~/.config/mimeapps.list ln -sf "$PWD"/config/greenclip.toml ~/.config/greenclip.toml ln -sf "$PWD"/config/terminalrc ~/.config/xfce4/terminal/terminalrc