major home-manager changes

This commit is contained in:
2021-05-02 09:24:02 +05:30
parent da3ef21ccd
commit 70b18cf4fd
33 changed files with 1115 additions and 37 deletions

30
home/config/bspwm/bspwmrc Executable file
View File

@@ -0,0 +1,30 @@
#! /bin/sh
bspc rule -r "*"
##Autostart
pgrep -x sxhkd > /dev/null || sxhkd &
picom --experimental-backends &
feh --bg-scale ~/Downloads/gruvbox.jpg &
killall "polybar"
polybar main &
killall node
node /mnt/Stuff/code/muhbot
bspc monitor -d          
#bspc monitor -d I II III IV V VI VII VIII IX X
bspc config border_width 2
bspc config window_gap 10
bspc config focus_follows_pointer true
bspc config split_ratio 0.52
bspc config borderless_monocle true
bspc config gapless_monocle true
bspc config single_monocle true
bspc config top_padding 50
bspc config normal_border_color "#ffffff"
bspc config active_border_color "#1bb1b1"
bspc config focused_border_color "#fe8019"
bspc config urgent_border_color "#fe8019"

View File

@@ -0,0 +1,355 @@
:root {
/* Minimal Functional Fox variables*/
--mff-bg: #1d2021;
--mff-icon-color: #bbbbbb;
--mff-nav-toolbar-padding: 8px;
--mff-sidebar-bg: var(--mff-bg);
--mff-sidebar-color: #e0fbfc;
--mff-tab-border-radius: 0px;
--mff-tab-color: #ebdbb2;
--mff-tab-font-family: "Fira Mono for Powerline", sans;
--mff-tab-font-size: 11pt;
--mff-tab-font-weight: 400;
--mff-tab-height: 32px;
--mff-tab-pinned-bg: #70c1b3;
--mff-tab-selected-bg: #ebdbb2;
--mff-tab-selected-color: #1d2021;
--mff-tab-soundplaying-bg: #818181;
--mff-tab-soundplaying-color: #1d2021;
--mff-urlbar-color: #98c1d9;
--mff-urlbar-focused-color: #e0fbfc;
--mff-urlbar-font-family: "Fira Mono for Powerline", serif;
--mff-urlbar-font-size: 12pt;
--mff-urlbar-font-weight: 500;
--mff-urlbar-results-color: #e0fbfc;
--mff-urlbar-results-font-family: "Fira Mono for Powerline", serif;
--mff-urlbar-results-font-size: 12pt;
--mff-urlbar-results-font-weight: 500;
--mff-urlbar-results-url-color: #98c1d9;
/* --mff-tab-selected-bg: linear-gradient(90deg, rgba(232,74,95,1) 0%, rgba(255,132,124,1) 50%, rgba(254,206,168,1) 100%); */
/* --mff-urlbar-font-weight: 600; */
/* Overriden Firefox variables*/
--autocomplete-popup-background: var(--mff-bg) !important;
--default-arrowpanel-background: var(--mff-bg) !important;
--default-arrowpanel-color: #fefefa !important;
--lwt-toolbarbutton-icon-fill: var(--mff-icon-color) !important;
--panel-disabled-color: #f9f9fa80;
--toolbar-bgcolor: var(--mff-bg) !important;
--urlbar-separator-color: transparent !important;
}
/*
_____ _ ___ ___
|_ _/_\ | _ ) __|
| |/ _ \| _ \__ \
|_/_/ \_\___/___/
*/
.tab-background[selected="true"] {
background: var(--mff-tab-selected-bg) !important;
}
.tab-text[selected="true"] {
color: var(--mff-tab-selected-color) !important;
font-weight: bold !important;
}
.tab-background:not[visuallyselected] {
background: var(--mff-tab-selected-bg) !important;
opacity: 0.5 !important;
}
/* This positions the tabs under the navaigator container */
#titlebar {
-moz-box-ordinal-group: 3 !important;
}
.tabbrowser-tab::after,
.tabbrowser-tab::before {
border-left: none !important;
}
.tab-background {
border: none !important;
}
.tabbrowser-arrowscrollbox {
margin-inline-start: 4px !important;
margin-inline-end: 0px !important;
}
.tab-close-button {
display: none !important;
}
.tab-text {
font-family: var(--mff-tab-font-family);
font-weight: var(--mff-tab-font-weight);
font-size: var(--mff-tab-font-size) !important;
color: var(--mff-tab-color);
}
/* Hide the favicon for tabs */
hbox.tab-content .tab-icon-image {
display: none !important;
}
/* Show the favicon for tabs that are pinned */
hbox.tab-content[pinned=true] .tab-icon-image {
display: initial !important;
}
hbox.tab-content[pinned=true] .tab-text {
display: none !important;
}
#tabbrowser-tabs {
--tab-loading-fill: #033433 !important;
}
.tab-label-container:not([textoverflow]) {
display: flex;
overflow: hidden;
justify-content: center;
width: 50% !important;
max-width: 50% !important;
min-width: 50% !important;
}
/* .tab-label-container::after {
content: "?" !important;
} */
.tab-line {
display: none !important;
}
.tabbrowser-tab {
border-radius: var(--mff-tab-border-radius) !important;
border-width: 0;
height: var(--mff-tab-height) !important;
margin-bottom: 4px !important;
margin-inline-end: 4px !important;
margin-top: 4px !important;
max-height: var(--mff-tab-height) !important;
min-height: var(--mff-tab-height) !important;
}
.tabbrowser-tab[soundplaying="true"] {
background-color: var(--mff-tab-soundplaying-bg) !important;
}
#tabs-newtab-button {
list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/add.svg") !important;
opacity: 0.7;
}
.tab-icon-sound {
display: none !important;
}
/*
_____ ___ ___ _ ___ _ ___
|_ _/ _ \ / _ \| | | _ ) /_\ | _ \
| || (_) | (_) | |__| _ \/ _ \| /
|_| \___/ \___/|____|___/_/ \_\_|_\
*/
.urlbar-icon > image {
fill: var(--mff-icon-color) !important;
color: var(--mff-icon-color) !important;
}
.toolbarbutton-text {
color: var(--mff-icon-color) !important;
}
.urlbar-icon {
color: var(--mff-icon-color) !important;
}
.toolbarbutton-icon {
/* filter: drop-shadow(0 0 0.75rem crimson); */
}
#urlbar-results {
font-family: var(--mff-urlbar-results-font-family);
font-weight: var(--mff-urlbar-results-font-weight);
font-size: var(--mff-urlbar-results-font-size) !important;
color: var(--mff-urlbar-results-color) !important;
}
.urlbarView-row[type="bookmark"] > span{
color: green !important;
}
.urlbarView-row[type="switchtab"] > span{
color: orange !important;
}
.urlbarView-url, .search-panel-one-offs-container {
color: var(--mff-urlbar-results-url-color) !important;
font-family: var(--mff-urlbar-font-family);
font-weight: var(--mff-urlbar-results-font-weight);
font-size: var(--mff-urlbar-font-size) !important;
}
.urlbarView-favicon, .urlbarView-type-icon {
display: none !important;
}
#urlbar-input {
font-size: var(--mff-urlbar-font-size) !important;
color: var(--mff-urlbar-color) !important;
font-family: var(--mff-urlbar-font-family) !important;
font-weight: var(--mff-urlbar-font-weight)!important;
text-align: center !important;
}
#tracking-protection-icon-container, #identity-box {
display: none;
}
#back-button > .toolbarbutton-icon{
--backbutton-background: transparent !important;
border: none !important;
}
#back-button {
list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/left-arrow.svg") !important;
}
#forward-button {
list-style-image: url("https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/right-arrow.svg") !important;
}
toolbar {
background-image: none !important;
}
#urlbar-background {
opacity: .98 !important;
}
#navigator-toolbox, toolbaritem {
border: none !important;
}
#urlbar-background {
background-color: var(--mff-bg) !important;
border: none !important;
}
.toolbar-items {
background-color: var(--mff-bg) !important;
}
#sidebar-search-container {
background-color: var(--mff-sidebar-bg) !important;
}
box.panel-arrowbox {
display: none;
}
box.panel-arrowcontent {
border-radius: 8px !important;
border: none !important;
}
tab.tabbrowser-tab {
overflow: hidden;
}
tab.tabbrowser-tab:hover {
box-shadow: 0 1px 4px rgba(0,0,0,.05);
}
image#star-button {
display: none;
}
toolbar#nav-bar {
padding: var(--mff-nav-toolbar-padding) !important;
}
toolbar#nav-bar {
padding: 4px !important;
}
#urlbar {
max-width: 70% !important;
margin: 0 15% !important;
/* position: unset!important; */;
}
#urlbar-input:focus {
color: var(--mff-urlbar-focused-color) !important;
}
.megabar[breakout-extend="true"]:not([open="true"]) > #urlbar-background {
box-shadow: none !important;
background-color: transparent !important;
}
toolbarbutton {
box-shadow: none !important;
}
/*
___ ___ ___ ___ ___ _ ___
/ __|_ _| \| __| _ ) /_\ | _ \
\__ \| || |) | _|| _ \/ _ \| /
|___/___|___/|___|___/_/ \_\_|_\
*/
.close-icon, .urlbar-icon {
fill: var(--mff-icon-color) !important;
}
.sidebar-placesTree {
color: var(--mff-sidebar-color) !important;
}
#sidebar-switcher-target {
/* color: white !important; */
}
#sidebar-box {
--sidebar-background-color: var(--mff-sidebar-bg) !important;
}
splitter#sidebar-splitter {
opacity: 0 !important;
}
splitter#sidebar-splitter {
border: none !important;
background-color: transparent !important;
}
image#sidebar-icon {
display: none;
}
/*
_ ___ ___ _____ _____ _ _ _ ___ _
/_\ | _ \ _ \/ _ \ \ / / _ \/_\ | \| | __| |
/ _ \| / / (_) \ \/\/ /| _/ _ \| .` | _|| |__
/_/ \_\_|_\_|_\\___/ \_/\_/ |_|/_/ \_\_|\_|___|____|
*/
.panel-arrowcontent {
padding: 0px !important;
margin: 0px !important;
}
toolbarseparator {
display: none;
}

