diff --git a/lina/.zshrc b/lina/.zshrc new file mode 100644 index 0000000..480bf6a --- /dev/null +++ b/lina/.zshrc @@ -0,0 +1,116 @@ +setxkbmap -option caps:escape + +################################################################ +## ZSH CONFIGURATIONS +HISTFILE=~/.zshhist # Save history file +HISTSIZE=2048 # Save history zsh max lines +SAVEHIST=4096 # Save history file max lines +setopt autocd # Automatically change directory if only a path was provided +unsetopt beep notify # No bells! +bindkey -v # Use VI Keybindings +PROMPT="%F{green}%n@%m%f %~ $ " # The prompt + +################################################################ +## EXPORTS +export PATH="${PATH}:/home/light/.local/bin:/home/light/scripts/:/opt/cuda/bin:/home/light/dev/meshoptimizer" +export LC_ALL="C" +export CC="/usr/bin/clang" +export CXX="/usr/bin/clang++" +export CPM_SOURCE_CACHE="${HOME}/.cache/CPM" +export GTEST_COLOR="yes" +export GPG_TTY=$(tty) + +# pnpm +export PNPM_HOME="/home/light/.local/share/pnpm" +case ":$PATH:" in + *":$PNPM_HOME:"*) ;; + *) export PATH="$PNPM_HOME:$PATH" ;; +esac + +################################################################ +## ALIASES +alias v='nvim' +alias wifi='sudo wpa_supplicant -B -i wlp0s20f3 -c /home/light/.config/wpa_configs/home_wifi' +alias icat='kitty +kitten icat' +alias cat='bat' +alias zsrc='source ~/.zshrc' +alias clip="xclip -selection c" +alias val='valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --log-file=valgrind-out.txt' +alias q='exit' +alias pirate='aria2c --seed-time=0 --split=8' +# alias ryali='ssh root@5.75.207.117' # old ryali :( +alias ryali='ssh light@5.75.206.84' +alias l='\eza --icons --sort type -TL1' +alias la='\eza --icons --sort type -T1' # all +alias ~="c ~" +alias ..='c ../' +alias ...='c ../../' +alias ....='c ../../../' +alias .....='c ../../../../' +alias ......='c ../../../../../' +alias gs='cgs' +alias trans='xprop -format _NET_WM_WINDOW_OPACITY 32c -set _NET_WM_WINDOW_OPACITY 0xEFFFFFFF' + +c () { cd ${1:-.} ; clear ; l } +ca () { cd ${1:-.} ; clear ; la } +cn () { cd ${1:-.} ; clear ; hyfetch } +cgs() { cd ${1:-.} ; clear ; git status } +picomadd() { sed -i '/# OPACITY_RULE/i ,"100:name *= '\'$1\''"' ~/.config/picom/picom.conf } + +################################################################ +## UTILITIES +activate() +{ + if [[ "$1" == "light" ]]; then + source ${HOME}/dev/python_envs/light/bin/activate #Python + source ${HOME}/dev/1.4.321.1/setup-env.sh # Vulkan + PROMPT="%F{green}%n@%m%f %~ $ " + clear + + echo "Environments applied for project: light" + else + zsrc + clear + echo "Unknown environment" + + exit 1 + fi + + echo "Please remember to not keep multiple environments active at the same time" +} + + +jade() # Jade is the name of the lofi girl +{ + radio="" + case "$1" in + # Lofi girl radios... (https://www.youtube.com/@LofiGirl) + lofi) radio='https://www.youtube.com/watch?v=jfKfPfyJRdk' ;; + sad) radio='https://www.youtube.com/watch?v=P6Segk8cr-c' ;; + asian) radio='https://www.youtube.com/watch?v=Na0w3Mz46GA' ;; + dark) radio='https://www.youtube.com/watch?v=S_MOd40zlYU' ;; + synth) radio='https://www.youtube.com/watch?v=4xDzrJKXOOY' ;; + medieval) radio='https://www.youtube.com/watch?v=IxPANmjPaek' ;; + sleep_ambient) radio='https://www.youtube.com/watch?v=xORCbIptqcc' ;; + sleep_lofi) radio='https://www.youtube.com/watch?v=28KRPhVzCus' ;; + summer) radio='https://www.youtube.com/watch?v=SXySxLgCV-8' ;; + guitar) radio='https://www.youtube.com/watch?v=E_XmwjgRLz8' ;; + piano) radio='https://www.youtube.com/watch?v=TtkFsfOP9QI' ;; + rain) radio='https://www.youtube.com/watch?v=-OekvEFm1lo' ;; + jazz) radio='https://www.youtube.com/watch?v=HuFYqnbVbzY' ;; + sunday) radio='https://www.youtube.com/watch?v=uFlzUaisbig' ;; + sunday) radio='https://www.youtube.com/watch?v=uFlzUaisbig' ;; + + # Game Chops (https://www.youtube.com/@gamechops) + game) radio='https://www.youtube.com/watch?v=0cQN5okmPmY' ;; + + *) + echo 'Invalid radio name :(' + return 1 + esac + + echo "Playing ${input} radio, target url: ${radio}..." + mpv --no-video $radio +} + +clear ; hyfetch diff --git a/lina/README.md b/lina/README.md new file mode 100644 index 0000000..59e483a --- /dev/null +++ b/lina/README.md @@ -0,0 +1,14 @@ +Lina is my main desktop + +``` +light@lina +---------- +OS: Arch Linux x86_64 +Shell: zsh 5.9 +Resolution: 2560x1440 +Terminal: kitty +Terminal Font: JetbrainsMono Nerd Font 14.0 +CPU: Intel i9-10900 (20) @ 5.200GHz +GPU: NVIDIA GeForce RTX 3060 Lite Hash Rate +Memory: 32 GiB +``` diff --git a/lina/kitty/current-theme.conf b/lina/kitty/current-theme.conf new file mode 100644 index 0000000..b93d4a8 --- /dev/null +++ b/lina/kitty/current-theme.conf @@ -0,0 +1,32 @@ +## name: Gruvbox Dark +## author: Pavel Pertsev +## license: MIT/X11 +## upstream: https://raw.githubusercontent.com/gruvbox-community/gruvbox-contrib/master/kitty/gruvbox-dark.conf + +selection_foreground #ebdbb2 +selection_background #d65d0e + +background #282828 +foreground #ebdbb2 + +color0 #3c3836 +color1 #cc241d +color2 #98971a +color3 #d79921 +color4 #458588 +color5 #b16286 +color6 #689d6a +color7 #a89984 +color8 #928374 +color9 #fb4934 +color10 #b8bb26 +color11 #fabd2f +color12 #83a598 +color13 #d3869b +color14 #8ec07c +color15 #fbf1c7 + +cursor #bdae93 +cursor_text_color #665c54 + +url_color #458588 diff --git a/lina/kitty/kitty.conf b/lina/kitty/kitty.conf new file mode 100644 index 0000000..ed40c3d --- /dev/null +++ b/lina/kitty/kitty.conf @@ -0,0 +1,21 @@ +font_family JetbrainsMono Nerd Font +bold_font auto +italic_font auto +bold_italic_font auto +font_size 14 + +tab_bar_style powerline + +map ctrl+shift+l next_tab +map ctrl+shift+h previous_tab + +# tab_activity_symbol λ +active_tab_font_style normal +active_tab_font_style bold-italic +inactive_tab_font_style normal +enable_audio_bell no +disable_ligatures never +strip_trailing_spaces smart +placement_strategy center + +include current-theme.conf diff --git a/lina/kitty/kitty.conf.bak b/lina/kitty/kitty.conf.bak new file mode 100644 index 0000000..fbb64af --- /dev/null +++ b/lina/kitty/kitty.conf.bak @@ -0,0 +1,80 @@ + +font_family JetbrainsMono Nerd Font +bold_font auto +italic_font auto +bold_italic_font auto +font_size 14 + +tab_bar_style powerline +tab_bar_edge top + +map ctrl+shift+l next_tab +map ctrl+shift+h previous_tab + +tab_activity_symbol λ +active_tab_font_style normal +active_tab_font_style bold-italic +inactive_tab_font_style normal +enable_audio_bell no +disable_ligatures never +strip_trailing_spaces smart +placement_strategy center + +# remove open link with mouse click +clear_all_mouse_actions yes +mouse_map left press ungrabbed mouse_selection normal +window_padding_width 0 +# cursor #928374 +# cursor_text_color background +# url_color #83a598 +# visual_bell_color #8ec07c +# bell_border_color #8ec07c +# active_border_color #d3869b +# inactive_border_color #665c54 +# foreground #ebdbb2 +# background #282828 +# selection_foreground #928374 +# selection_background #ebdbb2 +# active_tab_foreground #fbf1c7 +# active_tab_background #665c54 +# inactive_tab_foreground #a89984 +# inactive_tab_background #3c3836 + +# black (bg3/bg4) +# color0 #665c54 +# color8 #7c6f64 + +# red +# color1 #cc241d +# color9 #fb4934 + +#: green +# color4 #689d6a +# color12 #8ec07c + + +# yellow +# color3 #d79921 +# color11 #fabd2f + +# blue +# color2 #98971a +# color10 #b8bb26 + +# purple +# color5 #b16286 +# color13 #d3869b + +# aqua +# color6 #458588 +# color14 #83a598 + +# white (fg4/fg3) +# color7 #a89984 +# color15 #bdae93 + + +# BEGIN_KITTY_THEME +# Gruvbox Dark Hard +include current-theme.conf +# END_KITTY_THEME \ No newline at end of file diff --git a/nvim/init.lua b/lina/nvim/init.lua similarity index 84% rename from nvim/init.lua rename to lina/nvim/init.lua index 1adcce5..1218431 100644 --- a/nvim/init.lua +++ b/lina/nvim/init.lua @@ -19,3 +19,10 @@ require("_gitsigns") require("_indentline") require("_treesitter") require("_gruvbox") + +vim.filetype.add({ + extension = { + tpp = "cpp" + }, +}) + diff --git a/lina/nvim/lazy-lock.json b/lina/nvim/lazy-lock.json new file mode 100644 index 0000000..f56bf84 --- /dev/null +++ b/lina/nvim/lazy-lock.json @@ -0,0 +1,25 @@ +{ + "LuaSnip": { "branch": "master", "commit": "de10d8414235b0a8cabfeba60d07c24304e71f5c" }, + "alpha-nvim": { "branch": "main", "commit": "2b3cbcdd980cae1e022409289245053f62fb50f6" }, + "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, + "cmp-cmdline": { "branch": "main", "commit": "d126061b624e0af6c3a556428712dd4d4194ec6d" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" }, + "cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, + "cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" }, + "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, + "gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, + "gruvbox.nvim": { "branch": "main", "commit": "12c2624287dc827edb5d72b2bc4c9619e692a554" }, + "indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" }, + "nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" }, + "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, + "nvim-lspconfig": { "branch": "master", "commit": "16878c7a018cba66a6e990286bdb6afc29ca13d3" }, + "nvim-tree.lua": { "branch": "master", "commit": "b70a741f5a29a1d2baa3bbe7e5c0a4a5d6423849" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "telescope-args.nvim": { "branch": "main", "commit": "995072920fae8e1bf31daed015114bd54617079a" }, + "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, + "transparent.nvim": { "branch": "main", "commit": "8ac59883de84e9cd1850ea25cf087031c5ba7d54" } +} diff --git a/nvim/lsp/clangd.lua b/lina/nvim/lsp/clangd.lua similarity index 100% rename from nvim/lsp/clangd.lua rename to lina/nvim/lsp/clangd.lua diff --git a/nvim/lsp/cssls.lua b/lina/nvim/lsp/cssls.lua similarity index 100% rename from nvim/lsp/cssls.lua rename to lina/nvim/lsp/cssls.lua diff --git a/nvim/lsp/eslint.lua b/lina/nvim/lsp/eslint.lua similarity index 100% rename from nvim/lsp/eslint.lua rename to lina/nvim/lsp/eslint.lua diff --git a/nvim/lsp/lua_ls.lua b/lina/nvim/lsp/lua_ls.lua similarity index 100% rename from nvim/lsp/lua_ls.lua rename to lina/nvim/lsp/lua_ls.lua diff --git a/nvim/lsp/mdx_analyzer.lua b/lina/nvim/lsp/mdx_analyzer.lua similarity index 100% rename from nvim/lsp/mdx_analyzer.lua rename to lina/nvim/lsp/mdx_analyzer.lua diff --git a/lina/nvim/lsp/pyright.lua b/lina/nvim/lsp/pyright.lua new file mode 100644 index 0000000..5da2e73 --- /dev/null +++ b/lina/nvim/lsp/pyright.lua @@ -0,0 +1,80 @@ +local util = require 'lspconfig.util' + +local root_files = { + 'pyproject.toml', + 'setup.py', + 'setup.cfg', + 'requirements.txt', + 'Pipfile', + 'pyrightconfig.json', + '.git', +} + +local function organize_imports() + local params = { + command = 'pyright.organizeimports', + arguments = { vim.uri_from_bufnr(0) }, + } + + local clients = vim.lsp.get_clients { + bufnr = vim.api.nvim_get_current_buf(), + name = 'pyright', + } + for _, client in ipairs(clients) do + client.request('workspace/executeCommand', params, nil, 0) + end +end + +local function set_python_path(path) + local clients = vim.lsp.get_clients { + bufnr = vim.api.nvim_get_current_buf(), + name = 'pyright', + } + for _, client in ipairs(clients) do + if client.settings then + client.settings.python = vim.tbl_deep_extend('force', client.settings.python, { pythonPath = path }) + else + client.config.settings = vim.tbl_deep_extend('force', client.config.settings, { python = { pythonPath = path } }) + end + client.notify('workspace/didChangeConfiguration', { settings = nil }) + end +end + +return { + default_config = { + cmd = { 'pyright-langserver', '--stdio' }, + filetypes = { 'python' }, + root_dir = function(fname) + return util.root_pattern(unpack(root_files))(fname) + end, + single_file_support = true, + settings = { + python = { + analysis = { + autoSearchPaths = true, + useLibraryCodeForTypes = true, + diagnosticMode = 'openFilesOnly', + }, + }, + }, + }, + commands = { + PyrightOrganizeImports = { + organize_imports, + description = 'Organize Imports', + }, + PyrightSetPythonPath = { + set_python_path, + description = 'Reconfigure pyright with the provided python path', + nargs = 1, + complete = 'file', + }, + }, + docs = { + description = [[ +https://github.com/microsoft/pyright + +`pyright`, a static type checker and language server for python +]], + }, +} diff --git a/nvim/lsp/svelte.lua b/lina/nvim/lsp/svelte.lua similarity index 100% rename from nvim/lsp/svelte.lua rename to lina/nvim/lsp/svelte.lua diff --git a/nvim/lsp/tailwindcss.lua b/lina/nvim/lsp/tailwindcss.lua similarity index 100% rename from nvim/lsp/tailwindcss.lua rename to lina/nvim/lsp/tailwindcss.lua diff --git a/nvim/lsp/ts_ls.lua b/lina/nvim/lsp/ts_ls.lua similarity index 100% rename from nvim/lsp/ts_ls.lua rename to lina/nvim/lsp/ts_ls.lua diff --git a/nvim/lua/_alpha.lua b/lina/nvim/lua/_alpha.lua similarity index 100% rename from nvim/lua/_alpha.lua rename to lina/nvim/lua/_alpha.lua diff --git a/nvim/lua/_autopairs.lua b/lina/nvim/lua/_autopairs.lua similarity index 100% rename from nvim/lua/_autopairs.lua rename to lina/nvim/lua/_autopairs.lua diff --git a/nvim/lua/_cmp.lua b/lina/nvim/lua/_cmp.lua similarity index 100% rename from nvim/lua/_cmp.lua rename to lina/nvim/lua/_cmp.lua diff --git a/nvim/lua/_gitsigns.lua b/lina/nvim/lua/_gitsigns.lua similarity index 100% rename from nvim/lua/_gitsigns.lua rename to lina/nvim/lua/_gitsigns.lua diff --git a/nvim/lua/_gruvbox.lua b/lina/nvim/lua/_gruvbox.lua similarity index 100% rename from nvim/lua/_gruvbox.lua rename to lina/nvim/lua/_gruvbox.lua diff --git a/nvim/lua/_indentline.lua b/lina/nvim/lua/_indentline.lua similarity index 100% rename from nvim/lua/_indentline.lua rename to lina/nvim/lua/_indentline.lua diff --git a/nvim/lua/_keymaps.lua b/lina/nvim/lua/_keymaps.lua similarity index 97% rename from nvim/lua/_keymaps.lua rename to lina/nvim/lua/_keymaps.lua index c05d3cb..5225a16 100644 --- a/nvim/lua/_keymaps.lua +++ b/lina/nvim/lua/_keymaps.lua @@ -91,7 +91,7 @@ keymap( keymap("n", "tg", "Telescope live_grep", opts) -keymap("n", "w", "lua vim.lsp.buf.format({async = false})w", opts) +vim.api.nvim_set_keymap("n", "w", "lua vim.lsp.buf.format({async = false})w", opts) keymap("n", "c", "bdelete", opts) keymap( diff --git a/nvim/lua/_lsp.lua b/lina/nvim/lua/_lsp.lua similarity index 99% rename from nvim/lua/_lsp.lua rename to lina/nvim/lua/_lsp.lua index bfd134b..d684676 100644 --- a/nvim/lua/_lsp.lua +++ b/lina/nvim/lua/_lsp.lua @@ -116,5 +116,6 @@ vim.lsp.enable({ "cssls", "eslint", "mdx_analyzer", -}) + "pyright", +}) diff --git a/nvim/lua/_lualine.lua b/lina/nvim/lua/_lualine.lua similarity index 100% rename from nvim/lua/_lualine.lua rename to lina/nvim/lua/_lualine.lua diff --git a/nvim/lua/_nvim_tree.lua b/lina/nvim/lua/_nvim_tree.lua similarity index 100% rename from nvim/lua/_nvim_tree.lua rename to lina/nvim/lua/_nvim_tree.lua diff --git a/nvim/lua/_options.lua b/lina/nvim/lua/_options.lua similarity index 100% rename from nvim/lua/_options.lua rename to lina/nvim/lua/_options.lua diff --git a/nvim/lua/_plugins.lua b/lina/nvim/lua/_plugins.lua similarity index 100% rename from nvim/lua/_plugins.lua rename to lina/nvim/lua/_plugins.lua diff --git a/nvim/lua/_plugins_bootstrap.lua b/lina/nvim/lua/_plugins_bootstrap.lua similarity index 100% rename from nvim/lua/_plugins_bootstrap.lua rename to lina/nvim/lua/_plugins_bootstrap.lua diff --git a/nvim/lua/_telescope.lua b/lina/nvim/lua/_telescope.lua similarity index 100% rename from nvim/lua/_telescope.lua rename to lina/nvim/lua/_telescope.lua diff --git a/nvim/lua/_treesitter.lua b/lina/nvim/lua/_treesitter.lua similarity index 100% rename from nvim/lua/_treesitter.lua rename to lina/nvim/lua/_treesitter.lua diff --git a/nvim/spell/en.utf-8.add b/lina/nvim/spell/en.utf-8.add similarity index 100% rename from nvim/spell/en.utf-8.add rename to lina/nvim/spell/en.utf-8.add diff --git a/nvim/spell/en.utf-8.add.spl b/lina/nvim/spell/en.utf-8.add.spl similarity index 100% rename from nvim/spell/en.utf-8.add.spl rename to lina/nvim/spell/en.utf-8.add.spl diff --git a/lina/pacman.conf b/lina/pacman.conf new file mode 100644 index 0000000..f4f091a --- /dev/null +++ b/lina/pacman.conf @@ -0,0 +1,97 @@ +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -L -C - -f -o %o %u +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +Architecture = auto +ILoveCandy + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#NoProgressBar +CheckSpace +#VerbosePkgLists +ParallelDownloads = 8 + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[core-testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +#[extra-testing] +#Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +# If you want to run 32 bit applications on your x86_64 system, +# enable the multilib repositories as required here. + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +[multilib] +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/lina/picom/picom.conf b/lina/picom/picom.conf new file mode 100644 index 0000000..aee839c --- /dev/null +++ b/lina/picom/picom.conf @@ -0,0 +1,182 @@ +#========================= Corners =========================# +corner-radius = 16; +rounded-corners-exclude = [ + "class_g ?= 'tint2'", + "class_g ?= 'polybar'" +]; + +round-borders = 2; +round-borders-exclude = [ +]; + +round-borders-rule = [ +]; + +#========================= Shadows =========================# +shadow = true; +shadow-radius = 24; +shadow-opacity = 0.78; +shadow-offset-x = -13; +shadow-offset-y = -13; +shadow-exclude = [ + # "class_g = 'Cairo-clock'", + # "class_g = 'CoverGloobus'", + # "class_g = 'Tilda'", + "class_g = 'Polybar'", + # "name ?= 'gnome-pie'", + # "class_g ?= 'Plank'", + # "name *= 'recordmydesktop'", + # "name = 'Notification'", + # "name = 'Docky'", + # "name = 'Kupfer'", + # "name = 'xfce4-notifyd'", + # "name *= 'VLC'", + # "name *= 'Chromium'", + # "name *= 'Chrome'", + # "class_g = 'Conky'", + # "class_g = 'Kupfer'", + # "class_g = 'Synapse'", + # "class_g ?= 'Notify-osd'", + # "class_g ?= 'Cairo-dock'", + # "class_g ?= 'Xfce4-notifyd'", + # "class_g ?= 'Xfce4-power-manager'", + # "_GTK_FRAME_EXTENTS@:c", + # "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" +]; + +#========================= Fading =========================# + +fading = true; +fade-in-step = 0.093; +fade-out-step = 0.093; +fade-delta = 10; +fade-exclude = [ + "class_g = 'slop'" # maim +] +no-fading-openclose = false +no-fading-destroyed-argb = false + +#========================= Opacity =========================# + +inactive-opacity = 0.76; +frame-opacity = 1.0; +inactive-opacity-override = true; +active-opacity = 0.86; +# focus-exclude = [ +# "class_g = 'Cairo-clock'", +# "class_g = 'Bar'", +# "class_g = 'slop'" +# ]; +#opacity-rule = [ + # "100:class_g = 'Bar'", + # "100:class_g = 'slop'", + # "100:class_g = 'XTerm'", + # "100:class_g = 'URxvt'", + # "100:class_g = 'kitty'", + # "100:class_g = 'Alacritty'", + # "100:class_g = 'Polybar'", + # "100:class_g = 'code-oss'", + # "100:class_g = 'Meld'", + # "100:class_g = 'TelegramDesktop'", + # "100:class_g = 'Joplin'", + # "100:class_g = 'firefox'", + # "100:class_g = 'Chromium'", + # "100:class_g = 'Thunderbird'", + # "100:class_g = 'Thunar'", + # "100:class_g = 'Nitrogen'", + # "100:class_g = 'Code'" +#]; + +opacity-rule = [ + "100:name *= '>_<'", + "100:name *= 'Blender'", + "100:name *= 'HuraWatch'", + "100:name *= 'Aseprite'", + "100:name *= 'Unreal Editor'", + "100:name *= 'Aseprite'", + "100:name *= 'Pinterest'", + "100:name *= 'PureRef'", + "100:name *= 'Inkscape'", + "100:name *= 'Dota 2'", + "100:name *= 'Gogoanime'", + "100:name *= '.jpg'" +,"86:class_g = 'Polybar'", +,"100:name *= '.gif'" +,"100:name *= '.png'" +,"100:name *= 'mpv'" +,"100:name *= 'LibreOffice'" +,"100:name *= 'God of War'" +,"100:name *= 'Sololearn'" +,"100:name *= 'Kdenlive'" +,"100:name *= 'GIMP'" +,"100:name *= 'cubic-bezier.com'" +,"100:name *= 'Fretastic'" +,"100:name *= 'Mirror'" +,"100:name *= 'LearnOpenGL'" +,"100:name *= 'YouTube'" +,"100:name *= 'bilbili'" +,"100:name *= 'bilibili'" +,"100:name *= 'Krita'" +,"100:name *= 'Subnautica'" +,"100:name *= 'Code'" + # OPACITY_RULE +]; + + +#========================= Blurring =========================# + +blur: { + method = "dual_kawase"; + strength = 3; + kern = "3x3box"; + background = false; + background-fixed = false; +} +# blur-method = "kernel" +# blur-strength= 10 +# blur-kern = "3x3box" +# blur-deviation = false +# blur-background = false + +# blur-background-exclude = [ +# "window_type = 'dock'", +# "window_type = 'desktop'", +# "class_g = 'Plank'", +# "class_g = 'polybar'", +# "class_g = 'slop'", +# "class_g = 'Chromium'", +# "_GTK_FRAME_EXTENTS@:c", +# ]; + +#========================= General Settings =========================# + +backend = "glx"; +vsync = true; +mark-wmwin-focused = true; +mark-ovredir-focused = false; +detect-rounded-corners = true; +detect-client-opacity = true; +refresh-rate = 0; +detect-transient = true; +detect-client-leader = true; +glx-no-stencil = true; +glx-copy-from-font = false +use-damage = true; +log-level = "info"; +animations = true +animation-for-transient-window = "zoom" +animation-for-open-window = "zoom" +animation-for-unmap-window = "zoom" +animation-stiffness = 350 +animation-dampening = 20 +animation-window-mass = 0.5 +animation-delta = 8 +animation-clamping = false + +wintypes: +{ + tooltip = { fade=true; shadow=true; opacity=0.95; focus=true; full-shadow=false; }; + popup_menu = { opacity=1.0; } + dropdown_menu = { opacity=1.0; } + utility = { shadow=false; opacity=1.0; } +}; diff --git a/lina/rofi/config.rasi b/lina/rofi/config.rasi new file mode 100644 index 0000000..9a0ea86 --- /dev/null +++ b/lina/rofi/config.rasi @@ -0,0 +1,297 @@ +/*Dracula theme based on the Purple official rofi theme*/ + +* { + /* Theme settings */ + font: "Jetbrains Mono 24"; + highlight: bold italic; + scrollbar: true; + + /* Gruvbox dark colors */ + gruvbox-dark-bg0: #282828; + gruvbox-dark-bg0-soft: #32302f; + gruvbox-dark-bg3: #665c54; + gruvbox-dark-fg0: #fbf1c7; + gruvbox-dark-fg1: #ebdbb2; + gruvbox-dark-red-dark: #cc241d; + gruvbox-dark-red-light: #fb4934; + gruvbox-dark-yellow-dark: #d79921; + gruvbox-dark-yellow-light: #fabd2f; + gruvbox-dark-gray: #a89984; + + /* Theme colors */ + background: @gruvbox-dark-bg0; + background-color: @background; + foreground: @gruvbox-dark-fg1; + border-color: @gruvbox-dark-gray; + separatorcolor: @border-color; + scrollbar-handle: @border-color; + + normal-background: @background; + normal-foreground: @foreground; + alternate-normal-background: @gruvbox-dark-bg0-soft; + alternate-normal-foreground: @foreground; + selected-normal-background: @gruvbox-dark-bg3; + selected-normal-foreground: @gruvbox-dark-fg0; + + active-background: @gruvbox-dark-yellow-dark; + active-foreground: @background; + alternate-active-background: @active-background; + alternate-active-foreground: @active-foreground; + selected-active-background: @gruvbox-dark-yellow-light; + selected-active-foreground: @active-foreground; + + urgent-background: @gruvbox-dark-red-dark; + urgent-foreground: @background; + alternate-urgent-background: @urgent-background; + alternate-urgent-foreground: @urgent-foreground; + selected-urgent-background: @gruvbox-dark-red-light; + selected-urgent-foreground: @urgent-foreground; +} + +window { + background-color: @background; + border: 2; + padding: 2; +} + +mainbox { + border: 0; + padding: 0; +} + +message { + border: 2px 0 0; + border-color: @separatorcolor; + padding: 1px; +} + +textbox { + highlight: @highlight; + text-color: @foreground; +} + +listview { + border: 2px solid 0 0; + padding: 2px 0 0; + border-color: @separatorcolor; + spacing: 2px; + scrollbar: @scrollbar; +} + +element { + border: 0; + padding: 2px; +} + +element.normal.normal { + background-color: @normal-background; + text-color: @normal-foreground; +} + +element.normal.urgent { + background-color: @urgent-background; + text-color: @urgent-foreground; +} + +element.normal.active { + background-color: @active-background; + text-color: @active-foreground; +} + +element.selected.normal { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +element.selected.urgent { + background-color: @selected-urgent-background; + text-color: @selected-urgent-foreground; +} + +element.selected.active { + background-color: @selected-active-background; + text-color: @selected-active-foreground; +} + +element.alternate.normal { + background-color: @alternate-normal-background; + text-color: @alternate-normal-foreground; +} + +element.alternate.urgent { + background-color: @alternate-urgent-background; + text-color: @alternate-urgent-foreground; +} + +element.alternate.active { + background-color: @alternate-active-background; + text-color: @alternate-active-foreground; +} + +scrollbar { + width: 4px; + border: 0; + handle-color: @scrollbar-handle; + handle-width: 8px; + padding: 0; +} + +sidebar { + border: 2px 0 0; + border-color: @separatorcolor; +} + +inputbar { + spacing: 0; + text-color: @normal-foreground; + padding: 2px; + children: [ prompt, textbox-prompt-sep, entry, case-indicator ]; +} + +case-indicator, +entry, +prompt, +button { + spacing: 0; + text-color: @normal-foreground; +} + +button.selected { + background-color: @selected-normal-background; + text-color: @selected-normal-foreground; +} + +textbox-prompt-sep { + expand: false; + str: ":"; + text-color: @normal-foreground; + margin: 0 0.3em 0 0; +} + +/* +* { + font: "Jetbrains Mono 24"; + foreground: #f8f8f2; + background-color: #282a36; + active-background: #6272a4; + urgent-background: #ff5555; + urgent-foreground: #282a36; + selected-background: @active-background; + selected-urgent-background: @urgent-background; + selected-active-background: @active-background; + separatorcolor: @active-background; + bordercolor: @active-background; +} + +#window { + background-color: @background-color; + border: 1; + border-radius: 6; + border-color: @bordercolor; + padding: 5; +} +#mainbox { + border: 0; + padding: 0; +} +#message { + border: 1px dash 0px 0px ; + border-color: @separatorcolor; + padding: 1px ; +} +#textbox { + text-color: @foreground; +} +#listview { + fixed-height: 0; + border: 2px dash 0px 0px ; + border-color: @bordercolor; + spacing: 2px ; + scrollbar: false; + padding: 2px 0px 0px ; +} +#element { + border: 0; + padding: 1px ; +} +#element.normal.normal { + background-color: @background-color; + text-color: @foreground; +} +#element.normal.urgent { + background-color: @urgent-background; + text-color: @urgent-foreground; +} +#element.normal.active { + background-color: @active-background; + text-color: @foreground; +} +#element.selected.normal { + background-color: @selected-background; + text-color: @foreground; +} +#element.selected.urgent { + background-color: @selected-urgent-background; + text-color: @foreground; +} +#element.selected.active { + background-color: @selected-active-background; + text-color: @foreground; +} +#element.alternate.normal { + background-color: @background-color; + text-color: @foreground; +} +#element.alternate.urgent { + background-color: @urgent-background; + text-color: @foreground; +} +#element.alternate.active { + background-color: @active-background; + text-color: @foreground; +} +#scrollbar { + width: 2px ; + border: 0; + handle-width: 8px ; + padding: 0; +} +#sidebar { + border: 2px dash 0px 0px ; + border-color: @separatorcolor; +} +#button.selected { + background-color: @selected-background; + text-color: @foreground; +} +#inputbar { + spacing: 0; + text-color: @foreground; + padding: 1px ; +} +#case-indicator { + spacing: 0; + text-color: @foreground; +} +#entry { + spacing: 0; + text-color: @foreground; +} +#prompt { + spacing: 0; + text-color: @foreground; +} +#inputbar { + children: [ prompt,textbox-prompt-colon,entry,case-indicator ]; +} +#textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0px 0.3em 0em 0em ; + text-color: @foreground; +} +element-text, element-icon { + background-color: inherit; + text-color: inherit; +} +*/ diff --git a/lina/rofi/test.rasi b/lina/rofi/test.rasi new file mode 100644 index 0000000..55c1375 --- /dev/null +++ b/lina/rofi/test.rasi @@ -0,0 +1,151 @@ +configuration { +/* modes: "window,drun,run,ssh";*/ +/* font: "mono 12";*/ +/* location: 0;*/ +/* yoffset: 0;*/ +/* xoffset: 0;*/ +/* fixed-num-lines: true;*/ +/* show-icons: false;*/ +/* terminal: "rofi-sensible-terminal";*/ +/* ssh-client: "ssh";*/ +/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/ +/* run-command: "{cmd}";*/ +/* run-list-command: "";*/ +/* run-shell-command: "{terminal} -e {cmd}";*/ +/* window-command: "wmctrl -i -R {window}";*/ +/* window-match-fields: "all";*/ +/* icon-theme: ;*/ +/* drun-match-fields: "name,generic,exec,categories,keywords";*/ +/* drun-categories: ;*/ +/* drun-show-actions: false;*/ +/* drun-display-format: "{name} [({generic})]";*/ +/* drun-url-launcher: "xdg-open";*/ +/* disable-history: false;*/ +/* ignored-prefixes: "";*/ +/* sort: false;*/ +/* sorting-method: "normal";*/ +/* case-sensitive: false;*/ +/* cycle: true;*/ +/* sidebar-mode: false;*/ +/* hover-select: false;*/ +/* eh: 1;*/ +/* auto-select: false;*/ +/* parse-hosts: false;*/ +/* parse-known-hosts: true;*/ +/* combi-modes: "window,run";*/ +/* matching: "normal";*/ +/* tokenize: true;*/ +/* m: "-5";*/ +/* filter: ;*/ +/* dpi: -1;*/ +/* threads: 0;*/ +/* scroll-method: 0;*/ +/* window-format: "{w} {c} {t}";*/ +/* click-to-exit: true;*/ +/* max-history-size: 25;*/ +/* combi-hide-mode-prefix: false;*/ +/* combi-display-format: "{mode} {text}";*/ +/* matching-negate-char: '-' /* unsupported */;*/ +/* cache-dir: ;*/ +/* window-thumbnail: false;*/ +/* drun-use-desktop-cache: false;*/ +/* drun-reload-desktop-cache: false;*/ +/* normalize-match: false;*/ +/* steal-focus: false;*/ +/* application-fallback-icon: ;*/ +/* refilter-timeout-limit: 8192;*/ +/* xserver-i300-workaround: false;*/ +/* pid: "/run/user/1000/rofi.pid";*/ +/* display-window: ;*/ +/* display-windowcd: ;*/ +/* display-run: ;*/ +/* display-ssh: ;*/ +/* display-drun: ;*/ +/* display-combi: ;*/ +/* display-keys: ;*/ +/* display-filebrowser: ;*/ +/* kb-primary-paste: "Control+V,Shift+Insert";*/ +/* kb-secondary-paste: "Control+v,Insert";*/ +/* kb-clear-line: "Control+w";*/ +/* kb-move-front: "Control+a";*/ +/* kb-move-end: "Control+e";*/ +/* kb-move-word-back: "Alt+b,Control+Left";*/ +/* kb-move-word-forward: "Alt+f,Control+Right";*/ +/* kb-move-char-back: "Left,Control+b";*/ +/* kb-move-char-forward: "Right,Control+f";*/ +/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/ +/* kb-remove-word-forward: "Control+Alt+d";*/ +/* kb-remove-char-forward: "Delete,Control+d";*/ +/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/ +/* kb-remove-to-eol: "Control+k";*/ +/* kb-remove-to-sol: "Control+u";*/ +/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/ +/* kb-accept-custom: "Control+Return";*/ +/* kb-accept-custom-alt: "Control+Shift+Return";*/ +/* kb-accept-alt: "Shift+Return";*/ +/* kb-delete-entry: "Shift+Delete";*/ +/* kb-mode-next: "Shift+Right,Control+Tab";*/ +/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/ +/* kb-mode-complete: "Control+l";*/ +/* kb-row-left: "Control+Page_Up";*/ +/* kb-row-right: "Control+Page_Down";*/ +/* kb-row-up: "Up,Control+p";*/ +/* kb-row-down: "Down,Control+n";*/ +/* kb-row-tab: "";*/ +/* kb-element-next: "Tab";*/ +/* kb-element-prev: "ISO_Left_Tab";*/ +/* kb-page-prev: "Page_Up";*/ +/* kb-page-next: "Page_Down";*/ +/* kb-row-first: "Home,KP_Home";*/ +/* kb-row-last: "End,KP_End";*/ +/* kb-row-select: "Control+space";*/ +/* kb-screenshot: "Alt+S";*/ +/* kb-ellipsize: "Alt+period";*/ +/* kb-toggle-case-sensitivity: "grave,dead_grave";*/ +/* kb-toggle-sort: "Alt+grave";*/ +/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/ +/* kb-custom-1: "Alt+1";*/ +/* kb-custom-2: "Alt+2";*/ +/* kb-custom-3: "Alt+3";*/ +/* kb-custom-4: "Alt+4";*/ +/* kb-custom-5: "Alt+5";*/ +/* kb-custom-6: "Alt+6";*/ +/* kb-custom-7: "Alt+7";*/ +/* kb-custom-8: "Alt+8";*/ +/* kb-custom-9: "Alt+9";*/ +/* kb-custom-10: "Alt+0";*/ +/* kb-custom-11: "Alt+exclam";*/ +/* kb-custom-12: "Alt+at";*/ +/* kb-custom-13: "Alt+numbersign";*/ +/* kb-custom-14: "Alt+dollar";*/ +/* kb-custom-15: "Alt+percent";*/ +/* kb-custom-16: "Alt+dead_circumflex";*/ +/* kb-custom-17: "Alt+ampersand";*/ +/* kb-custom-18: "Alt+asterisk";*/ +/* kb-custom-19: "Alt+parenleft";*/ +/* kb-select-1: "Super+1";*/ +/* kb-select-2: "Super+2";*/ +/* kb-select-3: "Super+3";*/ +/* kb-select-4: "Super+4";*/ +/* kb-select-5: "Super+5";*/ +/* kb-select-6: "Super+6";*/ +/* kb-select-7: "Super+7";*/ +/* kb-select-8: "Super+8";*/ +/* kb-select-9: "Super+9";*/ +/* kb-select-10: "Super+0";*/ +/* ml-row-left: "ScrollLeft";*/ +/* ml-row-right: "ScrollRight";*/ +/* ml-row-up: "ScrollUp";*/ +/* ml-row-down: "ScrollDown";*/ +/* me-select-entry: "MousePrimary";*/ +/* me-accept-entry: "MouseDPrimary";*/ +/* me-accept-custom: "Control+MouseDPrimary";*/ + timeout { + action: "kb-cancel"; + delay: 0; + } + filebrowser { + directories-first: true; + sorting-method: "name"; + } +} diff --git a/lina/update.sh b/lina/update.sh new file mode 100755 index 0000000..8153cf9 --- /dev/null +++ b/lina/update.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +clear + +if [ "$(uname -n)" != "lina" ]; then + echo 'You are not Lina! bye...' +else + echo 'Updating dotfiles for Lina...' +fi + +echo -n 'Pacman... ' +rm -rf ./pacman.conf +cp /etc/pacman.conf . +echo 'done' + +echo -n 'ZShell... ' +rm -rf ./zshrc +cp ~/.zshrc . +echo 'done' + +echo -n 'XMonad... ' +rm -rf ./xmonad +cp -r ~/.config/xmonad/ . +echo 'done' + +echo -n 'Kitty... ' +rm -rf ./kitty +cp -r ~/.config/kitty/ . +echo 'done' + +echo -n 'Nvim... ' +rm -rf ./nvim +cp -r ~/.config/nvim/ . +echo 'done' + +echo -n 'Picom... ' +rm -rf ./picom +cp -r ~/.config/picom/ . +echo 'done' + +echo -n 'Rofi... ' +rm -rf ./rofi +cp -r ~/.config/rofi/ . +echo 'done' + +echo -n 'Wallpapers... ' +rm -rf ./wallpapers +cp -r ~/pictures/wallpapers/ . +echo 'done' + +echo '' +echo '' + +echo 'Disk usage:' +du --max-depth=1 -h . + diff --git a/lina/wallpapers/1.jpg b/lina/wallpapers/1.jpg new file mode 100644 index 0000000..dbf45ee Binary files /dev/null and b/lina/wallpapers/1.jpg differ diff --git a/lina/wallpapers/2.jpg b/lina/wallpapers/2.jpg new file mode 100644 index 0000000..0d2a730 Binary files /dev/null and b/lina/wallpapers/2.jpg differ diff --git a/lina/wallpapers/3.jpg b/lina/wallpapers/3.jpg new file mode 100644 index 0000000..4fb1f8f Binary files /dev/null and b/lina/wallpapers/3.jpg differ diff --git a/lina/wallpapers/4.jpg b/lina/wallpapers/4.jpg new file mode 100644 index 0000000..1342927 Binary files /dev/null and b/lina/wallpapers/4.jpg differ diff --git a/lina/wallpapers/5.jpg b/lina/wallpapers/5.jpg new file mode 100644 index 0000000..b06c4e7 Binary files /dev/null and b/lina/wallpapers/5.jpg differ diff --git a/lina/wallpapers/6.jpg b/lina/wallpapers/6.jpg new file mode 100644 index 0000000..6e8ff15 Binary files /dev/null and b/lina/wallpapers/6.jpg differ diff --git a/lina/wallpapers/README.md b/lina/wallpapers/README.md new file mode 100644 index 0000000..bf4b7df --- /dev/null +++ b/lina/wallpapers/README.md @@ -0,0 +1,2 @@ +I DO NOT OWN ANY OF THE PICTURES IN THIS DIRECTORY, I SIMPLY DOWNLOADED THEM FROM THE INTERNET +CREDIT GOES TO THEIR RESPECTIVE OWNERS diff --git a/lina/wallpapers/a.jpg b/lina/wallpapers/a.jpg new file mode 100644 index 0000000..497b5a6 Binary files /dev/null and b/lina/wallpapers/a.jpg differ diff --git a/lina/wallpapers/a.png b/lina/wallpapers/a.png new file mode 100644 index 0000000..dadf6a3 Binary files /dev/null and b/lina/wallpapers/a.png differ diff --git a/lina/wallpapers/am.jpg b/lina/wallpapers/am.jpg new file mode 100644 index 0000000..a846524 Binary files /dev/null and b/lina/wallpapers/am.jpg differ diff --git a/lina/wallpapers/b.jpg b/lina/wallpapers/b.jpg new file mode 100644 index 0000000..22f6ea0 Binary files /dev/null and b/lina/wallpapers/b.jpg differ diff --git a/lina/wallpapers/bb.jpg b/lina/wallpapers/bb.jpg new file mode 100644 index 0000000..8e75eca Binary files /dev/null and b/lina/wallpapers/bb.jpg differ diff --git a/lina/wallpapers/c.jpg b/lina/wallpapers/c.jpg new file mode 100644 index 0000000..455ee0e Binary files /dev/null and b/lina/wallpapers/c.jpg differ diff --git a/lina/wallpapers/cm.jpg b/lina/wallpapers/cm.jpg new file mode 100644 index 0000000..99c180a Binary files /dev/null and b/lina/wallpapers/cm.jpg differ diff --git a/lina/wallpapers/d.jpg b/lina/wallpapers/d.jpg new file mode 100644 index 0000000..7ad0497 Binary files /dev/null and b/lina/wallpapers/d.jpg differ diff --git a/lina/wallpapers/d.png b/lina/wallpapers/d.png new file mode 100644 index 0000000..e98567f Binary files /dev/null and b/lina/wallpapers/d.png differ diff --git a/lina/wallpapers/deathnote_01.jpg b/lina/wallpapers/deathnote_01.jpg new file mode 100644 index 0000000..a25810c Binary files /dev/null and b/lina/wallpapers/deathnote_01.jpg differ diff --git a/lina/wallpapers/drow.jpg b/lina/wallpapers/drow.jpg new file mode 100644 index 0000000..841ef28 Binary files /dev/null and b/lina/wallpapers/drow.jpg differ diff --git a/lina/wallpapers/e.jpg b/lina/wallpapers/e.jpg new file mode 100644 index 0000000..3696b1d Binary files /dev/null and b/lina/wallpapers/e.jpg differ diff --git a/lina/wallpapers/f.png b/lina/wallpapers/f.png new file mode 100644 index 0000000..3bfcf0c Binary files /dev/null and b/lina/wallpapers/f.png differ diff --git a/lina/wallpapers/fav/1.jpg b/lina/wallpapers/fav/1.jpg new file mode 100644 index 0000000..6a0978a Binary files /dev/null and b/lina/wallpapers/fav/1.jpg differ diff --git a/lina/wallpapers/fav/2.jpg b/lina/wallpapers/fav/2.jpg new file mode 100644 index 0000000..9f0940c Binary files /dev/null and b/lina/wallpapers/fav/2.jpg differ diff --git a/lina/wallpapers/fav/3.jpg b/lina/wallpapers/fav/3.jpg new file mode 100644 index 0000000..7dc30e3 Binary files /dev/null and b/lina/wallpapers/fav/3.jpg differ diff --git a/lina/wallpapers/girl_01.jpg b/lina/wallpapers/girl_01.jpg new file mode 100644 index 0000000..d76f5e1 Binary files /dev/null and b/lina/wallpapers/girl_01.jpg differ diff --git a/lina/wallpapers/girl_02.jpg b/lina/wallpapers/girl_02.jpg new file mode 100644 index 0000000..f00cd55 Binary files /dev/null and b/lina/wallpapers/girl_02.jpg differ diff --git a/lina/wallpapers/girl_03.jpg b/lina/wallpapers/girl_03.jpg new file mode 100644 index 0000000..9f0940c Binary files /dev/null and b/lina/wallpapers/girl_03.jpg differ diff --git a/lina/wallpapers/girl_04.jpg b/lina/wallpapers/girl_04.jpg new file mode 100644 index 0000000..3367724 Binary files /dev/null and b/lina/wallpapers/girl_04.jpg differ diff --git a/lina/wallpapers/girl_05.jpg b/lina/wallpapers/girl_05.jpg new file mode 100644 index 0000000..679c980 Binary files /dev/null and b/lina/wallpapers/girl_05.jpg differ diff --git a/lina/wallpapers/girl_06.jpg b/lina/wallpapers/girl_06.jpg new file mode 100644 index 0000000..308cfb2 Binary files /dev/null and b/lina/wallpapers/girl_06.jpg differ diff --git a/lina/wallpapers/girl_07.jpg b/lina/wallpapers/girl_07.jpg new file mode 100644 index 0000000..6e015a6 Binary files /dev/null and b/lina/wallpapers/girl_07.jpg differ diff --git a/lina/wallpapers/girl_08.jpg b/lina/wallpapers/girl_08.jpg new file mode 100644 index 0000000..cd2f75e Binary files /dev/null and b/lina/wallpapers/girl_08.jpg differ diff --git a/lina/wallpapers/girl_09.jpeg b/lina/wallpapers/girl_09.jpeg new file mode 100644 index 0000000..1ea2a9b Binary files /dev/null and b/lina/wallpapers/girl_09.jpeg differ diff --git a/lina/wallpapers/girl_10.jpg b/lina/wallpapers/girl_10.jpg new file mode 100644 index 0000000..6a0978a Binary files /dev/null and b/lina/wallpapers/girl_10.jpg differ diff --git a/lina/wallpapers/gruvbox/flower-1.jpg b/lina/wallpapers/gruvbox/flower-1.jpg new file mode 100644 index 0000000..2f1e2d5 Binary files /dev/null and b/lina/wallpapers/gruvbox/flower-1.jpg differ diff --git a/lina/wallpapers/gruvbox/greek.png b/lina/wallpapers/gruvbox/greek.png new file mode 100644 index 0000000..f41e730 Binary files /dev/null and b/lina/wallpapers/gruvbox/greek.png differ diff --git a/lina/wallpapers/gruvbox/gruvbox_01 b/lina/wallpapers/gruvbox/gruvbox_01 new file mode 100644 index 0000000..5a449c8 Binary files /dev/null and b/lina/wallpapers/gruvbox/gruvbox_01 differ diff --git a/lina/wallpapers/gruvbox/gruvbox_minimalistic_01 b/lina/wallpapers/gruvbox/gruvbox_minimalistic_01 new file mode 100644 index 0000000..18aa262 Binary files /dev/null and b/lina/wallpapers/gruvbox/gruvbox_minimalistic_01 differ diff --git a/lina/wallpapers/gruvbox/gruvbox_minimalistic_02 b/lina/wallpapers/gruvbox/gruvbox_minimalistic_02 new file mode 100644 index 0000000..207a8c5 Binary files /dev/null and b/lina/wallpapers/gruvbox/gruvbox_minimalistic_02 differ diff --git a/lina/wallpapers/gruvbox/gruvbox_minimalistic_03 b/lina/wallpapers/gruvbox/gruvbox_minimalistic_03 new file mode 100644 index 0000000..cb4f073 Binary files /dev/null and b/lina/wallpapers/gruvbox/gruvbox_minimalistic_03 differ diff --git a/lina/wallpapers/gruvbox/house-garden.png b/lina/wallpapers/gruvbox/house-garden.png new file mode 100644 index 0000000..916fc90 Binary files /dev/null and b/lina/wallpapers/gruvbox/house-garden.png differ diff --git a/lina/wallpapers/gruvbox/houses.png b/lina/wallpapers/gruvbox/houses.png new file mode 100644 index 0000000..63ef2ff Binary files /dev/null and b/lina/wallpapers/gruvbox/houses.png differ diff --git a/lina/wallpapers/gruvbox/kanagawa.jpg b/lina/wallpapers/gruvbox/kanagawa.jpg new file mode 100644 index 0000000..33df907 Binary files /dev/null and b/lina/wallpapers/gruvbox/kanagawa.jpg differ diff --git a/lina/wallpapers/gruvbox/pacman-ghosts.png b/lina/wallpapers/gruvbox/pacman-ghosts.png new file mode 100644 index 0000000..021abeb Binary files /dev/null and b/lina/wallpapers/gruvbox/pacman-ghosts.png differ diff --git a/lina/wallpapers/gruvbox/platform.jpg b/lina/wallpapers/gruvbox/platform.jpg new file mode 100644 index 0000000..7f25bcf Binary files /dev/null and b/lina/wallpapers/gruvbox/platform.jpg differ diff --git a/lina/wallpapers/gruvbox/spaceman.png b/lina/wallpapers/gruvbox/spaceman.png new file mode 100644 index 0000000..1136b38 Binary files /dev/null and b/lina/wallpapers/gruvbox/spaceman.png differ diff --git a/lina/wallpapers/gruvbox/sushi.jpg b/lina/wallpapers/gruvbox/sushi.jpg new file mode 100644 index 0000000..2de6284 Binary files /dev/null and b/lina/wallpapers/gruvbox/sushi.jpg differ diff --git a/lina/wallpapers/gruvbox/wallpapers.zip b/lina/wallpapers/gruvbox/wallpapers.zip new file mode 100644 index 0000000..79ceccc Binary files /dev/null and b/lina/wallpapers/gruvbox/wallpapers.zip differ diff --git a/lina/wallpapers/gruvbox/wave.jpg b/lina/wallpapers/gruvbox/wave.jpg new file mode 100644 index 0000000..3b9d312 Binary files /dev/null and b/lina/wallpapers/gruvbox/wave.jpg differ diff --git a/lina/wallpapers/gruvbox/wolf.jpg b/lina/wallpapers/gruvbox/wolf.jpg new file mode 100644 index 0000000..661d973 Binary files /dev/null and b/lina/wallpapers/gruvbox/wolf.jpg differ diff --git a/lina/wallpapers/jakir.jpg b/lina/wallpapers/jakir.jpg new file mode 100644 index 0000000..3e52ab5 Binary files /dev/null and b/lina/wallpapers/jakir.jpg differ diff --git a/lina/wallpapers/lina.jpg b/lina/wallpapers/lina.jpg new file mode 100644 index 0000000..8087454 Binary files /dev/null and b/lina/wallpapers/lina.jpg differ diff --git a/lina/wallpapers/looking_at_viewer/blue_hair.jpg b/lina/wallpapers/looking_at_viewer/blue_hair.jpg new file mode 100644 index 0000000..98b3701 Binary files /dev/null and b/lina/wallpapers/looking_at_viewer/blue_hair.jpg differ diff --git a/lina/wallpapers/looking_at_viewer/blue_hair_centered.jpg b/lina/wallpapers/looking_at_viewer/blue_hair_centered.jpg new file mode 100644 index 0000000..3b9a131 Binary files /dev/null and b/lina/wallpapers/looking_at_viewer/blue_hair_centered.jpg differ diff --git a/lina/wallpapers/looking_at_viewer/mirana.webp b/lina/wallpapers/looking_at_viewer/mirana.webp new file mode 100644 index 0000000..0bf9661 Binary files /dev/null and b/lina/wallpapers/looking_at_viewer/mirana.webp differ diff --git a/lina/wallpapers/looking_at_viewer/triss.jpg b/lina/wallpapers/looking_at_viewer/triss.jpg new file mode 100644 index 0000000..9da81ae Binary files /dev/null and b/lina/wallpapers/looking_at_viewer/triss.jpg differ diff --git a/lina/wallpapers/luna.jpg b/lina/wallpapers/luna.jpg new file mode 100644 index 0000000..1b25a1b Binary files /dev/null and b/lina/wallpapers/luna.jpg differ diff --git a/lina/wallpapers/marci.jpg b/lina/wallpapers/marci.jpg new file mode 100644 index 0000000..7dc30e3 Binary files /dev/null and b/lina/wallpapers/marci.jpg differ diff --git a/lina/wallpapers/megumin.jpg b/lina/wallpapers/megumin.jpg new file mode 100644 index 0000000..3ec9918 Binary files /dev/null and b/lina/wallpapers/megumin.jpg differ diff --git a/lina/wallpapers/mikasa_01.jpg b/lina/wallpapers/mikasa_01.jpg new file mode 100644 index 0000000..d86d274 Binary files /dev/null and b/lina/wallpapers/mikasa_01.jpg differ diff --git a/lina/wallpapers/nezuko_01.jpg b/lina/wallpapers/nezuko_01.jpg new file mode 100644 index 0000000..13fc649 Binary files /dev/null and b/lina/wallpapers/nezuko_01.jpg differ diff --git a/lina/wallpapers/nezuko_02.jpg b/lina/wallpapers/nezuko_02.jpg new file mode 100644 index 0000000..2abc582 Binary files /dev/null and b/lina/wallpapers/nezuko_02.jpg differ diff --git a/lina/wallpapers/nezuko_03.jpg b/lina/wallpapers/nezuko_03.jpg new file mode 100644 index 0000000..c7024d6 Binary files /dev/null and b/lina/wallpapers/nezuko_03.jpg differ diff --git a/lina/wallpapers/nezuko_04.jpg b/lina/wallpapers/nezuko_04.jpg new file mode 100644 index 0000000..55c4bcd Binary files /dev/null and b/lina/wallpapers/nezuko_04.jpg differ diff --git a/lina/wallpapers/nezuko_05.jpg b/lina/wallpapers/nezuko_05.jpg new file mode 100644 index 0000000..103c669 Binary files /dev/null and b/lina/wallpapers/nezuko_05.jpg differ diff --git a/lina/wallpapers/nezuko_06.jpg b/lina/wallpapers/nezuko_06.jpg new file mode 100644 index 0000000..67b9022 Binary files /dev/null and b/lina/wallpapers/nezuko_06.jpg differ diff --git a/lina/wallpapers/qop.jpg b/lina/wallpapers/qop.jpg new file mode 100644 index 0000000..c38fe34 Binary files /dev/null and b/lina/wallpapers/qop.jpg differ diff --git a/lina/wallpapers/rubick.jpg b/lina/wallpapers/rubick.jpg new file mode 100644 index 0000000..89e2cf3 Binary files /dev/null and b/lina/wallpapers/rubick.jpg differ diff --git a/lina/wallpapers/shinobu_01.jpg b/lina/wallpapers/shinobu_01.jpg new file mode 100644 index 0000000..334bf58 Binary files /dev/null and b/lina/wallpapers/shinobu_01.jpg differ diff --git a/lina/wallpapers/shinobu_02.jpg b/lina/wallpapers/shinobu_02.jpg new file mode 100644 index 0000000..6e4a892 Binary files /dev/null and b/lina/wallpapers/shinobu_02.jpg differ diff --git a/lina/wallpapers/shinobu_02f.jpg b/lina/wallpapers/shinobu_02f.jpg new file mode 100644 index 0000000..84e5ce1 Binary files /dev/null and b/lina/wallpapers/shinobu_02f.jpg differ diff --git a/lina/wallpapers/shinobu_03.jpg b/lina/wallpapers/shinobu_03.jpg new file mode 100644 index 0000000..656d76f Binary files /dev/null and b/lina/wallpapers/shinobu_03.jpg differ diff --git a/lina/wallpapers/shinobu_04.jpg b/lina/wallpapers/shinobu_04.jpg new file mode 100644 index 0000000..5b7fa81 Binary files /dev/null and b/lina/wallpapers/shinobu_04.jpg differ diff --git a/lina/wallpapers/shinobu_05.jpg b/lina/wallpapers/shinobu_05.jpg new file mode 100644 index 0000000..0daf31d Binary files /dev/null and b/lina/wallpapers/shinobu_05.jpg differ diff --git a/lina/wallpapers/shinobu_06.jpg b/lina/wallpapers/shinobu_06.jpg new file mode 100644 index 0000000..8ace329 Binary files /dev/null and b/lina/wallpapers/shinobu_06.jpg differ diff --git a/lina/wallpapers/shinobu_07.jpg b/lina/wallpapers/shinobu_07.jpg new file mode 100644 index 0000000..a154c8d Binary files /dev/null and b/lina/wallpapers/shinobu_07.jpg differ diff --git a/lina/wallpapers/shinobu_08.jpg b/lina/wallpapers/shinobu_08.jpg new file mode 100644 index 0000000..85e088d Binary files /dev/null and b/lina/wallpapers/shinobu_08.jpg differ diff --git a/lina/wallpapers/shinobu_09.jpg b/lina/wallpapers/shinobu_09.jpg new file mode 100644 index 0000000..2bbd4aa Binary files /dev/null and b/lina/wallpapers/shinobu_09.jpg differ diff --git a/lina/wallpapers/shinobu_10.jpg b/lina/wallpapers/shinobu_10.jpg new file mode 100644 index 0000000..10ce3db Binary files /dev/null and b/lina/wallpapers/shinobu_10.jpg differ diff --git a/lina/wallpapers/shinobu_11.jpg b/lina/wallpapers/shinobu_11.jpg new file mode 100644 index 0000000..7a4d58e Binary files /dev/null and b/lina/wallpapers/shinobu_11.jpg differ diff --git a/lina/wallpapers/suzusha_01.jpg b/lina/wallpapers/suzusha_01.jpg new file mode 100644 index 0000000..bc90c44 Binary files /dev/null and b/lina/wallpapers/suzusha_01.jpg differ diff --git a/lina/wallpapers/ta.jpg b/lina/wallpapers/ta.jpg new file mode 100644 index 0000000..9fd8329 Binary files /dev/null and b/lina/wallpapers/ta.jpg differ diff --git a/lina/wallpapers/ta2.jpg b/lina/wallpapers/ta2.jpg new file mode 100644 index 0000000..22018d6 Binary files /dev/null and b/lina/wallpapers/ta2.jpg differ diff --git a/lina/wallpapers/tanjiro.jpg b/lina/wallpapers/tanjiro.jpg new file mode 100644 index 0000000..b8f5bd9 Binary files /dev/null and b/lina/wallpapers/tanjiro.jpg differ diff --git a/lina/wallpapers/tornado_01.jpg b/lina/wallpapers/tornado_01.jpg new file mode 100644 index 0000000..c79a730 Binary files /dev/null and b/lina/wallpapers/tornado_01.jpg differ diff --git a/lina/wallpapers/veng.jpg b/lina/wallpapers/veng.jpg new file mode 100644 index 0000000..041648a Binary files /dev/null and b/lina/wallpapers/veng.jpg differ diff --git a/lina/wallpapers/wind.jpg b/lina/wallpapers/wind.jpg new file mode 100644 index 0000000..29ad368 Binary files /dev/null and b/lina/wallpapers/wind.jpg differ diff --git a/lina/wallpapers/windranger.png b/lina/wallpapers/windranger.png new file mode 100644 index 0000000..73743a3 Binary files /dev/null and b/lina/wallpapers/windranger.png differ diff --git a/lina/wallpapers/z.jpg b/lina/wallpapers/z.jpg new file mode 100644 index 0000000..6f3c6a9 Binary files /dev/null and b/lina/wallpapers/z.jpg differ diff --git a/lina/xmonad/.Xresources b/lina/xmonad/.Xresources new file mode 100644 index 0000000..e69de29 diff --git a/lina/xmonad/README.md b/lina/xmonad/README.md new file mode 100644 index 0000000..baa43b2 Binary files /dev/null and b/lina/xmonad/README.md differ diff --git a/lina/xmonad/beep.mp3 b/lina/xmonad/beep.mp3 new file mode 100644 index 0000000..bfbd9bb Binary files /dev/null and b/lina/xmonad/beep.mp3 differ diff --git a/lina/xmonad/cyclops_all.mp3 b/lina/xmonad/cyclops_all.mp3 new file mode 100644 index 0000000..7e7da87 Binary files /dev/null and b/lina/xmonad/cyclops_all.mp3 differ diff --git a/lina/xmonad/duck_search.sh b/lina/xmonad/duck_search.sh new file mode 100755 index 0000000..e7e6eb7 --- /dev/null +++ b/lina/xmonad/duck_search.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if [ -n "${1}" ]; then + echo ${1} >> ~/.cache/duck_history + librewolf "https://duckduckgo.com/?q=${1}" + exit 0 +else + tail /home/light/.cache/duck_history | tac +fi diff --git a/lina/xmonad/envs.sh b/lina/xmonad/envs.sh new file mode 100755 index 0000000..006fab4 --- /dev/null +++ b/lina/xmonad/envs.sh @@ -0,0 +1,2 @@ +export QT_AUTO_SCREEN_SCALE_FACTOR=2 +export QT_ENABLE_HIGHDPI_SCALING=2 diff --git a/lina/xmonad/poweroff.wav b/lina/xmonad/poweroff.wav new file mode 100644 index 0000000..fe23d51 Binary files /dev/null and b/lina/xmonad/poweroff.wav differ diff --git a/lina/xmonad/toggle_picom.sh b/lina/xmonad/toggle_picom.sh new file mode 100755 index 0000000..e1e4c18 --- /dev/null +++ b/lina/xmonad/toggle_picom.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if pgrep -x 'picom'; then + killall 'picom' +else + picom -b +fi + +exit diff --git a/lina/xmonad/toggle_polybar.sh b/lina/xmonad/toggle_polybar.sh new file mode 100755 index 0000000..01d8ad3 --- /dev/null +++ b/lina/xmonad/toggle_polybar.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +if pgrep -x 'polybar'; then + killall 'polybar' +else + if type "xrandr"; then + for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do + MONITOR=$m polybar test_bar --reload & + MONITOR=$m polybar ws_terminal --reload & + MONITOR=$m polybar ws_browser --reload & + MONITOR=$m polybar ws_music --reload & + MONITOR=$m polybar ws_messages --reload & + MONITOR=$m polybar window_title --reload & + done + else + polybar --reload & + fi +fi + +exit diff --git a/lina/xmonad/welcome.wav b/lina/xmonad/welcome.wav new file mode 100644 index 0000000..c3183ff Binary files /dev/null and b/lina/xmonad/welcome.wav differ diff --git a/lina/xmonad/ws_bar.sh b/lina/xmonad/ws_bar.sh new file mode 100755 index 0000000..28ed0b1 --- /dev/null +++ b/lina/xmonad/ws_bar.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +while inotifywait -qqe close_write /tmp/.xmonad-workspace-log; do + echo ' ' +done + diff --git a/lina/xmonad/ws_browser.sh b/lina/xmonad/ws_browser.sh new file mode 100755 index 0000000..13efc72 --- /dev/null +++ b/lina/xmonad/ws_browser.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +BAR_PIDS=() + +ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep -i '') +echo ${ws} + +for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do + MONITOR=$m polybar ws_browser_border & + BAR_PIDS+=( "$!" ) +done + +if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done +else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done +fi + +while inotifywait -qqe close_write /tmp/.xmonad-workspace-log; do + ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep -i '') + echo ${ws} + + if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done + else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done + fi +done + diff --git a/lina/xmonad/ws_messages.sh b/lina/xmonad/ws_messages.sh new file mode 100755 index 0000000..dbe62f1 --- /dev/null +++ b/lina/xmonad/ws_messages.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +BAR_PIDS=() + +ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep '') +echo ${ws} + +for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do + MONITOR=$m polybar ws_messages_border & + BAR_PIDS+=( "$!" ) +done + +if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done +else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done +fi + +while inotifywait -qqe close_write /tmp/.xmonad-workspace-log; do + ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep '') + echo ${ws} + + if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done + else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done + fi +done + + diff --git a/lina/xmonad/ws_music.sh b/lina/xmonad/ws_music.sh new file mode 100755 index 0000000..c1da895 --- /dev/null +++ b/lina/xmonad/ws_music.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +BAR_PIDS=() + +ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep '') +echo ${ws} + +for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do + MONITOR=$m polybar ws_messages_border & + BAR_PIDS+=( "$!" ) +done + +if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done +else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done +fi + +while inotifywait -qqe close_write /tmp/.xmonad-workspace-log; do + ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep '') + echo ${ws} + + if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done + else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done + fi +done + diff --git a/lina/xmonad/ws_terminal.sh b/lina/xmonad/ws_terminal.sh new file mode 100755 index 0000000..d1b8b4e --- /dev/null +++ b/lina/xmonad/ws_terminal.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +BAR_PIDS=() + +ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep -i '' | head -n 1) +echo ${ws} + +for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do + MONITOR=$m polybar ws_terminal_border & + BAR_PIDS+=( "$!" ) +done + +if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done +else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done +fi + +while inotifywait -qqe close_write /tmp/.xmonad-workspace-log; do + ws=$(tail -n 6 /tmp/.xmonad-workspace-log | grep -i '' | head -n 1) + echo ${ws} + + if [[ "$ws" == *"F#CC241D"* ]]; then + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd show >> ~/debug + done + else + for PID in "${BAR_PIDS[@]}"; do + polybar-msg -p $PID cmd hide >> ~/debug + done + fi +done + + diff --git a/lina/xmonad/xmonad.hs b/lina/xmonad/xmonad.hs new file mode 100644 index 0000000..3e50782 --- /dev/null +++ b/lina/xmonad/xmonad.hs @@ -0,0 +1,99 @@ +import XMonad + +import XMonad.Actions.SpawnOn +import XMonad.Actions.CycleWS +import XMonad.Actions.WorkspaceNames + +import XMonad.Hooks.WorkspaceHistory +import XMonad.Hooks.EwmhDesktops +import XMonad.Hooks.ManageDocks +import XMonad.Hooks.DynamicLog +import XMonad.Hooks.StatusBar +import XMonad.Hooks.StatusBar.PP + +import XMonad.Layout.ThreeColumns +import XMonad.Layout.Gaps +import XMonad.Layout.Spacing + +import XMonad.Util.NamedWindows (getName) +import XMonad.Util.SpawnOnce +import XMonad.Util.EZConfig +import qualified XMonad.StackSet as W + +import Control.Monad (forM_, join) + +import Data.List (sortBy) +import Data.Function (on) + +my_startup_hook :: X() + +my_startup_hook = do + spawnOnce "source /home/light/.config/xmonad/envs.sh" + spawnOnce "feh --bg-fill --randomize ~/pictures/wallpapers/" + spawnOnce "/home/light/.config/xmonad/toggle_picom.sh" + spawnOnce "/home/light/.config/xmonad/toggle_polybar.sh" + spawnOnce "setxkbmap -model pc104 -layout us,ir -variant , -option grp:rctrl_rshift_toggle" + spawnOnce "mpv --no-video --no-terminal ~/.config/xmonad/welcome.wav" + +main :: IO () +main = xmonad $ ewmh $ xmobarProp $ my_conf + +my_conf + = def + { + + layoutHook = spacingWithEdge 16 $ my_layout + , startupHook = my_startup_hook + , manageHook = manageDocks <+> manageSpawn <+> manageHook def + , logHook = workspaceHistoryHook <+> polybar_hook + , focusedBorderColor = "#fe8019" + , normalBorderColor = "#928374" + , workspaces = ["1\59285", "2\62057", "3\57879", "4\61441", "5\59285", "6\59138"] + } + `additionalKeysP` + [ ("M-", toggleWS) + + , ("M-k", spawn "kitty") + + , ("M-`", spawn "rofi -show run -m 2") + , ("M-c", spawn "rofi -show calc -modi calc -no-show-match -no-sort") + + , ("M-s", spawn "flameshot gui") + , ("M-w", spawn "feh --bg-fill --randomize ~/pictures/wallpapers/") + , ("M-p", spawn "~/.config/xmonad/toggle_picom.sh &> /dev/null &") + , ("M-d", spawn "~/.config/xmonad/toggle_polybar.sh &> /dev/null &") + , ("M-\\", spawn "rofi -show Search -modes 'Search:/home/light/.config/xmonad/duck_search.sh'") + , ("M-|", spawn "killall matching_engine -9 ; killall risk_engine_cpp -9") + + , ("", spawn "amixer -q -D pulse sset Master toggle") + , ("", spawn "amixer -q -D pulse sset Master on ; amixer -q -D pulse sset Master 2%-") + , ("", spawn "amixer -q -D pulse sset Master on ; amixer -q -D pulse sset Master 2%+") + , ("", spawn "echo 'playlist-next weak' | socat - '/tmp/mpvsocket'") + , ("", spawn "echo 'playlist-prev weak' | socat - '/tmp/mpvsocket'") + , ("", spawn "echo 'cycle pause' | socat - '/tmp/mpvsocket'") + , ("", spawn "lux -a 10%") + , ("", spawn "lux -s 10%")] + +my_layout = tiled ||| Mirror tiled ||| Full ||| threeCol + where + threeCol = ThreeColMid nmaster delta ratio + tiled = Tall nmaster delta ratio + nmaster = 1 -- Default number of windows in the master pane + ratio = 1/2 -- Default propoetion of screen occupied by master pane + delta = 3/100 -- Percent of screen to increment when resizing panes + + +polybar_hook = do + winset <- gets windowset + title <- maybe (return "") (fmap show . getName) . W.peek $ winset + let currWs = W.currentTag winset + let wss = map W.tag $ W.workspaces winset + + io $ appendFile "/tmp/.xmonad-title-log" (title ++ "\n") + io $ appendFile "/tmp/.xmonad-workspace-log" ( wsStr currWs wss) + + where + fmt currWs ws + | currWs == ws = "%{F#CC241D}" ++ drop 1 ws ++ "\n" + | otherwise = "%{F#FBF1C7}" ++ drop 1 ws ++ "\n" + wsStr currWs wss = join $ map (fmt currWs) $ sortBy (compare `on` (!! 0)) wss