├── .Xresources ├── .xinitrc ├── .zprofile ├── .zshrc ├── README.md ├── cmatrix.sh ├── config ├── alacritty │ └── alacritty.yml ├── awesome │ ├── autorun.sh │ ├── calendar.lua │ ├── kpolybar.sh │ ├── rc.lua │ ├── spolybar.sh │ └── theme-def.lua ├── betterlockscreenrc ├── btop │ ├── btop.conf │ └── themes │ │ ├── catppuccin_frappe.theme │ │ ├── catppuccin_latte.theme │ │ ├── catppuccin_macchiato.theme │ │ └── catppuccin_mocha.theme ├── cava │ └── config ├── chevron │ ├── backend │ │ ├── register.cjs │ │ └── server.cjs │ └── dist │ │ ├── config.js │ │ ├── font.css │ │ ├── fonts │ │ ├── Blogger Sans │ │ │ ├── Blogger Sans Bold.ttf │ │ │ └── Blogger Sans Light.ttf │ │ ├── Figtree │ │ │ ├── Figtree-Italic-VariableFont_wght.ttf │ │ │ ├── Figtree-VariableFont_wght.ttf │ │ │ ├── OFL.txt │ │ │ ├── README.txt │ │ │ └── static │ │ │ │ ├── Figtree-Black.ttf │ │ │ │ ├── Figtree-BlackItalic.ttf │ │ │ │ ├── Figtree-Bold.ttf │ │ │ │ ├── Figtree-BoldItalic.ttf │ │ │ │ ├── Figtree-ExtraBold.ttf │ │ │ │ ├── Figtree-ExtraBoldItalic.ttf │ │ │ │ ├── Figtree-Italic.ttf │ │ │ │ ├── Figtree-Light.ttf │ │ │ │ ├── Figtree-LightItalic.ttf │ │ │ │ ├── Figtree-Medium.ttf │ │ │ │ ├── Figtree-MediumItalic.ttf │ │ │ │ ├── Figtree-Regular.ttf │ │ │ │ ├── Figtree-SemiBold.ttf │ │ │ │ └── Figtree-SemiBoldItalic.ttf │ │ ├── Onest │ │ │ ├── OnestExtraBold.ttf │ │ │ ├── OnestMedium.ttf │ │ │ └── OnestThin.ttf │ │ ├── Public Sans │ │ │ ├── PublicSans-Black.ttf │ │ │ ├── PublicSans-BlackItalic.ttf │ │ │ ├── PublicSans-Bold.ttf │ │ │ ├── PublicSans-BoldItalic.ttf │ │ │ ├── PublicSans-ExtraBold.ttf │ │ │ ├── PublicSans-ExtraBoldItalic.ttf │ │ │ ├── PublicSans-ExtraLight.ttf │ │ │ ├── PublicSans-ExtraLightItalic.ttf │ │ │ ├── PublicSans-Italic.ttf │ │ │ ├── PublicSans-Light.ttf │ │ │ ├── PublicSans-LightItalic.ttf │ │ │ ├── PublicSans-Medium.ttf │ │ │ ├── PublicSans-MediumItalic.ttf │ │ │ ├── PublicSans-Regular.ttf │ │ │ ├── PublicSans-SemiBold.ttf │ │ │ ├── PublicSans-SemiBoldItalic.ttf │ │ │ ├── PublicSans-Thin.ttf │ │ │ └── PublicSans-ThinItalic.ttf │ │ ├── Rubik │ │ │ └── Rubik.ttf │ │ └── Uni Sans │ │ │ ├── Uni Sans Heavy.otf │ │ │ └── Uni Sans Thin.otf │ │ ├── icons.js │ │ └── index.html ├── conky │ └── mocha.conf ├── flameshot │ └── flameshot.ini ├── mpv │ ├── encoding.rst │ ├── input.conf │ ├── mpv.conf │ ├── script-opts │ │ ├── mpv_discordRPC.conf │ │ └── thumbfast.conf │ ├── scripts │ │ ├── modernx.lua │ │ ├── mpv-discordRPC │ │ │ ├── catalogs.lua │ │ │ ├── lua-discordRPC.lua │ │ │ ├── main.lua │ │ │ └── python-pypresence.py │ │ ├── status-line.lua │ │ └── thumbfast.lua │ └── watch_later │ │ ├── 032CF7060B04BD699C7280B0B98010F9 │ │ ├── 0C17E01E95748388120743886FEEC90A │ │ ├── 1E7FED91A1C65DDC2AED2DED31B84006 │ │ ├── 200960CF1ECA92CBA89C23F2B2B2CC0F │ │ ├── 212BFE221901E975C1DD6ABC57171965 │ │ ├── 2234C1BF17781AC07BD2BD69158F5D21 │ │ ├── 259202B4DDE367577E0C149C65AA4E8F │ │ ├── 2B5F6100F267B7E9DB91BA171820AA46 │ │ ├── 32D423926A9D0927E3CF4BAB13970EB4 │ │ ├── 3DFDE7EE72F44246D91465809F313054 │ │ ├── 4C823D79C6C2C9145F721A1FD5B88C2D │ │ ├── 5178BCEAF831538E7477D6EAC37E4C70 │ │ ├── 57F669173F1CDBDB067BC40E90FC1F2B │ │ ├── 586D8B5B1BC3FD5DC7B060734B925275 │ │ ├── 58B870CCA3159FBE31E09E5B4C8C6628 │ │ ├── 5E48BC6CF6FF0B393EC4AE9E20D10973 │ │ ├── 605C2BFD993B55C25A4CAE88716E9FDC │ │ ├── 6263BACBB062DC12B9EDDB23A61E6C54 │ │ ├── 6462A82A318812AE1A77E5C132087BF2 │ │ ├── 65498D640159D14F93113BBE758E349A │ │ ├── 6B8000AA3FF2A0EFF978B67123BEC148 │ │ ├── 73CFA5D0972738EBEF38F5E02D7B5D81 │ │ ├── 743201BC48EB24982B34666D56CDB5D2 │ │ ├── 7CECAC39A299EF98805D1F758DF80BFC │ │ ├── 81FED989A2568A356BFFB4B193DA8CDA │ │ ├── 82D06361954B5AFCAE1D327EFF9B6567 │ │ ├── 91327AA96D06CE275E97FA5ADCF49E31 │ │ ├── 926B14B30807D1AD8E08F33A4E71D62B │ │ ├── 9ED48470E175C79664D2D1D2A5EFB464 │ │ ├── A1468C85F068B4FE6CB0EEA63778318A │ │ ├── BD4D8F10068F35662132C0A92A323CAA │ │ ├── C5B745770FB396220A8F8E60EBDE9F6D │ │ ├── C65612084F513F71FBDD6D612FF3D0DB │ │ ├── CEA66A1AC289AB0CA8C8D02DCF2BFF0C │ │ ├── FABE04815E0AF31969466BF2A2CB10FF │ │ └── FE4EBFCE0D3BDCB393216E2D9C1E2A10 ├── neofetch │ ├── config.conf │ └── images │ │ └── sakurafetch.png ├── nvim │ ├── init.lua │ ├── lua │ │ ├── core │ │ │ ├── default_config.lua │ │ │ ├── init.lua │ │ │ ├── lazy_load.lua │ │ │ ├── mappings.lua │ │ │ ├── options.lua │ │ │ └── utils.lua │ │ ├── custom │ │ │ ├── chadrc.lua │ │ │ └── init.lua │ │ └── plugins │ │ │ ├── configs │ │ │ ├── alpha.lua │ │ │ ├── cmp.lua │ │ │ ├── lspconfig.lua │ │ │ ├── mason.lua │ │ │ ├── nvimtree.lua │ │ │ ├── nvterm.lua │ │ │ ├── others.lua │ │ │ ├── telescope.lua │ │ │ ├── treesitter.lua │ │ │ └── whichkey.lua │ │ │ └── init.lua │ └── plugin │ │ └── packer_compiled.lua ├── picom │ └── picom.conf ├── polybar │ ├── config.ini │ ├── weather.py │ └── weather.sh ├── redshift │ └── redshift.conf ├── rofi │ ├── colors │ │ ├── adapta.rasi │ │ ├── arc.rasi │ │ ├── black.rasi │ │ ├── catppuccin.rasi │ │ ├── cyberpunk.rasi │ │ ├── dracula.rasi │ │ ├── everforest.rasi │ │ ├── gruvbox.rasi │ │ ├── lovelace.rasi │ │ ├── navy.rasi │ │ ├── nord.rasi │ │ ├── onedark.rasi │ │ ├── paper.rasi │ │ ├── solarized.rasi │ │ ├── tokyonight.rasi │ │ └── yousai.rasi │ ├── config.rasi │ ├── images │ │ ├── a.png │ │ ├── alena-aenami-bluehour-1k-crop.png │ │ ├── alena-aenami-portal-crop.png │ │ ├── b.png │ │ ├── c.png │ │ ├── d.png │ │ ├── e.jpg │ │ ├── f.png │ │ ├── flowers-1.png │ │ ├── flowers-2.png │ │ ├── flowers-3.png │ │ ├── g.png │ │ ├── gradient.png │ │ ├── h.jpg │ │ ├── i.jpg │ │ ├── j.jpg │ │ ├── paper.png │ │ ├── user.jpeg │ │ ├── yoi1-crop.png │ │ └── yoi2.jpg │ ├── launchers │ │ └── type-6 │ │ │ ├── launcher.sh │ │ │ ├── launcher1.sh │ │ │ ├── launcher2.sh │ │ │ └── style-10.rasi │ └── powermenu │ │ └── type-6 │ │ ├── powermenu.sh │ │ └── style-1.rasi ├── sddm │ ├── sddm.conf │ ├── sddmtip.txt │ └── sugar-candy │ │ ├── AUTHORS │ │ ├── Assets │ │ ├── Hibernate.svgz │ │ ├── Reboot.svgz │ │ ├── Shutdown.svgz │ │ ├── Suspend.svgz │ │ └── User.svgz │ │ ├── Backgrounds │ │ ├── Mountain.jpg │ │ ├── Undraw.svg │ │ └── alena-aenami-stardust-1k.jpg │ │ ├── CHANGELOG.md │ │ ├── COPYING │ │ ├── Components │ │ ├── Clock.qml │ │ ├── Input.qml │ │ ├── LoginForm.qml │ │ ├── SessionButton.qml │ │ ├── SystemButtons.qml │ │ ├── UserList.qml │ │ └── VirtualKeyboard.qml │ │ ├── Main.qml │ │ ├── Previews │ │ └── PartialBlur.png │ │ ├── README.md │ │ ├── metadata.desktop │ │ └── theme.conf └── youtube-music │ └── catppuccin.css ├── firefox ├── chrome │ ├── includes │ │ ├── cascade-colours.css │ │ ├── cascade-config-mouse.css │ │ ├── cascade-config.css │ │ ├── cascade-floating-panel.css │ │ ├── cascade-layout.css │ │ ├── cascade-mocha.css │ │ ├── cascade-nav-bar.css │ │ ├── cascade-responsive-windows-fix.css │ │ ├── cascade-responsive.css │ │ ├── cascade-tabs.css │ │ └── cascade-tcr.css │ └── userChrome.css └── vimium │ └── vimium.css ├── fonts ├── GrapeNuts-Regular.ttf ├── Icomoon-Feather.ttf ├── Iosevka-Nerd-Font-Complete.ttf ├── JetBrains-Mono-Nerd-Font-Complete.ttf ├── ProductSans-Black.ttf ├── ProductSans-Bold-Italic.ttf ├── ProductSans-Bold.ttf ├── ProductSans-Light.ttf ├── ProductSans-Medium.ttf ├── ProductSans-Regular-Italic.ttf ├── ProductSans-Regular.ttf ├── ProductSans-Thin.ttf ├── Roboto Mono Bold Nerd Font Complete.ttf └── Roboto Mono Nerd Font Complete.ttf ├── grubupdate.sh └── images ├── 1.png ├── 2.png ├── 3.png ├── 4.png ├── 5.png ├── 6.png ├── 7.png └── combine.png /.Xresources: -------------------------------------------------------------------------------- 1 | *background: #1E1E2E 2 | *foreground: #CDD6F4 3 | 4 | ! black 5 | *color0: #45475A 6 | *color8: #585B70 7 | 8 | ! red 9 | *color1: #F38BA8 10 | *color9: #F38BA8 11 | 12 | ! green 13 | *color2: #A6E3A1 14 | *color10: #A6E3A1 15 | 16 | ! yellow 17 | *color3: #F9E2AF 18 | *color11: #F9E2AF 19 | 20 | ! blue 21 | *color4: #89B4FA 22 | *color12: #89B4FA 23 | 24 | ! magenta 25 | *color5: #F5C2E7 26 | *color13: #F5C2E7 27 | 28 | ! cyan 29 | *color6: #94E2D5 30 | *color14: #94E2D5 31 | 32 | ! white 33 | *color7: #BAC2DE 34 | *color15: #A6ADC8 35 | 36 | Xcursor.theme: Catppuccin-Mocha-Dark-Cursors 37 | -------------------------------------------------------------------------------- /.xinitrc: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | userresources=$HOME/.Xresources 4 | usermodmap=$HOME/.Xmodmap 5 | sysresources=/etc/X11/xinit/.Xresources 6 | sysmodmap=/etc/X11/xinit/.Xmodmap 7 | 8 | # merge in defaults and keymaps 9 | 10 | if [ -f $sysresources ]; then 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | xrdb -merge $sysresources 19 | 20 | fi 21 | 22 | if [ -f $sysmodmap ]; then 23 | xmodmap $sysmodmap 24 | fi 25 | 26 | if [ -f "$userresources" ]; then 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | xrdb -merge "$userresources" 35 | 36 | fi 37 | 38 | if [ -f "$usermodmap" ]; then 39 | xmodmap "$usermodmap" 40 | fi 41 | 42 | # start some nice programs 43 | 44 | export XCURSOR_PATH="" 45 | 46 | if [ -d /etc/X11/xinit/xinitrc.d ] ; then 47 | for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do 48 | [ -x "$f" ] && . "$f" 49 | done 50 | unset f 51 | fi 52 | 53 | exec awesome 54 | -------------------------------------------------------------------------------- /.zprofile: -------------------------------------------------------------------------------- 1 | if [ "$(tty)" = "/dev/tty1" ]; then 2 | exec startx 3 | fi 4 | 5 | if [ -d "$HOME/.local/bin" ] ; then 6 | PATH="$HOME/.local/bin:$PATH" 7 | fi 8 | if [ "$XDG_SESSION_TYPE" == "wayland" ]; then 9 | export MOZ_ENABLE_WAYLAND=1 10 | fi 11 | -------------------------------------------------------------------------------- /.zshrc: -------------------------------------------------------------------------------- 1 | # If you come from bash you might have to change your $PATH. 2 | # export PATH=$HOME/bin:/usr/local/bin:$PATH 3 | 4 | # Path to your oh-my-zsh installation. 5 | export ZSH="$HOME/.oh-my-zsh" 6 | 7 | export SHELL=zsh 8 | 9 | autoload -Uz promptinit 10 | promptinit 11 | 12 | # Prompt 13 | # Prompt credits go to https://github.com/N3k0Ch4n/dotRice 14 | 15 | precmd() { print "" } 16 | PS1='%B%(?.%K{135}.%K{167}) %k %F{183}%4~ / %k%b%f ' 17 | PS2='%K{167} %K{235} -> %k ' 18 | 19 | # oh-my-zsh plugins 20 | plugins=(zsh-autosuggestions git zsh-syntax-highlighting history-substring-search) 21 | 22 | source $ZSH/oh-my-zsh.sh 23 | 24 | alias ls="logo-ls -A" 25 | alias radeontop="radeontop -c -T" 26 | alias btop="btop --utf-force" 27 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Config files for AwesomeWM 2 | 3 | 4 | 5 | ### This was made on a 1920x1080 display 6 | 7 | Wallpaper - [ArtStation](https://www.artstation.com/artwork/4Xa124) 8 | 9 | --- 10 | 11 | ### Video showcasing the animations 12 | 13 | https://github.com/mel-edo/awesome-setup/assets/90543784/25acfe82-682d-4f04-9ef8-c2461703d929 14 | 15 | --- 16 | 17 | - **Window Manager:** [awesome-git](https://github.com/awesomeWM/awesome) 18 | - **Terminal:** [alacritty](https://github.com/alacritty/alacritty) 19 | - **Shell:** [zsh](https://www.zsh.org/) 20 | - **Bar:** [polybar](https://github.com/polybar/polybar) 21 | - **Compositor:** [pijulius-picom](https://github.com/pijulius/picom) 22 | - **Editor:** [neovim(nvchad)](https://github.com/NvChad/NvChad) 23 | - **Browser:** [firefox](https://www.mozilla.org/en-US/firefox) 24 | - **Firefox CSS:** [Cascade](https://github.com/andreasgrafen/cascade) 25 | - **File Manager:** [nemo](https://github.com/linuxmint/nemo) 26 | - **Application Launcher:** [adi1090x's rofi](https://github.com/adi1090x/rofi) 27 | - **SDDM theme:** [Sugar Candy theme for SDDM](https://www.opendesktop.org/p/1312658/) 28 | - **Color scheme:** [Catppuccin](https://github.com/catppuccin/catppuccin) 29 | - **Startpage:** [Chevron](https://github.com/kholmogorov27/chevron) 30 | 31 | --- 32 | 33 | ## Install Instructions: 34 | 35 | ### List of the required programs for this rice 36 | 37 | (For yay in Arch Linux) 38 | 39 | ``` 40 | yay -S --needed awesome-git polybar picom-pijulius-git alacritty betterlockscreen catppuccin-gtk-theme-mocha conky logo-ls lxappearance neovim neofetch papirus-icon-theme feh rofi xidlehook sddm qt5-graphicaleffects qt5-quickcontrols2 qt5-svg 41 | ``` 42 | 43 | ### Optional programs 44 | 45 | 1. zsh and ohmyzsh 46 | 2. brightnessctl 47 | 3. cool-retro-term with cmatrix used as a screensaver 48 | 4. neofetch 49 | 5. neovim 50 | 6. nemo (file manager) 51 | 7. redshift 52 | 53 | ### Manual Method: 54 | 55 | Thanks to [ka1ry](https://github.com/ka1ry) for testing on different hardware! 56 | 57 | > **Warning** 58 | > 59 | >Proceed with caution 60 | 61 | 1. ``` git clone https://github.com/MeledoJames/awesome-setup ``` 62 | 2. Backup your .config folder or make it if it doesen't already exist 63 | 3. ``` cp -r ~/awesome-setup/config/* ~/.config ``` 64 | 4. ``` cp -r ~/awesome-setup/fonts/* ~/.local/share/fonts ``` 65 | 5. ``` fc-cache -v -f ``` 66 | 6. ``` sudo cp -r ~/.config/sddm/sugar-candy /usr/share/sddm/themes/ ``` 67 | 7. ``` sudo cp -r ~/.config/sddm/sddm.conf /etc/ ``` 68 | 8. ``` systemctl enable betterlockscreen@$USER ``` 69 | 9. ``` cp -r ~/awesome-setup/cmatrix.sh ~/awesome-setup/grubupdate.sh ~/awesome-setup/.xinitrc ~/awesome-setup/.Xresources ~/awesome-setup/.zprofile ~/awesome-setup/.zshrc ~/ ``` 70 | 71 | > You can view all keybindings in awesomewm using Mod + s 72 | 73 | > Download the wallpaper from the artstation link and put it in your ``` ~/Downloads ``` 74 | 75 | > Change your latitude and longitude in ``` ~/.config/polybar/weather.py ``` on lines 80 and 81 and ``` ~/.config/redshift/redshift.conf ``` on lines 60 and 61 76 | 77 | > Check ``` ~/.config/awesome/autorun.sh ``` and lines 623 - 630 in ``` ~/.config/awesome/rc.lua ``` for startup programs. Modify to your liking 78 | 79 | > Theme your remaining apps from the [Catppuccin Github](https://github.com/catppuccin/catppuccin) 80 | 81 | --- 82 | 83 | ### Missing Icons in polybar? 84 | 85 | > Missing Brightness Icon - [Backlight](https://github.com/polybar/polybar/wiki/Module:-backlight) and [xbacklight](https://github.com/polybar/polybar/wiki/Module:-xbacklight) modules 86 | 87 | > Missing Battery Icon - You probably don't have a battery in which case you can remove the battery module from line 85 of ``` ~/.config/polybar/config.ini ``` 88 | 89 | > Missing Network Icon - [Polybar network wiki](https://github.com/polybar/polybar/wiki/Module:-network) 90 | 91 | --- 92 | 93 | ### Firefox userchrome css 94 | 95 | 1. cd into ~/.mozilla/firefox/(release).default-release/chrome (make chrome folder if it doesen't exist already) 96 | 2. copy files inside ~/awesome-setup/firefox/chrome to the folder in the above point 97 | 3. Install Tab center reborn extension -> More details here [Cascade](https://github.com/andreasgrafen/cascade#tab-center-reborn--vertical-tabs) 98 | 99 | --- 100 | 101 | ### Firefox keybindings via vimium 102 | 103 | 1. Get the extension [Vimium](https://vimium.github.io/) 104 | 2. Copy text from firefox/vimium/vimium.css and paste it into "css for vimium ui" in the vimium settings 105 | 106 | --- 107 | ### Startpage 108 | 109 | 1. Install npm ``` yay -S npm ``` 110 | 2. ``` sudo npm install http-server -g ``` 111 | 3. run ``` http-server ~/.config/chevron/dist/ ``` and visit http://127.0.0.1:8080 in your browser 112 | 4. I've already added this command in autostart (check end of rc.lua) 113 | 5. If you're on firefox you can use [new tab override](https://addons.mozilla.org/en-US/firefox/addon/new-tab-override/) to change the new tab and home page 114 | 6. For more details -> [Chevron](https://github.com/kholmogorov27/chevron) 115 | 116 | --- 117 | 118 | ![a](/images/1.png?raw=true) 119 | 120 | ![b](/images/2.png?raw=true) 121 | 122 | ![c](/images/3.png?raw=true) 123 | 124 | ![d](/images/4.png?raw=true) 125 | 126 | ![e](/images/5.png?raw=true) 127 | 128 | ![f](/images/6.png?raw=true) 129 | 130 | ![g](/images/7.png?raw=true) 131 | --- 132 | 133 | ### Sources of inspiration: 134 | 135 | - [rklyz](https://github.com/rklyz/MyRice) 136 | - [janleigh](https://github.com/janleigh/dotfiles) 137 | --- 138 | 139 | 140 | 141 | 142 | Star History Chart 143 | 144 | -------------------------------------------------------------------------------- /cmatrix.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | sleep 1 4 | cmatrix -s -b -u 10 5 | -------------------------------------------------------------------------------- /config/alacritty/alacritty.yml: -------------------------------------------------------------------------------- 1 | window: 2 | 3 | padding: 4 | x: 5 5 | y: 0 6 | 7 | dynamic_padding: true 8 | 9 | scrolling: 10 | # Maximum number of lines in the scrollback buffer. 11 | # Specifying '0' will disable scrolling. 12 | history: 10000 13 | 14 | # Scrolling distance multiplier. 15 | multiplier: 3 16 | 17 | # Font configuration 18 | font: 19 | # Normal (roman) font face 20 | normal: 21 | family: RobotoMono Nerd Font 22 | 23 | style: Regular 24 | 25 | # Bold font face 26 | bold: 27 | family: RobotoMono Nerd Font 28 | 29 | style: Bold 30 | 31 | # Italic font face 32 | italic: 33 | family: RobotoMono Nerd Font 34 | 35 | style: Italic 36 | 37 | # Bold italic font face 38 | bold_italic: 39 | family: RobotoMono Nerd Font 40 | 41 | style: Bold Italic 42 | 43 | size: 10 44 | 45 | colors: 46 | 47 | primary: 48 | background: '#1e1e2e' 49 | foreground: '#b4befe' 50 | 51 | # Normal colors 52 | normal: 53 | black: '#24273a' 54 | red: '#ed8796' 55 | green: '#a6da95' 56 | yellow: '#eed49f' 57 | blue: '#8aadf4' 58 | magenta: '#c6a0f6' 59 | cyan: '#8bd5ca' 60 | white: '#cad3f5' 61 | 62 | # Bright colors 63 | bright: 64 | black: '#303446' 65 | red: '#e78284' 66 | green: '#a6d189' 67 | yellow: '#e5c890' 68 | blue: '#8caaee' 69 | magenta: '#ca9ee6' 70 | cyan: '#81c8be' 71 | white: '#c6d0f5' 72 | 73 | # Cursor style 74 | style: 75 | shape: Block 76 | blinking: Off 77 | 78 | key_bindings: 79 | - { key: Back, mods: Control, chars: "\u0017" } 80 | -------------------------------------------------------------------------------- /config/awesome/autorun.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | run() { 4 | if ! pgrep -f "$1" ; 5 | then 6 | "$@"& 7 | fi 8 | } 9 | 10 | run "picom" 11 | run "unclutter" 12 | run "firefox" 13 | run "copyq" 14 | run "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" 15 | run "nm-applet" 16 | run "batsignal" 17 | run "redshift" 18 | run "sunshine" 19 | 20 | killall -q polybar 21 | polybar left & 22 | polybar right & 23 | polybar middle & 24 | polybar tray & 25 | polybar xwindow & 26 | 27 | pkill xidlehook 28 | xidlehook --detect-sleep --not-when-audio --timer 300 'cool-retro-term --fullscreen -e sh ~/cmatrix.sh' '' --timer 600 'pkill cool-retro-term && systemctl suspend' '' 29 | 30 | -------------------------------------------------------------------------------- /config/awesome/kpolybar.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | killall -q polybar 4 | -------------------------------------------------------------------------------- /config/awesome/spolybar.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | polybar left & 4 | polybar right & 5 | polybar middle & 6 | polybar tray & 7 | polybar xwindow & 8 | -------------------------------------------------------------------------------- /config/awesome/theme-def.lua: -------------------------------------------------------------------------------- 1 | --------------------------- 2 | -- Default awesome theme -- 3 | --------------------------- 4 | 5 | local theme_assets = require("beautiful.theme_assets") 6 | local xresources = require("beautiful.xresources") 7 | local dpi = xresources.apply_dpi 8 | 9 | local gfs = require("gears.filesystem") 10 | local themes_path = gfs.get_themes_dir() 11 | 12 | local theme = {} 13 | 14 | theme.font = "Product Sans 11" 15 | 16 | theme.bg_normal = "#181825" 17 | theme.bg_focus = "#1e1e2e" 18 | theme.bg_urgent = "#eba0ac" 19 | theme.bg_minimize = "#313244" 20 | theme.bg_systray = theme.bg_normal 21 | 22 | theme.fg_normal = "#cdd6f4" 23 | theme.fg_focus = "#737994" 24 | theme.fg_urgent = "#ea999c" 25 | theme.fg_minimize = "#99d1db" 26 | 27 | theme.useless_gap = dpi(5) 28 | theme.border_normal = "#1e1e2e" 29 | theme.border_focus = "#1e1e2e" 30 | theme.border_marked = "#1e1e2e" 31 | theme.border_radius = dpi(8) 32 | theme.border_width = dpi(0) 33 | 34 | theme.menu_height = 30 35 | theme.menu_width = 120 36 | 37 | -- Generate taglist squares: 38 | local taglist_square_size = dpi(4) 39 | theme.taglist_squares_sel = theme_assets.taglist_squares_sel( 40 | taglist_square_size, theme.fg_normal 41 | ) 42 | theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel( 43 | taglist_square_size, theme.fg_normal 44 | ) 45 | 46 | --Signals 47 | client.connect_signal("focus", function(c) 48 | c.border_color = theme.border_focus end) 49 | client.connect_signal("unfocus", function(c) 50 | c.border_color = theme.border_normal end) 51 | 52 | theme.icon_theme = nil 53 | 54 | return theme 55 | 56 | -- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80 57 | -------------------------------------------------------------------------------- /config/betterlockscreenrc: -------------------------------------------------------------------------------- 1 | # ~/.config/betterlockscreenrc 2 | 3 | # default options 4 | display_on=0 5 | span_image=false 6 | lock_timeout=300 7 | fx_list=(dim blur dimblur pixel dimpixel color) 8 | dim_level=40 9 | blur_level=1 10 | pixel_scale=10,1000 11 | solid_color=333333 12 | wallpaper_cmd="feh --bg-fill ~/Downloads/alena-aenami-stardust-1k.jpg" 13 | quiet=false 14 | # i3lockcolor_bin="i3lock-color" # Manually set command for i3lock-color 15 | 16 | # default theme 17 | loginbox=#1e1e2e 18 | loginshadow=#181825 19 | locktext="Welcome back" 20 | font="Product Sans" 21 | ringcolor=ffffffff 22 | insidecolor=#1e1e2e 23 | separatorcolor=00000000 24 | ringvercolor=ffffffff 25 | insidevercolor=00000000 26 | ringwrongcolor=ffffffff 27 | insidewrongcolor=#cba6f7 28 | timecolor=ffffffff 29 | time_format="%H:%M:%S" 30 | greetercolor=ffffffff 31 | layoutcolor=ffffffff 32 | keyhlcolor=#cba6f7 33 | bshlcolor=#cba6f7 34 | verifcolor=ffffffff 35 | wrongcolor=#cba6f7 36 | modifcolor=#cba6f7 37 | bgcolor=000000ff 38 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_frappe.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#303446" 2 | theme[main_fg]="#C6D0F5" 3 | theme[title]="#C6D0F5" 4 | theme[hi_fg]="#8CAAEE" 5 | theme[selected_bg]="#51576D" 6 | theme[selected_fg]="#8CAAEE" 7 | theme[inactive_fg]="#838BA7" 8 | theme[graph_text]="#F2D5CF" 9 | theme[meter_bg]="#51576D" 10 | theme[proc_misc]="#F2D5CF" 11 | theme[cpu_box]="#85C1DC" 12 | theme[mem_box]="#A6D189" 13 | theme[net_box]="#CA9EE6" 14 | theme[proc_box]="#EEBEBE" 15 | theme[div_line]="#737994" 16 | theme[temp_start]="#E5C890" 17 | theme[temp_mid]="#EF9F76" 18 | theme[temp_end]="#E78284" 19 | theme[cpu_start]="#85C1DC" 20 | theme[cpu_mid]="#99D1DB" 21 | theme[cpu_end]="#81C8BE" 22 | theme[free_start]="#81C8BE" 23 | theme[free_mid]="#81C8BE" 24 | theme[free_end]="#A6D189" 25 | theme[cached_start]="#F4B8E4" 26 | theme[cached_mid]="#F4B8E4" 27 | theme[cached_end]="#CA9EE6" 28 | theme[available_start]="#F2D5CF" 29 | theme[available_mid]="#EEBEBE" 30 | theme[available_end]="#EEBEBE" 31 | theme[used_start]="#EF9F76" 32 | theme[used_mid]="#EF9F76" 33 | theme[used_end]="#E78284" 34 | theme[download_start]="#BABBF1" 35 | theme[download_mid]="#BABBF1" 36 | theme[download_end]="#CA9EE6" 37 | theme[upload_start]="#BABBF1" 38 | theme[upload_mid]="#BABBF1" 39 | theme[upload_end]="#CA9EE6" 40 | theme[process_start]="#85C1DC" 41 | theme[process_mid]="#99D1DB" 42 | theme[process_end]="#81C8BE" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_latte.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#EFF1F5" 2 | theme[main_fg]="#4C4F69" 3 | theme[title]="#4C4F69" 4 | theme[hi_fg]="#1E66F5" 5 | theme[selected_bg]="#BCC0CC" 6 | theme[selected_fg]="#1E66F5" 7 | theme[inactive_fg]="#8C8FA1" 8 | theme[graph_text]="#DC8A78" 9 | theme[meter_bg]="#BCC0CC" 10 | theme[proc_misc]="#DC8A78" 11 | theme[cpu_box]="#209FB5" 12 | theme[mem_box]="#40A02B" 13 | theme[net_box]="#8839EF" 14 | theme[proc_box]="#DD7878" 15 | theme[div_line]="#9CA0B0" 16 | theme[temp_start]="#DF8E1D" 17 | theme[temp_mid]="#FE640B" 18 | theme[temp_end]="#D20F39" 19 | theme[cpu_start]="#209FB5" 20 | theme[cpu_mid]="#04A5E5" 21 | theme[cpu_end]="#179299" 22 | theme[free_start]="#179299" 23 | theme[free_mid]="#179299" 24 | theme[free_end]="#40A02B" 25 | theme[cached_start]="#EA76CB" 26 | theme[cached_mid]="#EA76CB" 27 | theme[cached_end]="#8839EF" 28 | theme[available_start]="#DC8A78" 29 | theme[available_mid]="#DD7878" 30 | theme[available_end]="#DD7878" 31 | theme[used_start]="#FE640B" 32 | theme[used_mid]="#FE640B" 33 | theme[used_end]="#D20F39" 34 | theme[download_start]="#7287FD" 35 | theme[download_mid]="#7287FD" 36 | theme[download_end]="#8839EF" 37 | theme[upload_start]="#7287FD" 38 | theme[upload_mid]="#7287FD" 39 | theme[upload_end]="#8839EF" 40 | theme[process_start]="#209FB5" 41 | theme[process_mid]="#04A5E5" 42 | theme[process_end]="#179299" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_macchiato.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#24273A" 2 | theme[main_fg]="#CAD3F5" 3 | theme[title]="#CAD3F5" 4 | theme[hi_fg]="#8AADF4" 5 | theme[selected_bg]="#494D64" 6 | theme[selected_fg]="#8AADF4" 7 | theme[inactive_fg]="#8087A2" 8 | theme[graph_text]="#F4DBD6" 9 | theme[meter_bg]="#494D64" 10 | theme[proc_misc]="#F4DBD6" 11 | theme[cpu_box]="#7DC4E4" 12 | theme[mem_box]="#A6DA95" 13 | theme[net_box]="#C6A0F6" 14 | theme[proc_box]="#F0C6C6" 15 | theme[div_line]="#6E738D" 16 | theme[temp_start]="#EED49F" 17 | theme[temp_mid]="#F5A97F" 18 | theme[temp_end]="#ED8796" 19 | theme[cpu_start]="#7DC4E4" 20 | theme[cpu_mid]="#91D7E3" 21 | theme[cpu_end]="#8BD5CA" 22 | theme[free_start]="#8BD5CA" 23 | theme[free_mid]="#8BD5CA" 24 | theme[free_end]="#A6DA95" 25 | theme[cached_start]="#F5BDE6" 26 | theme[cached_mid]="#F5BDE6" 27 | theme[cached_end]="#C6A0F6" 28 | theme[available_start]="#F4DBD6" 29 | theme[available_mid]="#F0C6C6" 30 | theme[available_end]="#F0C6C6" 31 | theme[used_start]="#F5A97F" 32 | theme[used_mid]="#F5A97F" 33 | theme[used_end]="#ED8796" 34 | theme[download_start]="#B7BDF8" 35 | theme[download_mid]="#B7BDF8" 36 | theme[download_end]="#C6A0F6" 37 | theme[upload_start]="#B7BDF8" 38 | theme[upload_mid]="#B7BDF8" 39 | theme[upload_end]="#C6A0F6" 40 | theme[process_start]="#7DC4E4" 41 | theme[process_mid]="#91D7E3" 42 | theme[process_end]="#8BD5CA" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_mocha.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#1E1E2E" 2 | theme[main_fg]="#CDD6F4" 3 | theme[title]="#CDD6F4" 4 | theme[hi_fg]="#89B4FA" 5 | theme[selected_bg]="#45475A" 6 | theme[selected_fg]="#89B4FA" 7 | theme[inactive_fg]="#7F849C" 8 | theme[graph_text]="#F5E0DC" 9 | theme[meter_bg]="#45475A" 10 | theme[proc_misc]="#F5E0DC" 11 | theme[cpu_box]="#74C7EC" 12 | theme[mem_box]="#A6E3A1" 13 | theme[net_box]="#CBA6F7" 14 | theme[proc_box]="#F2CDCD" 15 | theme[div_line]="#6C7086" 16 | theme[temp_start]="#F9E2AF" 17 | theme[temp_mid]="#FAB387" 18 | theme[temp_end]="#F38BA8" 19 | theme[cpu_start]="#74C7EC" 20 | theme[cpu_mid]="#89DCEB" 21 | theme[cpu_end]="#94E2D5" 22 | theme[free_start]="#94E2D5" 23 | theme[free_mid]="#94E2D5" 24 | theme[free_end]="#A6E3A1" 25 | theme[cached_start]="#F5C2E7" 26 | theme[cached_mid]="#F5C2E7" 27 | theme[cached_end]="#CBA6F7" 28 | theme[available_start]="#F5E0DC" 29 | theme[available_mid]="#F2CDCD" 30 | theme[available_end]="#F2CDCD" 31 | theme[used_start]="#FAB387" 32 | theme[used_mid]="#FAB387" 33 | theme[used_end]="#F38BA8" 34 | theme[download_start]="#B4BEFE" 35 | theme[download_mid]="#B4BEFE" 36 | theme[download_end]="#CBA6F7" 37 | theme[upload_start]="#B4BEFE" 38 | theme[upload_mid]="#B4BEFE" 39 | theme[upload_end]="#CBA6F7" 40 | theme[process_start]="#74C7EC" 41 | theme[process_mid]="#89DCEB" 42 | theme[process_end]="#94E2D5" 43 | -------------------------------------------------------------------------------- /config/chevron/backend/register.cjs: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-undef */ 2 | const Service = require('node-' + process.argv[2]).Service 3 | const { log } = require('console') 4 | 5 | // Create a new service object 6 | const svc = new Service({ 7 | name:'Chevron', 8 | description: 'Backend server of the Chevron startpage', 9 | script: require('path').join(__dirname, 'server.cjs'), 10 | nodeOptions: [ 11 | '--harmony', 12 | '--max_old_space_size=4096' 13 | ] 14 | }) 15 | 16 | if (svc.exists) { 17 | log('Unregistering the service') 18 | svc.uninstall() 19 | } else { 20 | log('Registering the service') 21 | svc.install() 22 | } 23 | 24 | svc.on('install', () => svc.start()) -------------------------------------------------------------------------------- /config/chevron/backend/server.cjs: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line no-undef 2 | const httpServer = require('http-server') 3 | 4 | const PORT = 8000 5 | 6 | const server = httpServer.createServer({ root: './dist' }) 7 | server.listen(PORT) -------------------------------------------------------------------------------- /config/chevron/dist/config.js: -------------------------------------------------------------------------------- 1 | const CONFIG = { 2 | macros: [ 3 | { 4 | category: 'Entertainment', 5 | name: 'YouTube', 6 | triggers: [ 7 | 'y', 8 | 'yt', 9 | 'youtube', 10 | ], 11 | key: 'KeyY', 12 | icon: 'youtube', 13 | url: 'https://youtube.com', 14 | normalisedURL: 'youtube.com', 15 | commands: { 16 | go: { 17 | template: 'https://youtu.be/{$}', 18 | description: 'go to video' 19 | }, 20 | search: { 21 | template: '{@}/results?search_query={$}' 22 | } 23 | }, 24 | bgColor: { 25 | type: 'solid', 26 | color: '#f30002' 27 | }, 28 | textColor: '#e8e8e8', 29 | pinned: true 30 | }, 31 | { 32 | category: 'Social', 33 | name: 'Reddit', 34 | triggers: [ 35 | 'r', 36 | 'rd', 37 | 'reddit', 38 | ], 39 | key: 'KeyR', 40 | icon: 'reddit', 41 | url: 'https://reddit.com', 42 | normalisedURL: 'reddit.com', 43 | commands: { 44 | go: { 45 | template: '{@}/r/{$}', 46 | description: 'go to subreddit' 47 | }, 48 | search: { 49 | template: '{@}/search?q={$}' 50 | } 51 | }, 52 | bgColor: { 53 | type: 'gradient', 54 | gradientType: 'linear', 55 | colors: ['#f07e23', '#f74300'], 56 | stops: [0, 100] 57 | }, 58 | textColor: '#e8e8e8', 59 | pinned: true 60 | }, 61 | { 62 | category: 'Social', 63 | name: 'AniList', 64 | triggers: [ 65 | 'a', 66 | 'an', 67 | 'anilist', 68 | ], 69 | key: 'KeyA', 70 | icon: 'anilist', 71 | url: 'https://anilist.co', 72 | normalisedURL: 'anilist.co', 73 | bgColor: { 74 | type: 'solid', 75 | color: '#1e2030', 76 | }, 77 | textColor: '#e8e8e8', 78 | pinned: false 79 | }, 80 | { 81 | category: 'Social', 82 | name: 'osu', 83 | triggers: [ 84 | 'o', 85 | 'osu', 86 | ], 87 | key: 'KeyO', 88 | icon: 'osu', 89 | url: 'https://osu.ppy.sh', 90 | normalisedURL: 'osu.ppy.sh', 91 | bgColor: { 92 | type: 'solid', 93 | color: '#e7669f', 94 | }, 95 | textColor: '#e8e8e8', 96 | pinned: false 97 | }, { 98 | category: 'Programming', 99 | name: 'GitHub', 100 | icon: 'github', 101 | url: 'https://github.com', 102 | normalisedURL: 'github.com', 103 | triggers: [ 104 | 'g', 105 | 'git', 106 | 'github' 107 | ], 108 | key: 'KeyG', 109 | commands: { 110 | go: { 111 | template: '{@}/{$}', 112 | description: 'go to user' 113 | }, 114 | search: { 115 | template: '{@}/search?q={$}' 116 | } 117 | }, 118 | bgColor: { 119 | type: 'solid', 120 | color: '#171515' 121 | }, 122 | textColor: '#e8e8e8', 123 | pinned: true 124 | }, 125 | { 126 | category: 'Social', 127 | name: 'Twitch', 128 | icon: 'twitch', 129 | url: 'https://twitch.tv', 130 | normalisedURL: 'twitch.tv', 131 | triggers: [ 132 | 'tw', 133 | 'twitch', 134 | ], 135 | key : 'KeyT', 136 | commands: { 137 | search: { 138 | template: '{@}/search?term={$}' 139 | }, 140 | go: { 141 | template: '{@}/{$}' 142 | } 143 | }, 144 | bgColor: { 145 | type: 'solid', 146 | color: '#8c44f7' 147 | }, 148 | textColor: '#e8e8e8', 149 | pinned: true 150 | }, 151 | { 152 | category: 'Search', 153 | name: 'DuckDuckGo', 154 | triggers: [ 155 | 'dd', 156 | 'ddg', 157 | 'duck', 158 | 'duckduck', 159 | 'duckduckgo' 160 | ], 161 | url: 'https://duckduckgo.com', 162 | normalisedURL: 'duckduckgo.com', 163 | commands: { 164 | search: { 165 | template: '{@}/?q={$}' 166 | } 167 | }, 168 | bgColor: { 169 | type: 'solid', 170 | color: '#e37151' 171 | }, 172 | textColor: '#e8e8e8' 173 | }, 174 | ], 175 | commands: [ 176 | { 177 | type: 'search', 178 | trigger: '?' 179 | }, 180 | { 181 | type: 'go', 182 | trigger: '/' 183 | } 184 | ], 185 | engines: { 186 | duckDuckGo: { 187 | name: 'DuckDuckGo', 188 | bgColor: { 189 | type: 'solid', 190 | color: '#e37151' 191 | }, 192 | textColor: '#e8e8e8', 193 | types: { 194 | query: { 195 | template: 'https://duckduckgo.com/?q={$}' 196 | }, 197 | calculator: { 198 | template: 'https://duckduckgo.com/?q={@}' 199 | }, 200 | currency: { 201 | template: 'https://duckduckgo.com/?q={@}' 202 | } 203 | } 204 | }, 205 | } 206 | } 207 | 208 | export default CONFIG 209 | 210 | -------------------------------------------------------------------------------- /config/chevron/dist/font.css: -------------------------------------------------------------------------------- 1 | /* Onest (default font) */ 2 | @font-face { 3 | font-family: 'Onest'; 4 | src: url('./fonts/Onest/OnestMedium.ttf'); 5 | } 6 | @font-face { 7 | font-family: 'Onest Bold'; 8 | src: url('./fonts/Onest/OnestExtraBold.ttf'); 9 | } 10 | @font-face { 11 | font-family: 'Onest Light'; 12 | src: url('./fonts/Onest/OnestThin.ttf'); 13 | } 14 | 15 | :root { 16 | --font: 'Onest Bold' 17 | } 18 | 19 | /* Blogger Sans */ 20 | /* 21 | @font-face { 22 | font-family: 'Blogger Sans'; 23 | src: url('./fonts/Blogger Sans/Blogger Sans Bold.ttf'); 24 | } 25 | @font-face { 26 | font-family: 'Blogger Sans Light'; 27 | src: url('./fonts/Blogger Sans/Blogger Sans Light.ttf.ttf'); 28 | } 29 | */ 30 | 31 | /* Uni Sans */ 32 | /* 33 | @font-face { 34 | font-family: 'Uni Sans'; 35 | src: url('./fonts/Uni Sans/Uni Sans Heavy.otf'); 36 | } 37 | @font-face { 38 | font-family: 'Uni Sans Light'; 39 | src: url('./fonts/Uni Sans/Uni Sans Thin.otf'); 40 | } 41 | */ 42 | 43 | /* Rubik */ 44 | /* 45 | @font-face { 46 | font-family: 'Rubik'; 47 | src: url('./fonts/Rubik/Rubik.ttf'); 48 | } 49 | */ 50 | 51 | /* Figtree */ 52 | /* 53 | @font-face { 54 | font-family: 'Figtree'; 55 | src: url('./fonts/Figtree/Figtree-VariableFont_wght.ttf'); 56 | } 57 | @font-face { 58 | font-family: 'Figtree'; 59 | src: url('./fonts/Figtree/Figtree-Italic-VariableFont_wght.ttf'); 60 | font-style: italic; 61 | } 62 | */ 63 | 64 | /* Public Sans (Joy UI dependency) */ 65 | /* 66 | @font-face { 67 | font-family: 'Public Sans'; 68 | src: url('./fonts/Public Sans/PublicSans-Regular.ttf'); 69 | } 70 | */ -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Blogger Sans/Blogger Sans Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Blogger Sans/Blogger Sans Bold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Blogger Sans/Blogger Sans Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Blogger Sans/Blogger Sans Light.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/Figtree-Italic-VariableFont_wght.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/Figtree-Italic-VariableFont_wght.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/Figtree-VariableFont_wght.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/Figtree-VariableFont_wght.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/OFL.txt: -------------------------------------------------------------------------------- 1 | Copyright 2022 The Figtree Project Authors (https://github.com/erikdkennedy/figtree) 2 | 3 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 4 | This license is copied below, and is also available with a FAQ at: 5 | http://scripts.sil.org/OFL 6 | 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide 14 | development of collaborative font projects, to support the font creation 15 | efforts of academic and linguistic communities, and to provide a free and 16 | open framework in which fonts may be shared and improved in partnership 17 | with others. 18 | 19 | The OFL allows the licensed fonts to be used, studied, modified and 20 | redistributed freely as long as they are not sold by themselves. The 21 | fonts, including any derivative works, can be bundled, embedded, 22 | redistributed and/or sold with any software provided that any reserved 23 | names are not used by derivative works. The fonts and derivatives, 24 | however, cannot be released under any other type of license. The 25 | requirement for fonts to remain under this license does not apply 26 | to any document created using the fonts or their derivatives. 27 | 28 | DEFINITIONS 29 | "Font Software" refers to the set of files released by the Copyright 30 | Holder(s) under this license and clearly marked as such. This may 31 | include source files, build scripts and documentation. 32 | 33 | "Reserved Font Name" refers to any names specified as such after the 34 | copyright statement(s). 35 | 36 | "Original Version" refers to the collection of Font Software components as 37 | distributed by the Copyright Holder(s). 38 | 39 | "Modified Version" refers to any derivative made by adding to, deleting, 40 | or substituting -- in part or in whole -- any of the components of the 41 | Original Version, by changing formats or by porting the Font Software to a 42 | new environment. 43 | 44 | "Author" refers to any designer, engineer, programmer, technical 45 | writer or other person who contributed to the Font Software. 46 | 47 | PERMISSION & CONDITIONS 48 | Permission is hereby granted, free of charge, to any person obtaining 49 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 50 | redistribute, and sell modified and unmodified copies of the Font 51 | Software, subject to the following conditions: 52 | 53 | 1) Neither the Font Software nor any of its individual components, 54 | in Original or Modified Versions, may be sold by itself. 55 | 56 | 2) Original or Modified Versions of the Font Software may be bundled, 57 | redistributed and/or sold with any software, provided that each copy 58 | contains the above copyright notice and this license. These can be 59 | included either as stand-alone text files, human-readable headers or 60 | in the appropriate machine-readable metadata fields within text or 61 | binary files as long as those fields can be easily viewed by the user. 62 | 63 | 3) No Modified Version of the Font Software may use the Reserved Font 64 | Name(s) unless explicit written permission is granted by the corresponding 65 | Copyright Holder. This restriction only applies to the primary font name as 66 | presented to the users. 67 | 68 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 69 | Software shall not be used to promote, endorse or advertise any 70 | Modified Version, except to acknowledge the contribution(s) of the 71 | Copyright Holder(s) and the Author(s) or with their explicit written 72 | permission. 73 | 74 | 5) The Font Software, modified or unmodified, in part or in whole, 75 | must be distributed entirely under this license, and must not be 76 | distributed under any other license. The requirement for fonts to 77 | remain under this license does not apply to any document created 78 | using the Font Software. 79 | 80 | TERMINATION 81 | This license becomes null and void if any of the above conditions are 82 | not met. 83 | 84 | DISCLAIMER 85 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 86 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 87 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 88 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 89 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 90 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 91 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 92 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 93 | OTHER DEALINGS IN THE FONT SOFTWARE. 94 | -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/README.txt: -------------------------------------------------------------------------------- 1 | Figtree Variable Font 2 | ===================== 3 | 4 | This download contains Figtree as both variable fonts and static fonts. 5 | 6 | Figtree is a variable font with this axis: 7 | wght 8 | 9 | This means all the styles are contained in these files: 10 | Figtree-VariableFont_wght.ttf 11 | Figtree-Italic-VariableFont_wght.ttf 12 | 13 | If your app fully supports variable fonts, you can now pick intermediate styles 14 | that aren’t available as static fonts. Not all apps support variable fonts, and 15 | in those cases you can use the static font files for Figtree: 16 | static/Figtree-Light.ttf 17 | static/Figtree-Regular.ttf 18 | static/Figtree-Medium.ttf 19 | static/Figtree-SemiBold.ttf 20 | static/Figtree-Bold.ttf 21 | static/Figtree-ExtraBold.ttf 22 | static/Figtree-Black.ttf 23 | static/Figtree-LightItalic.ttf 24 | static/Figtree-Italic.ttf 25 | static/Figtree-MediumItalic.ttf 26 | static/Figtree-SemiBoldItalic.ttf 27 | static/Figtree-BoldItalic.ttf 28 | static/Figtree-ExtraBoldItalic.ttf 29 | static/Figtree-BlackItalic.ttf 30 | 31 | Get started 32 | ----------- 33 | 34 | 1. Install the font files you want to use 35 | 36 | 2. Use your app's font picker to view the font family and all the 37 | available styles 38 | 39 | Learn more about variable fonts 40 | ------------------------------- 41 | 42 | https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts 43 | https://variablefonts.typenetwork.com 44 | https://medium.com/variable-fonts 45 | 46 | In desktop apps 47 | 48 | https://theblog.adobe.com/can-variable-fonts-illustrator-cc 49 | https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts 50 | 51 | Online 52 | 53 | https://developers.google.com/fonts/docs/getting_started 54 | https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide 55 | https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts 56 | 57 | Installing fonts 58 | 59 | MacOS: https://support.apple.com/en-us/HT201749 60 | Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux 61 | Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows 62 | 63 | Android Apps 64 | 65 | https://developers.google.com/fonts/docs/android 66 | https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts 67 | 68 | License 69 | ------- 70 | Please read the full license text (OFL.txt) to understand the permissions, 71 | restrictions and requirements for usage, redistribution, and modification. 72 | 73 | You can use them in your products & projects – print or digital, 74 | commercial or otherwise. 75 | 76 | This isn't legal advice, please consider consulting a lawyer and see the full 77 | license for all details. 78 | -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Black.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-BlackItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Bold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-BoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-ExtraBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-ExtraBold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-ExtraBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-ExtraBoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Italic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Light.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-LightItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Medium.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-MediumItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-Regular.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-SemiBold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Figtree/static/Figtree-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Figtree/static/Figtree-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Onest/OnestExtraBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Onest/OnestExtraBold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Onest/OnestMedium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Onest/OnestMedium.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Onest/OnestThin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Onest/OnestThin.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Black.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-BlackItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Bold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-BoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-ExtraBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-ExtraBold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-ExtraBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-ExtraBoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-ExtraLight.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Italic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Light.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-LightItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Medium.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-MediumItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Regular.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-SemiBold.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-Thin.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Public Sans/PublicSans-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Public Sans/PublicSans-ThinItalic.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Rubik/Rubik.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Rubik/Rubik.ttf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Uni Sans/Uni Sans Heavy.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Uni Sans/Uni Sans Heavy.otf -------------------------------------------------------------------------------- /config/chevron/dist/fonts/Uni Sans/Uni Sans Thin.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/chevron/dist/fonts/Uni Sans/Uni Sans Thin.otf -------------------------------------------------------------------------------- /config/chevron/dist/icons.js: -------------------------------------------------------------------------------- 1 | const ICONS = { 2 | github: '', 3 | anilist: ' ', 4 | youtube: '', 5 | reddit: '', 6 | twitch: '', 7 | } 8 | 9 | export default ICONS 10 | -------------------------------------------------------------------------------- /config/conky/mocha.conf: -------------------------------------------------------------------------------- 1 | conky.config = { 2 | 3 | --Various settings 4 | background = true, -- forked to background 5 | cpu_avg_samples = 2, -- The number of samples to average for CPU monitoring. 6 | diskio_avg_samples = 10, -- The number of samples to average for disk I/O monitoring. 7 | double_buffer = true, -- Use the Xdbe extension? (eliminates flicker) 8 | if_up_strictness = 'address', -- how strict if testing interface is up - up, link or address 9 | net_avg_samples = 2, -- The number of samples to average for net data 10 | no_buffers = true, -- Subtract (file system) buffers from used memory? 11 | temperature_unit = 'celsius', -- fahrenheit or celsius 12 | text_buffer_size = 2048, -- size of buffer for display of content of large variables - default 256 13 | update_interval = 1, -- update interval 14 | imlib_cache_size = 0, -- disable image cache to get a new spotify cover per song 15 | 16 | -- Placement (Conky on MIDDLE of THREE monitors at 1920x1080) 17 | --alignment = 'top_left', -- top_left,top_middle,top_right,bottom_left,bottom_middle,bottom_right, 18 | --gap_x = 2000, -- pixels between right or left border 19 | --gap_y = 10, -- pixels between bottom or left border 20 | 21 | -- Placement (For SINGLE monitor users!) 22 | alignment = 'top_right', -- top_left,top_middle,top_right,bottom_left,bottom_middle,bottom_right, 23 | gap_x = 27, -- pixels between right or left border 24 | gap_y = 65, -- pixels between bottom or left border 25 | 26 | -- Size 27 | minimum_height = 200, -- minimum height of window 28 | minimum_width = 260, -- minimum width of window 29 | maximum_width = 260, -- maximum width of window 30 | 31 | --Graphical 32 | border_inner_margin = 5, -- margin between border and text 33 | border_outer_margin = 5, -- margin between border and edge of window 34 | border_width = 0, -- border width in pixels 35 | default_bar_width = 260, -- default is 0 - full width 36 | default_bar_height = 10, -- default is 6 37 | default_gauge_height = 25, -- default is 25 38 | default_gauge_width =40, -- default is 40 39 | default_graph_height = 40, -- default is 25 40 | default_graph_width = 153, -- default is 0 - full width 41 | default_shade_color = '#000000', -- default shading colour 42 | default_outline_color = '#000000', -- default outline colour 43 | draw_borders = false, -- draw borders around text 44 | draw_graph_borders = true, -- draw borders around graphs 45 | draw_shades = false, -- draw shades 46 | draw_outline = false, -- draw outline 47 | stippled_borders = 0, -- dashing the border 48 | 49 | --Textual 50 | format_human_readable = true, -- KiB, MiB rather then number of bytes 51 | font = 'Product Sans:bold:size=12', -- font for the time 52 | max_text_width = 0, -- 0 will make sure line does not get broken if width too smal 53 | max_user_text = 16384, -- max text in conky default 16384 54 | override_utf8_locale = true, -- force UTF8 requires xft 55 | short_units = true, -- shorten units from KiB to k 56 | top_name_width = 21, -- width for $top name value default 15 57 | top_name_verbose = false, -- If true, top name shows the full command line of each process - Default value is false. 58 | uppercase = false, -- uppercase or not 59 | use_spacer = 'none', -- adds spaces around certain objects to align - default none 60 | use_xft = true, -- xft font - anti-aliased font 61 | xftalpha = 1, -- alpha of the xft font - between 0-1 62 | 63 | --Windows 64 | own_window = true, -- create your own window to draw 65 | own_window_argb_value = 255, -- real transparency - composite manager required 0-255 66 | own_window_argb_visual = true, -- use ARGB - composite manager required 67 | own_window_class = 'Conky', -- manually set the WM_CLASS name for use with xprop 68 | own_window_colour = '#1e1e2e', -- set colour if own_window_transparent no 69 | own_window_transparent = false, -- if own_window_argb_visual is true sets background opacity 0% 70 | own_window_title = 'conky', -- set the name manually 71 | own_window_type = 'override', -- if own_window true options are: normal/override/dock/desktop/panel 72 | own_window_hints = 'undecorated,below,above,sticky,skip_taskbar,skip_pager', -- if own_window true - just hints - own_window_type sets it 73 | 74 | --catppuccin 75 | color1 = '#cdd6f4', 76 | color2 = '#f5e0dc', 77 | color3 = '#b4befe', 78 | }; 79 | 80 | conky.text = [[ 81 | #------------+ 82 | #CPU 83 | #------------+ 84 | ${voffset 10}${color1}${font :size=14:bold}CPU ${hr 2}${font} 85 | ${voffset 2}${color1}Freq : ${color3}${freq_g} GHz$alignr${color1}Usage : ${color3}${cpu}% 86 | ${color2}${cpubar} 87 | ${voffset 5}${color1}Name $alignr CPU% 88 | ${color2}${top name 1} ${alignr}${top cpu 1}${color3} 89 | ${top name 2} ${alignr}${top cpu 2} 90 | ${top name 3} ${alignr}${top cpu 3} 91 | ${top name 4} ${alignr}${top cpu 4} 92 | ${top name 5} ${alignr}${top cpu 5} 93 | #------------+ 94 | # MEMORY 95 | #------------+ 96 | ${voffset 10}${color1}${font :size=14:bold}Memory ${hr 2}${font} 97 | ${voffset 5}${color1}Used: ${color3}$mem ($memperc%)${color1}${alignr}Free: ${color3}$memeasyfree 98 | ${color2}${membar} 99 | ${voffset 5}${color1}Name${alignr}MEM 100 | ${color2}${top_mem name 1} ${alignr}${top_mem mem_res 1}${color3} 101 | ${top_mem name 2} ${alignr}${top_mem mem_res 2} 102 | ${top_mem name 3} ${alignr}${top_mem mem_res 3} 103 | ${top_mem name 4} ${alignr}${top_mem mem_res 4} 104 | ${top_mem name 5} ${alignr}${top_mem mem_res 5} 105 | #------------+ 106 | # NETWORK 107 | #------------+ 108 | ${voffset 10}${color1}${font :size=14:bold}Network ${hr 2}${font} 109 | ${voffset 5}${color3}Up: ${upspeed wlan0}${alignr}Down: ${downspeed wlan0} 110 | #------------+ 111 | # DISK 112 | #------------+ 113 | ${voffset 10}${color1}${font :size=14:bold}File System ${hr 2}${font} 114 | ${color1}/ ${alignr}${color3}${fs_used /}/${fs_size /} 115 | ${goto 12}${color2}${fs_bar 6 /} 116 | ${color1}~/Games ${alignr}${color3}${fs_used /home/meledo/Games/}/${fs_size /home/meledo/Games/} 117 | ${goto 12}${color2}${fs_bar 6 /home/meledo/Games/} 118 | ${color3} 119 | #------------+ 120 | ]]; 121 | -------------------------------------------------------------------------------- /config/flameshot/flameshot.ini: -------------------------------------------------------------------------------- 1 | [General] 2 | contrastOpacity=188 3 | copyAndCloseAfterUpload=false 4 | disabledTrayIcon=true 5 | historyConfirmationToDelete=false 6 | saveAfterCopy=true 7 | savePathFixed=true 8 | showHelp=false 9 | showSidePanelButton=false 10 | showStartupLaunchMessage=false 11 | -------------------------------------------------------------------------------- /config/mpv/encoding.rst: -------------------------------------------------------------------------------- 1 | General usage 2 | ============= 3 | 4 | :: 5 | 6 | mpv infile -o outfile [-of outfileformat] [-ofopts formatoptions] [-orawts] \ 7 | [(any other mpv options)] \ 8 | -ovc outvideocodec [-ovcopts outvideocodecoptions] \ 9 | -oac outaudiocodec [-oacopts outaudiocodecoptions] 10 | 11 | Help for these options is provided if giving help as parameter, as in:: 12 | 13 | mpv -ovc help 14 | 15 | The suboptions of these generally are identical to ffmpeg's (as option parsing 16 | is simply delegated to ffmpeg). The option -ocopyts enables copying timestamps 17 | from the source as-is, instead of fixing them to match audio playback time 18 | (note: this doesn't work with all output container formats); -orawts even turns 19 | off discontinuity fixing. 20 | 21 | Note that if neither -ofps nor -oautofps is specified, VFR encoding is assumed 22 | and the time base is 24000fps. -oautofps sets -ofps to a guessed fps number 23 | from the input video. Note that not all codecs and not all formats support VFR 24 | encoding, and some which do have bugs when a target bitrate is specified - use 25 | -ofps or -oautofps to force CFR encoding in these cases. 26 | 27 | Of course, the options can be stored in a profile, like this .config/mpv/mpv.conf 28 | section:: 29 | 30 | [myencprofile] 31 | vf-add = scale=480:-2 32 | ovc = libx264 33 | ovcopts-add = preset=medium 34 | ovcopts-add = tune=fastdecode 35 | ovcopts-add = crf=23 36 | ovcopts-add = maxrate=1500k 37 | ovcopts-add = bufsize=1000k 38 | ovcopts-add = rc_init_occupancy=900k 39 | ovcopts-add = refs=2 40 | ovcopts-add = profile=baseline 41 | oac = aac 42 | oacopts-add = b=96k 43 | 44 | It's also possible to define default encoding options by putting them into 45 | the section named ``[encoding]``. (This behavior changed after mpv 0.3.x. In 46 | mpv 0.3.x, config options in the default section / no section were applied 47 | to encoding. This is not the case anymore.) 48 | 49 | One can then encode using this profile using the command:: 50 | 51 | mpv infile -o outfile.mp4 -profile myencprofile 52 | 53 | Some example profiles are provided in a file 54 | etc/encoding-profiles.conf; as for this, see below. 55 | 56 | 57 | Encoding examples 58 | ================= 59 | 60 | These are some examples of encoding targets this code has been used and tested 61 | for. 62 | 63 | Typical MPEG-4 Part 2 ("ASP", "DivX") encoding, AVI container:: 64 | 65 | mpv infile -o outfile.avi \ 66 | --vf=fps=25 \ 67 | -ovc mpeg4 -ovcopts qscale=4 \ 68 | -oac libmp3lame -oacopts ab=128k 69 | 70 | Note: AVI does not support variable frame rate, so the fps filter must be used. 71 | The frame rate should ideally match the input (25 for PAL, 24000/1001 or 72 | 30000/1001 for NTSC) 73 | 74 | Typical MPEG-4 Part 10 ("AVC", "H.264") encoding, Matroska (MKV) container:: 75 | 76 | mpv infile -o outfile.mkv \ 77 | -ovc libx264 -ovcopts preset=medium,crf=23,profile=baseline \ 78 | -oac libvorbis -oacopts qscale=3 79 | 80 | Typical MPEG-4 Part 10 ("AVC", "H.264") encoding, MPEG-4 (MP4) container:: 81 | 82 | mpv infile -o outfile.mp4 \ 83 | -ovc libx264 -ovcopts preset=medium,crf=23,profile=baseline \ 84 | -oac aac -oacopts ab=128k 85 | 86 | Typical VP8 encoding, WebM (restricted Matroska) container:: 87 | 88 | mpv infile -o outfile.mkv \ 89 | -of webm \ 90 | -ovc libvpx -ovcopts qmin=6,b=1000000k \ 91 | -oac libvorbis -oacopts qscale=3 92 | 93 | 94 | Device targets 95 | ============== 96 | 97 | As the options for various devices can get complex, profiles can be used. 98 | 99 | An example profile file for encoding is provided in 100 | etc/encoding-profiles.conf in the source tree. This file is installed and loaded 101 | by default. If you want to modify it, you can replace and it with your own copy 102 | by doing:: 103 | 104 | mkdir -p ~/.mpv 105 | cp /etc/mpv/encoding-profiles.conf ~/.mpv/encoding-profiles.conf 106 | 107 | Keep in mind that the default profile is the playback one. If you want to add 108 | options that apply only in encoding mode, put them into a ``[encoding]`` 109 | section. 110 | 111 | Refer to the top of that file for more comments - in a nutshell, the following 112 | options are added by it:: 113 | 114 | -profile enc-to-dvdpal DVD-Video PAL, use dvdauthor -v pal+4:3 -a ac3+en 115 | -profile enc-to-dvdntsc DVD-Video NTSC, use dvdauthor -v ntsc+4:3 -a ac3+en 116 | -profile enc-to-bb-9000 MP4 for Blackberry Bold 9000 117 | -profile enc-to-nok-6300 3GP for Nokia 6300 118 | -profile enc-to-psp MP4 for PlayStation Portable 119 | -profile enc-to-iphone MP4 for iPhone 120 | -profile enc-to-iphone-4 MP4 for iPhone 4 (double res) 121 | -profile enc-to-iphone-5 MP4 for iPhone 5 (even larger res) 122 | 123 | You can encode using these with a command line like:: 124 | 125 | mpv infile -o outfile.mp4 -profile enc-to-bb-9000 126 | 127 | Of course, you are free to override options set by these profiles by specifying 128 | them after the -profile option. 129 | 130 | 131 | What works 132 | ========== 133 | 134 | * Encoding at variable frame rate (default) 135 | * Encoding at constant frame rate using --vf=fps=RATE 136 | * 2-pass encoding (specify flags=+pass1 in the first pass's -ovcopts, specify 137 | flags=+pass2 in the second pass) 138 | * Hardcoding subtitles using vobsub, ass or srt subtitle rendering (just 139 | configure mpv for the subtitles as usual) 140 | * Hardcoding any other mpv OSD (e.g. time codes, using -osdlevel 3 and -vf 141 | expand=::::1) 142 | * Encoding directly from a DVD, network stream, webcam, or any other source 143 | mpv supports 144 | * Using x264 presets/tunings/profiles (by using profile=, tune=, preset= in the 145 | -ovcopts) 146 | * Deinterlacing/Inverse Telecine with any of mpv's filters for that 147 | * Audio file converting: mpv -o outfile.mp3 infile.flac -no-video -oac 148 | libmp3lame -oacopts ab=320k 149 | 150 | What does not work yet 151 | ====================== 152 | 153 | * 3-pass encoding (ensuring constant total size and bitrate constraints while 154 | having VBR audio; mencoder calls this "frameno") 155 | * Direct stream copy 156 | -------------------------------------------------------------------------------- /config/mpv/mpv.conf: -------------------------------------------------------------------------------- 1 | # 2 | # Example mpv configuration file 3 | # 4 | # Warning: 5 | # 6 | # The commented example options usually do _not_ set the default values. Call 7 | # mpv with --list-options to see the default values for most options. There is 8 | # no builtin or example mpv.conf with all the defaults. 9 | # 10 | # 11 | # Configuration files are read system-wide from /usr/local/etc/mpv.conf 12 | # and per-user from ~/.config/mpv/mpv.conf, where per-user settings override 13 | # system-wide settings, all of which are overridden by the command line. 14 | # 15 | # Configuration file settings and the command line options use the same 16 | # underlying mechanisms. Most options can be put into the configuration file 17 | # by dropping the preceding '--'. See the man page for a complete list of 18 | # options. 19 | # 20 | # Lines starting with '#' are comments and are ignored. 21 | # 22 | # See the CONFIGURATION FILES section in the man page 23 | # for a detailed description of the syntax. 24 | # 25 | # Profiles should be placed at the bottom of the configuration file to ensure 26 | # that settings wanted as defaults are not restricted to specific profiles. 27 | 28 | ################## 29 | # video settings # 30 | ################## 31 | 32 | # Start in fullscreen mode by default. 33 | #fs=yes 34 | 35 | # force starting with centered window 36 | #geometry=50%:50% 37 | 38 | # don't allow a new window to have a size larger than 90% of the screen size 39 | #autofit-larger=90%x90% 40 | 41 | # Do not close the window on exit. 42 | keep-open=no 43 | 44 | # Do not wait with showing the video window until it has loaded. (This will 45 | # resize the window once video is loaded. Also always shows a window with 46 | # audio.) 47 | #force-window=immediate 48 | 49 | # Disable the On Screen Controller (OSC). 50 | #osc=no 51 | 52 | # Keep the player window on top of all other windows. 53 | #ontop=yes 54 | 55 | # Specify high quality video rendering preset (for --vo=gpu only) 56 | # Can cause performance problems with some drivers and GPUs. 57 | gpu-api=opengl 58 | hwdec=auto 59 | x11-bypass-compositor=yes 60 | vo=gpu-next 61 | save-position-on-quit=no 62 | # Force video to lock on the display's refresh rate, and change video and audio 63 | # speed to some degree to ensure synchronous playback - can cause problems 64 | # with some drivers and desktop environments. 65 | video-sync=display-resample 66 | scale=ewa_lanczos 67 | cscale=ewa_lanczos 68 | interpolation 69 | tscale=oversample 70 | scale-blur=0.981251 71 | cscale-blur=0.981251 72 | ytdl-format=bestvideo[height<=1080]+bestaudio/best 73 | osc=no 74 | border=no 75 | # Enable hardware decoding if available. Often, this does not work with all 76 | # video outputs, but should work well with default settings on most systems. 77 | # If performance or energy usage is an issue, forcing the vdpau or vaapi VOs 78 | # may or may not help. 79 | 80 | ################## 81 | # audio settings # 82 | ################## 83 | 84 | # Specify default audio device. You can list devices with: --audio-device=help 85 | # The option takes the device string (the stuff between the '...'). 86 | #audio-device=alsa/default 87 | 88 | # Do not filter audio to keep pitch when changing playback speed. 89 | #audio-pitch-correction=no 90 | 91 | # Output 5.1 audio natively, and upmix/downmix audio with a different format. 92 | #audio-channels=5.1 93 | # Disable any automatic remix, _if_ the audio output accepts the audio format. 94 | # of the currently played file. See caveats mentioned in the manpage. 95 | # (The default is "auto-safe", see manpage.) 96 | #audio-channels=auto 97 | 98 | ################## 99 | # other settings # 100 | ################## 101 | 102 | # Pretend to be a web browser. Might fix playback with some streaming sites, 103 | # but also will break with shoutcast streams. 104 | #user-agent="Mozilla/5.0" 105 | 106 | # cache settings 107 | # 108 | # Use a large seekable RAM cache even for local input. 109 | #cache=yes 110 | # 111 | # Use extra large RAM cache (needs cache=yes to make it useful). 112 | #demuxer-max-bytes=500M 113 | #demuxer-max-back-bytes=100M 114 | # 115 | # Disable the behavior that the player will pause if the cache goes below a 116 | # certain fill size. 117 | #cache-pause=no 118 | # 119 | # Store cache payload on the hard disk instead of in RAM. (This may negatively 120 | # impact performance unless used for slow input such as network.) 121 | #cache-dir=~/.cache/ 122 | #cache-on-disk=yes 123 | 124 | # Display English subtitles if available. 125 | #slang=en 126 | 127 | # Play Finnish audio if available, fall back to English otherwise. 128 | #alang=fi,en 129 | 130 | # Change subtitle encoding. For Arabic subtitles use 'cp1256'. 131 | # If the file seems to be valid UTF-8, prefer UTF-8. 132 | # (You can add '+' in front of the codepage to force it.) 133 | #sub-codepage=cp1256 134 | 135 | # You can also include other configuration files. 136 | #include=/path/to/the/file/you/want/to/include 137 | 138 | ############ 139 | # Profiles # 140 | ############ 141 | 142 | # The options declared as part of profiles override global default settings, 143 | # but only take effect when the profile is active. 144 | 145 | # The following profile can be enabled on the command line with: --profile=eye-cancer 146 | 147 | #[eye-cancer] 148 | #sharpen=5 149 | -------------------------------------------------------------------------------- /config/mpv/script-opts/mpv_discordRPC.conf: -------------------------------------------------------------------------------- 1 | rpc_wrapper=lua-discordRPC 2 | # Available option, to set `rpc_wrapper`: 3 | # * lua-discordRPC 4 | # * python-pypresence 5 | 6 | periodic_timer=15 7 | # Recommendation value, to set `periodic_timer`: 8 | # value >= 1 second, if use lua-discordRPC, 9 | # value >= 3 second, if use pypresence (for the python3::asyncio process), 10 | # value <= 15 second, because discord-rpc updates every 15 seconds. 11 | 12 | playlist_info=yes 13 | # Valid value to set `playlist_info`: (yes|no) 14 | 15 | hide_url=no 16 | # Valid value to set `hide_url`: (yes|no) 17 | 18 | loop_info=yes 19 | # Valid value to set `loop_info`: (yes|no) 20 | 21 | cover_art=yes 22 | # Valid value to set `cover_art`: (yes|no) 23 | 24 | mpv_version=no 25 | # Valid value to set `mpv_version`: (yes|no) 26 | 27 | active=yes 28 | # Set Discord RPC active automatically when mpv started. 29 | # Valid value to `set_active`: (yes|no) 30 | 31 | key_toggle=D 32 | # Key for toggle active/inactive the Discord RPC. 33 | # Valid value to set `key_toggle`: same as valid value for mpv key binding. 34 | # You also can set it in input.conf by adding this next line (without double quote). 35 | # "D script-binding mpv_discordRPC/active-toggle" 36 | -------------------------------------------------------------------------------- /config/mpv/script-opts/thumbfast.conf: -------------------------------------------------------------------------------- 1 | # Socket path (leave empty for auto) 2 | socket= 3 | 4 | # Thumbnail path (leave empty for auto) 5 | thumbnail= 6 | 7 | # Maximum thumbnail size in pixels (scaled down to fit) 8 | # Values are scaled when hidpi is enabled 9 | max_height=200 10 | max_width=200 11 | 12 | # Overlay id 13 | overlay_id=42 14 | 15 | # Spawn thumbnailer on file load for faster initial thumbnails 16 | spawn_first=no 17 | 18 | # Enable on network playback 19 | network=no 20 | 21 | # Enable on audio playback 22 | audio=no 23 | 24 | # Enable hardware decoding 25 | hwdec=no 26 | 27 | # Windows only: use native Windows API to write to pipe (requires LuaJIT) 28 | direct_io=no 29 | -------------------------------------------------------------------------------- /config/mpv/scripts/mpv-discordRPC/python-pypresence.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import signal 4 | import sys 5 | import time 6 | import pypresence 7 | 8 | client_id = "448016723057049601" 9 | pid = 9999 10 | 11 | todo = str(sys.argv[1]) if len(sys.argv) > 1 else "shutdown" 12 | state = str(sys.argv[2]) if len(sys.argv) > 2 else "state = (Idle)" 13 | details = str(sys.argv[3]) if len(sys.argv) > 3 else "details = No file" 14 | start = int(sys.argv[4]) if len(sys.argv) > 4 else int(time.time()) 15 | end = int(sys.argv[5]) if len(sys.argv) > 5 else int(time.time() + 60) 16 | large_image = str(sys.argv[6]) if len(sys.argv) > 6 else "mpv" 17 | large_text = str(sys.argv[7]) if len(sys.argv) > 7 else "large_text = mpv Media Player" 18 | small_image = str(sys.argv[8]) if len(sys.argv) > 8 else "player_stop" 19 | small_text = str(sys.argv[9]) if len(sys.argv) > 9 else "small_text = Idle" 20 | periodic_timer = int(sys.argv[10]) if len(sys.argv) > 10 else 15 21 | 22 | TimeoutHandler = Exception 23 | 24 | def timeout_handler(num, stack): 25 | raise TimeoutHandler 26 | 27 | try: 28 | RPC = pypresence.Presence(client_id) 29 | RPC.connect() 30 | #print("pypresence: RPC connected") 31 | signal.signal(signal.SIGALRM, timeout_handler) 32 | signal.alarm(periodic_timer) 33 | if todo == "shutdown": 34 | RPC.clear() 35 | #print("pypresence: RPC cleared") 36 | RPC.close() 37 | #print("pypresence: RPC closed") 38 | elif todo == "idle": 39 | RPC.update(state=state, details=details, start=start, large_image=large_image, large_text=large_text, small_image=small_image, small_text=small_text) 40 | #print("pypresence: RPC updated.") 41 | time.sleep(periodic_timer) 42 | elif todo == "not-idle": 43 | RPC.update(state=state, details=details, end=end, large_image=large_image, large_text=large_text, small_image=small_image, small_text=small_text) 44 | #print("pypresence: RPC updated") 45 | time.sleep(periodic_timer) 46 | except (KeyboardInterrupt, SystemExit): 47 | #print(" interupt: KeyboardInterrupt|SystemExit)") 48 | sys.exit() 49 | except (BrokenPipeError, IOError): 50 | #print(" interupt: BrokenPipeError|IOError") 51 | sys.exit() 52 | except (TimeoutHandler): 53 | #print(" interupt: TimeoutHandler") 54 | sys.exit() 55 | except: 56 | sys.exit() 57 | -------------------------------------------------------------------------------- /config/mpv/scripts/status-line.lua: -------------------------------------------------------------------------------- 1 | -- Rebuild the terminal status line as a lua script 2 | -- Be aware that this will require more cpu power! 3 | -- Also, this is based on a rather old version of the 4 | -- builtin mpv status line. 5 | 6 | -- Add a string to the status line 7 | function atsl(s) 8 | newStatus = newStatus .. s 9 | end 10 | 11 | function update_status_line() 12 | -- Reset the status line 13 | newStatus = "" 14 | 15 | if mp.get_property_bool("pause") then 16 | atsl("(Paused) ") 17 | elseif mp.get_property_bool("paused-for-cache") then 18 | atsl("(Buffering) ") 19 | end 20 | 21 | if mp.get_property("aid") ~= "no" then 22 | atsl("A") 23 | end 24 | if mp.get_property("vid") ~= "no" then 25 | atsl("V") 26 | end 27 | 28 | atsl(": ") 29 | 30 | atsl(mp.get_property_osd("time-pos")) 31 | 32 | atsl(" / "); 33 | atsl(mp.get_property_osd("duration")); 34 | 35 | atsl(" (") 36 | atsl(mp.get_property_osd("percent-pos", -1)) 37 | atsl("%)") 38 | 39 | local r = mp.get_property_number("speed", -1) 40 | if r ~= 1 then 41 | atsl(string.format(" x%4.2f", r)) 42 | end 43 | 44 | r = mp.get_property_number("avsync", nil) 45 | if r ~= nil then 46 | atsl(string.format(" A-V: %f", r)) 47 | end 48 | 49 | r = mp.get_property("total-avsync-change", 0) 50 | if math.abs(r) > 0.05 then 51 | atsl(string.format(" ct:%7.3f", r)) 52 | end 53 | 54 | r = mp.get_property_number("decoder-drop-frame-count", -1) 55 | if r > 0 then 56 | atsl(" Late: ") 57 | atsl(r) 58 | end 59 | 60 | r = mp.get_property_osd("video-bitrate") 61 | if r ~= nil and r ~= "" then 62 | atsl(" Vb: ") 63 | atsl(r) 64 | end 65 | 66 | r = mp.get_property_osd("audio-bitrate") 67 | if r ~= nil and r ~= "" then 68 | atsl(" Ab: ") 69 | atsl(r) 70 | end 71 | 72 | r = mp.get_property_number("cache", 0) 73 | if r > 0 then 74 | atsl(string.format(" Cache: %d%% ", r)) 75 | end 76 | 77 | -- Set the new status line 78 | mp.set_property("options/term-status-msg", newStatus) 79 | end 80 | 81 | timer = mp.add_periodic_timer(1, update_status_line) 82 | 83 | function on_pause_change(name, value) 84 | if value == false then 85 | timer:resume() 86 | else 87 | timer:stop() 88 | end 89 | mp.add_timeout(0.1, update_status_line) 90 | end 91 | mp.observe_property("pause", "bool", on_pause_change) 92 | mp.register_event("seek", update_status_line) 93 | -------------------------------------------------------------------------------- /config/mpv/watch_later/032CF7060B04BD699C7280B0B98010F9: -------------------------------------------------------------------------------- 1 | start=2.920000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/0C17E01E95748388120743886FEEC90A: -------------------------------------------------------------------------------- 1 | start=38.902645 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/1E7FED91A1C65DDC2AED2DED31B84006: -------------------------------------------------------------------------------- 1 | start=1.366667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/200960CF1ECA92CBA89C23F2B2B2CC0F: -------------------------------------------------------------------------------- 1 | start=0.000000 2 | pause=yes 3 | -------------------------------------------------------------------------------- /config/mpv/watch_later/212BFE221901E975C1DD6ABC57171965: -------------------------------------------------------------------------------- 1 | start=17.217200 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/2234C1BF17781AC07BD2BD69158F5D21: -------------------------------------------------------------------------------- 1 | start=0.000000 2 | pause=yes 3 | -------------------------------------------------------------------------------- /config/mpv/watch_later/259202B4DDE367577E0C149C65AA4E8F: -------------------------------------------------------------------------------- 1 | start=5.400000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/2B5F6100F267B7E9DB91BA171820AA46: -------------------------------------------------------------------------------- 1 | start=17.866667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/32D423926A9D0927E3CF4BAB13970EB4: -------------------------------------------------------------------------------- 1 | start=1.700000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/3DFDE7EE72F44246D91465809F313054: -------------------------------------------------------------------------------- 1 | start=1.930490 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/4C823D79C6C2C9145F721A1FD5B88C2D: -------------------------------------------------------------------------------- 1 | start=8.033333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/5178BCEAF831538E7477D6EAC37E4C70: -------------------------------------------------------------------------------- 1 | start=18.333333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/57F669173F1CDBDB067BC40E90FC1F2B: -------------------------------------------------------------------------------- 1 | start=1.713135 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/586D8B5B1BC3FD5DC7B060734B925275: -------------------------------------------------------------------------------- 1 | start=53.333333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/58B870CCA3159FBE31E09E5B4C8C6628: -------------------------------------------------------------------------------- 1 | start=0.800000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/5E48BC6CF6FF0B393EC4AE9E20D10973: -------------------------------------------------------------------------------- 1 | start=7.132125 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/605C2BFD993B55C25A4CAE88716E9FDC: -------------------------------------------------------------------------------- 1 | start=5.833333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/6263BACBB062DC12B9EDDB23A61E6C54: -------------------------------------------------------------------------------- 1 | start=83.713066 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/6462A82A318812AE1A77E5C132087BF2: -------------------------------------------------------------------------------- 1 | start=2.280000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/65498D640159D14F93113BBE758E349A: -------------------------------------------------------------------------------- 1 | start=3.733000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/6B8000AA3FF2A0EFF978B67123BEC148: -------------------------------------------------------------------------------- 1 | start=3.870533 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/73CFA5D0972738EBEF38F5E02D7B5D81: -------------------------------------------------------------------------------- 1 | start=20.466667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/743201BC48EB24982B34666D56CDB5D2: -------------------------------------------------------------------------------- 1 | start=2.766667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/7CECAC39A299EF98805D1F758DF80BFC: -------------------------------------------------------------------------------- 1 | start=8.694516 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/81FED989A2568A356BFFB4B193DA8CDA: -------------------------------------------------------------------------------- 1 | start=8.213105 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/82D06361954B5AFCAE1D327EFF9B6567: -------------------------------------------------------------------------------- 1 | start=3.933333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/91327AA96D06CE275E97FA5ADCF49E31: -------------------------------------------------------------------------------- 1 | start=5.233000 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/926B14B30807D1AD8E08F33A4E71D62B: -------------------------------------------------------------------------------- 1 | start=2.636375 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/9ED48470E175C79664D2D1D2A5EFB464: -------------------------------------------------------------------------------- 1 | start=0.966667 2 | pause=yes 3 | aid=1 4 | -------------------------------------------------------------------------------- /config/mpv/watch_later/A1468C85F068B4FE6CB0EEA63778318A: -------------------------------------------------------------------------------- 1 | start=5.857935 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/BD4D8F10068F35662132C0A92A323CAA: -------------------------------------------------------------------------------- 1 | start=7.166667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/C5B745770FB396220A8F8E60EBDE9F6D: -------------------------------------------------------------------------------- 1 | start=2.435767 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/C65612084F513F71FBDD6D612FF3D0DB: -------------------------------------------------------------------------------- 1 | start=4.513229 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/CEA66A1AC289AB0CA8C8D02DCF2BFF0C: -------------------------------------------------------------------------------- 1 | start=0.933333 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/FABE04815E0AF31969466BF2A2CB10FF: -------------------------------------------------------------------------------- 1 | start=1.966667 2 | -------------------------------------------------------------------------------- /config/mpv/watch_later/FE4EBFCE0D3BDCB393216E2D9C1E2A10: -------------------------------------------------------------------------------- 1 | start=29.362667 2 | -------------------------------------------------------------------------------- /config/neofetch/images/sakurafetch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/neofetch/images/sakurafetch.png -------------------------------------------------------------------------------- /config/nvim/init.lua: -------------------------------------------------------------------------------- 1 | vim.defer_fn(function() 2 | pcall(require, "impatient") 3 | end, 0) 4 | 5 | require "core" 6 | require "core.options" 7 | 8 | -- setup packer + plugins 9 | local fn = vim.fn 10 | local install_path = fn.stdpath "data" .. "/site/pack/packer/opt/packer.nvim" 11 | 12 | if fn.empty(fn.glob(install_path)) > 0 then 13 | vim.api.nvim_set_hl(0, "NormalFloat", { bg = "#1e222a" }) 14 | print "Cloning packer .." 15 | fn.system { "git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path } 16 | 17 | -- install plugins + compile their configs 18 | vim.cmd "packadd packer.nvim" 19 | require "plugins" 20 | vim.cmd "PackerSync" 21 | 22 | -- install binaries from mason.nvim & tsparsers 23 | vim.api.nvim_create_autocmd("User", { 24 | pattern = "PackerComplete", 25 | callback = function() 26 | vim.cmd "bw | silent! MasonInstallAll" -- close packer window 27 | require("packer").loader "nvim-treesitter" 28 | end, 29 | }) 30 | end 31 | 32 | pcall(require, "custom") 33 | 34 | require("core.utils").load_mappings() 35 | -------------------------------------------------------------------------------- /config/nvim/lua/core/default_config.lua: -------------------------------------------------------------------------------- 1 | -- Chadrc overrides this file 2 | 3 | local M = {} 4 | 5 | M.options = { 6 | nvChad = { 7 | update_url = "https://github.com/NvChad/NvChad", 8 | update_branch = "main", 9 | }, 10 | } 11 | 12 | M.ui = { 13 | -- hl = highlights 14 | hl_add = {}, 15 | hl_override = {}, 16 | changed_themes = {}, 17 | theme_toggle = { "onedark", "one_light" }, 18 | theme = "onedark", -- default theme 19 | transparency = false, 20 | } 21 | 22 | M.plugins = {} 23 | 24 | -- check core.mappings for table structure 25 | M.mappings = require "core.mappings" 26 | 27 | return M 28 | -------------------------------------------------------------------------------- /config/nvim/lua/core/init.lua: -------------------------------------------------------------------------------- 1 | -- add binaries installed by mason.nvim to path 2 | local is_windows = vim.loop.os_uname().sysname == "Windows_NT" 3 | vim.env.PATH = vim.env.PATH .. (is_windows and ";" or ":") .. vim.fn.stdpath "data" .. "/mason/bin" 4 | 5 | -- commands 6 | vim.cmd "silent! command! NvChadUpdate lua require('nvchad').update_nvchad()" 7 | vim.cmd "silent! command! NvChadSnapshotCreate lua require('nvchad').snap_create()" 8 | vim.cmd "silent! command! NvChadSnapshotDelete lua require('nvchad').snap_delete()" 9 | vim.cmd "silent! command! NvChadSnapshotCheckout lua require('nvchad').snap_checkout()" 10 | 11 | -- autocmds 12 | local autocmd = vim.api.nvim_create_autocmd 13 | 14 | -- dont list quickfix buffers 15 | autocmd("FileType", { 16 | pattern = "qf", 17 | callback = function() 18 | vim.opt_local.buflisted = false 19 | end, 20 | }) 21 | 22 | -- wrap the PackerSync command to warn people before using it in NvChadSnapshots 23 | autocmd("VimEnter", { 24 | callback = function() 25 | vim.cmd "command! -nargs=* -complete=customlist,v:lua.require'packer'.plugin_complete PackerSync lua require('plugins') require('core.utils').packer_sync()" 26 | end, 27 | }) 28 | -------------------------------------------------------------------------------- /config/nvim/lua/core/lazy_load.lua: -------------------------------------------------------------------------------- 1 | local M = {} 2 | local autocmd = vim.api.nvim_create_autocmd 3 | 4 | -- require("packer").loader(tb.plugins) 5 | -- This must be used for plugins that need to be loaded just after a file 6 | -- ex : treesitter, lspconfig etc 7 | M.lazy_load = function(tb) 8 | autocmd(tb.events, { 9 | group = vim.api.nvim_create_augroup(tb.augroup_name, {}), 10 | callback = function() 11 | if tb.condition() then 12 | vim.api.nvim_del_augroup_by_name(tb.augroup_name) 13 | 14 | -- dont defer for treesitter as it will show slow highlighting 15 | -- This deferring only happens only when we do "nvim filename" 16 | if tb.plugin ~= "nvim-treesitter" then 17 | vim.defer_fn(function() 18 | require("packer").loader(tb.plugin) 19 | if tb.plugin == "nvim-lspconfig" then 20 | vim.cmd "silent! do FileType" 21 | end 22 | end, 0) 23 | else 24 | require("packer").loader(tb.plugin) 25 | end 26 | end 27 | end, 28 | }) 29 | end 30 | 31 | -- load certain plugins only when there's a file opened in the buffer 32 | -- if "nvim filename" is executed -> load the plugin after nvim gui loads 33 | -- This gives an instant preview of nvim with the file opened 34 | 35 | M.on_file_open = function(plugin_name) 36 | M.lazy_load { 37 | events = { "BufRead", "BufWinEnter", "BufNewFile" }, 38 | augroup_name = "BeLazyOnFileOpen" .. plugin_name, 39 | plugin = plugin_name, 40 | condition = function() 41 | local file = vim.fn.expand "%" 42 | return file ~= "NvimTree_1" and file ~= "[packer]" and file ~= "" 43 | end, 44 | } 45 | end 46 | 47 | M.packer_cmds = { 48 | "PackerSnapshot", 49 | "PackerSnapshotRollback", 50 | "PackerSnapshotDelete", 51 | "PackerInstall", 52 | "PackerUpdate", 53 | "PackerSync", 54 | "PackerClean", 55 | "PackerCompile", 56 | "PackerStatus", 57 | "PackerProfile", 58 | "PackerLoad", 59 | } 60 | 61 | M.treesitter_cmds = { 62 | "TSInstall", 63 | "TSBufEnable", 64 | "TSBufDisable", 65 | "TSEnable", 66 | "TSDisable", 67 | "TSModuleInfo", 68 | } 69 | 70 | M.mason_cmds = { 71 | "Mason", 72 | "MasonInstall", 73 | "MasonInstallAll", 74 | "MasonUninstall", 75 | "MasonUninstallAll", 76 | "MasonLog", 77 | } 78 | 79 | M.gitsigns = function() 80 | autocmd({ "BufRead" }, { 81 | group = vim.api.nvim_create_augroup("GitSignsLazyLoad", { clear = true }), 82 | callback = function() 83 | vim.fn.system("git rev-parse " .. vim.fn.expand "%:p:h") 84 | if vim.v.shell_error == 0 then 85 | vim.api.nvim_del_augroup_by_name "GitSignsLazyLoad" 86 | vim.schedule(function() 87 | require("packer").loader "gitsigns.nvim" 88 | end) 89 | end 90 | end, 91 | }) 92 | end 93 | 94 | return M 95 | -------------------------------------------------------------------------------- /config/nvim/lua/core/options.lua: -------------------------------------------------------------------------------- 1 | local opt = vim.opt 2 | local g = vim.g 3 | local config = require("core.utils").load_config() 4 | 5 | g.vim_version = vim.version().minor 6 | g.nvchad_theme = config.ui.theme 7 | g.toggle_theme_icon = "  " 8 | g.transparency = config.ui.transparency 9 | g.theme_switcher_loaded = false 10 | 11 | -- use filetype.lua instead of filetype.vim. it's enabled by default in neovim 0.8 (nightly) 12 | if g.vim_version < 8 then 13 | g.did_load_filetypes = 0 14 | g.do_filetype_lua = 1 15 | end 16 | 17 | opt.laststatus = 3 -- global statusline 18 | opt.showmode = false 19 | 20 | opt.title = true 21 | opt.clipboard = "unnamedplus" 22 | opt.cursorline = true 23 | 24 | -- Indenting 25 | opt.expandtab = true 26 | opt.shiftwidth = 2 27 | opt.smartindent = true 28 | opt.tabstop = 2 29 | opt.softtabstop = 2 30 | 31 | opt.fillchars = { eob = " " } 32 | opt.ignorecase = true 33 | opt.smartcase = true 34 | opt.mouse = "a" 35 | 36 | -- Numbers 37 | opt.number = true 38 | opt.numberwidth = 2 39 | opt.ruler = false 40 | 41 | -- disable nvim intro 42 | opt.shortmess:append "sI" 43 | 44 | opt.signcolumn = "yes" 45 | opt.splitbelow = true 46 | opt.splitright = true 47 | opt.termguicolors = true 48 | opt.timeoutlen = 400 49 | opt.undofile = true 50 | 51 | -- interval for writing swap file to disk, also used by gitsigns 52 | opt.updatetime = 250 53 | 54 | -- go to previous/next line with h,l,left arrow and right arrow 55 | -- when cursor reaches end/beginning of line 56 | opt.whichwrap:append "<>[]hl" 57 | 58 | g.mapleader = " " 59 | 60 | -- disable some builtin vim plugins 61 | local default_plugins = { 62 | "2html_plugin", 63 | "getscript", 64 | "getscriptPlugin", 65 | "gzip", 66 | "logipat", 67 | "netrw", 68 | "netrwPlugin", 69 | "netrwSettings", 70 | "netrwFileHandlers", 71 | "matchit", 72 | "tar", 73 | "tarPlugin", 74 | "rrhelper", 75 | "spellfile_plugin", 76 | "vimball", 77 | "vimballPlugin", 78 | "zip", 79 | "zipPlugin", 80 | "tutor", 81 | "rplugin", 82 | "syntax", 83 | "synmenu", 84 | "optwin", 85 | "compiler", 86 | "bugreport", 87 | "ftplugin", 88 | } 89 | 90 | for _, plugin in pairs(default_plugins) do 91 | g["loaded_" .. plugin] = 1 92 | end 93 | 94 | local default_providers = { 95 | "node", 96 | "perl", 97 | "python3", 98 | "ruby", 99 | } 100 | 101 | for _, provider in ipairs(default_providers) do 102 | vim.g["loaded_" .. provider .. "_provider"] = 0 103 | end 104 | -------------------------------------------------------------------------------- /config/nvim/lua/custom/chadrc.lua: -------------------------------------------------------------------------------- 1 | -- Just an example, supposed to be placed in /lua/custom/ 2 | 3 | local M = {} 4 | 5 | -- make sure you maintain the structure of `core/default_config.lua` here, 6 | -- example of changing theme: 7 | 8 | M.ui = { 9 | theme = "catppuccin", 10 | } 11 | 12 | return M 13 | -------------------------------------------------------------------------------- /config/nvim/lua/custom/init.lua: -------------------------------------------------------------------------------- 1 | -- example file i.e lua/custom/init.lua 2 | 3 | -- load your globals, autocmds here or anything .__. 4 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/alpha.lua: -------------------------------------------------------------------------------- 1 | local present, alpha = pcall(require, "alpha") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "alpha" 8 | 9 | local function button(sc, txt, keybind) 10 | local sc_ = sc:gsub("%s", ""):gsub("SPC", "") 11 | 12 | local opts = { 13 | position = "center", 14 | text = txt, 15 | shortcut = sc, 16 | cursor = 5, 17 | width = 36, 18 | align_shortcut = "right", 19 | hl = "AlphaButtons", 20 | } 21 | 22 | if keybind then 23 | opts.keymap = { "n", sc_, keybind, { noremap = true, silent = true } } 24 | end 25 | 26 | return { 27 | type = "button", 28 | val = txt, 29 | on_press = function() 30 | local key = vim.api.nvim_replace_termcodes(sc_, true, false, true) or "" 31 | vim.api.nvim_feedkeys(key, "normal", false) 32 | end, 33 | opts = opts, 34 | } 35 | end 36 | 37 | -- dynamic header padding 38 | local fn = vim.fn 39 | local marginTopPercent = 0.3 40 | local headerPadding = fn.max { 2, fn.floor(fn.winheight(0) * marginTopPercent) } 41 | 42 | local options = { 43 | 44 | header = { 45 | type = "text", 46 | val = { 47 | " ⣴⣶⣤⡤⠦⣤⣀⣤⠆ ⣈⣭⣿⣶⣿⣦⣼⣆ ", 48 | " ⠉⠻⢿⣿⠿⣿⣿⣶⣦⠤⠄⡠⢾⣿⣿⡿⠋⠉⠉⠻⣿⣿⡛⣦ ", 49 | " ⠈⢿⣿⣟⠦ ⣾⣿⣿⣷ ⠻⠿⢿⣿⣧⣄ ", 50 | " ⣸⣿⣿⢧ ⢻⠻⣿⣿⣷⣄⣀⠄⠢⣀⡀⠈⠙⠿⠄ ", 51 | " ⢠⣿⣿⣿⠈ ⣻⣿⣿⣿⣿⣿⣿⣿⣛⣳⣤⣀⣀ ", 52 | " ⢠⣧⣶⣥⡤⢄ ⣸⣿⣿⠘ ⢀⣴⣿⣿⡿⠛⣿⣿⣧⠈⢿⠿⠟⠛⠻⠿⠄ ", 53 | " ⣰⣿⣿⠛⠻⣿⣿⡦⢹⣿⣷ ⢊⣿⣿⡏ ⢸⣿⣿⡇ ⢀⣠⣄⣾⠄ ", 54 | " ⣠⣿⠿⠛ ⢀⣿⣿⣷⠘⢿⣿⣦⡀ ⢸⢿⣿⣿⣄ ⣸⣿⣿⡇⣪⣿⡿⠿⣿⣷⡄ ", 55 | " ⠙⠃ ⣼⣿⡟ ⠈⠻⣿⣿⣦⣌⡇⠻⣿⣿⣷⣿⣿⣿ ⣿⣿⡇ ⠛⠻⢷⣄ ", 56 | " ⢻⣿⣿⣄ ⠈⠻⣿⣿⣿⣷⣿⣿⣿⣿⣿⡟ ⠫⢿⣿⡆ ", 57 | " ⠻⣿⣿⣿⣿⣶⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⡟⢀⣀⣤⣾⡿⠃ ", 58 | }, 59 | opts = { 60 | position = "center", 61 | hl = "AlphaHeader", 62 | }, 63 | }, 64 | 65 | buttons = { 66 | type = "group", 67 | val = { 68 | button("SPC f f", " Find File ", ":Telescope find_files"), 69 | button("SPC f o", " Recent File ", ":Telescope oldfiles"), 70 | button("SPC f w", " Find Word ", ":Telescope live_grep"), 71 | button("SPC b m", " Bookmarks ", ":Telescope marks"), 72 | button("SPC t h", " Themes ", ":Telescope themes"), 73 | button("SPC e s", " Settings", ":e $MYVIMRC | :cd %:p:h "), 74 | }, 75 | opts = { 76 | spacing = 1, 77 | }, 78 | }, 79 | 80 | headerPaddingTop = { type = "padding", val = headerPadding }, 81 | headerPaddingBottom = { type = "padding", val = 2 }, 82 | } 83 | 84 | options = require("core.utils").load_override(options, "goolord/alpha-nvim") 85 | 86 | alpha.setup { 87 | layout = { 88 | options.headerPaddingTop, 89 | options.header, 90 | options.headerPaddingBottom, 91 | options.buttons, 92 | }, 93 | opts = {}, 94 | } 95 | 96 | -- Disable statusline in dashboard 97 | vim.api.nvim_create_autocmd("FileType", { 98 | pattern = "alpha", 99 | callback = function() 100 | -- store current statusline value and use that 101 | local old_laststatus = vim.opt.laststatus 102 | vim.api.nvim_create_autocmd("BufUnload", { 103 | buffer = 0, 104 | callback = function() 105 | vim.opt.laststatus = old_laststatus 106 | end, 107 | }) 108 | vim.opt.laststatus = 0 109 | end, 110 | }) 111 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/cmp.lua: -------------------------------------------------------------------------------- 1 | local present, cmp = pcall(require, "cmp") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "cmp" 8 | 9 | vim.opt.completeopt = "menuone,noselect" 10 | 11 | local function border(hl_name) 12 | return { 13 | { "╭", hl_name }, 14 | { "─", hl_name }, 15 | { "╮", hl_name }, 16 | { "│", hl_name }, 17 | { "╯", hl_name }, 18 | { "─", hl_name }, 19 | { "╰", hl_name }, 20 | { "│", hl_name }, 21 | } 22 | end 23 | 24 | local cmp_window = require "cmp.utils.window" 25 | 26 | cmp_window.info_ = cmp_window.info 27 | cmp_window.info = function(self) 28 | local info = self:info_() 29 | info.scrollable = false 30 | return info 31 | end 32 | 33 | local options = { 34 | window = { 35 | completion = { 36 | border = border "CmpBorder", 37 | winhighlight = "Normal:CmpPmenu,CursorLine:PmenuSel,Search:None", 38 | }, 39 | documentation = { 40 | border = border "CmpDocBorder", 41 | }, 42 | }, 43 | snippet = { 44 | expand = function(args) 45 | require("luasnip").lsp_expand(args.body) 46 | end, 47 | }, 48 | formatting = { 49 | format = function(_, vim_item) 50 | local icons = require("nvchad_ui.icons").lspkind 51 | vim_item.kind = string.format("%s %s", icons[vim_item.kind], vim_item.kind) 52 | return vim_item 53 | end, 54 | }, 55 | mapping = { 56 | [""] = cmp.mapping.select_prev_item(), 57 | [""] = cmp.mapping.select_next_item(), 58 | [""] = cmp.mapping.scroll_docs(-4), 59 | [""] = cmp.mapping.scroll_docs(4), 60 | [""] = cmp.mapping.complete(), 61 | [""] = cmp.mapping.close(), 62 | [""] = cmp.mapping.confirm { 63 | behavior = cmp.ConfirmBehavior.Replace, 64 | select = false, 65 | }, 66 | [""] = cmp.mapping(function(fallback) 67 | if cmp.visible() then 68 | cmp.select_next_item() 69 | elseif require("luasnip").expand_or_jumpable() then 70 | vim.fn.feedkeys(vim.api.nvim_replace_termcodes("luasnip-expand-or-jump", true, true, true), "") 71 | else 72 | fallback() 73 | end 74 | end, { 75 | "i", 76 | "s", 77 | }), 78 | [""] = cmp.mapping(function(fallback) 79 | if cmp.visible() then 80 | cmp.select_prev_item() 81 | elseif require("luasnip").jumpable(-1) then 82 | vim.fn.feedkeys(vim.api.nvim_replace_termcodes("luasnip-jump-prev", true, true, true), "") 83 | else 84 | fallback() 85 | end 86 | end, { 87 | "i", 88 | "s", 89 | }), 90 | }, 91 | sources = { 92 | { name = "luasnip" }, 93 | { name = "nvim_lsp" }, 94 | { name = "buffer" }, 95 | { name = "nvim_lua" }, 96 | { name = "path" }, 97 | }, 98 | } 99 | 100 | -- check for any override 101 | options = require("core.utils").load_override(options, "hrsh7th/nvim-cmp") 102 | 103 | cmp.setup(options) 104 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/lspconfig.lua: -------------------------------------------------------------------------------- 1 | local present, lspconfig = pcall(require, "lspconfig") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "lsp" 8 | require "nvchad_ui.lsp" 9 | 10 | local M = {} 11 | local utils = require "core.utils" 12 | 13 | -- export on_attach & capabilities for custom lspconfigs 14 | 15 | M.on_attach = function(client, bufnr) 16 | if vim.g.vim_version > 7 then 17 | -- nightly 18 | client.server_capabilities.documentFormattingProvider = false 19 | client.server_capabilities.documentRangeFormattingProvider = false 20 | else 21 | -- stable 22 | client.resolved_capabilities.document_formatting = false 23 | client.resolved_capabilities.document_range_formatting = false 24 | end 25 | 26 | utils.load_mappings("lspconfig", { buffer = bufnr }) 27 | 28 | if client.server_capabilities.signatureHelpProvider then 29 | require("nvchad_ui.signature").setup(client) 30 | end 31 | end 32 | 33 | M.capabilities = vim.lsp.protocol.make_client_capabilities() 34 | 35 | M.capabilities.textDocument.completion.completionItem = { 36 | documentationFormat = { "markdown", "plaintext" }, 37 | snippetSupport = true, 38 | preselectSupport = true, 39 | insertReplaceSupport = true, 40 | labelDetailsSupport = true, 41 | deprecatedSupport = true, 42 | commitCharactersSupport = true, 43 | tagSupport = { valueSet = { 1 } }, 44 | resolveSupport = { 45 | properties = { 46 | "documentation", 47 | "detail", 48 | "additionalTextEdits", 49 | }, 50 | }, 51 | } 52 | 53 | lspconfig.sumneko_lua.setup { 54 | on_attach = M.on_attach, 55 | capabilities = M.capabilities, 56 | 57 | settings = { 58 | Lua = { 59 | diagnostics = { 60 | globals = { "vim" }, 61 | }, 62 | workspace = { 63 | library = { 64 | [vim.fn.expand "$VIMRUNTIME/lua"] = true, 65 | [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, 66 | }, 67 | maxPreload = 100000, 68 | preloadFileSize = 10000, 69 | }, 70 | }, 71 | }, 72 | } 73 | 74 | return M 75 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/mason.lua: -------------------------------------------------------------------------------- 1 | local present, mason = pcall(require, "mason") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | vim.api.nvim_create_augroup("_mason", { clear = true }) 8 | vim.api.nvim_create_autocmd("Filetype", { 9 | pattern = "mason", 10 | callback = function() 11 | require("base46").load_highlight "mason" 12 | end, 13 | group = "_mason", 14 | }) 15 | 16 | local options = { 17 | ensure_installed = { "lua-language-server" }, -- not an option from mason.nvim 18 | 19 | ui = { 20 | icons = { 21 | package_pending = " ", 22 | package_installed = " ", 23 | package_uninstalled = " ﮊ", 24 | }, 25 | 26 | keymaps = { 27 | toggle_server_expand = "", 28 | install_server = "i", 29 | update_server = "u", 30 | check_server_version = "c", 31 | update_all_servers = "U", 32 | check_outdated_servers = "C", 33 | uninstall_server = "X", 34 | cancel_installation = "", 35 | }, 36 | }, 37 | 38 | max_concurrent_installers = 10, 39 | } 40 | 41 | options = require("core.utils").load_override(options, "williamboman/mason.nvim") 42 | 43 | vim.api.nvim_create_user_command("MasonInstallAll", function() 44 | vim.cmd("MasonInstall " .. table.concat(options.ensure_installed, " ")) 45 | end, {}) 46 | 47 | mason.setup(options) 48 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/nvimtree.lua: -------------------------------------------------------------------------------- 1 | local present, nvimtree = pcall(require, "nvim-tree") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "nvimtree" 8 | 9 | local options = { 10 | filters = { 11 | dotfiles = false, 12 | exclude = { vim.fn.stdpath "config" .. "/lua/custom" }, 13 | }, 14 | disable_netrw = true, 15 | hijack_netrw = true, 16 | open_on_setup = false, 17 | ignore_ft_on_setup = { "alpha" }, 18 | hijack_cursor = true, 19 | hijack_unnamed_buffer_when_opening = false, 20 | update_cwd = true, 21 | update_focused_file = { 22 | enable = true, 23 | update_cwd = false, 24 | }, 25 | view = { 26 | adaptive_size = true, 27 | side = "left", 28 | width = 25, 29 | hide_root_folder = true, 30 | }, 31 | git = { 32 | enable = false, 33 | ignore = true, 34 | }, 35 | filesystem_watchers = { 36 | enable = true, 37 | }, 38 | actions = { 39 | open_file = { 40 | resize_window = true, 41 | }, 42 | }, 43 | renderer = { 44 | highlight_git = false, 45 | highlight_opened_files = "none", 46 | 47 | indent_markers = { 48 | enable = false, 49 | }, 50 | 51 | icons = { 52 | show = { 53 | file = true, 54 | folder = true, 55 | folder_arrow = true, 56 | git = false, 57 | }, 58 | 59 | glyphs = { 60 | default = "", 61 | symlink = "", 62 | folder = { 63 | default = "", 64 | empty = "", 65 | empty_open = "", 66 | open = "", 67 | symlink = "", 68 | symlink_open = "", 69 | arrow_open = "", 70 | arrow_closed = "", 71 | }, 72 | git = { 73 | unstaged = "✗", 74 | staged = "✓", 75 | unmerged = "", 76 | renamed = "➜", 77 | untracked = "★", 78 | deleted = "", 79 | ignored = "◌", 80 | }, 81 | }, 82 | }, 83 | }, 84 | } 85 | 86 | -- check for any override 87 | options = require("core.utils").load_override(options, "kyazdani42/nvim-tree.lua") 88 | vim.g.nvimtree_side = options.view.side 89 | 90 | nvimtree.setup(options) 91 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/nvterm.lua: -------------------------------------------------------------------------------- 1 | local present, nvterm = pcall(require, "nvterm") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require "base46.term" 8 | 9 | local options = { 10 | terminals = { 11 | list = {}, 12 | type_opts = { 13 | float = { 14 | relative = "editor", 15 | row = 0.3, 16 | col = 0.25, 17 | width = 0.5, 18 | height = 0.4, 19 | border = "single", 20 | }, 21 | horizontal = { location = "rightbelow", split_ratio = 0.3 }, 22 | vertical = { location = "rightbelow", split_ratio = 0.5 }, 23 | }, 24 | }, 25 | behavior = { 26 | close_on_exit = true, 27 | auto_insert = true, 28 | }, 29 | enable_new_mappings = true, 30 | } 31 | 32 | options = require("core.utils").load_override(options, "NvChad/nvterm") 33 | 34 | nvterm.setup(options) 35 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/others.lua: -------------------------------------------------------------------------------- 1 | local M = {} 2 | 3 | local load_override = require("core.utils").load_override 4 | 5 | M.autopairs = function() 6 | local present1, autopairs = pcall(require, "nvim-autopairs") 7 | local present2, cmp = pcall(require, "cmp") 8 | 9 | if not (present1 and present2) then 10 | return 11 | end 12 | 13 | local options = { 14 | fast_wrap = {}, 15 | disable_filetype = { "TelescopePrompt", "vim" }, 16 | } 17 | 18 | options = load_override(options, "windwp/nvim-autopairs") 19 | autopairs.setup(options) 20 | 21 | local cmp_autopairs = require "nvim-autopairs.completion.cmp" 22 | cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done()) 23 | end 24 | 25 | M.blankline = function() 26 | local present, blankline = pcall(require, "indent_blankline") 27 | 28 | if not present then 29 | return 30 | end 31 | 32 | require("base46").load_highlight "blankline" 33 | 34 | local options = { 35 | indentLine_enabled = 1, 36 | filetype_exclude = { 37 | "help", 38 | "terminal", 39 | "alpha", 40 | "packer", 41 | "lspinfo", 42 | "TelescopePrompt", 43 | "TelescopeResults", 44 | "mason", 45 | "", 46 | }, 47 | buftype_exclude = { "terminal" }, 48 | show_trailing_blankline_indent = false, 49 | show_first_indent_level = false, 50 | show_current_context = true, 51 | show_current_context_start = true, 52 | } 53 | 54 | options = load_override(options, "lukas-reineke/indent-blankline.nvim") 55 | blankline.setup(options) 56 | end 57 | 58 | M.colorizer = function() 59 | local present, colorizer = pcall(require, "colorizer") 60 | 61 | if not present then 62 | return 63 | end 64 | 65 | local options = { 66 | filetypes = { 67 | "*", 68 | }, 69 | user_default_options = { 70 | RGB = true, -- #RGB hex codes 71 | RRGGBB = true, -- #RRGGBB hex codes 72 | names = false, -- "Name" codes like Blue 73 | RRGGBBAA = false, -- #RRGGBBAA hex codes 74 | rgb_fn = false, -- CSS rgb() and rgba() functions 75 | hsl_fn = false, -- CSS hsl() and hsla() functions 76 | css = false, -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB 77 | css_fn = false, -- Enable all CSS *functions*: rgb_fn, hsl_fn 78 | mode = "background", -- Set the display mode. 79 | }, 80 | } 81 | 82 | options = load_override(options, "NvChad/nvim-colorizer.lua") 83 | colorizer.setup(options) 84 | -- execute colorizer as soon as possible 85 | vim.defer_fn(function() 86 | require("colorizer").attach_to_buffer(0) 87 | end, 0) 88 | end 89 | 90 | M.comment = function() 91 | local present, nvim_comment = pcall(require, "Comment") 92 | 93 | if not present then 94 | return 95 | end 96 | 97 | local options = {} 98 | options = load_override(options, "numToStr/Comment.nvim") 99 | nvim_comment.setup(options) 100 | end 101 | 102 | M.luasnip = function() 103 | local present, luasnip = pcall(require, "luasnip") 104 | 105 | if not present then 106 | return 107 | end 108 | 109 | local options = { 110 | history = true, 111 | updateevents = "TextChanged,TextChangedI", 112 | } 113 | 114 | options = load_override(options, "L3MON4D3/LuaSnip") 115 | luasnip.config.set_config(options) 116 | require("luasnip.loaders.from_vscode").lazy_load { paths = vim.g.luasnippets_path or "" } 117 | require("luasnip.loaders.from_vscode").lazy_load() 118 | 119 | vim.api.nvim_create_autocmd("InsertLeave", { 120 | callback = function() 121 | if 122 | require("luasnip").session.current_nodes[vim.api.nvim_get_current_buf()] 123 | and not require("luasnip").session.jump_active 124 | then 125 | require("luasnip").unlink_current() 126 | end 127 | end, 128 | }) 129 | end 130 | 131 | M.gitsigns = function() 132 | local present, gitsigns = pcall(require, "gitsigns") 133 | 134 | if not present then 135 | return 136 | end 137 | 138 | require("base46").load_highlight "git" 139 | 140 | local options = { 141 | signs = { 142 | add = { hl = "DiffAdd", text = "│", numhl = "GitSignsAddNr" }, 143 | change = { hl = "DiffChange", text = "│", numhl = "GitSignsChangeNr" }, 144 | delete = { hl = "DiffDelete", text = "", numhl = "GitSignsDeleteNr" }, 145 | topdelete = { hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr" }, 146 | changedelete = { hl = "DiffChangeDelete", text = "~", numhl = "GitSignsChangeNr" }, 147 | }, 148 | } 149 | 150 | options = load_override(options, "lewis6991/gitsigns.nvim") 151 | gitsigns.setup(options) 152 | end 153 | 154 | M.devicons = function() 155 | local present, devicons = pcall(require, "nvim-web-devicons") 156 | 157 | if present then 158 | require("base46").load_highlight "devicons" 159 | 160 | local options = { override = require("nvchad_ui.icons").devicons } 161 | options = require("core.utils").load_override(options, "kyazdani42/nvim-web-devicons") 162 | 163 | devicons.setup(options) 164 | end 165 | end 166 | 167 | M.packer_init = function() 168 | return { 169 | auto_clean = true, 170 | compile_on_sync = true, 171 | git = { clone_timeout = 6000 }, 172 | display = { 173 | working_sym = "ﲊ", 174 | error_sym = "✗ ", 175 | done_sym = " ", 176 | removed_sym = " ", 177 | moved_sym = "", 178 | open_fn = function() 179 | return require("packer.util").float { border = "single" } 180 | end, 181 | }, 182 | } 183 | end 184 | 185 | return M 186 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/telescope.lua: -------------------------------------------------------------------------------- 1 | local present, telescope = pcall(require, "telescope") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | vim.g.theme_switcher_loaded = true 8 | 9 | require("base46").load_highlight "telescope" 10 | 11 | local options = { 12 | defaults = { 13 | vimgrep_arguments = { 14 | "rg", 15 | "--color=never", 16 | "--no-heading", 17 | "--with-filename", 18 | "--line-number", 19 | "--column", 20 | "--smart-case", 21 | }, 22 | prompt_prefix = "  ", 23 | selection_caret = " ", 24 | entry_prefix = " ", 25 | initial_mode = "insert", 26 | selection_strategy = "reset", 27 | sorting_strategy = "ascending", 28 | layout_strategy = "horizontal", 29 | layout_config = { 30 | horizontal = { 31 | prompt_position = "top", 32 | preview_width = 0.55, 33 | results_width = 0.8, 34 | }, 35 | vertical = { 36 | mirror = false, 37 | }, 38 | width = 0.87, 39 | height = 0.80, 40 | preview_cutoff = 120, 41 | }, 42 | file_sorter = require("telescope.sorters").get_fuzzy_file, 43 | file_ignore_patterns = { "node_modules" }, 44 | generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, 45 | path_display = { "truncate" }, 46 | winblend = 0, 47 | border = {}, 48 | borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, 49 | color_devicons = true, 50 | set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil, 51 | file_previewer = require("telescope.previewers").vim_buffer_cat.new, 52 | grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new, 53 | qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new, 54 | -- Developer configurations: Not meant for general override 55 | buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker, 56 | mappings = { 57 | n = { ["q"] = require("telescope.actions").close }, 58 | }, 59 | }, 60 | 61 | extensions_list = { "themes", "terms" }, 62 | } 63 | 64 | -- check for any override 65 | options = require("core.utils").load_override(options, "nvim-telescope/telescope.nvim") 66 | telescope.setup(options) 67 | 68 | -- load extensions 69 | pcall(function() 70 | for _, ext in ipairs(options.extensions_list) do 71 | telescope.load_extension(ext) 72 | end 73 | end) 74 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/treesitter.lua: -------------------------------------------------------------------------------- 1 | local present, treesitter = pcall(require, "nvim-treesitter.configs") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "treesitter" 8 | 9 | local options = { 10 | ensure_installed = { 11 | "lua", 12 | }, 13 | 14 | highlight = { 15 | enable = true, 16 | use_languagetree = true, 17 | }, 18 | 19 | indent = { 20 | enable = true, 21 | }, 22 | } 23 | 24 | -- check for any override 25 | options = require("core.utils").load_override(options, "nvim-treesitter/nvim-treesitter") 26 | 27 | treesitter.setup(options) 28 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/configs/whichkey.lua: -------------------------------------------------------------------------------- 1 | local present, wk = pcall(require, "which-key") 2 | 3 | if not present then 4 | return 5 | end 6 | 7 | require("base46").load_highlight "whichkey" 8 | 9 | local options = { 10 | 11 | icons = { 12 | breadcrumb = "»", -- symbol used in the command line area that shows your active key combo 13 | separator = "  ", -- symbol used between a key and it's label 14 | group = "+", -- symbol prepended to a group 15 | }, 16 | 17 | popup_mappings = { 18 | scroll_down = "", -- binding to scroll down inside the popup 19 | scroll_up = "", -- binding to scroll up inside the popup 20 | }, 21 | 22 | window = { 23 | border = "none", -- none/single/double/shadow 24 | }, 25 | 26 | layout = { 27 | spacing = 6, -- spacing between columns 28 | }, 29 | 30 | hidden = { "", "", "", "", "call", "lua", "^:", "^ " }, 31 | 32 | triggers_blacklist = { 33 | -- list of mode / prefixes that should never be hooked by WhichKey 34 | i = { "j", "k" }, 35 | v = { "j", "k" }, 36 | }, 37 | } 38 | 39 | options = require("core.utils").load_override(options, "folke/which-key.nvim") 40 | 41 | wk.setup(options) 42 | -------------------------------------------------------------------------------- /config/nvim/lua/plugins/init.lua: -------------------------------------------------------------------------------- 1 | local plugins = { 2 | 3 | ["nvim-lua/plenary.nvim"] = { module = "plenary" }, 4 | 5 | ["lewis6991/impatient.nvim"] = {}, 6 | 7 | ["wbthomason/packer.nvim"] = { 8 | cmd = require("core.lazy_load").packer_cmds, 9 | config = function() 10 | require "plugins" 11 | end, 12 | }, 13 | 14 | ["NvChad/extensions"] = { module = { "telescope", "nvchad" } }, 15 | 16 | ["NvChad/base46"] = { 17 | config = function() 18 | local ok, base46 = pcall(require, "base46") 19 | 20 | if ok then 21 | base46.load_theme() 22 | end 23 | end, 24 | }, 25 | 26 | ["NvChad/ui"] = { 27 | after = "base46", 28 | config = function() 29 | local present, nvchad_ui = pcall(require, "nvchad_ui") 30 | 31 | if present then 32 | nvchad_ui.setup() 33 | end 34 | end, 35 | }, 36 | 37 | ["NvChad/nvterm"] = { 38 | module = "nvterm", 39 | config = function() 40 | require "plugins.configs.nvterm" 41 | end, 42 | setup = function() 43 | require("core.utils").load_mappings "nvterm" 44 | end, 45 | }, 46 | 47 | ["kyazdani42/nvim-web-devicons"] = { 48 | after = "ui", 49 | module = "nvim-web-devicons", 50 | config = function() 51 | require("plugins.configs.others").devicons() 52 | end, 53 | }, 54 | 55 | ["lukas-reineke/indent-blankline.nvim"] = { 56 | opt = true, 57 | setup = function() 58 | require("core.lazy_load").on_file_open "indent-blankline.nvim" 59 | require("core.utils").load_mappings "blankline" 60 | end, 61 | config = function() 62 | require("plugins.configs.others").blankline() 63 | end, 64 | }, 65 | 66 | ["NvChad/nvim-colorizer.lua"] = { 67 | opt = true, 68 | setup = function() 69 | require("core.lazy_load").on_file_open "nvim-colorizer.lua" 70 | end, 71 | config = function() 72 | require("plugins.configs.others").colorizer() 73 | end, 74 | }, 75 | 76 | ["nvim-treesitter/nvim-treesitter"] = { 77 | module = "nvim-treesitter", 78 | setup = function() 79 | require("core.lazy_load").on_file_open "nvim-treesitter" 80 | end, 81 | cmd = require("core.lazy_load").treesitter_cmds, 82 | run = ":TSUpdate", 83 | config = function() 84 | require "plugins.configs.treesitter" 85 | end, 86 | }, 87 | 88 | -- git stuff 89 | ["lewis6991/gitsigns.nvim"] = { 90 | ft = "gitcommit", 91 | setup = function() 92 | require("core.lazy_load").gitsigns() 93 | end, 94 | config = function() 95 | require("plugins.configs.others").gitsigns() 96 | end, 97 | }, 98 | 99 | -- lsp stuff 100 | ["williamboman/mason.nvim"] = { 101 | cmd = require("core.lazy_load").mason_cmds, 102 | config = function() 103 | require "plugins.configs.mason" 104 | end, 105 | }, 106 | 107 | ["neovim/nvim-lspconfig"] = { 108 | opt = true, 109 | setup = function() 110 | require("core.lazy_load").on_file_open "nvim-lspconfig" 111 | end, 112 | config = function() 113 | require "plugins.configs.lspconfig" 114 | end, 115 | }, 116 | 117 | -- load luasnips + cmp related in insert mode only 118 | 119 | ["rafamadriz/friendly-snippets"] = { 120 | module = { "cmp", "cmp_nvim_lsp" }, 121 | event = "InsertEnter", 122 | }, 123 | 124 | ["hrsh7th/nvim-cmp"] = { 125 | after = "friendly-snippets", 126 | config = function() 127 | require "plugins.configs.cmp" 128 | end, 129 | }, 130 | 131 | ["L3MON4D3/LuaSnip"] = { 132 | wants = "friendly-snippets", 133 | after = "nvim-cmp", 134 | config = function() 135 | require("plugins.configs.others").luasnip() 136 | end, 137 | }, 138 | 139 | ["saadparwaiz1/cmp_luasnip"] = { after = "LuaSnip" }, 140 | ["hrsh7th/cmp-nvim-lua"] = { after = "cmp_luasnip" }, 141 | ["hrsh7th/cmp-nvim-lsp"] = { after = "cmp-nvim-lua" }, 142 | ["hrsh7th/cmp-buffer"] = { after = "cmp-nvim-lsp" }, 143 | ["hrsh7th/cmp-path"] = { after = "cmp-buffer" }, 144 | 145 | -- misc plugins 146 | ["windwp/nvim-autopairs"] = { 147 | after = "nvim-cmp", 148 | config = function() 149 | require("plugins.configs.others").autopairs() 150 | end, 151 | }, 152 | 153 | ["goolord/alpha-nvim"] = { 154 | after = "base46", 155 | disable = true, 156 | config = function() 157 | require "plugins.configs.alpha" 158 | end, 159 | }, 160 | 161 | ["numToStr/Comment.nvim"] = { 162 | module = "Comment", 163 | keys = { "gc", "gb" }, 164 | config = function() 165 | require("plugins.configs.others").comment() 166 | end, 167 | setup = function() 168 | require("core.utils").load_mappings "comment" 169 | end, 170 | }, 171 | 172 | -- file managing , picker etc 173 | ["kyazdani42/nvim-tree.lua"] = { 174 | ft = "alpha", 175 | cmd = { "NvimTreeToggle", "NvimTreeFocus" }, 176 | config = function() 177 | require "plugins.configs.nvimtree" 178 | end, 179 | setup = function() 180 | require("core.utils").load_mappings "nvimtree" 181 | end, 182 | }, 183 | 184 | ["nvim-telescope/telescope.nvim"] = { 185 | cmd = "Telescope", 186 | config = function() 187 | require "plugins.configs.telescope" 188 | end, 189 | setup = function() 190 | require("core.utils").load_mappings "telescope" 191 | end, 192 | }, 193 | 194 | -- Only load whichkey after all the gui 195 | ["folke/which-key.nvim"] = { 196 | disable = true, 197 | module = "which-key", 198 | keys = { "", '"', "'", "`" }, 199 | config = function() 200 | require "plugins.configs.whichkey" 201 | end, 202 | setup = function() 203 | require("core.utils").load_mappings "whichkey" 204 | end, 205 | }, 206 | } 207 | 208 | -- Load all plugins 209 | local present, packer = pcall(require, "packer") 210 | 211 | if present then 212 | vim.cmd "packadd packer.nvim" 213 | 214 | -- Override with default plugins with user ones 215 | plugins = require("core.utils").merge_plugins(plugins) 216 | 217 | -- load packer init options 218 | local init_options = require("plugins.configs.others").packer_init() 219 | init_options = require("core.utils").load_override(init_options, "wbthomason/packer.nvim") 220 | packer.init(init_options) 221 | 222 | for _, v in pairs(plugins) do 223 | packer.use(v) 224 | end 225 | end 226 | -------------------------------------------------------------------------------- /config/nvim/plugin/packer_compiled.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/nvim/plugin/packer_compiled.lua -------------------------------------------------------------------------------- /config/picom/picom.conf: -------------------------------------------------------------------------------- 1 | # {{{ General 2 | daemon = true; 3 | # glx, xrender, xr_glx_hybrid 4 | backend = "glx"; 5 | vsync = true; 6 | detect-rounded-corners = true; 7 | detect-transient = true 8 | detect-client-leader = false 9 | use-damage = true; 10 | log-level = "info"; 11 | # Additionally use X Sync fence to sync clients' draw calls. Needed on nvidia-drivers with GLX backend for some users 12 | # xrender-sync-fence = true; 13 | # }}} 14 | 15 | # {{{ animation 16 | # turn on animation 17 | animations: true; 18 | # tension, default: 200.0 19 | animation-stiffness = 110 20 | # default: 1.0 21 | animation-window-mass = 0.5 22 | # friction, default 25.0 23 | animation-dampening = 20 24 | # Whether to clamp animations 25 | animation-clamping = true 26 | # fly-in, zoom, slide-down, slide-up, slide-left, slide-right 27 | animation-for-open-window = "zoom"; 28 | # The time between steps in animation, in milliseconds. (> 0, defaults to 10). 29 | animation-delta = 10 30 | # when minimize window, fly-in, zoom, slide-down, slide-up, slide-left, slide-right, slide-in, slide-out 31 | animation-for-unmap-window = "slide-left"; 32 | # drop-down, pop-up window... 33 | animation-for-transient-window = "slide-down"; 34 | # }}} 35 | 36 | # {{{ shadow 37 | shadow = false; 38 | # detect-rounded-corners = true; 39 | shadow-radius = 10; 40 | shadow-opacity = 0.75; 41 | shadow-offset-x = -20; 42 | shadow-offset-y = -20; 43 | shadow-exclude = [ 44 | #"name = 'Notification'", 45 | #"_GTK_FRAME_EXTENTS@:c" 46 | # "class_i ?= 'riotclientservices.exe'", 47 | # "class_g ?= 'slop'", 48 | # "class_g ?= 'Polybar'", 49 | # "class_g ?= 'Visualizer'", 50 | # "class_g ?= 'i3-frame'", 51 | # "_NET_WM_WINDOW_TYPE@:a *= 'SPLASH'", 52 | # "window_type = 'dropdown_menu'", 53 | # "window_type = 'menu'", 54 | # "window_type = 'popup_menu'", 55 | # "window_type = 'utility'", 56 | "name = 'Notification'", 57 | "class_g = 'Conky'", 58 | "class_g ?= 'Notify-osd'", 59 | "class_g = 'Cairo-clock'", 60 | "_GTK_FRAME_EXTENTS@:c", 61 | "class_g ?= 'firefox' && argb" 62 | ]; 63 | # }}} 64 | 65 | 66 | # {{{ opacity 67 | frame-opacity = 1 68 | detect-client-opacity = false; 69 | active-opacity = 1; 70 | inactive-opacity = 1 71 | inactive-opacity-override = true; 72 | 73 | mark-wmwin-focused = true; 74 | mark-ovredir-focused = true; 75 | 76 | popup_menu = { opacity = 1; } 77 | dropdown_menu = { opacity = 1; } 78 | 79 | focus-exclude = [ 80 | #"class_g = 'Bar'", # lemonbar 81 | ]; 82 | opacity-rule = [ 83 | #"100:window_type = 'normal'", 84 | "100:class_g = 'firefox'", 85 | "100:class_g = 'discord'", 86 | "100:class_g = 'mpv'", 87 | "100:class_g = 'Gimp'", 88 | "100:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FULLSCREEN'", 89 | "100:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_FULLSCREEN'", 90 | "100:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_FULLSCREEN'", 91 | "100:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_FULLSCREEN'", 92 | "100:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_FULLSCREEN'" 93 | ]; 94 | # }}} 95 | 96 | # {{{ fading 97 | fading = true; 98 | # fade-in-step = 0.03; 99 | # fade-out-step = 0.03; 100 | fade-in-step = 0.01; 101 | fade-out-step = 0.01; 102 | no-fading-openclose = true; 103 | # no-fading-destroyed-argb = false; 104 | fade-delta = 1; 105 | fade-exclude = [ 106 | # "class_g = 'slop'", 107 | # "class_g ?= 'firefox'", 108 | # "window_type = 'dropdown_menu'", 109 | # "window_type = 'popup_menu'" 110 | ] 111 | # }}} 112 | 113 | # {{{ corner 114 | corner-radius = 15; 115 | detect-rounded-corners = true; 116 | rounded-corners-exclude = [ 117 | "window_type = 'desktop'", 118 | ]; 119 | # }}} 120 | 121 | transition-length = 300 122 | transition-pow-x = 0.1 123 | transition-pow-y = 0.1 124 | transition-pow-w = 0.1 125 | transition-pow-h = 0.1 126 | size-transition = true 127 | 128 | 129 | # {{{ blur 130 | blur: { 131 | method = "kawase"; 132 | strength = 5; 133 | background = false; 134 | background-frame = false; 135 | background-fixed = false; 136 | kern = "3x3box"; 137 | } 138 | 139 | # Exclude conditions for background blur. 140 | blur-background-exclude = [ 141 | # "window_type = 'dock'", 142 | #"window_type = 'desktop'", 143 | "_GTK_FRAME_EXTENTS@:c" 144 | ]; 145 | # }}} 146 | 147 | # unknown, desktop, dock, toolbar, menu, utility, splash, dialog, normal, dropdown_menu, popup_menu, tooltip, notification, combo, dnd 148 | wintypes: 149 | { 150 | normal = { fade = true; shadow = false; opacity = 1; } 151 | tooltip = { fade = false; shadow = false; opacity = .95; focus = true; full-shadow = true; }; 152 | dock = { shadow = false; fade = false; opacity = .95; } 153 | dnd = { shadow = false; fade = false; opacity = .95; } 154 | popup_menu = { opacity = 1; } 155 | dropdown_menu = { opacity = 1; } 156 | }; 157 | 158 | -------------------------------------------------------------------------------- /config/polybar/weather.py: -------------------------------------------------------------------------------- 1 | import json 2 | import requests 3 | 4 | def wc_extract(wc): 5 | wc = str(wc) 6 | if wc in ("0", "1"): 7 | if day == "1": 8 | return ("☀️") 9 | else: 10 | return("🌙") 11 | elif wc == "2": 12 | if day == "1": 13 | return ("⛅") 14 | else: 15 | return("☁️") 16 | elif wc in ("3", "45", "48"): 17 | return ("☁️") 18 | elif wc in ("51", "53", "55", "61", "63", "65", "80", "81", "82"): 19 | return ("🌧️") 20 | elif wc in ("56", "57", "66", "67", "85", "86"): 21 | return ("🌨️") 22 | elif wc in ("71", "73", "75", "77"): 23 | return ("❄️") 24 | elif wc in ("95", "96", "99"): 25 | return ("⛈️") 26 | 27 | def json_extract(obj, path): 28 | ''' 29 | Extracts an element from a nested dictionary or 30 | a list of nested dictionaries along a specified path. 31 | If the input is a dictionary, a list is returned. 32 | If the input is a list of dictionary, a list of lists is returned. 33 | obj - list or dict - input dictionary or list of dictionaries 34 | path - list - list of strings that form the path to the desired element 35 | ''' 36 | def extract(obj, path, ind, arr): 37 | ''' 38 | Extracts an element from a nested dictionary 39 | along a specified path and returns a list. 40 | obj - dict - input dictionary 41 | path - list - list of strings that form the JSON path 42 | ind - int - starting index 43 | arr - list - output list 44 | ''' 45 | key = path[ind] 46 | if ind + 1 < len(path): 47 | if isinstance(obj, dict): 48 | if key in obj.keys(): 49 | extract(obj.get(key), path, ind + 1, arr) 50 | else: 51 | arr.append(None) 52 | elif isinstance(obj, list): 53 | if not obj: 54 | arr.append(None) 55 | else: 56 | for item in obj: 57 | extract(item, path, ind, arr) 58 | else: 59 | arr.append(None) 60 | if ind + 1 == len(path): 61 | if isinstance(obj, list): 62 | if not obj: 63 | arr.append(None) 64 | else: 65 | for item in obj: 66 | arr.append(item.get(key, None)) 67 | elif isinstance(obj, dict): 68 | arr.append(obj.get(key, None)) 69 | else: 70 | arr.append(None) 71 | return arr 72 | if isinstance(obj, dict): 73 | return extract(obj, path, 0, []) 74 | elif isinstance(obj, list): 75 | outer_arr = [] 76 | for item in obj: 77 | outer_arr.append(extract(item, path, 0, [])) 78 | return outer_arr 79 | 80 | latitude = 26.50 81 | longitude = 80.24 82 | 83 | wurl = "https://api.open-meteo.com/v1/forecast?latitude=" + str(latitude) + "&longitude=" + str(longitude) + "&hourly=temperature_2m,is_day¤t_weather=true&timezone=auto" 84 | 85 | wjson = requests.get(wurl).content 86 | wjson = json.loads(wjson) 87 | tmp = str(json_extract(wjson, ["current_weather", "temperature"])[0]) 88 | day = str(json_extract(wjson, ["current_weather", "is_day"])[0]) 89 | wcode = wc_extract(str(json_extract(wjson, ["current_weather", "weathercode"])[0])) 90 | 91 | temp = "" 92 | for i in tmp: 93 | if i == ".": 94 | break 95 | else: 96 | temp += i 97 | 98 | print(wcode, temp+"°C") 99 | 100 | -------------------------------------------------------------------------------- /config/polybar/weather.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | sleep 5 4 | if 2>/dev/null 1>&2 ping -c 1 www.archlinux.org; then 5 | python3 ~/.config/polybar/weather.py 6 | else 7 | echo '\_(ツ)_/' 8 | fi 9 | -------------------------------------------------------------------------------- /config/redshift/redshift.conf: -------------------------------------------------------------------------------- 1 | ; Global settings for redshift 2 | [redshift] 3 | ; Set the day and night screen temperatures 4 | temp-day=6500 5 | temp-night=5000 6 | 7 | ; Disable the smooth fade between temperatures when Redshift starts and stops. 8 | ; 0 will cause an immediate change between screen temperatures. 9 | ; 1 will gradually apply the new screen temperature over a couple of seconds. 10 | fade=1 11 | 12 | ; Solar elevation thresholds. 13 | ; By default, Redshift will use the current elevation of the sun to determine 14 | ; whether it is daytime, night or in transition (dawn/dusk). When the sun is 15 | ; above the degrees specified with elevation-high it is considered daytime and 16 | ; below elevation-low it is considered night. 17 | ;elevation-high=3 18 | ;elevation-low=-6 19 | 20 | ; Custom dawn/dusk intervals. 21 | ; Instead of using the solar elevation, the time intervals of dawn and dusk 22 | ; can be specified manually. The times must be specified as HH:MM in 24-hour 23 | ; format. 24 | ;dawn-time=6:00-7:45 25 | ;dusk-time=18:35-20:15 26 | 27 | ; Set the screen brightness. Default is 1.0. 28 | brightness=1.0 29 | ; It is also possible to use different settings for day and night 30 | ; since version 1.8. 31 | ;brightness-day=0.7 32 | ;brightness-night=0.4 33 | ; Set the screen gamma (for all colors, or each color channel 34 | ; individually) 35 | gamma=1.0 36 | ;gamma=0.8:0.7:0.8 37 | ; This can also be set individually for day and night since 38 | ; version 1.10. 39 | ;gamma-day=0.8:0.7:0.8 40 | ;gamma-night=0.6 41 | 42 | ; Set the location-provider: 'geoclue2', 'manual' 43 | ; type 'redshift -l list' to see possible values. 44 | ; The location provider settings are in a different section. 45 | location-provider=manual 46 | 47 | ; Set the adjustment-method: 'randr', 'vidmode' 48 | ; type 'redshift -m list' to see all possible values. 49 | ; 'randr' is the preferred method, 'vidmode' is an older API. 50 | ; but works in some cases when 'randr' does not. 51 | ; The adjustment method settings are in a different section. 52 | adjustment-method=randr 53 | 54 | ; Configuration of the location-provider: 55 | ; type 'redshift -l PROVIDER:help' to see the settings. 56 | ; ex: 'redshift -l manual:help' 57 | ; Keep in mind that longitudes west of Greenwich (e.g. the Americas) 58 | ; are negative numbers. 59 | [manual] 60 | ;lat= 61 | ;lon= 62 | 63 | ; Enter lat and lon above 64 | 65 | ; Configuration of the adjustment-method 66 | ; type 'redshift -m METHOD:help' to see the settings. 67 | ; ex: 'redshift -m randr:help' 68 | ; In this example, randr is configured to adjust only screen 0. 69 | ; Note that the numbering starts from 0, so this is actually the first screen. 70 | ; If this option is not specified, Redshift will try to adjust _all_ screens. 71 | [randr] 72 | screen=0 73 | 74 | -------------------------------------------------------------------------------- /config/rofi/colors/adapta.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #222D32FF; 11 | background-alt: #29353BFF; 12 | foreground: #B8C2C6FF; 13 | selected: #00BCD4FF; 14 | active: #21FF90FF; 15 | urgent: #FF4B60FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/arc.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #2F343FFF; 11 | background-alt: #383C4AFF; 12 | foreground: #BAC5D0FF; 13 | selected: #5294E2FF; 14 | active: #98C379FF; 15 | urgent: #E06B74FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/black.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #000000FF; 11 | background-alt: #101010FF; 12 | foreground: #FFFFFFFF; 13 | selected: #62AEEFFF; 14 | active: #98C379FF; 15 | urgent: #E06B74FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/catppuccin.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E1D2FFF; 11 | background-alt: #282839FF; 12 | foreground: #D9E0EEFF; 13 | selected: #7AA2F7FF; 14 | active: #ABE9B3FF; 15 | urgent: #F28FADFF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/cyberpunk.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #000B1EFF; 11 | background-alt: #0A1528FF; 12 | foreground: #0ABDC6FF; 13 | selected: #0ABDC6FF; 14 | active: #00FF00FF; 15 | urgent: #FF0000FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/dracula.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E1F29FF; 11 | background-alt: #282A36FF; 12 | foreground: #FFFFFFFF; 13 | selected: #BD93F9FF; 14 | active: #50FA7BFF; 15 | urgent: #FF5555FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/everforest.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #323D43FF; 11 | background-alt: #3C474DFF; 12 | foreground: #DAD1BEFF; 13 | selected: #7FBBB3FF; 14 | active: #A7C080FF; 15 | urgent: #E67E80FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/gruvbox.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #282828FF; 11 | background-alt: #353535FF; 12 | foreground: #EBDBB2FF; 13 | selected: #83A598FF; 14 | active: #B8BB26FF; 15 | urgent: #FB4934FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/lovelace.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1D1F28FF; 11 | background-alt: #282A36FF; 12 | foreground: #FDFDFDFF; 13 | selected: #79E6F3FF; 14 | active: #5ADECDFF; 15 | urgent: #F37F97FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/navy.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #021B21FF; 11 | background-alt: #0C252BFF; 12 | foreground: #F2F1B9FF; 13 | selected: #44B5B1FF; 14 | active: #7CBF9EFF; 15 | urgent: #C2454EFF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/nord.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #2E3440FF; 11 | background-alt: #383E4AFF; 12 | foreground: #E5E9F0FF; 13 | selected: #81A1C1FF; 14 | active: #A3BE8CFF; 15 | urgent: #BF616AFF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/onedark.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #1E2127FF; 11 | background-alt: #282B31FF; 12 | foreground: #FFFFFFFF; 13 | selected: #61AFEFFF; 14 | active: #98C379FF; 15 | urgent: #E06C75FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/paper.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #F1F1F1FF; 11 | background-alt: #E0E0E0FF; 12 | foreground: #252525FF; 13 | selected: #008EC4FF; 14 | active: #10A778FF; 15 | urgent: #C30771FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/solarized.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #002B36FF; 11 | background-alt: #073642FF; 12 | foreground: #EEE8D5FF; 13 | selected: #268BD2FF; 14 | active: #859900FF; 15 | urgent: #DC322FFF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/tokyonight.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Levi Lacoss (fishyfishfish55) 4 | * Github : @fishyfishfish55 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #15161EFF; 11 | background-alt: #1A1B26FF; 12 | foreground: #C0CAF5FF; 13 | selected: #33467CFF; 14 | active: #414868FF; 15 | urgent: #F7768EFF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/colors/yousai.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Colors 7 | **/ 8 | 9 | * { 10 | background: #F5E7DEFF; 11 | background-alt: #EBDCD2FF; 12 | foreground: #34302DFF; 13 | selected: #D97742FF; 14 | active: #BF8F60FF; 15 | urgent: #B23636FF; 16 | } 17 | -------------------------------------------------------------------------------- /config/rofi/config.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Configuration For Rofi Version: 1.7.3 7 | **/ 8 | 9 | configuration { 10 | /*---------- General setting ----------*/ 11 | modi: "drun,run,filebrowser,window"; 12 | case-sensitive: false; 13 | cycle: true; 14 | filter: ""; 15 | scroll-method: 0; 16 | normalize-match: true; 17 | show-icons: true; 18 | icon-theme: "Papirus"; 19 | /* cache-dir: ;*/ 20 | steal-focus: false; 21 | /* dpi: -1;*/ 22 | 23 | /*---------- Matching setting ----------*/ 24 | matching: "normal"; 25 | tokenize: true; 26 | 27 | /*---------- SSH settings ----------*/ 28 | ssh-client: "ssh"; 29 | ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]"; 30 | parse-hosts: true; 31 | parse-known-hosts: true; 32 | 33 | /*---------- Drun settings ----------*/ 34 | drun-categories: ""; 35 | drun-match-fields: "name,generic,exec,categories,keywords"; 36 | drun-display-format: "{name} [({generic})]"; 37 | drun-show-actions: false; 38 | drun-url-launcher: "xdg-open"; 39 | drun-use-desktop-cache: false; 40 | drun-reload-desktop-cache: false; 41 | drun { 42 | /** Parse user desktop files. */ 43 | parse-user: true; 44 | /** Parse system desktop files. */ 45 | parse-system: true; 46 | } 47 | 48 | /*---------- Run settings ----------*/ 49 | run-command: "{cmd}"; 50 | run-list-command: ""; 51 | run-shell-command: "{terminal} -e {cmd}"; 52 | 53 | /*---------- Fallback Icon ----------*/ 54 | run,drun { 55 | fallback-icon: "application-x-addon"; 56 | } 57 | 58 | /*---------- Window switcher settings ----------*/ 59 | window-match-fields: "title,class,role,name,desktop"; 60 | window-command: "wmctrl -i -R {window}"; 61 | window-format: "{w} - {c} - {t:0}"; 62 | window-thumbnail: false; 63 | 64 | /*---------- Combi settings ----------*/ 65 | /* combi-modi: "window,run";*/ 66 | /* combi-hide-mode-prefix: false;*/ 67 | /* combi-display-format: "{mode} {text}";*/ 68 | 69 | /*---------- History and Sorting ----------*/ 70 | disable-history: false; 71 | sorting-method: "normal"; 72 | max-history-size: 25; 73 | 74 | /*---------- Display setting ----------*/ 75 | display-window: "Windows"; 76 | display-windowcd: "Window CD"; 77 | display-run: "Run"; 78 | display-ssh: "SSH"; 79 | display-drun: "Apps"; 80 | display-combi: "Combi"; 81 | display-keys: "Keys"; 82 | display-filebrowser: "Files"; 83 | 84 | /*---------- Misc setting ----------*/ 85 | terminal: "rofi-sensible-terminal"; 86 | font: "Mono 12"; 87 | sort: false; 88 | threads: 0; 89 | click-to-exit: true; 90 | /* ignored-prefixes: "";*/ 91 | /* pid: "/run/user/1000/rofi.pid";*/ 92 | 93 | /*---------- File browser settings ----------*/ 94 | filebrowser { 95 | /* directory: "/home";*/ 96 | directories-first: true; 97 | sorting-method: "name"; 98 | } 99 | 100 | /*---------- Other settings ----------*/ 101 | timeout { 102 | action: "kb-cancel"; 103 | delay: 0; 104 | } 105 | 106 | /*---------- Keybindings ----------*/ 107 | /* 108 | kb-primary-paste: "Control+V,Shift+Insert"; 109 | kb-secondary-paste: "Control+v,Insert"; 110 | kb-clear-line: "Control+w"; 111 | kb-move-front: "Control+a"; 112 | kb-move-end: "Control+e"; 113 | kb-move-word-back: "Alt+b,Control+Left"; 114 | kb-move-word-forward: "Alt+f,Control+Right"; 115 | kb-move-char-back: "Left,Control+b"; 116 | kb-move-char-forward: "Right,Control+f"; 117 | kb-remove-word-back: "Control+Alt+h,Control+BackSpace"; 118 | kb-remove-word-forward: "Control+Alt+d"; 119 | kb-remove-char-forward: "Delete,Control+d"; 120 | kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h"; 121 | kb-remove-to-eol: "Control+k"; 122 | kb-remove-to-sol: "Control+u"; 123 | kb-accept-entry: "Control+j,Control+m,Return,KP_Enter"; 124 | kb-accept-custom: "Control+Return"; 125 | kb-accept-custom-alt: "Control+Shift+Return"; 126 | kb-accept-alt: "Shift+Return"; 127 | kb-delete-entry: "Shift+Delete"; 128 | kb-mode-next: "Shift+Right,Control+Tab"; 129 | kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab"; 130 | kb-mode-complete: "Control+l"; 131 | kb-row-left: "Control+Page_Up"; 132 | kb-row-right: "Control+Page_Down"; 133 | kb-row-down: "Down,Control+n"; 134 | kb-page-prev: "Page_Up"; 135 | kb-page-next: "Page_Down"; 136 | kb-row-first: "Home,KP_Home"; 137 | kb-row-last: "End,KP_End"; 138 | kb-row-select: "Control+space"; 139 | kb-screenshot: "Alt+S"; 140 | kb-ellipsize: "Alt+period"; 141 | kb-toggle-case-sensitivity: "grave,dead_grave"; 142 | kb-toggle-sort: "Alt+grave"; 143 | kb-cancel: "Escape,Control+g,Control+bracketleft"; 144 | kb-custom-1: "Alt+1"; 145 | kb-custom-2: "Alt+2"; 146 | kb-custom-3: "Alt+3"; 147 | kb-custom-4: "Alt+4"; 148 | kb-custom-5: "Alt+5"; 149 | kb-custom-6: "Alt+6"; 150 | kb-custom-7: "Alt+7"; 151 | kb-custom-8: "Alt+8"; 152 | kb-custom-9: "Alt+9"; 153 | kb-custom-10: "Alt+0"; 154 | kb-custom-11: "Alt+exclam"; 155 | kb-custom-12: "Alt+at"; 156 | kb-custom-13: "Alt+numbersign"; 157 | kb-custom-14: "Alt+dollar"; 158 | kb-custom-15: "Alt+percent"; 159 | kb-custom-16: "Alt+dead_circumflex"; 160 | kb-custom-17: "Alt+ampersand"; 161 | kb-custom-18: "Alt+asterisk"; 162 | kb-custom-19: "Alt+parenleft"; 163 | kb-select-1: "Super+1"; 164 | kb-select-2: "Super+2"; 165 | kb-select-3: "Super+3"; 166 | kb-select-4: "Super+4"; 167 | kb-select-5: "Super+5"; 168 | kb-select-6: "Super+6"; 169 | kb-select-7: "Super+7"; 170 | kb-select-8: "Super+8"; 171 | kb-select-9: "Super+9"; 172 | kb-select-10: "Super+0"; 173 | ml-row-left: "ScrollLeft"; 174 | ml-row-right: "ScrollRight"; 175 | ml-row-up: "ScrollUp"; 176 | ml-row-down: "ScrollDown"; 177 | me-select-entry: "MousePrimary"; 178 | me-accept-entry: "MouseDPrimary"; 179 | me-accept-custom: "Control+MouseDPrimary"; 180 | */ 181 | } 182 | -------------------------------------------------------------------------------- /config/rofi/images/a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/a.png -------------------------------------------------------------------------------- /config/rofi/images/alena-aenami-bluehour-1k-crop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/alena-aenami-bluehour-1k-crop.png -------------------------------------------------------------------------------- /config/rofi/images/alena-aenami-portal-crop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/alena-aenami-portal-crop.png -------------------------------------------------------------------------------- /config/rofi/images/b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/b.png -------------------------------------------------------------------------------- /config/rofi/images/c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/c.png -------------------------------------------------------------------------------- /config/rofi/images/d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/d.png -------------------------------------------------------------------------------- /config/rofi/images/e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/e.jpg -------------------------------------------------------------------------------- /config/rofi/images/f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/f.png -------------------------------------------------------------------------------- /config/rofi/images/flowers-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/flowers-1.png -------------------------------------------------------------------------------- /config/rofi/images/flowers-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/flowers-2.png -------------------------------------------------------------------------------- /config/rofi/images/flowers-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/flowers-3.png -------------------------------------------------------------------------------- /config/rofi/images/g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/g.png -------------------------------------------------------------------------------- /config/rofi/images/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/gradient.png -------------------------------------------------------------------------------- /config/rofi/images/h.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/h.jpg -------------------------------------------------------------------------------- /config/rofi/images/i.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/i.jpg -------------------------------------------------------------------------------- /config/rofi/images/j.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/j.jpg -------------------------------------------------------------------------------- /config/rofi/images/paper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/paper.png -------------------------------------------------------------------------------- /config/rofi/images/user.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/user.jpeg -------------------------------------------------------------------------------- /config/rofi/images/yoi1-crop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/yoi1-crop.png -------------------------------------------------------------------------------- /config/rofi/images/yoi2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/rofi/images/yoi2.jpg -------------------------------------------------------------------------------- /config/rofi/launchers/type-6/launcher.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Author : Aditya Shakya (adi1090x) 4 | ## Github : @adi1090x 5 | # 6 | ## Rofi : Launcher (Modi Drun, Run, File Browser, Window) 7 | # 8 | ## Available Styles 9 | # 10 | ## style-1 style-2 style-3 style-4 style-5 11 | ## style-6 style-7 style-8 style-9 style-10 12 | 13 | dir="$HOME/.config/rofi/launchers/type-6" 14 | theme='style-10' 15 | 16 | ## Run 17 | rofi \ 18 | -show drun \ 19 | -theme ${dir}/${theme}.rasi 20 | -------------------------------------------------------------------------------- /config/rofi/launchers/type-6/launcher1.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | dir="$HOME/.config/rofi/launchers/type-6" 3 | theme='style-10' 4 | 5 | ## Run 6 | rofi \ 7 | -show window \ 8 | -theme ${dir}/${theme}.rasi 9 | -------------------------------------------------------------------------------- /config/rofi/launchers/type-6/launcher2.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | dir="$HOME/.config/rofi/launchers/type-6" 3 | theme='style-10' 4 | 5 | ## Run 6 | rofi \ 7 | -show run \ 8 | -theme ${dir}/${theme}.rasi 9 | -------------------------------------------------------------------------------- /config/rofi/powermenu/type-6/powermenu.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Author : Aditya Shakya (adi1090x) 4 | ## Github : @adi1090x 5 | # 6 | ## Rofi : Power Menu 7 | # 8 | ## Available Styles 9 | # 10 | ## style-1 style-2 style-3 style-4 style-5 11 | 12 | # Current Theme 13 | dir="$HOME/.config/rofi/powermenu/type-6" 14 | theme='style-1' 15 | 16 | # CMDs 17 | lastlogin="`last $USER | head -n1 | tr -s ' ' | cut -d' ' -f5,6,7`" 18 | uptime="`uptime -p | sed -e 's/up //g'`" 19 | host=`hostname` 20 | 21 | # Options 22 | hibernate='' 23 | shutdown='' 24 | reboot='' 25 | lock='' 26 | suspend='' 27 | logout='' 28 | yes='' 29 | no='' 30 | 31 | # Rofi CMD 32 | rofi_cmd() { 33 | rofi -dmenu \ 34 | -p " $USER@$host" \ 35 | -mesg " Uptime: $uptime" \ 36 | -theme ${dir}/${theme}.rasi 37 | } 38 | 39 | # Confirmation CMD 40 | confirm_cmd() { 41 | rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 350px;}' \ 42 | -theme-str 'mainbox {orientation: vertical; children: [ "message", "listview" ];}' \ 43 | -theme-str 'listview {columns: 2; lines: 1;}' \ 44 | -theme-str 'element-text {horizontal-align: 0.5;}' \ 45 | -theme-str 'textbox {horizontal-align: 0.5;}' \ 46 | -dmenu \ 47 | -p 'Confirmation' \ 48 | -mesg 'Are you Sure?' \ 49 | -theme ${dir}/${theme}.rasi 50 | } 51 | 52 | # Ask for confirmation 53 | confirm_exit() { 54 | echo -e "$yes\n$no" | confirm_cmd 55 | } 56 | 57 | # Pass variables to rofi dmenu 58 | run_rofi() { 59 | echo -e "$lock\n$suspend\n$logout\n$hibernate\n$reboot\n$shutdown" | rofi_cmd 60 | } 61 | 62 | # Execute Command 63 | run_cmd() { 64 | selected="$(confirm_exit)" 65 | if [[ "$selected" == "$yes" ]]; then 66 | if [[ $1 == '--shutdown' ]]; then 67 | systemctl poweroff 68 | elif [[ $1 == '--reboot' ]]; then 69 | systemctl reboot 70 | elif [[ $1 == '--hibernate' ]]; then 71 | systemctl hibernate 72 | elif [[ $1 == '--suspend' ]]; then 73 | systemctl suspend 74 | elif [[ $1 == '--logout' ]]; then 75 | betterlockscreen -l 76 | fi 77 | else 78 | exit 0 79 | fi 80 | } 81 | 82 | # Actions 83 | chosen="$(run_rofi)" 84 | case ${chosen} in 85 | $shutdown) 86 | run_cmd --shutdown 87 | ;; 88 | $reboot) 89 | run_cmd --reboot 90 | ;; 91 | $hibernate) 92 | run_cmd --hibernate 93 | ;; 94 | $lock) 95 | if [[ -x '/usr/bin/betterlockscreen' ]]; then 96 | betterlockscreen -l 97 | elif [[ -x '/usr/bin/i3lock' ]]; then 98 | i3lock 99 | fi 100 | ;; 101 | $suspend) 102 | run_cmd --suspend 103 | ;; 104 | $logout) 105 | run_cmd --logout 106 | ;; 107 | esac 108 | -------------------------------------------------------------------------------- /config/rofi/powermenu/type-6/style-1.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * Author : Aditya Shakya (adi1090x) 4 | * Github : @adi1090x 5 | * 6 | * Rofi Theme File 7 | * Rofi Version: 1.7.3 8 | **/ 9 | 10 | /*****----- Configuration -----*****/ 11 | configuration { 12 | show-icons: false; 13 | } 14 | 15 | /*****----- Global Properties -----*****/ 16 | * { 17 | font: "ProductSans 11"; 18 | background: #181825; 19 | background-alt: #1e1e2e; 20 | foreground: #FFFFFF; 21 | selected: #b4befe; 22 | active: #1e1e2e; 23 | urgent: #1e1e2e; 24 | } 25 | 26 | /* 27 | USE_BUTTONS=YES 28 | */ 29 | 30 | /*****----- Main Window -----*****/ 31 | window { 32 | transparency: "real"; 33 | location: center; 34 | anchor: center; 35 | fullscreen: false; 36 | width: 760px; 37 | x-offset: 0px; 38 | y-offset: 0px; 39 | 40 | padding: 0px; 41 | border: 0px solid; 42 | border-radius: 15px; 43 | border-color: @selected; 44 | cursor: "default"; 45 | background-color: @background; 46 | } 47 | 48 | /*****----- Main Box -----*****/ 49 | mainbox { 50 | background-color: transparent; 51 | orientation: horizontal; 52 | children: [ "imagebox", "listview" ]; 53 | } 54 | 55 | /*****----- Imagebox -----*****/ 56 | imagebox { 57 | spacing: 30px; 58 | padding: 20px; 59 | background-color: transparent; 60 | background-image: url("~/.config/rofi/images/alena-aenami-portal-crop.png", height); 61 | children: [ "inputbar", "dummy", "message" ]; 62 | } 63 | 64 | /*****----- User -----*****/ 65 | userimage { 66 | margin: 0px 0px; 67 | border: 10px; 68 | border-radius: 10px; 69 | border-color: @background-alt; 70 | background-color: transparent; 71 | background-image: url("~/.config/rofi/images/a.png", height); 72 | } 73 | 74 | /*****----- Inputbar -----*****/ 75 | inputbar { 76 | padding: 15px; 77 | border-radius: 10px; 78 | background-color: @urgent; 79 | text-color: @foreground; 80 | children: [ "dummy", "prompt", "dummy"]; 81 | } 82 | 83 | dummy { 84 | background-color: transparent; 85 | } 86 | 87 | prompt { 88 | background-color: inherit; 89 | text-color: inherit; 90 | } 91 | 92 | /*****----- Message -----*****/ 93 | message { 94 | enabled: true; 95 | margin: 0px; 96 | padding: 15px; 97 | border-radius: 10px; 98 | background-color: @background; 99 | text-color: @foreground; 100 | } 101 | textbox { 102 | background-color: inherit; 103 | text-color: inherit; 104 | vertical-align: 0.5; 105 | horizontal-align: 0.5; 106 | } 107 | 108 | /*****----- Listview -----*****/ 109 | listview { 110 | enabled: true; 111 | columns: 2; 112 | lines: 3; 113 | cycle: true; 114 | dynamic: true; 115 | scrollbar: false; 116 | layout: vertical; 117 | reverse: false; 118 | fixed-height: true; 119 | fixed-columns: true; 120 | 121 | spacing: 30px; 122 | margin: 30px; 123 | background-color: transparent; 124 | cursor: "default"; 125 | } 126 | 127 | /*****----- Elements -----*****/ 128 | element { 129 | enabled: true; 130 | padding: 40px 10px; 131 | border-radius: 10px; 132 | background-color: @background-alt; 133 | text-color: @foreground; 134 | cursor: pointer; 135 | } 136 | element-text { 137 | font: "feather bold 32"; 138 | background-color: transparent; 139 | text-color: inherit; 140 | cursor: inherit; 141 | vertical-align: 0.5; 142 | horizontal-align: 0.5; 143 | } 144 | element selected.normal { 145 | background-color: var(selected); 146 | text-color: var(background); 147 | } 148 | -------------------------------------------------------------------------------- /config/sddm/sddm.conf: -------------------------------------------------------------------------------- 1 | [Theme] 2 | # Current theme name 3 | Current=sugar-candy 4 | 5 | # Cursor theme used in the greeter 6 | CursorTheme=Catppuccin-Mocha-Dark-Cursors 7 | 8 | -------------------------------------------------------------------------------- /config/sddm/sddmtip.txt: -------------------------------------------------------------------------------- 1 | put cursor folder (catppuccin-mocha-dark-cursors) in usr/share/icons 2 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/AUTHORS: -------------------------------------------------------------------------------- 1 | Marian Arlt: 2 | marianarlt@icloud.com 3 | https://opendesktop.org/u/marianarlt 4 | https://github.com/marianarlt 5 | https://framagit.org/marianarlt 6 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Assets/Hibernate.svgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Assets/Hibernate.svgz -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Assets/Reboot.svgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Assets/Reboot.svgz -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Assets/Shutdown.svgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Assets/Shutdown.svgz -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Assets/Suspend.svgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Assets/Suspend.svgz -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Assets/User.svgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Assets/User.svgz -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Backgrounds/Mountain.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Backgrounds/Mountain.jpg -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Backgrounds/alena-aenami-stardust-1k.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Backgrounds/alena-aenami-stardust-1k.jpg -------------------------------------------------------------------------------- /config/sddm/sugar-candy/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## [1.6] - 2020-02-1 4 | ### Fixed 5 | - A few small fixes 6 | 7 | ## [1.5] - 2020-01-30 8 | ### Fixed 9 | - The username input now gets selected on focus 10 | 11 | ### Added 12 | - Option to allow usernames with mixed case lettering. This is highly discouraged! 13 | - Option to allow login without password. Makes the login button always enabled. 14 | 15 | ### Changed 16 | - The user dropdown select now only shows the username not the real name. 17 | 18 | ## [1.4] - 2019-11-12 19 | ### Fixed 20 | - Username now gets automatically converted to lowercase at login to prevent errors 21 | 22 | ## [1.3] - 2019-10-04 23 | ### Fixed 24 | - The Login button can now be activated with Return/Enter keys 25 | 26 | ### Added 27 | - Up/Down arrow keys now intuitively navigate through the whole interface 28 | - Enter/Return keys can be used to login directly from within the username and password fields 29 | 30 | ## [1.2] - 2019-07-15 31 | ### Added 32 | - Option to completely hide and disable power buttons 33 | 34 | ## [1.1] - 2019-07-09 35 | ### Added 36 | - Full support for the Qt Virtual Keyboard 37 | 38 | ### Changed 39 | - "Show Password" check box label now the same size as rest of secondary UI elements 40 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Components/Clock.qml: -------------------------------------------------------------------------------- 1 | // 2 | // This file is part of SDDM Sugar Candy. 3 | // A theme for the Simple Display Desktop Manager. 4 | // 5 | // Copyright (C) 2018–2020 Marian Arlt 6 | // 7 | // SDDM Sugar Candy is free software: you can redistribute it and/or modify it 8 | // under the terms of the GNU General Public License as published by the 9 | // Free Software Foundation, either version 3 of the License, or any later version. 10 | // 11 | // You are required to preserve this and any additional legal notices, either 12 | // contained in this file or in other files that you received along with 13 | // SDDM Sugar Candy that refer to the author(s) in accordance with 14 | // sections §4, §5 and specifically §7b of the GNU General Public License. 15 | // 16 | // SDDM Sugar Candy is distributed in the hope that it will be useful, 17 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | // GNU General Public License for more details. 20 | // 21 | // You should have received a copy of the GNU General Public License 22 | // along with SDDM Sugar Candy. If not, see 23 | // 24 | 25 | import QtQuick 2.11 26 | import QtQuick.Controls 2.4 27 | 28 | Column { 29 | id: clock 30 | spacing: 0 31 | width: parent.width / 2 32 | 33 | Label { 34 | anchors.horizontalCenter: parent.horizontalCenter 35 | font.pointSize: config.HeaderText !=="" ? root.font.pointSize * 3 : 0 36 | color: root.palette.text 37 | renderType: Text.QtRendering 38 | text: config.HeaderText 39 | } 40 | 41 | Label { 42 | id: timeLabel 43 | anchors.horizontalCenter: parent.horizontalCenter 44 | font.pointSize: root.font.pointSize * 3 45 | color: root.palette.text 46 | renderType: Text.QtRendering 47 | function updateTime() { 48 | text = new Date().toLocaleTimeString(Qt.locale(config.Locale), config.HourFormat == "long" ? Locale.LongFormat : config.HourFormat !== "" ? config.HourFormat : Locale.ShortFormat) 49 | } 50 | } 51 | 52 | Label { 53 | id: dateLabel 54 | anchors.horizontalCenter: parent.horizontalCenter 55 | color: root.palette.text 56 | renderType: Text.QtRendering 57 | function updateTime() { 58 | text = new Date().toLocaleDateString(Qt.locale(config.Locale), config.DateFormat == "short" ? Locale.ShortFormat : config.DateFormat !== "" ? config.DateFormat : Locale.LongFormat) 59 | } 60 | } 61 | 62 | Timer { 63 | interval: 1000 64 | repeat: true 65 | running: true 66 | onTriggered: { 67 | dateLabel.updateTime() 68 | timeLabel.updateTime() 69 | } 70 | } 71 | 72 | Component.onCompleted: { 73 | dateLabel.updateTime() 74 | timeLabel.updateTime() 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Components/LoginForm.qml: -------------------------------------------------------------------------------- 1 | // 2 | // This file is part of SDDM Sugar Candy. 3 | // A theme for the Simple Display Desktop Manager. 4 | // 5 | // Copyright (C) 2018–2020 Marian Arlt 6 | // 7 | // SDDM Sugar Candy is free software: you can redistribute it and/or modify it 8 | // under the terms of the GNU General Public License as published by the 9 | // Free Software Foundation, either version 3 of the License, or any later version. 10 | // 11 | // You are required to preserve this and any additional legal notices, either 12 | // contained in this file or in other files that you received along with 13 | // SDDM Sugar Candy that refer to the author(s) in accordance with 14 | // sections §4, §5 and specifically §7b of the GNU General Public License. 15 | // 16 | // SDDM Sugar Candy is distributed in the hope that it will be useful, 17 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | // GNU General Public License for more details. 20 | // 21 | // You should have received a copy of the GNU General Public License 22 | // along with SDDM Sugar Candy. If not, see 23 | // 24 | 25 | import QtQuick 2.11 26 | import QtQuick.Layouts 1.11 27 | import SddmComponents 2.0 as SDDM 28 | 29 | ColumnLayout { 30 | id: formContainer 31 | SDDM.TextConstants { id: textConstants } 32 | 33 | property int p: config.ScreenPadding 34 | property string a: config.FormPosition 35 | property alias systemButtonVisibility: systemButtons.visible 36 | property alias clockVisibility: clock.visible 37 | property bool virtualKeyboardActive 38 | 39 | Clock { 40 | id: clock 41 | Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom 42 | Layout.preferredHeight: root.height / 4 43 | Layout.leftMargin: p != "0" ? a == "left" ? -p : a == "right" ? p : 0 : 0 44 | } 45 | 46 | Input { 47 | id: input 48 | Layout.alignment: Qt.AlignVCenter 49 | Layout.preferredHeight: root.height / 10 50 | Layout.leftMargin: p != "0" ? a == "left" ? -p : a == "right" ? p : 0 : 0 51 | Layout.topMargin: virtualKeyboardActive ? -height * 1.5 : 0 52 | } 53 | 54 | SystemButtons { 55 | id: systemButtons 56 | Layout.alignment: Qt.AlignHCenter | Qt.AlignBottom 57 | Layout.preferredHeight: root.height / 4 58 | Layout.maximumHeight: root.height / 4 59 | Layout.leftMargin: p != "0" ? a == "left" ? -p : a == "right" ? p : 0 : 0 60 | exposedSession: input.exposeSession 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Components/SystemButtons.qml: -------------------------------------------------------------------------------- 1 | // 2 | // This file is part of SDDM Sugar Candy. 3 | // A theme for the Simple Display Desktop Manager. 4 | // 5 | // Copyright (C) 2018–2020 Marian Arlt 6 | // 7 | // SDDM Sugar Candy is free software: you can redistribute it and/or modify it 8 | // under the terms of the GNU General Public License as published by the 9 | // Free Software Foundation, either version 3 of the License, or any later version. 10 | // 11 | // You are required to preserve this and any additional legal notices, either 12 | // contained in this file or in other files that you received along with 13 | // SDDM Sugar Candy that refer to the author(s) in accordance with 14 | // sections §4, §5 and specifically §7b of the GNU General Public License. 15 | // 16 | // SDDM Sugar Candy is distributed in the hope that it will be useful, 17 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | // GNU General Public License for more details. 20 | // 21 | // You should have received a copy of the GNU General Public License 22 | // along with SDDM Sugar Candy. If not, see 23 | // 24 | 25 | import QtQuick 2.11 26 | import QtQuick.Layouts 1.11 27 | import QtQuick.Controls 2.4 28 | 29 | RowLayout { 30 | 31 | spacing: root.font.pointSize 32 | 33 | property var suspend: ["Suspend", config.TranslateSuspend || textConstants.suspend, sddm.canSuspend] 34 | property var hibernate: ["Hibernate", config.TranslateHibernate || textConstants.hibernate, sddm.canHibernate] 35 | property var reboot: ["Reboot", config.TranslateReboot || textConstants.reboot, sddm.canReboot] 36 | property var shutdown: ["Shutdown", config.TranslateShutdown || textConstants.shutdown, sddm.canPowerOff] 37 | 38 | property Control exposedSession 39 | 40 | Repeater { 41 | 42 | id: systemButtons 43 | model: [suspend, hibernate, reboot, shutdown] 44 | 45 | RoundButton { 46 | text: modelData[1] 47 | font.pointSize: root.font.pointSize * 0.8 48 | Layout.alignment: Qt.AlignHCenter 49 | icon.source: modelData ? Qt.resolvedUrl("../Assets/" + modelData[0] + ".svgz") : "" 50 | icon.height: 2 * Math.round((root.font.pointSize * 3) / 2) 51 | icon.width: 2 * Math.round((root.font.pointSize * 3) / 2) 52 | display: AbstractButton.TextUnderIcon 53 | visible: config.ForceHideSystemButtons != "true" && modelData[2] 54 | hoverEnabled: true 55 | palette.buttonText: root.palette.text 56 | background: Rectangle { 57 | height: 2 58 | color: "transparent" 59 | width: parent.width 60 | border.width: parent.activeFocus ? 1 : 0 61 | border.color: "transparent" 62 | anchors.top: parent.bottom 63 | } 64 | Keys.onReturnPressed: clicked() 65 | onClicked: { 66 | parent.forceActiveFocus() 67 | index == 0 ? sddm.suspend() : index == 1 ? sddm.hibernate() : index == 2 ? sddm.reboot() : sddm.powerOff() 68 | } 69 | KeyNavigation.up: exposedSession 70 | KeyNavigation.left: parent.children[index-1] 71 | 72 | states: [ 73 | State { 74 | name: "pressed" 75 | when: parent.children[index].down 76 | PropertyChanges { 77 | target: parent.children[index] 78 | palette.buttonText: Qt.darker(root.palette.highlight, 1.1) 79 | } 80 | PropertyChanges { 81 | target: parent.children[index].background 82 | border.color: Qt.darker(root.palette.highlight, 1.1) 83 | } 84 | }, 85 | State { 86 | name: "hovered" 87 | when: parent.children[index].hovered 88 | PropertyChanges { 89 | target: parent.children[index] 90 | palette.buttonText: Qt.lighter(root.palette.highlight, 1.1) 91 | } 92 | PropertyChanges { 93 | target: parent.children[index].background 94 | border.color: Qt.lighter(root.palette.highlight, 1.1) 95 | } 96 | }, 97 | State { 98 | name: "focused" 99 | when: parent.children[index].activeFocus 100 | PropertyChanges { 101 | target: parent.children[index] 102 | palette.buttonText: root.palette.highlight 103 | } 104 | PropertyChanges { 105 | target: parent.children[index].background 106 | border.color: root.palette.highlight 107 | } 108 | } 109 | ] 110 | 111 | transitions: [ 112 | Transition { 113 | PropertyAnimation { 114 | properties: "palette.buttonText, border.color" 115 | duration: 150 116 | } 117 | } 118 | ] 119 | 120 | } 121 | 122 | } 123 | 124 | } 125 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Components/VirtualKeyboard.qml: -------------------------------------------------------------------------------- 1 | // 2 | // This file is part of SDDM Sugar Candy. 3 | // A theme for the Simple Display Desktop Manager. 4 | // 5 | // Copyright (C) 2018–2020 Marian Arlt 6 | // 7 | // SDDM Sugar Candy is free software: you can redistribute it and/or modify it 8 | // under the terms of the GNU General Public License as published by the 9 | // Free Software Foundation, either version 3 of the License, or any later version. 10 | // 11 | // You are required to preserve this and any additional legal notices, either 12 | // contained in this file or in other files that you received along with 13 | // SDDM Sugar Candy that refer to the author(s) in accordance with 14 | // sections §4, §5 and specifically §7b of the GNU General Public License. 15 | // 16 | // SDDM Sugar Candy is distributed in the hope that it will be useful, 17 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | // GNU General Public License for more details. 20 | // 21 | // You should have received a copy of the GNU General Public License 22 | // along with SDDM Sugar Candy. If not, see 23 | // 24 | 25 | import QtQuick 2.11 26 | import QtQuick.VirtualKeyboard 2.3 27 | 28 | InputPanel { 29 | id: virtualKeyboard 30 | property bool activated: false 31 | active: activated && Qt.inputMethod.visible 32 | visible: active 33 | } 34 | -------------------------------------------------------------------------------- /config/sddm/sugar-candy/Previews/PartialBlur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/config/sddm/sugar-candy/Previews/PartialBlur.png -------------------------------------------------------------------------------- /config/sddm/sugar-candy/metadata.desktop: -------------------------------------------------------------------------------- 1 | [SddmGreeterTheme] 2 | Name=Sugar Candy 3 | Description=Premium Sugar for SDDM 4 | Author=Marian Arlt 5 | Copyright=Copyright (C) 2018 Marian Arlt 6 | License=GPL-3.0-or-later 7 | Type=sddm-theme 8 | Version=1.6 9 | Website=https://framagit.org/MarianArlt/sddm-sugar-candy 10 | Screenshot=Previews/PartialBlur.png 11 | MainScript=Main.qml 12 | ConfigFile=theme.conf 13 | TranslationsDirectory=translations 14 | Email=marianarlt@icloud.com 15 | Theme-Id=sugar-candy 16 | Theme-API=2.11 17 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-colours.css: -------------------------------------------------------------------------------- 1 | /*---+---+---+---+---+---+---+ 2 | | C | O | L | O | U | R | S | 3 | +---+---+---+---+---+---+---*/ 4 | 5 | 6 | @media (prefers-color-scheme: dark) { :root { 7 | 8 | /* These colours are (mainly) used by the 9 | Container Tabs Plugin */ 10 | --uc-identity-colour-blue: #7ED6DF; 11 | --uc-identity-colour-turquoise: #55E6C1; 12 | --uc-identity-colour-green: #B8E994; 13 | --uc-identity-colour-yellow: #F7D794; 14 | --uc-identity-colour-orange: #F19066; 15 | --uc-identity-colour-red: #FC5C65; 16 | --uc-identity-colour-pink: #F78FB3; 17 | --uc-identity-colour-purple: #786FA6; 18 | 19 | /* Cascades main Colour Scheme */ 20 | --uc-base-colour: #1E2021; 21 | --uc-highlight-colour: #191B1C; 22 | --uc-inverted-colour: #FAFAFC; 23 | --uc-muted-colour: #AAAAAC; 24 | --uc-accent-colour: var(--uc-identity-colour-purple); 25 | 26 | }} 27 | 28 | 29 | @media (prefers-color-scheme: light) { :root { 30 | 31 | /* These colours are (mainly) used by the 32 | Container Tabs Plugin */ 33 | --uc-identity-colour-blue: #1D65F5; 34 | --uc-identity-colour-turquoise: #209FB5; 35 | --uc-identity-colour-green: #40A02B; 36 | --uc-identity-colour-yellow: #E49320; 37 | --uc-identity-colour-orange: #FE640B; 38 | --uc-identity-colour-red: #FC5C65; 39 | --uc-identity-colour-pink: #EC83D0; 40 | --uc-identity-colour-purple: #822FEE; 41 | 42 | /* Cascades main Colour Scheme */ 43 | --uc-base-colour: #FAFAFC; 44 | --uc-highlight-colour: #DADADC; 45 | --uc-inverted-colour: #1E2021; 46 | --uc-muted-colour: #191B1C; 47 | --uc-accent-colour: var(--uc-identity-colour-purple); 48 | 49 | }} 50 | 51 | 52 | 53 | 54 | 55 | 56 | /* Down here I'm just reassigning variables based on the colours set above. 57 | Feel free to play around with these but there is no editing necessary below this line. c: 58 | */ 59 | 60 | :root { 61 | 62 | --lwt-frame: var(--uc-base-colour) !important; 63 | --lwt-accent-color: var(--lwt-frame) !important; 64 | --lwt-text-color: var(--uc-inverted-colour) !important; 65 | 66 | --toolbar-field-color: var(--uc-inverted-colour) !important; 67 | 68 | --toolbar-field-focus-color: var(--uc-inverted-colour) !important; 69 | --toolbar-field-focus-background-color: var(--uc-highlight-colour) !important; 70 | --toolbar-field-focus-border-color: transparent !important; 71 | 72 | --toolbar-field-background-color: var(--lwt-frame) !important; 73 | --lwt-toolbar-field-highlight: var(--uc-inverted-colour) !important; 74 | --lwt-toolbar-field-highlight-text: var(--uc-highlight-colour) !important; 75 | --urlbar-popup-url-color: var(--uc-accent-colour) !important; 76 | 77 | --lwt-tab-text: var(--lwt-text-colour) !important; 78 | 79 | --lwt-selected-tab-background-color: var(--uc-highlight-colour) !important; 80 | 81 | --toolbar-bgcolor: var(--lwt-frame) !important; 82 | --toolbar-color: var(--lwt-text-color) !important; 83 | --toolbarseparator-color: var(--uc-accent-colour) !important; 84 | --toolbarbutton-hover-background: var(--uc-highlight-colour) !important; 85 | --toolbarbutton-active-background: var(--toolbarbutton-hover-background) !important; 86 | 87 | --lwt-sidebar-background-color: var(--lwt-frame) !important; 88 | --sidebar-background-color: var(--lwt-sidebar-background-color) !important; 89 | 90 | --urlbar-box-bgcolor: var(--uc-highlight-colour) !important; 91 | --urlbar-box-text-color: var(--uc-muted-colour) !important; 92 | --urlbar-box-hover-bgcolor: var(--uc-highlight-colour) !important; 93 | --urlbar-box-hover-text-color: var(--uc-inverted-colour) !important; 94 | --urlbar-box-focus-bgcolor: var(--uc-highlight-colour) !important; 95 | 96 | } 97 | 98 | 99 | 100 | .identity-color-blue { --identity-tab-color: var(--uc-identity-colour-blue) !important; --identity-icon-color: var(--uc-identity-colour-blue) !important; } 101 | .identity-color-turquoise { --identity-tab-color: var(--uc-identity-colour-turquoise) !important; --identity-icon-color: var(--uc-identity-colour-turquoise) !important; } 102 | .identity-color-green { --identity-tab-color: var(--uc-identity-colour-green) !important; --identity-icon-color: var(--uc-identity-colour-green) !important; } 103 | .identity-color-yellow { --identity-tab-color: var(--uc-identity-colour-yellow) !important; --identity-icon-color: var(--uc-identity-colour-yellow) !important; } 104 | .identity-color-orange { --identity-tab-color: var(--uc-identity-colour-orange) !important; --identity-icon-color: var(--uc-identity-colour-orange) !important; } 105 | .identity-color-red { --identity-tab-color: var(--uc-identity-colour-red) !important; --identity-icon-color: var(--uc-identity-colour-red) !important; } 106 | .identity-color-pink { --identity-tab-color: var(--uc-identity-colour-pink) !important; --identity-icon-color: var(--uc-identity-colour-pink) !important; } 107 | .identity-color-purple { --identity-tab-color: var(--uc-identity-colour-purple) !important; --identity-icon-color: var(--uc-identity-colour-purple) !important; } 108 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-config-mouse.css: -------------------------------------------------------------------------------- 1 | /*---+---+---+---+---+---+ 2 | | G | L | O | B | A | L | 3 | +---+---+---+---+---+---*/ 4 | 5 | 6 | :root { 7 | 8 | /* Global Border Radius 9 | * applied to ALL UI elements 10 | */ --uc-border-radius: 0px; 11 | 12 | 13 | /* The distance the Statuspanel floats 14 | * away from the window border 15 | * 0 places directly in the corner 16 | */ --uc-status-panel-spacing: 12px; 17 | 18 | } 19 | 20 | 21 | /* remove window control buttons */ 22 | .titlebar-buttonbox-container { display: none !important; } 23 | 24 | 25 | #pageActionButton { display: none !important; } 26 | 27 | 28 | 29 | 30 | 31 | /*---+---+---+---+---+---+---+ 32 | | T | O | O | L | B | A | R | 33 | +---+---+---+---+---+---+---*/ 34 | 35 | 36 | :root { 37 | 38 | /* Position of the Personal Toolbar 39 | * possible values: 40 | * 0 – toolbar on top 41 | * 4 – toolbar on bottom 42 | */ --uc-toolbar-position: 0; 43 | 44 | /* Darken the Personal Toolbar by X amount 45 | * where X = 1 means pure black 46 | * and X = 0 means no darkening at all 47 | */ --uc-darken-toolbar: .2; 48 | 49 | } 50 | 51 | 52 | 53 | 54 | 55 | /*---+---+---+---+---+---+---+ 56 | | U | R | L | — | B | A | R | 57 | +---+---+---+---+---+---+---*/ 58 | 59 | 60 | :root { 61 | 62 | /* Width of the URL Bar for the Oneline layout 63 | * If enabled the max-width is applied on focus 64 | * otherwise the URL Bar will always be it's min-width 65 | */ --uc-urlbar-min-width: 40vw; 66 | --uc-urlbar-max-width: 40vw; 67 | 68 | /* Position of the URL Bar 69 | * possible values: 70 | * 1 – tabs on the right 71 | * 3 – tabs on the left 72 | */ --uc-urlbar-position: 1; 73 | 74 | } 75 | 76 | 77 | /* Disable the Navigation Buttons */ 78 | 79 | /* Disables the Tracking Protection Shield */ 80 | /* #tracking-protection-icon-container { display: none !important; } */ 81 | 82 | /* Encryption and Permissions icons */ 83 | /* Only hides permission items */ 84 | #identity-permission-box { display: none !important; } 85 | /* Hides encryption AND permission items */ 86 | /* #identity-box { display: none !important } */ 87 | 88 | /* Hide everything BUT the zoom indicator within the URL Bar */ 89 | #page-action-buttons > :not(#urlbar-zoom-button):not(#star-button-box) { display: none !important; } 90 | 91 | 92 | /* Hide the »Go«-arrow in the URL Bar */ 93 | #urlbar-go-button { display: none !important; } 94 | 95 | 96 | 97 | 98 | 99 | /*---+---+---+---+---+---+---+ 100 | | T | A | B | — | B | A | R | 101 | +---+---+---+---+---+---+---*/ 102 | 103 | 104 | :root { 105 | 106 | /* Allow tabs to have dynamic widths based on 107 | * the Tab Bars maximum width 108 | */ --uc-active-tab-width: clamp(100px, 30vw, 300px); 109 | --uc-inactive-tab-width: clamp(100px, 20vw, 200px); 110 | 111 | 112 | /* Enable this to always show the Tab Close button 113 | * possible values: 114 | * show: -moz-inline-block 115 | * hide: none 116 | */ --show-tab-close-button: none; 117 | 118 | /* Enable this to only show the Tab Close button on tab hover 119 | * possible values: 120 | * show: -moz-inline-block 121 | * hide: none 122 | */ --show-tab-close-button-hover: -moz-inline-block; 123 | 124 | 125 | /* Left and Right "dip" of the container indicator 126 | * 0px equals tab width 127 | * higer values make the indicator smaller 128 | */ --container-tabs-indicator-margin: 10px; 129 | 130 | /* Amount of Glow to add to the container indicator 131 | * Setting it to 0 disables the Glow 132 | */ --uc-identity-glow: 0 1px 10px 1px; 133 | 134 | } 135 | 136 | 137 | /* Hide the secondary Tab Label 138 | * e.g. playing indicator (the text, not the icon) */ 139 | .tab-secondary-label { display: none !important; } 140 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-config.css: -------------------------------------------------------------------------------- 1 | /*---+---+---+---+---+---+ 2 | | G | L | O | B | A | L | 3 | +---+---+---+---+---+---*/ 4 | 5 | 6 | :root { 7 | 8 | /* Global Border Radius 9 | * applied to ALL UI elements 10 | */ --uc-border-radius: 0px; 11 | 12 | 13 | /* The distance the Statuspanel floats 14 | * away from the window border 15 | * 0 places directly in the corner 16 | */ --uc-status-panel-spacing: 12px; 17 | 18 | } 19 | 20 | 21 | /* remove window control buttons */ 22 | .titlebar-buttonbox-container { display: none !important; } 23 | 24 | 25 | #pageActionButton { display: none !important; } 26 | /* 27 | #PanelUI-menu-button { padding: 0px !important; } 28 | #PanelUI-menu-button .toolbarbutton-icon { width: 1px !important; } 29 | #PanelUI-menu-button .toolbarbutton-badge-stack { padding: 0px !important; } 30 | */ 31 | 32 | 33 | 34 | 35 | /*---+---+---+---+---+---+---+ 36 | | T | O | O | L | B | A | R | 37 | +---+---+---+---+---+---+---*/ 38 | 39 | 40 | :root { 41 | 42 | /* Position of the Personal Toolbar 43 | * possible values: 44 | * 0 – toolbar on top 45 | * 4 – toolbar on bottom 46 | */ --uc-toolbar-position: 0; 47 | 48 | /* Darken the Personal Toolbar by X amount 49 | * where X = 1 means pure black 50 | * and X = 0 means no darkening at all 51 | */ --uc-darken-toolbar: .2; 52 | 53 | } 54 | 55 | 56 | 57 | 58 | 59 | /*---+---+---+---+---+---+---+ 60 | | U | R | L | — | B | A | R | 61 | +---+---+---+---+---+---+---*/ 62 | 63 | 64 | :root { 65 | 66 | /* Width of the URL Bar for the Oneline layout 67 | * If enabled the max-width is applied on focus 68 | * otherwise the URL Bar will always be it's min-width 69 | */ --uc-urlbar-min-width: 30vw; 70 | --uc-urlbar-max-width: 35vw; 71 | 72 | /* Position of the URL Bar 73 | * possible values: 74 | * 1 – tabs on the right 75 | * 3 – tabs on the left 76 | */ --uc-urlbar-position: 1; 77 | 78 | /* Firefox can be a little wonky with the vertical 79 | * URL Bar placement. Change this variable to adapt 80 | * to this when necessary. 81 | */ --uc-urlbar-top-spacing: 1px; 82 | 83 | } 84 | 85 | 86 | /* Disable the Navigation Buttons */ 87 | #back-button, 88 | #forward-button { display: none !important; } 89 | 90 | /* Disables the Tracking Protection Shield */ 91 | /* #tracking-protection-icon-container { display: none !important; } */ 92 | 93 | /* Encryption and Permissions icons */ 94 | /* Only hides permission items */ 95 | #identity-permission-box { display: none !important; } 96 | /* Hides encryption AND permission items */ 97 | /* #identity-box { display: none !important } */ 98 | 99 | /* Hide everything BUT the zoom indicator within the URL Bar */ 100 | #page-action-buttons > :not(#urlbar-zoom-button) { display: none !important; } 101 | 102 | /* Hide the »Go«-arrow in the URL Bar */ 103 | #urlbar-go-button { display: none !important; } 104 | 105 | #nav-bar toolbarspring { 106 | min-width: 45px !important; 107 | max-width: 45px !important; 108 | } 109 | 110 | /*---+---+---+---+---+---+---+ 111 | | T | A | B | — | B | A | R | 112 | +---+---+---+---+---+---+---*/ 113 | 114 | 115 | :root { 116 | 117 | /* Allow tabs to have dynamic widths based on 118 | * the Tab Bars maximum width 119 | */ --uc-active-tab-width: clamp(100px, 25vw, 250px); 120 | --uc-inactive-tab-width: clamp(100px, 20vw, 200px); 121 | 122 | 123 | 124 | /* Enable this to always show the Tab Close button 125 | * possible values: 126 | * show: -moz-inline-block 127 | * hide: none 128 | */ --show-tab-close-button: none; 129 | 130 | /* Enable this to only show the Tab Close button on tab hover 131 | * possible values: 132 | * show: -moz-inline-block 133 | * hide: none 134 | */ --show-tab-close-button-hover: none; 135 | 136 | 137 | /* Left and Right "dip" of the container indicator 138 | * 0px equals tab width 139 | * higer values make the indicator smaller 140 | */ --container-tabs-indicator-margin: 10px; 141 | 142 | /* Amount of Glow to add to the container indicator 143 | * Setting it to 0 disables the Glow 144 | */ --uc-identity-glow: 0 1px 10px 1px; 145 | 146 | } 147 | 148 | 149 | /* Hide the secondary Tab Label 150 | * e.g. playing indicator (the text, not the icon) */ 151 | .tab-secondary-label { display: none !important; } 152 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-floating-panel.css: -------------------------------------------------------------------------------- 1 | #statuspanel #statuspanel-label { margin: 0 0 var(--uc-status-panel-spacing) var(--uc-status-panel-spacing) !important; } 2 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-layout.css: -------------------------------------------------------------------------------- 1 | :root { 2 | 3 | --toolbarbutton-border-radius: var(--uc-border-radius) !important; 4 | --tab-border-radius: var(--uc-border-radius) !important; 5 | --arrowpanel-border-radius: var(--uc-border-radius) !important; 6 | 7 | } 8 | 9 | 10 | 11 | 12 | 13 | #main-window, 14 | #toolbar-menubar, 15 | #TabsToolbar, 16 | #navigator-toolbox, 17 | #sidebar-box, 18 | #nav-bar { box-shadow: none !important; } 19 | 20 | 21 | #main-window, 22 | #toolbar-menubar, 23 | #TabsToolbar, 24 | #PersonalToolbar, 25 | #navigator-toolbox, 26 | #sidebar-box, 27 | #nav-bar { border: none !important; } 28 | 29 | 30 | /* remove "padding" left and right from tabs */ 31 | .titlebar-spacer { display: none !important; } 32 | 33 | 34 | 35 | 36 | 37 | #PersonalToolbar { 38 | 39 | padding: 6px !important; 40 | box-shadow: inset 0 0 50vh rgba(0, 0, 0, var(--uc-darken-toolbar)) !important;; 41 | 42 | } 43 | 44 | 45 | 46 | 47 | 48 | #statuspanel #statuspanel-label { 49 | 50 | border: none !important; 51 | border-radius: var(--uc-border-radius) !important; 52 | 53 | } 54 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-mocha.css: -------------------------------------------------------------------------------- 1 | /*---+---+---+---+---+---+---+ 2 | | C | O | L | O | U | R | S | 3 | +---+---+---+---+---+---+---*/ 4 | 5 | 6 | @media (prefers-color-scheme: dark) { :root { 7 | 8 | /* These colours are (mainly) used by the 9 | Container Tabs Plugin */ 10 | --uc-identity-colour-blue: #89B4FA; 11 | --uc-identity-colour-turquoise: #94E2D5; 12 | --uc-identity-colour-green: #A6E3A1; 13 | --uc-identity-colour-yellow: #F9E2AF; 14 | --uc-identity-colour-orange: #FAB387; 15 | --uc-identity-colour-red: #F38BA8; 16 | --uc-identity-colour-pink: #F5C2E7; 17 | --uc-identity-colour-purple: #CBA6F7; 18 | 19 | /* Cascades main Colour Scheme */ 20 | --uc-base-colour: #1E1E2E; 21 | --uc-highlight-colour: #181825; 22 | --uc-inverted-colour: #CDD6F4; 23 | --uc-muted-colour: #6C7086; 24 | --uc-accent-colour: var(--uc-identity-colour-purple); 25 | 26 | }} 27 | 28 | 29 | @media (prefers-color-scheme: light) { :root { 30 | 31 | /* These colours are (mainly) used by the 32 | Container Tabs Plugin */ 33 | --uc-identity-colour-blue: #1E66F5; 34 | --uc-identity-colour-turquoise: #179299; 35 | --uc-identity-colour-green: #40A02B; 36 | --uc-identity-colour-yellow: #DF8E1D; 37 | --uc-identity-colour-orange: #FE640B; 38 | --uc-identity-colour-red: #D20F39; 39 | --uc-identity-colour-pink: #D20F39; 40 | --uc-identity-colour-purple: #8839EF; 41 | 42 | /* Cascades main Colour Scheme */ 43 | --uc-base-colour: #EFF1F5; 44 | --uc-highlight-colour: #DCE0E8; 45 | --uc-inverted-colour: #4C4F69; 46 | --uc-muted-colour: #9CA0B0; 47 | --uc-accent-colour: var(--uc-identity-colour-purple); 48 | 49 | }} 50 | 51 | 52 | 53 | 54 | 55 | 56 | /* Down here I'm just reassigning variables based on the colours set above. 57 | Feel free to play around with these but there is no editing necessary below this line. c: 58 | */ 59 | 60 | :root { 61 | 62 | --lwt-frame: var(--uc-base-colour) !important; 63 | --lwt-accent-color: var(--lwt-frame) !important; 64 | --lwt-text-color: var(--uc-inverted-colour) !important; 65 | 66 | --toolbar-field-color: var(--uc-inverted-colour) !important; 67 | 68 | --toolbar-field-focus-color: var(--uc-inverted-colour) !important; 69 | --toolbar-field-focus-background-color: var(--uc-highlight-colour) !important; 70 | --toolbar-field-focus-border-color: transparent !important; 71 | 72 | --toolbar-field-background-color: var(--lwt-frame) !important; 73 | --lwt-toolbar-field-highlight: var(--uc-inverted-colour) !important; 74 | --lwt-toolbar-field-highlight-text: var(--uc-highlight-colour) !important; 75 | --urlbar-popup-url-color: var(--uc-accent-colour) !important; 76 | 77 | --lwt-tab-text: var(--lwt-text-colour) !important; 78 | 79 | --lwt-selected-tab-background-color: var(--uc-highlight-colour) !important; 80 | 81 | --toolbar-bgcolor: var(--lwt-frame) !important; 82 | --toolbar-color: var(--lwt-text-color) !important; 83 | --toolbarseparator-color: var(--uc-accent-colour) !important; 84 | --toolbarbutton-hover-background: var(--uc-highlight-colour) !important; 85 | --toolbarbutton-active-background: var(--toolbarbutton-hover-background) !important; 86 | 87 | --lwt-sidebar-background-color: var(--lwt-frame) !important; 88 | --sidebar-background-color: var(--lwt-sidebar-background-color) !important; 89 | 90 | --urlbar-box-bgcolor: var(--uc-highlight-colour) !important; 91 | --urlbar-box-text-color: var(--uc-muted-colour) !important; 92 | --urlbar-box-hover-bgcolor: var(--uc-highlight-colour) !important; 93 | --urlbar-box-hover-text-color: var(--uc-inverted-colour) !important; 94 | --urlbar-box-focus-bgcolor: var(--uc-highlight-colour) !important; 95 | 96 | } 97 | 98 | 99 | 100 | .identity-color-blue { --identity-tab-color: var(--uc-identity-colour-blue) !important; --identity-icon-color: var(--uc-identity-colour-blue) !important; } 101 | .identity-color-turquoise { --identity-tab-color: var(--uc-identity-colour-turquoise) !important; --identity-icon-color: var(--uc-identity-colour-turquoise) !important; } 102 | .identity-color-green { --identity-tab-color: var(--uc-identity-colour-green) !important; --identity-icon-color: var(--uc-identity-colour-green) !important; } 103 | .identity-color-yellow { --identity-tab-color: var(--uc-identity-colour-yellow) !important; --identity-icon-color: var(--uc-identity-colour-yellow) !important; } 104 | .identity-color-orange { --identity-tab-color: var(--uc-identity-colour-orange) !important; --identity-icon-color: var(--uc-identity-colour-orange) !important; } 105 | .identity-color-red { --identity-tab-color: var(--uc-identity-colour-red) !important; --identity-icon-color: var(--uc-identity-colour-red) !important; } 106 | .identity-color-pink { --identity-tab-color: var(--uc-identity-colour-pink) !important; --identity-icon-color: var(--uc-identity-colour-pink) !important; } 107 | .identity-color-purple { --identity-tab-color: var(--uc-identity-colour-purple) !important; --identity-icon-color: var(--uc-identity-colour-purple) !important; } 108 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-nav-bar.css: -------------------------------------------------------------------------------- 1 | #nav-bar { 2 | 3 | padding-block-start: 0px !important; 4 | 5 | border: none !important; 6 | box-shadow: none !important; 7 | background: transparent !important; 8 | 9 | } 10 | 11 | 12 | #urlbar, 13 | #urlbar * { 14 | 15 | padding-block-start: var(--uc-urlbar-top-spacing) !important; 16 | 17 | outline: none !important; 18 | box-shadow: none !important; 19 | 20 | } 21 | 22 | 23 | #urlbar-background { border: transparent !important; } 24 | 25 | 26 | #urlbar[focused='true'] 27 | > #urlbar-background, 28 | #urlbar:not([open]) 29 | > #urlbar-background { background: var(--toolbar-field-background-color) !important; } 30 | 31 | 32 | #urlbar[open] 33 | > #urlbar-background { background: var(--toolbar-field-background-color) !important; } 34 | 35 | 36 | .urlbarView-row:hover 37 | > .urlbarView-row-inner, 38 | .urlbarView-row[selected] 39 | > .urlbarView-row-inner { background: var(--toolbar-field-focus-background-color) !important; } 40 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-responsive-windows-fix.css: -------------------------------------------------------------------------------- 1 | @media (min-width: 1000px) { 2 | 3 | #nav-bar { margin: calc((var(--urlbar-min-height) * -1) - 12px) calc(100vw - var(--uc-urlbar-min-width)) 0 0 !important; } 4 | #titlebar { margin-inline-start: var(--uc-urlbar-min-width) !important; } 5 | 6 | #navigator-toolbox:focus-within #nav-bar { margin: calc((var(--urlbar-min-height) * -1) - 12px) calc(100vw - var(--uc-urlbar-max-width)) 0 0 !important; } 7 | #navigator-toolbox:focus-within #titlebar { margin-inline-start: var(--uc-urlbar-max-width) !important; } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-responsive.css: -------------------------------------------------------------------------------- 1 | @media (min-width: 1000px) { 2 | 3 | 4 | #navigator-toolbox { display: flex; flex-wrap: wrap; } 5 | 6 | 7 | #nav-bar { 8 | 9 | order: var(--uc-urlbar-position); 10 | width: var(--uc-urlbar-min-width); 11 | 12 | } 13 | 14 | 15 | #titlebar { 16 | 17 | order: 2; 18 | width: calc(100vw - var(--uc-urlbar-min-width) - 1px); 19 | 20 | } 21 | 22 | 23 | #PersonalToolbar { 24 | 25 | order: var(--uc-toolbar-position); 26 | width: 100%; 27 | 28 | } 29 | 30 | 31 | #navigator-toolbox:focus-within #nav-bar { width: var(--uc-urlbar-max-width); } 32 | #navigator-toolbox:focus-within #titlebar { width: calc(100vw - var(--uc-urlbar-max-width) - 1px); } 33 | 34 | 35 | } 36 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-tabs.css: -------------------------------------------------------------------------------- 1 | /* remove gap after pinned tabs */ 2 | #tabbrowser-tabs[haspinnedtabs]:not([positionpinnedtabs]) 3 | > #tabbrowser-arrowscrollbox 4 | > .tabbrowser-tab[first-visible-unpinned-tab] { margin-inline-start: 0 !important; } 5 | 6 | 7 | 8 | 9 | 10 | /* remove tab shadow */ 11 | .tabbrowser-tab 12 | >.tab-stack 13 | > .tab-background { box-shadow: none !important; } 14 | 15 | 16 | /* multi tab selection */ 17 | #tabbrowser-tabs:not([noshadowfortests]) .tabbrowser-tab:is([multiselected]) 18 | > .tab-stack 19 | > .tab-background:-moz-lwtheme { outline-color: var(--toolbarseparator-color) !important; } 20 | 21 | 22 | 23 | 24 | 25 | /* tab close button options */ 26 | .tabbrowser-tab:not([pinned]) .tab-close-button { display: var(--show-tab-close-button) !important; } 27 | .tabbrowser-tab:not([pinned]):hover .tab-close-button { display: var(--show-tab-close-button-hover) !important } 28 | 29 | 30 | 31 | 32 | 33 | /* adaptive tab width */ 34 | .tabbrowser-tab[selected][fadein]:not([pinned]) { max-width: var(--uc-active-tab-width) !important; } 35 | .tabbrowser-tab[fadein]:not([selected]):not([pinned]) { max-width: var(--uc-inactive-tab-width) !important; } 36 | 37 | 38 | 39 | 40 | 41 | /* container tabs indicator */ 42 | .tabbrowser-tab[usercontextid] 43 | > .tab-stack 44 | > .tab-background 45 | > .tab-context-line { 46 | 47 | margin: -1px var(--container-tabs-indicator-margin) 0 var(--container-tabs-indicator-margin) !important; 48 | height: 1px !important; 49 | 50 | box-shadow: var(--uc-identity-glow) var(--identity-tab-color) !important; 51 | 52 | } 53 | 54 | 55 | 56 | 57 | 58 | /* show favicon when media is playing but tab is hovered */ 59 | .tab-icon-image:not([pinned]) { opacity: 1 !important; } 60 | 61 | 62 | /* Makes the speaker icon to always appear if the tab is playing (not only on hover) */ 63 | .tab-icon-overlay:not([crashed]), 64 | .tab-icon-overlay[pinned][crashed][selected] { 65 | 66 | top: 5px !important; 67 | z-index: 1 !important; 68 | 69 | padding: 1.5px !important; 70 | inset-inline-end: -8px !important; 71 | width: 16px !important; height: 16px !important; 72 | 73 | border-radius: 10px !important; 74 | 75 | } 76 | 77 | 78 | /* style and position speaker icon */ 79 | .tab-icon-overlay:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) { 80 | 81 | stroke: transparent !important; 82 | background: transparent !important; 83 | opacity: 1 !important; fill-opacity: 0.8 !important; 84 | 85 | color: currentColor !important; 86 | 87 | stroke: var(--toolbar-bgcolor) !important; 88 | background-color: var(--toolbar-bgcolor) !important; 89 | 90 | } 91 | 92 | 93 | /* change the colours of the speaker icon on active tab to match tab colours */ 94 | .tabbrowser-tab[selected] .tab-icon-overlay:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) { 95 | 96 | stroke: var(--toolbar-bgcolor) !important; 97 | background-color: var(--toolbar-bgcolor) !important; 98 | 99 | } 100 | 101 | 102 | .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) { margin-inline-end: 9.5px !important; } 103 | 104 | 105 | .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing], [crashed]) { 106 | 107 | top: 0 !important; 108 | 109 | padding: 0 !important; 110 | margin-inline-end: 5.5px !important; 111 | inset-inline-end: 0 !important; 112 | 113 | } 114 | 115 | 116 | .tab-icon-overlay:not([crashed])[soundplaying]:hover, 117 | .tab-icon-overlay:not([crashed])[muted]:hover, 118 | .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover { 119 | 120 | color: currentColor !important; 121 | stroke: var(--toolbar-color) !important; 122 | background-color: var(--toolbar-color) !important; 123 | fill-opacity: 0.95 !important; 124 | 125 | } 126 | 127 | 128 | .tabbrowser-tab[selected] .tab-icon-overlay:not([crashed])[soundplaying]:hover, 129 | .tabbrowser-tab[selected] .tab-icon-overlay:not([crashed])[muted]:hover, 130 | .tabbrowser-tab[selected] .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover { 131 | 132 | color: currentColor !important; 133 | stroke: var(--toolbar-color) !important; 134 | background-color: var(--toolbar-color) !important; 135 | fill-opacity: 0.95 !important; 136 | 137 | } 138 | 139 | 140 | /* speaker icon colour fix */ 141 | #TabsToolbar .tab-icon-overlay:not([crashed])[soundplaying], 142 | #TabsToolbar .tab-icon-overlay:not([crashed])[muted], 143 | #TabsToolbar .tab-icon-overlay:not([crashed])[activemedia-blocked] { color: var(--toolbar-color) !important; } 144 | 145 | 146 | /* speaker icon colour fix on hover */ 147 | #TabsToolbar .tab-icon-overlay:not([crashed])[soundplaying]:hover, 148 | #TabsToolbar .tab-icon-overlay:not([crashed])[muted]:hover, 149 | #TabsToolbar .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover { color: var(--toolbar-bgcolor) !important; } 150 | -------------------------------------------------------------------------------- /firefox/chrome/includes/cascade-tcr.css: -------------------------------------------------------------------------------- 1 | #TabsToolbar { display: none !important; } 2 | #nav-bar { width: 100vw !important; } 3 | 4 | 5 | 6 | #browser { position: relative; } 7 | #sidebar-box[sidebarcommand*="tabcenter"] #sidebar-header { display: none; } 8 | 9 | #sidebar-box[sidebarcommand*="tabcenter"]:not([hidden]) { 10 | 11 | display: block; 12 | 13 | position: absolute; 14 | top: 0; bottom: 0; 15 | z-index: 1; 16 | 17 | min-width: 50px !important; max-width: 50px !important; 18 | 19 | border-right: none; 20 | 21 | transition: all 0.2s ease; 22 | 23 | overflow: hidden; 24 | 25 | } 26 | 27 | [sidebarcommand*="tabcenter"] #sidebar, 28 | #sidebar-box[sidebarcommand*="tabcenter"]:hover { min-width: 10vw !important; width: 30vw !important; max-width: 250px !important; } 29 | 30 | [sidebarcommand*="tabcenter"] #sidebar { height: 100%; max-height: 100%; } 31 | 32 | #sidebar-box[sidebarcommand*="tabcenter"]:not([hidden]) ~ #appcontent { margin-left: 50px; } 33 | #main-window[inFullscreen][inDOMFullscreen] #appcontent { margin-left: 0; } 34 | /* Removes gap between active tab highlight and edge of bar */ 35 | #sidebar-box[sidebarcommand="tabcenter-reborn_ariasuni-sidebar-action"] #sidebar-header, #sidebar-box[sidebarcommand="tabcenter-reborn_ariasuni-sidebar-action"] ~ #sidebar-splitter { 36 | display: none; 37 | } 38 | 39 | -------------------------------------------------------------------------------- /firefox/chrome/userChrome.css: -------------------------------------------------------------------------------- 1 | /*==============================================================================================* 2 | 3 | +-----+-----+-----+-----+-----+-----+-----+ 4 | | █▀▀ | ▄▀█ | █▀▀ | █▀▀ | ▄▀█ | █▀▄ | █▀▀ | 5 | | █▄▄ | █▀█ | ▄▄█ | █▄▄ | █▀█ | █▄▀ | ██▄ | 6 | +-----+-----+-----+-----+-----+-----+-----+ 7 | 8 | Description: Cascade is a minimalstic and keyboard centered custom theme removing a lot of the 9 | subjective clutter default Firefox comes with. This theme is highly inspired by the 10 | stylistic choices of SimpleFox by Miguel Ávila. 🦊 11 | https://github.com/migueravila/SimpleFox 12 | 13 | Author: Andreas Grafen 14 | (https://andreas.grafen.info) 15 | 16 | Repository: https://github.com/andreasgrafen/cascade 17 | Thank you Nick, Abdallah, Benyamin and Wael for all the great suggestions for improvements! ♡ 18 | 19 | Nick: https://github.com/nicksundermeyer 20 | Abdallah: https://github.com/HeiWiper 21 | Benyamin: https://github.com/benyaminl 22 | Wael: https://github.com/wael444 23 | 24 | If you're looking for a **mouse-friendly** clone please check out Waterfall. 25 | https://github.com/crambaud/waterfall 26 | 27 | *==============================================================================================*/ 28 | 29 | 30 | 31 | @import 'includes/cascade-config.css'; 32 | @import 'includes/cascade-mocha.css'; 33 | @import 'includes/cascade-tcr.css'; 34 | @import 'includes/cascade-layout.css'; 35 | /*@import 'includes/cascade-responsive.css';*/ 36 | @import 'includes/cascade-floating-panel.css'; 37 | 38 | @import 'includes/cascade-nav-bar.css'; 39 | @import 'includes/cascade-tabs.css'; 40 | -------------------------------------------------------------------------------- /firefox/vimium/vimium.css: -------------------------------------------------------------------------------- 1 | #vimiumHintMarkerContainer div.internalVimiumHintMarker, #vimiumHintMarkerContainer div.vimiumHintMarker { 2 | padding: 3px 4px; 3 | background: #b4befe; /* peach */ 4 | border: 1; 5 | border-color: #181825; /* mantle */ 6 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); 7 | } 8 | 9 | #vimiumHintMarkerContainer div span { 10 | color: #181825; /* mantle */ 11 | text-shadow: none; 12 | } 13 | 14 | #vimiumHintMarkerContainer div > .matchingCharacter { 15 | opacity: 1.0; 16 | } 17 | 18 | #vimiumHintMarkerContainer div > .matchingCharacter ~ span { 19 | color: #585B70; /* surface2 */ 20 | } 21 | 22 | #vomnibar { 23 | background: #1E1E2E; /* base */ 24 | border: 2px solid #B4BEFE; /* lavender */ 25 | animation: show 200ms cubic-bezier(0, 0, 0.2, 1) forwards; 26 | } 27 | 28 | @keyframes show { 29 | 0% { 30 | transform: translateY(50px); 31 | opacity: 0; 32 | } 33 | 100% { 34 | transform: translateY(0); 35 | opacity: 1; 36 | } 37 | } 38 | 39 | #vomnibar input { 40 | color: #CDD6F4; /* text */ 41 | font: -moz-window; 42 | background: #1E1E2E; /* base */ 43 | border: none; 44 | padding: 2; 45 | } 46 | 47 | #vomnibar .vomnibarSearchArea { 48 | padding: 10px 30px; 49 | border: none; 50 | background: #1E1E2E; /* base */ 51 | } 52 | 53 | #vomnibar ul { 54 | padding: 0; 55 | background: #1E1E2E; /* base */ 56 | border-top: 1px solid #313244; /* surface0 */ 57 | } 58 | 59 | #vomnibar li { 60 | padding: 10px; 61 | border-bottom: 1px solid #313244; /* surface0 */ 62 | } 63 | 64 | #vomnibar li .vomnibarTopHalf, 65 | #vomnibar li .vomnibarBottomHalf { 66 | padding: 3px 0; 67 | } 68 | 69 | #vomnibar li .vomnibarSource { 70 | color: #b4befe; /* peach */ 71 | } 72 | 73 | #vomnibar li em, 74 | #vomnibar li .vomnibarTitle { 75 | color: #89B4FA; /* blue */ 76 | font-weight: bold; 77 | } 78 | 79 | #vomnibar li .vomnibarUrl { 80 | color: #F5E0DC; /* rosewater */ 81 | } 82 | 83 | #vomnibar li .vomnibarMatch { 84 | color: #A6E3A1; /* green */ 85 | font-weight: bold; 86 | } 87 | 88 | #vomnibar li .vomnibarTitle .vomnibarMatch { 89 | color: #89B4FA; /* blue */ 90 | } 91 | 92 | #vomnibar li.vomnibarSelected { 93 | background-color: #313244; /* surface0 */ 94 | } 95 | 96 | div.vimiumHUD { 97 | background: #1E1E2E; /* base */ 98 | border: none; 99 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); 100 | } 101 | 102 | div.vimiumHUD span#hud-find-input, 103 | div.vimiumHUD .vimiumHUDSearchAreaInner { 104 | color: #CDD6F4; /* text */ 105 | } 106 | 107 | div.vimiumHUD .hud-find { 108 | background-color: #1E1E2E; /* base */ 109 | border: none; 110 | } 111 | 112 | div.vimiumHUD .vimiumHUDSearchArea { 113 | background-color: #1E1E2E; /* base */ 114 | } -------------------------------------------------------------------------------- /fonts/GrapeNuts-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/GrapeNuts-Regular.ttf -------------------------------------------------------------------------------- /fonts/Icomoon-Feather.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/Icomoon-Feather.ttf -------------------------------------------------------------------------------- /fonts/Iosevka-Nerd-Font-Complete.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/Iosevka-Nerd-Font-Complete.ttf -------------------------------------------------------------------------------- /fonts/JetBrains-Mono-Nerd-Font-Complete.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/JetBrains-Mono-Nerd-Font-Complete.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Black.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Bold-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Bold-Italic.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Bold.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Light.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Medium.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Regular-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Regular-Italic.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Regular.ttf -------------------------------------------------------------------------------- /fonts/ProductSans-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/ProductSans-Thin.ttf -------------------------------------------------------------------------------- /fonts/Roboto Mono Bold Nerd Font Complete.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/Roboto Mono Bold Nerd Font Complete.ttf -------------------------------------------------------------------------------- /fonts/Roboto Mono Nerd Font Complete.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/fonts/Roboto Mono Nerd Font Complete.ttf -------------------------------------------------------------------------------- /grubupdate.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | sudo grub-install --no-nvram 4 | sudo grub-mkconfig -o /boot/grub/grub.cfg 5 | -------------------------------------------------------------------------------- /images/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/1.png -------------------------------------------------------------------------------- /images/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/2.png -------------------------------------------------------------------------------- /images/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/3.png -------------------------------------------------------------------------------- /images/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/4.png -------------------------------------------------------------------------------- /images/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/5.png -------------------------------------------------------------------------------- /images/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/6.png -------------------------------------------------------------------------------- /images/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/7.png -------------------------------------------------------------------------------- /images/combine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mel-edo/awesome-setup/44403918daaec6d6e1878edf731297a1c0bc022f/images/combine.png --------------------------------------------------------------------------------