View File

@@ -0,0 +1,23 @@
@import url("userChrome.css");
/* Removes white loading page */
@-moz-document url(about:blank), url(about:newtab), url(about:home) {
html:not(#ublock0-epicker), html:not(#ublock0-epicker) body, #newtab-customize-overlay {
background: var(--mff-bg) !important;
}
}
/* Hide scrollbar */
:root{
scrollbar-width: none !important;
}
@-moz-document url(about:privatebrowsing) {
:root{
scrollbar-width: none !important;
}
}

24
home/config/mpd/mpd.conf Normal file
View File

@@ -0,0 +1,24 @@
music_directory "~/Music"
playlist_directory "~/.config/mpd/playlists"
db_file "~/.config/mpd/database"
log_file "~/.config/mpd/log"
pid_file "~/.config/mpd/pid"
state_file "~/.config/mpd/state"
bind_to_address "~/.config/mpd/socket"
bind_to_address "localhost"
port "6600"
restore_paused "yes"
input {
plugin "curl"
}
audio_output {
type "pulse"
name "pulse audio"
}
audio_output {
type "fifo"
name "Visualizer feed"
path "/tmp/g.fifo"
format "44100:16:2"
}
filesystem_charset "UTF-8"

View File

@@ -0,0 +1,62 @@
autocenter_mode = "yes"
follow_now_playing_lyrics = "yes"
lyrics_directory = "~/.lyrics"
mpd_music_dir="~/Music"
fetch_lyrics_for_current_song_in_background = "yes"
#store_lyrics_in_song_dir = yes
browser_sort_mode=mtime
colors_enabled = "yes"
main_window_color = "white"
header_window_color = "180"
volume_color = "215"
progressbar_color = "180"
progressbar_elapsed_color = "16"
statusbar_color = "43"
active_window_border = "blue"
user_interface = "alternative"
#song_list_format="(4)[230]{l}"
song_columns_list_format = "(4)[230]{l} (30)[219]{t} (15)[180]{a} (15)[215]{b}"
song_list_format = "{$(219)%a} - {$(230)%t}"
#song_list_format = "{$7%a - $9}{$5%t$9}|{$5%f$9}$R{$6%b $9}{$3%l$9}"
song_status_format = " $6%a $7⟫⟫ $3%t $7⟫⟫ $4%b "
visualizer_data_source = "/tmp/g.fifo"
#visualizer_output_name = "my_fifo"
visualizer_type = "spectrum"
#visualizer_type = "ellipse"
visualizer_fps = 144
visualizer_in_stereo = "yes"
visualizer_look = "◆▋"
visualizer_spectrum_smooth_look="yes"
playlist_editor_display_mode = "classic"
playlist_display_mode = "columns"
cyclic_scrolling = "yes"
lines_scrolled = "2"
system_encoding = "utf-8"
regular_expressions = "extended"
#selected_item_prefix = "* "
#discard_colors_if_item_is_selected = "no"
#incremental_seeking = "yes"
#seek_time = "1"
## Visibility ##
header_visibility = "yes"
statusbar_visibility = "yes"
titles_visibility = "yes"
## Progress Bar ##
progressbar_look = "▃▃▃"
## Now Playing ##
now_playing_prefix = "> "
centered_cursor = "yes"
# Misc
display_bitrate = "yes"
enable_window_title = "yes"
empty_tag_marker = ""
#execute_on_song_change="~/.config/ncmpcpp/cover_obs.sh"

