diff --git a/.gitignore b/.gitignore index a8cf933..2e686e6 100755 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ home/pure_emacs/.emacs.d/projectile-bookmarks.eld home/pure_emacs/.emacs.d/recentf home/pure_emacs/.emacs.d/transient/ home/pure_emacs/.emacs.d/.org-id-locations +home/pure_emacs/.emacs.d/.lsp-session-v1 diff --git a/enviroment.sh b/enviroment.sh new file mode 100755 index 0000000..92d260d --- /dev/null +++ b/enviroment.sh @@ -0,0 +1,5 @@ +mkdir ~/.ssh +cd ~/.ssh +ssh-keygen -t rsa -b 4096 -C $myEmail + +systemctl enable --user pipewire-pulse.service diff --git a/home/dunst/.config/dunst/dunstrc b/home/dunst/.config/dunst/dunstrc index b385155..0fcbf92 100755 --- a/home/dunst/.config/dunst/dunstrc +++ b/home/dunst/.config/dunst/dunstrc @@ -212,7 +212,7 @@ # corners. # The radius will be automatically lowered if it exceeds half of the # notification height to avoid clipping text and/or icons. - corner_radius = 5 + corner_radius = 4 ### Legacy diff --git a/home/picom/.config/picom/picom.conf. b/home/picom/.config/picom/picom.conf. index 07e05b2..9c61f4c 100755 --- a/home/picom/.config/picom/picom.conf. +++ b/home/picom/.config/picom/picom.conf. @@ -2,6 +2,9 @@ inactive-dim = 0.5; active-opacity = 1.0; detect-client-opacity = true; detect-rounded-corners = true; + +shadow = true; +backend = "glx"; blur: { method = "kawase"; @@ -10,25 +13,24 @@ blur: background-frame = false; background-fixed = false; }; - blur-background-exclude = [ - "class_g = 'keynav'" - ]; - corner-radius = 0; - rounded-corners-exclude = [ +blur-background-exclude = [ + "class_g = 'keynav'", + "class_g = 'Dunst'", + "class_g = 'Navigator'", + "class_g = 'Firefox'" +]; +corner-radius = 0; +rounded-corners-exclude = [ "window_type = 'dock'", "_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'", "class_g = 'keynav'", - ]; - round-borders = 0; - round-borders-exclude = [ - "class_g = 'keynav'" - ]; +]; +round-borders = 0; +round-borders-exclude = [ + "class_g = 'keynav'", + "class_g = 'Xmonad'", + "class_g = 'xmobar'", + "class_g = 'simpleTabbed'", + "class_g = 'tabbed'" +]; -opacity-rule = [ - "80:class_g = 'Zathura'", - "80:class_g = 'TelegramDesktop'", - "80:class_g = 'Discord'", - "80:class_g = 'Emacs'", - "100:class_g = 'keynav'", - "85:class_g = 'Alacritty'" - ]; diff --git a/home/pure_emacs/.emacs.d/.lsp-session-v1 b/home/pure_emacs/.emacs.d/.lsp-session-v1 index 5a8a701..c619bfb 100644 --- a/home/pure_emacs/.emacs.d/.lsp-session-v1 +++ b/home/pure_emacs/.emacs.d/.lsp-session-v1 @@ -1 +1 @@ -#s(lsp-session ("/home/horhik/code/competitive") nil #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ())) \ No newline at end of file +#s(lsp-session ("/home/horhik/code/cp-tasks" "/home/horhik/code/competitive") nil #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ())) \ No newline at end of file diff --git a/home/pure_emacs/.emacs.d/config.org b/home/pure_emacs/.emacs.d/config.org index a3838fa..da98506 100755 --- a/home/pure_emacs/.emacs.d/config.org +++ b/home/pure_emacs/.emacs.d/config.org @@ -515,8 +515,22 @@ (use-package company-box :hook (company-mode . company-box-mode)) #+end_src -#+RESULTS: + #+end_src +** Popup +#+begin_src emacs-lisp + (use-package ivy-postframe + :config + (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center))) + (ivy-posframe-mode 1) +) + +#+end_src * Org ** Fonts #+begin_src emacs-lisp @@ -759,7 +773,6 @@ #+end_src -#+RESULTS: : org-roam-protocol * Languages @@ -794,6 +807,8 @@ :after lsp-mode ) (use-package lsp-ivy) + (use-package lsp-ui + :after lsp) #+end_src ** C/CPP diff --git a/home/pure_emacs/.emacs.d/init.el b/home/pure_emacs/.emacs.d/init.el index 0192a0a..ef902f0 100644 --- a/home/pure_emacs/.emacs.d/init.el +++ b/home/pure_emacs/.emacs.d/init.el @@ -27,50 +27,15 @@ (global-visual-line-mode) (require 'use-package) - -(custom-set-variables - ;; custom-set-variables was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. - ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. - '(ansi-color-names-vector - ["#282828" "#fb4934" "#b8bb26" "#fabd2f" "#83a598" "#cc241d" "#8ec07c" "#ebdbb2"]) - '(custom-safe-themes - '("6b1abd26f3e38be1823bd151a96117b288062c6cde5253823539c6926c3bb178" "75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default)) - '(exwm-floating-border-color "#504945") - '(fci-rule-color "#7c6f64") - '(highlight-tail-colors ((("#363627" "#363627") . 0) (("#323730" "#323730") . 20))) - '(jdee-db-active-breakpoint-face-colors (cons "#0d1011" "#fabd2f")) - '(jdee-db-requested-breakpoint-face-colors (cons "#0d1011" "#b8bb26")) - '(jdee-db-spec-breakpoint-face-colors (cons "#0d1011" "#928374")) - '(objed-cursor-color "#fb4934") - '(package-selected-packages - '(ivy-posframe nix-mode neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy)) - '(pdf-view-midnight-colors (cons "#ebdbb2" "#282828")) - '(rustic-ansi-faces - ["#282828" "#fb4934" "#b8bb26" "#fabd2f" "#83a598" "#cc241d" "#8ec07c" "#ebdbb2"]) - '(vc-annotate-background "#282828") - '(vc-annotate-color-map - (list - (cons 20 "#b8bb26") - (cons 40 "#cebb29") - (cons 60 "#e3bc2c") - (cons 80 "#fabd2f") - (cons 100 "#fba827") - (cons 120 "#fc9420") - (cons 140 "#fe8019") - (cons 160 "#ed611a") - (cons 180 "#dc421b") - (cons 200 "#cc241d") - (cons 220 "#db3024") - (cons 240 "#eb3c2c") - (cons 260 "#fb4934") - (cons 280 "#e05744") - (cons 300 "#c66554") - (cons 320 "#ac7464") - (cons 340 "#7c6f64") - (cons 360 "#7c6f64"))) - '(vc-annotate-very-old-color nil)) + (custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(custom-safe-themes + '("75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default)) + '(package-selected-packages + '(neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy))) (use-package doom-themes) '(custom-enabled-themes '(gruvbox)) @@ -419,29 +384,44 @@ ) (use-package which-key - :init (which-key-mode) - :diminish which-key-mode - :config - (setq which-key-idle-delay 0.3)) + :init (which-key-mode) + :diminish which-key-mode + :config + (setq which-key-idle-delay 0.3)) -(use-package ivy-rich - :init - (ivy-rich-mode 1)) +(use-package all-the-icons-ivy-rich + :ensure t + :init (all-the-icons-ivy-rich-mode 1)) + + + (use-package ivy-rich + :init + (ivy-rich-mode 1)) (use-package company :after lsp-mode :hook (lsp-mode . company-mode) :bind (:map company-active-map - ("" . company-complete-selection)) - (:map lsp-mode-map - ("" . company-indent-or-complete-common)) + ("" . company-complete-selection)) + (:map lsp-mode-map + ("" . company-indent-or-complete-common)) :custom (company-minimum-prefix-length 1) (company-idle-delay 0.0)) - ;;(setq company-clang-executable "~/code/competitive/clang++") (use-package company-box - :hook (company-mode . company-box-mode)) + :hook (company-mode . company-box-mode)) #+end_src + +(use-package ivy-postframe + :config + (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left))) + ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center))) + (ivy-posframe-mode 1) +) (set-face-attribute 'variable-pitch nil ;; :font "Cantarell" @@ -665,11 +645,13 @@ ) (use-package lsp-mode - :hook ((prog-mode). lsp) :init (setq lsp-keymap-prefix "C-SPC c") ;;(setq lsp-client-packages nil) :config + (add-hook 'c++-mode-hook #'lsp-mode) + (add-hook 'rust-mode-hook #'lsp-mode) + (add-hook 'c-mode-hook #'lsp-mode) ;;(setq lsp-clients-clangd-executable "/home/horhik/code/competitive/clangd") ;;(setq lsp-clients-clangd-default-executable "/home/horhik/code/competitive/clangd") ;;(lsp-mode . lsp-enable-which-key-integration) @@ -679,6 +661,8 @@ :after lsp-mode ) (use-package lsp-ivy) +(use-package lsp-ui +:after lsp) (use-package irony :init @@ -686,14 +670,24 @@ (add-hook 'c-mode-hook 'irony-mode) (add-hook 'objc-mode-hook 'irony-mode) (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options) - -) + (setq irony-additional-clang-options + (append '("-std=c++17") irony-additional-clang-options)) + ) +(add-to-list 'auto-mode-alist '("\\.cpp\\'" . cpp-hook)) +(add-to-list 'auto-mode-alist '("\\.cxx\\'" . cpp-hook)) +(add-to-list 'auto-mode-alist '("\\.c++\\'" . cpp-hook)) +(add-to-list 'auto-mode-alist '("\\.C\\'" . cpp-hook)) +(defun cpp-hook () + (c++-mode 1) + (lsp-mode 1) + ) (use-package markdown-mode) (use-package tuareg) ;; (use-package direnv -;; :config -;; (direnv-mode)) -;; (add-hook 'lsp-mode-hook #'direnv-update-environment) + ;; :config + ;; (direnv-mode)) + ;; (add-hook 'lsp-mode-hook #'direnv-update-environment) +(use-package nix-mode) diff --git a/home/pure_emacs/config.org b/home/pure_emacs/config.org new file mode 100644 index 0000000..e69de29 diff --git a/home/xmonad/.config/xmobar/bin/xmobarstatus b/home/xmonad/.config/xmobar/bin/xmobarstatus index a57e078..22d8944 100755 --- a/home/xmonad/.config/xmobar/bin/xmobarstatus +++ b/home/xmonad/.config/xmobar/bin/xmobarstatus @@ -75,15 +75,15 @@ esac diskspace () { #might be another /dev/sda... - echo "—{ "$(df -h | grep $MAIN_DISK | grep -oh "[0-9]*%")"}" + echo "—{ "$(df $MAIN_DISK | grep -oh "[0-9]*%" | tail -n 1 )"}" } wifi () { - name=$(connmanctl services | grep "*A" | grep -oh "^*A. [A-Za-z]*" | grep -oh "[[:space:]][A-Za-x]*" | head -n 1) + name=$(iwgetid -r) if [ $name != " " ]; then - echo "—{ $name}" + echo "—{ $name}" else echo 睊 off fi diff --git a/home/xmonad/.config/xmobar/bin/xmobarstatus2 b/home/xmonad/.config/xmobar/bin/xmobarstatus2 index 3fdb743..1b3b14b 100755 --- a/home/xmonad/.config/xmobar/bin/xmobarstatus2 +++ b/home/xmonad/.config/xmobar/bin/xmobarstatus2 @@ -73,12 +73,12 @@ esac diskspace () { #might be another /dev/sda... - echo "—{ "$(df -h | grep $MAIN_DISK | grep -oh "[0-9]*%")"}" + echo "—{ "$(df $MAIN_DISK | grep -oh "[0-9]*%" | tail -n 1)"}" } wifi () { - name=$(connmanctl services | grep "*A" | grep -oh "^*A. [A-Za-z]*" | grep -oh "[[:space:]][A-Za-x]*" | head -n 1) + name=$(iwgetid -r) if [ $name != " " ]; then echo "—{ $name}" diff --git a/home/xmonad/.xmonad/lib/GruvboxColors.hi b/home/xmonad/.xmonad/lib/GruvboxColors.hi index e774abf..dea7997 100755 Binary files a/home/xmonad/.xmonad/lib/GruvboxColors.hi and b/home/xmonad/.xmonad/lib/GruvboxColors.hi differ diff --git a/home/xmonad/.xmonad/xmonad.hs b/home/xmonad/.xmonad/xmonad.hs index 1ba1f02..60d2ae5 100755 --- a/home/xmonad/.xmonad/xmonad.hs +++ b/home/xmonad/.xmonad/xmonad.hs @@ -187,7 +187,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $ , ((modm .|. controlMask .|. shiftMask, xK_h), namedScratchpadAction myScratchpads "htop") , ((modm .|. shiftMask , xK_a), namedScratchpadAction myScratchpads "anki") , ((modm .|. shiftMask , xK_m), namedScratchpadAction myScratchpads "pulse") --- , ((modm .|. shiftMask , xK_d), namedScratchpadAction myScratchpads "todoist") + , ((modm .|. shiftMask , xK_d), namedScratchpadAction myScratchpads "todoist") , ((modm .|. shiftMask , xK_n), namedScratchpadAction myScratchpads "rss_news") , ((modm .|. controlMask, xK_e), namedScratchpadAction myScratchpads "emacs") @@ -223,9 +223,14 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $ , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] ++ - [ ((0, XF86.xF86XK_MonBrightnessUp), spawn "light -A 5") - , ((0, XF86.xF86XK_MonBrightnessDown), spawn "light -U 5" - )] + [ ((0, XF86.xF86XK_MonBrightnessUp ), spawn "light -A 5") + , ((0, XF86.xF86XK_MonBrightnessDown), spawn "light -U 5") + , ((0, XF86.xF86XK_AudioPause ), spawn "playerctl play-pause") + , ((0, XF86.xF86XK_AudioPrev ), spawn "playerctl previous") + , ((0, XF86.xF86XK_AudioMute ), spawn "pulsemixer --toggle-mute") + , ((0, XF86.xF86XK_AudioLowerVolume ), spawn "pulsemixer --set-volume $(($(pulsemixer --get-volume | cut -d ' ' -f 1) - 5))") + , ((0, XF86.xF86XK_AudioRaiseVolume ), spawn "pulsemixer --set-volume $(($(pulsemixer --get-volume | cut -d ' ' -f 1) + 5))") + ] @@ -295,7 +300,6 @@ floats = renamed [Replace "floats"] $ smartBorders $ limitWindows 20 simplestFloat grid = renamed [Replace "grid"] - $ smartBorders $ addTabs shrinkText myTabTheme $ subLayout [] (smartBorders Simplest) $ limitWindows 12 @@ -448,7 +452,7 @@ myScratchpads = [ classTodoist = "TodoistDropdown" titleTodoist = "Super Productivity" - spawnTodoist = "super-productivity" + spawnTodoist = "superproductivity" findTodoist = title =? titleTodoist manageTodoist = customFloating $ W.RationalRect l t w h where @@ -541,7 +545,7 @@ myStartupHook = do spawnOnce "setxkbmap us,ru &" spawnOnce "eww daemon" spawnOnce "nextcloud" - spawnOnce "superProductivity" + spawnOnce "superproductivity" spawnOnce "syncthing" spawnOnce "sh ssh-agent bash ; ssh-add ~/.ssh/arch" spawnOnce "eval '$(ssh-agent -s)'; ssh-add ~/.ssh/id_rsa" diff --git a/home/zsh/.zshrc b/home/zsh/.zshrc old mode 100755 new mode 100644 index d34345c..b8003ab --- a/home/zsh/.zshrc +++ b/home/zsh/.zshrc @@ -1,3 +1,368 @@ +# 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. +#installation via script from github +#export ZSH="/home/$USER/.oh-my-zsh" +#installation via yay -S oh-my-zsh-git +export ZSH=/usr/share/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 +# if you installed the package oh-my-zsh-powerline-theme-git then you type here "powerline" as zsh theme +ZSH_THEME="random" + +# 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 ~/.oh-my-zsh/themes/ +# If set to an empty array, this variable will have no effect. + +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod) + +# 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 the following line to disable bi-weekly auto-update checks. +# DISABLE_AUTO_UPDATE="true" + +# Uncomment the following line to automatically update without prompting. +# DISABLE_UPDATE_PROMPT="true" + +# Uncomment the following line to change how often to auto-update (in days). +# export UPDATE_ZSH_DAYS=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. +# 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 ~/.oh-my-zsh/plugins/* +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git) + +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" + + +#### ARCOLINUX SETTINGS #### + + +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + +setopt GLOB_DOTS + +# If not running interactively, don't do anything +[[ $- != *i* ]] && return + +export HISTCONTROL=ignoreboth:erasedups + +# Make nano the default editor + +export EDITOR='nano' +export VISUAL='nano' + +#PS1='[\u@\h \W]\$ ' + +if [ -d "$HOME/.bin" ] ; + then PATH="$HOME/.bin:$PATH" +fi + +if [ -d "$HOME/.local/bin" ] ; + then PATH="$HOME/.local/bin:$PATH" +fi + +#list +alias ls='ls --color=auto' +alias la='ls -a' +alias ll='ls -la' +alias l='ls' +alias l.="ls -A | egrep '^\.'" + +#fix obvious typo's +alias cd..='cd ..' +alias pdw="pwd" +alias udpate='sudo pacman -Syyu' +alias upate='sudo pacman -Syyu' +alias updte='sudo pacman -Syyu' +alias updqte='sudo pacman -Syyu' +alias upqll="yay -Syu --noconfirm" +alias upal="yay -Syu --noconfirm" + +## Colorize the grep command output for ease of use (good for log files)## +alias grep='grep --color=auto' +alias egrep='egrep --color=auto' +alias fgrep='fgrep --color=auto' + +#readable output +alias df='df -h' + +#pacman unlock +alias unlock="sudo rm /var/lib/pacman/db.lck" +alias rmpacmanlock="sudo rm /var/lib/pacman/db.lck" + +#arcolinux logout unlock +alias rmlogoutlock="sudo rm /tmp/arcologout.lock" + +#free +alias free="free -mt" + +#use all cores +alias uac="sh ~/.bin/main/000*" + +#continue download +alias wget="wget -c" + +#userlist +alias userlist="cut -d: -f1 /etc/passwd" + +#merge new settings +alias merge="xrdb -merge ~/.Xresources" + +# Aliases for software managment +# pacman or pm +alias pacman='sudo pacman --color auto' +alias update='sudo pacman -Syyu' + +# yay as aur helper - updates everything +alias pksyua="yay -Syu --noconfirm" +alias upall="yay -Syu --noconfirm" + +#ps +alias psa="ps auxf" +alias psgrep="ps aux | grep -v grep | grep -i -e VSZ -e" + +#grub update +alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg" + +#add new fonts +alias update-fc='sudo fc-cache -fv' + +#copy/paste all content of /etc/skel over to home folder - backup of config created - beware +alias skel='cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S) && cp -rf /etc/skel/* ~' +#backup contents of /etc/skel to hidden backup folder in home/user +alias bupskel='cp -Rf /etc/skel ~/.skel-backup-$(date +%Y.%m.%d-%H.%M.%S)' + +#copy bashrc-latest over on bashrc - cb= copy bashrc +#alias cb='sudo cp /etc/skel/.bashrc ~/.bashrc && source ~/.bashrc' +#copy /etc/skel/.zshrc over on ~/.zshrc - cb= copy zshrc +alias cz='sudo cp /etc/skel/.zshrc ~/.zshrc && exec zsh' + +#switch between bash and zsh +alias tobash="sudo chsh $USER -s /bin/bash && echo 'Now log out.'" +alias tozsh="sudo chsh $USER -s /bin/zsh && echo 'Now log out.'" + +#switch between lightdm and sddm +alias tolightdm="sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings --noconfirm --needed ; sudo systemctl enable lightdm.service -f ; echo 'Lightm is active - reboot now'" +alias tosddm="sudo pacman -S sddm --noconfirm --needed ; sudo systemctl enable sddm.service -f ; echo 'Sddm is active - reboot now'" + +#quickly kill conkies +alias kc='killall conky' + +#hardware info --short +alias hw="hwinfo --short" + +#skip integrity check +alias yayskip='yay -S --mflags --skipinteg' +alias trizenskip='trizen -S --skipinteg' + +#check vulnerabilities microcode +alias microcode='grep . /sys/devices/system/cpu/vulnerabilities/*' + +#get fastest mirrors in your neighborhood +alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist" +alias mirrord="sudo reflector --latest 30 --number 10 --sort delay --save /etc/pacman.d/mirrorlist" +alias mirrors="sudo reflector --latest 30 --number 10 --sort score --save /etc/pacman.d/mirrorlist" +alias mirrora="sudo reflector --latest 30 --number 10 --sort age --save /etc/pacman.d/mirrorlist" +#our experimental - best option for the moment +alias mirrorx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 5 --sort rate --protocol https --save /etc/pacman.d/mirrorlist" +alias mirrorxx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 20 --sort rate --protocol https --save /etc/pacman.d/mirrorlist" + +#mounting the folder Public for exchange between host and guest on virtualbox +alias vbm="sudo /usr/local/bin/arcolinux-vbox-share" + +#shopt +#shopt -s autocd # change to named directory +#shopt -s cdspell # autocorrects cd misspellings +#shopt -s cmdhist # save multi-line commands in history as single line +#shopt -s dotglob +#shopt -s histappend # do not overwrite history +#shopt -s expand_aliases # expand aliases + +#youtube-dl +alias yta-aac="youtube-dl --extract-audio --audio-format aac " +alias yta-best="youtube-dl --extract-audio --audio-format best " +alias yta-flac="youtube-dl --extract-audio --audio-format flac " +alias yta-m4a="youtube-dl --extract-audio --audio-format m4a " +alias yta-mp3="youtube-dl --extract-audio --audio-format mp3 " +alias yta-opus="youtube-dl --extract-audio --audio-format opus " +alias yta-vorbis="youtube-dl --extract-audio --audio-format vorbis " +alias yta-wav="youtube-dl --extract-audio --audio-format wav " + +alias ytv-best="youtube-dl -f bestvideo+bestaudio " + +#Recent Installed Packages +alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl" +alias riplong="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -3000 | nl" + +#iso and version used to install ArcoLinux +alias iso="cat /etc/dev-rel | awk -F '=' '/ISO/ {print $2}'" + +#Cleanup orphaned packages +alias cleanup='sudo pacman -Rns $(pacman -Qtdq)' + +#search content with ripgrep +alias rg="rg --sort path" + +#get the error messages from journalctl +alias jctl="journalctl -p 3 -xb" + +#nano for important configuration files +#know what you do in these files +alias nlightdm="sudo $EDITOR /etc/lightdm/lightdm.conf" +alias npacman="sudo $EDITOR /etc/pacman.conf" +alias ngrub="sudo $EDITOR /etc/default/grub" +alias nconfgrub="sudo $EDITOR /boot/grub/grub.cfg" +alias nmkinitcpio="sudo $EDITOR /etc/mkinitcpio.conf" +alias nmirrorlist="sudo $EDITOR /etc/pacman.d/mirrorlist" +alias nsddm="sudo $EDITOR /etc/sddm.conf" +alias nfstab="sudo $EDITOR /etc/fstab" +alias nnsswitch="sudo $EDITOR /etc/nsswitch.conf" +alias nsamba="sudo $EDITOR /etc/samba/smb.conf" +alias nb="$EDITOR ~/.bashrc" +alias nz="$EDITOR ~/.zshrc" + +#gpg +#verify signature for isos +alias gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +alias fix-gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +#receive the key of a developer +alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +alias fix-gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +alias fix-key="[ -d ~/.gnupg ] || mkdir ~/.gnupg ; cp /etc/pacman.d/gnupg/gpg.conf ~/.gnupg/ ; echo 'done'" + +#maintenance +alias big="expac -H M '%m\t%n' | sort -h | nl" +alias downgrada="sudo downgrade --ala-url https://bike.seedhost.eu/arcolinux/" + +#systeminfo +alias probe="sudo -E hw-probe -all -upload" + +#shutdown or reboot +alias ssn="sudo shutdown now" +alias sr="sudo reboot" + +#update betterlockscreen images +alias bls="betterlockscreen -u /usr/share/backgrounds/arcolinux/" + +#give the list of all installed desktops - xsessions desktops +alias xd="ls /usr/share/xsessions" + +# # ex = EXtractor for all kinds of archives +# # usage: ex +ex () +{ + if [ -f $1 ] ; then + case $1 in + *.tar.bz2) tar xjf $1 ;; + *.tar.gz) tar xzf $1 ;; + *.bz2) bunzip2 $1 ;; + *.rar) unrar x $1 ;; + *.gz) gunzip $1 ;; + *.tar) tar xf $1 ;; + *.tbz2) tar xjf $1 ;; + *.tgz) tar xzf $1 ;; + *.zip) unzip $1 ;; + *.Z) uncompress $1;; + *.7z) 7z x $1 ;; + *.deb) ar x $1 ;; + *.tar.xz) tar xf $1 ;; + *.tar.zst) tar xf $1 ;; + *) echo "'$1' cannot be extracted via ex()" ;; + esac + else + echo "'$1' is not a valid file" + fi +} + +#create a file called .zshrc-personal and put all your personal aliases +#in there. They will not be overwritten by skel. + +[[ -f ~/.zshrc-personal ]] && . ~/.zshrc-personal + +# reporting tools - install when not installed +# install neofetch +#neofetch +# install screenfetch +#screenfetch +# install ufetch-git +#ufetch +# install ufetch-arco-git +#ufetch-arco +# install arcolinux-paleofetch-git +#paleofetch +# install alsi +#alsi +# install arcolinux-bin-git - standard on ArcoLinux isos (or sfetch - smaller) +#hfetch +# install lolcat +#sfetch | lolcat + + + + export CC=/usr/bin/clang export CXX=/usr/bin/clang++ @@ -25,18 +390,18 @@ if [ -f '/home/horhik/yandex-cloud/completion.zsh.inc' ]; then source '/home/hor alias rd='rustc -g --emit="obj,link"' compile_and_run() { - rustc -g --emit="obj,link" $1 && gdb ${1%.*} -} + rustc -g --emit="obj,link" $1 && gdb ${1%.*} + } -alias rdr=compile_and_run -alias aia=ankiaudio -alias picom="killall picom; picom --experimental-backends &;" -alias cc="cargo check" -alias ct="cargo test" -alias gc="git clone" -alias gs="git status" -alias vim="nvim" + alias rdr=compile_and_run + alias aia=ankiaudio + alias picom="killall picom; picom --experimental-backends &;" + alias cc="cargo check" + alias ct="cargo test" + alias gc="git clone" + alias gs="git status" + alias vim="nvim" -neofetch -eval $(thefuck --alias) +# eval $(thefuck --alias) + diff --git a/install.sh b/install.sh index 34b0c04..caba680 100755 --- a/install.sh +++ b/install.sh @@ -2,12 +2,65 @@ sudo pacman -S git fakeroot make patch gcc autoconf automake binutils bison stow zsh vim neovim mkdir -p ~/Downloads/tmp; cd ~/Downloads/tmp; pacman -S --needed git base-devel -git clone https://aur.archlinux.org/yay.git -cd yay -makepkg -si -sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" +if [ test ! -f yay ] +then + git clone https://aur.archlinux.org/yay.git + cd yay + makepkg -si + sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" +fi + yay -S dunst + yay -S firefox + yay -S dwm + yay -S surf + yay -S dmenu + yay -S st + yay -S qutebrowser + yay -S pulsemixer + yay -S pkg-config + yay -S variety + yay -S alacritty + yay -S compton-tryone-git + yay -S ninja + yay -S meson + yay -S cmake + yay -S libev + yay -S libevdev + yay -S uthash + yay -S nerd-fonts-mononoki + yay -S ttf-mononki-git + yay -S nerd-fonts + yay -S tmux + yay -S feh + yay -S xorg-xsetroot + yay -S xkblayout-state + yay -S flameshot + yay -S cava + yay -S rustfmt + yay -S emacs + yay -S playerctl + yay -S rofi + yay -S eww + yay -S ttf-twemoji + yay -S ttf-twemoji-color + yay -S ttf-twemoji + yay -S alacritty-themes + yay -S anki + yay -S clang + yay -S xkblayout-state-git + yay -S zathura + yay -S redshift + yay -S rustup + yay -S pfetch + yay -S xclip + yay -S tree + yay -S xorg-xbacklight + yay -S enact-bin + yay -S pipewire pipewire-media-session pipewire-pulse + yay -S acpi xkblayout-state-git + yay -S obsidian superproductivity nextcloud nextcloud-client + yay -S nix -yay -S dunst firefox dwm surf dmenu st qutebrowser pulsemixer pkg-config variety alacritty compton-tryone-git ninja meson cmake libev libevdev uthash nerd-fonts-mononoki nerd-fonts tmux feh xorg-xsetroot xkblayout-state flameshot cava rustfmt emacs playerctl rofi eww ttf-twemoji ttf-twemoji-color ttf-twemoji alacritty-themes anki clang xkblayout-state-git zathura redshift rustup pfetch xclip tree xorg-xbacklight # setup compositor cd $HOME/Downloads/tmp git clone https://github.com/ibhagwan/picom