View File

@@ -0,0 +1,6 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhistcnt =4
let g:netrw_dirhist_4='/home/natto/.config/deemix'
let g:netrw_dirhist_3='/mnt/Stuff/Bruhniggacode/C++'
let g:netrw_dirhist_2='/home/natto/.config/ncmpcpp'
let g:netrw_dirhist_1='/home/otaku619/.config/mpd'

View File

@@ -0,0 +1,3 @@
{
"python.jediEnabled": false
}

127
home/config/nvim/init.vim Normal file
View File

@@ -0,0 +1,127 @@
"SETTINGS
let g:mapleader = "\<Space>"
syntax enable
set modifiable
set cursorline
set hidden
set nowrap
set encoding=utf-8
set pumheight=10
set fileencoding=utf-8
set ruler
set cmdheight=2
set iskeyword+=-
set mouse=a
set splitbelow
set splitright
set t_Co=256
set conceallevel=0
set tabstop=4
set shiftwidth=4
set smarttab
set expandtab
set smartindent
set autoindent
set number
set relativenumber
set background=dark
set showtabline=2
set noshowmode
set nobackup
set nowritebackup
set updatetime=300
set timeoutlen=100
set formatoptions-=cro
set clipboard=unnamedplus
au! BufWritePost $MYVIMRC source %
cmap w!! w !sudo tee %
"MAPPINGS
inoremap <S-Space> <ESC>
nnoremap m h|xnoremap m h|onoremap m h|
nnoremap n j|xnoremap n j|onoremap n j|
nnoremap e k|xnoremap e k|onoremap e k|
nnoremap i l|xnoremap i l|onoremap i l|
nnoremap M H|xnoremap M H|onoremap M H|
nnoremap N J|xnoremap N J|onoremap N J|
nnoremap E K|xnoremap E K|onoremap E K|
nnoremap I L|xnoremap I L|onoremap I L|
nnoremap h i|xnoremap h i|onoremap h i|
nnoremap H I|xnoremap H I|onoremap H I|
nnoremap k n|xnoremap k n|onoremap k n|
nnoremap K N|xnoremap K N|onoremap K N|
nnoremap j m|xnoremap j m|onoremap j m|
nnoremap J M|xnoremap J M|onoremap J M|
nnoremap l e|xnoremap l e|onoremap l e|
nnoremap L E|xnoremap L E|onoremap L E|
nnoremap <C-s> :w<CR>
nnoremap <M-n> :resize -2<CR>
nnoremap <M-e> :resize +2<CR>
nnoremap <M-m> :vertical resize -2<CR>
nnoremap <M-i> :vertical resize +2<CR>
nnoremap <TAB> :bnext<CR>
nnoremap <S-TAB> :bprevious<CR>
vnoremap < <gv
vnoremap > >gv
nnoremap <C-q> :bd!<CR>
nnoremap <C-x> :bd#<CR>
tnoremap <C-q> :bd!<CR>
nnoremap <C-M> <C-W>h|xnoremap <C-M> <C-W>h|
nnoremap <C-N> <C-W>j|xnoremap <C-N> <C-W>j|
nnoremap <C-E> <C-W>k|xnoremap <C-E> <C-W>k|
nnoremap <C-I> <C-W>l|xnoremap <C-I> <C-W>l|
"STATUSLINE
"let right=""
"let left=""
set laststatus=2
set statusline=
set statusline+=%1*
set statusline+=\ %{ModeBruh()}\
set statusline+=%2*\%{GitBruh()}\
set statusline+=%3*\ %f\
set statusline+=%1*
set statusline+=%=
set statusline+=%3*\ %{strlen(&fenc)?&fenc:'none'}\
set statusline+=%2*\ %y\
let bruh="%  "
let bruh1="  "
set statusline+=%1*\ %p%{bruh}%l/%L%{bruh1}%c\
hi User1 guibg=#fbf1c7 guifg=#1d2021
hi User2 guibg=#1d2021 guifg=#fbf1c7
hi User3 guifg=#fbf1c7 guibg=#665c54
function! ModeBruh()
let l:mode=mode()
if l:mode==#"n"
return "NORMAL"
elseif l:mode==?"v"
return "VISUAL"
elseif l:mode==#"i"
return "INSERT"
elseif l:mode==#"R"
return "REPLACE"
elseif l:mode==?"s"
return "SELECT"
elseif l:mode==#"t"
return "TERMINAL"
elseif l:mode==#"c"
return "COMMAND"
elseif l:mode==#"!"
return "SHELL"
endif
endfunction
function! GitBruh()
let l:branchname = GitBranch()
return strlen(l:branchname) > 0?'  '.l:branchname.'':''
endfunction
function! GitBranch()
return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'")
endfunction
set termguicolors

19
home/config/nvim/utils.vim Executable file
View File

@@ -0,0 +1,19 @@
" I got this part of the config from Michael Lan Source = https://www.youtube.com/watch?v=I4Rz0qoWYBl
function! TermWrapper(command) abort
if !exists('g:split_term_style') | let g:split_term_style = 'vertical' | endif
if g:split_term_style ==# 'vertical'
let buffercmd = 'vnew'
elseif g:split_term_style ==# 'horizontal'
let buffercmd = 'new'
else
echoerr 'ERROR! g:split_term_style is not a valid value (must be ''horizontal'' or ''vertical'' but is currently set to ''' . g:split_term_style . ''')'
throw 'ERROR! g:split_term_style is not a valid value (must be ''horizontal'' or ''vertical'')'
endif
exec buffercmd
exec 'term ' . a:command
exec 'startinsert'
endfunction
command! -nargs=0 CompileAndRun call TermWrapper(printf('g++ -std=c++17 %s && ./a.out', expand('%')))
autocmd FileType cpp nnoremap <F5> :CompileAndRun<CR>
let g:split_term_style = 'vertical'

154
home/config/sxhkd/sxhkdrc Normal file
View File

@@ -0,0 +1,154 @@
#
# wm independent hotkeys
#
# terminal emulator
super + Return
st
# program launcher
super + d
rofi -show drun
# make sxhkd reload its configuration files:
super + alt + c
pkill -USR1 -x sxhkd
# quit/restart bspwm
super + shift + {e,r}
bspc {quit,wm -r}
# close and kill
super + {_,shift + }q
bspc node -{c,k}
# alternate between the tiled and monocle layout
super + shift + f
bspc desktop -l next
# send the newest marked node to the newest preselected node
#super + y
# bspc node newest.marked.local -n newest.!automatic.local
# swap the current node and the biggest window
#super + g
# bspc node -s biggest.window
#
# state/flags
#
# set the window state
super + {t,shift + t,s,f}
bspc node -t {\~tiled,\~pseudo_tiled,\~floating,\~fullscreen}
# set the node flags
#super + ctrl + {m,x,y,z}
# bspc node -g {marked,locked,sticky,private}
#
# focus/swap
#
# focus the node in the given direction
super + shift + {h,j,k,l}
bspc node -s {west,south,north,east}
super + {h,j,k,l}
bspc node -f {west,south,north,east}
# focus the code for the given path jump
#super + {p,b,comma,period}
# bspc node -f @{parent,brother,first,second}
# focus the next/previous window in the current desktop
super + {_,shift + }c
bspc node -f {next,prev}.local.!hidden.window
# focus the next/previous desktop in the current monitor
super + bracket{left,right}
bspc desktop -f {prev,next}.local
# focus the last node/desktop
#super + {grave,Tab}
# bspc {node,desktop} -f last
# focus the older or newer node in the focus history
super + {o,i}
bspc wm -h off; \
bspc node {older,newer} -f; \
bspc wm -h on
# focus or send to the given desktop
super + {_,shift + }{1-9,0}
bspc {desktop -f,node -d} '^{1-9,10}'
#
# preselect
#
# preselect the direction
super + ctrl + {h,j,k,l}
bspc node -p {west,south,north,east}
# preselect the ratio
super + ctrl + {1-9}
bspc node -o 0.{1-9}
# cancel the preselection for the focused node
super + ctrl + space
bspc node -p cancel
# cancel the preselection for the focused desktop
super + ctrl + shift + space
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
#
# move/resize
#
# expand a window by moving one of its side outward
super + alt + {h,j,k,l}
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
# contract a window by moving one of its side inward
super + alt + shift + {h,j,k,l}
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
# move a floating window
super + {Left,Down,Up,Right}
bspc node -v {-20 0,0 20,0 -20,20 0}
#
# Screenshotting
#
@Print
flameshot & flameshot full -p ~/Pictures
# exec scrot '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
shift + @Print
flameshot & flameshot gui -p ~/Pictures
# exec scrot -s '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
#super + @Print
#flameshot gui full -p ~/Pictures
# exec scrot -u '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
alt + @Print
flameshot & flameshot gui -d 10000 -p ~/Pictures
# exec scrot -d 10 '%d-%m-%Y_%I-%M-%S%p.png' -e 'mv ~/$f ~/Pictures/'
#
#mpd/ncmpcpp
#
super + shift + n
mpc prev
super + shift + m
mpc next
super + shift + space
mpc toggle
super + A
mpc seek +00:00:05
super + D
mpc seek -00:00:05

View File

@@ -0,0 +1,14 @@
set statusbar-h-padding 0
set statusbar-v-padding 0
set page-padding 1
map w scroll half-up
map r scroll half-down
map s reload
map S rotate
map f zoom in
map q zoom out
map p follow link
map m left
map i right
map n down
map e up