diff options
24 files changed, 1613 insertions, 0 deletions
diff --git a/.Xdefaults b/.Xdefaults new file mode 100644 index 0000000..7dff6b4 --- /dev/null +++ b/.Xdefaults @@ -0,0 +1,55 @@ +URxvt.font: xft:DejaVu Sans Mono:size=12,xft:FiraCode Nerd Font Mono:size=12 +URxvt.boldFont: xft:DejaVu Sans Mono:size=12 +URxvt.italicFont: xft:DejaVu Sans Mono:size=12 +URxvt.boldItalicfont: xft:DejaVu Sans Mono:size=12 +URxvt.letterSpace: 0 +URxvt.lineSpace: 0 +URxvt.geometry: 92x24 +URxvt.internalBorder: 24 +URxvt.cursorBlink: true +URxvt.cursorUnderline: false +URxvt.saveline: 2048 +URxvt.scrollBar: false +URxvt.scrollBar_right: false +URxvt.urgentOnBell: true +URxvt.depth: 32 +URxvt.iso14755: false + +! do not scroll with output +URxvt*scrollTtyOutput: false + +! scroll in relation to buffer (with mouse scroll or Shift+Page Up) +URxvt*scrollWithBuffer: true + +! scroll back to the bottom on keypress +URxvt*scrollTtyKeypress: true +URxvt.letterSpace: -1 + +!! Common Keybinds for Navigations +URxvt.keysym.Shift-Up: command:\033]720;1\007 +URxvt.keysym.Shift-Down: command:\033]721;1\007 +URxvt.keysym.Control-Up: \033[1;5A +URxvt.keysym.Control-Down: \033[1;5B +URxvt.keysym.Control-Right: \033[1;5C +URxvt.keysym.Control-Left: \033[1;5D + + +!! Copy Paste & Other Extensions +URxvt.perl-ext-common: default,clipboard,url-select,keyboard-select,resize-font +URxvt.keysym.Shift-Control-V: eval:paste_clipboard +URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard +!URxvt.copyCommand: xclip -i -selection clipboard +!URxvt.pasteCommand: xclip -o -selection clipboard +!URxvt.keysym.C-Shift_L-c: perl:clipboard:copy +!URxvt.keysym.M-v: perl:clipboard:paste +URxvt.clipboard.autocopy: true +!URxvt.keysym.M-C-v: perl:clipboard:paste_escaped +URxvt.keysym.M-Escape: perl:keyboard-select:activate +URxvt.keysym.M-s: perl:keyboard-select:search +URxvt.keysym.M-u: perl:url-select:select_next +URxvt.urlLauncher: firefox +URxvt.underlineURLs: true +URxvt.urlButton: 1 + +URxvt.keysym.C-equal: resize-font:bigger +URxvt.geometry: 130x40 diff --git a/.Xresources b/.Xresources new file mode 100644 index 0000000..c426d40 --- /dev/null +++ b/.Xresources @@ -0,0 +1,97 @@ +! PaperColour Theme + +URxvt*depth: 40 +URxvt*background: rgba:eeee/eeee/eeee/ee00 + +URxvt.foreground: #4D4D4C +! URxvt.background: #EEEEEE + +! black +URxvt.color0: #EDEDED +URxvt.color8: #969694 + +! red +URxvt.color1: #D7005F +URxvt.color9: #D7005F + +! green +URxvt.color2: #718C00 +URxvt.color10: #718C00 + +! yellow / orange +URxvt.color3: #D75F00 +URxvt.color11: #D75F00 + +! blue + +URxvt.color4: #4271AE +URxvt.color12: #4271AE + +! magenta +URxvt.color5: #8959A8 +URxvt.color13: #8959A8 + +! cyan +URxvt.color6: #3E999F +URxvt.color14: #3E999F + +! white +URxvt.color7: #4D4D4C +URxvt.color15: #F5F5F5 + + +!! URxvt Appearance +URxvt.font: xft:DejaVu Sans Mono:size=12,xft:FiraCode Nerd Font Mono:size=12 +URxvt.boldFont: xft:DejaVu Sans Mono:size=12:Bold,xft:FiraCode Nerd Font Mono:size=12:Bold +URxvt.italicFont: xft:DejaVu Sans Mono:size=12:Italic +URxvt.boldItalicfont: xft:DejaVu Sans Mono:size=12:BoldItalic +URxvt.letterSpace: 0 +URxvt.lineSpace: 0 +URxvt.geometry: 90x24 +URxvt.internalBorder: 24 +URxvt.cursorBlink: true +URxvt.cursorUnderline: false +URxvt.saveline: 2048 +URxvt.scrollBar: false +URxvt.scrollBar_right: false +URxvt.urgentOnBell: true +URxvt.depth: 32 +URxvt.iso14755: false + +! do not scroll with output +URxvt*scrollTtyOutput: false + +! scroll in relation to buffer (with mouse scroll or Shift+Page Up) +URxvt*scrollWithBuffer: true + +! scroll back to the bottom on keypress +URxvt*scrollTtyKeypress: true +URxvt.letterSpace: -1 + +!! Common Keybinds for Navigations +URxvt.keysym.Shift-Up: command:\033]720;1\007 +URxvt.keysym.Shift-Down: command:\033]721;1\007 +URxvt.keysym.Control-Up: \033[1;5A +URxvt.keysym.Control-Down: \033[1;5B +URxvt.keysym.Control-Right: \033[1;5C +URxvt.keysym.Control-Left: \033[1;5D + + +!!! Copy Paste & Other Extensions +!URxvt.perl-ext-common: default,clipboard,url-select,keyboard-select,resize-font +!URxvt.keysym.Shift-Control-V: eval:paste_clipboard +!URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard +!!URxvt.copyCommand: xclip -i -selection clipboard +!!URxvt.pasteCommand: xclip -o -selection clipboard +!!URxvt.keysym.C-Shift_L-c: perl:clipboard:copy +!!URxvt.keysym.M-v: perl:clipboard:paste +!URxvt.clipboard.autocopy: true +!!URxvt.keysym.M-C-v: perl:clipboard:paste_escaped +!URxvt.keysym.M-Escape: perl:keyboard-select:activate +!URxvt.keysym.M-s: perl:keyboard-select:search +!URxvt.keysym.M-u: perl:url-select:select_next +!URxvt.urlLauncher: firefox +!URxvt.underlineURLs: true +!URxvt.urlButton: 1 + +URxvt.keysym.C-equal: resize-font:bigger diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml new file mode 100644 index 0000000..d31bd9d --- /dev/null +++ b/.config/alacritty/alacritty.yml @@ -0,0 +1,330 @@ +font: + normal: + family: Hack Nerd Font + style: Regular + + bold: + family: Hack Nerd Font + style: Bold + + italic: + family: Hack Nerd Font + style: Italic + + bold_italic: + family: Hack Nerd Font + style: Bold Italic + + size: 13 + # Configuration for Alacritty, the GPU enhanced terminal emulator. + # Import additional configuration files + # + # Imports are loaded in order, skipping all missing files, with the importing + # file being loaded last. If a field is already present in a previous import, it + # will be replaced. + # + # All imports must either be absolute paths starting with `/`, or paths relative + # to the user's home directory starting with `~/`. + #import: + # - /path/to/alacritty.yml + # Any items in the `env` entry below will be added as + # environment variables. Some entries may override variables + # set by alacritty itself. + #env: + # TERM variable + # + # This value is used to set the `$TERM` environment variable for + # each instance of Alacritty. If it is not present, alacritty will + # check the local terminfo database and use `alacritty` if it is + # available, otherwise `xterm-256color` is used. + #TERM: alacritty + +key_bindings: + - { key: Left, mods: Control, chars: "\x1bb" } + - { key: Right, mods: Control, chars: "\x1bf" } + - { key: Return, mods: Control|Shift, action: SpawnNewInstance } + +window: + + # Window dimensions (changes require restart) + # + # Number of lines/columns (not pixels) in the terminal. The number of columns + # must be at least `2`, while using a value of `0` for columns and lines will + # fall back to the window manager's recommended size. + #dimensions: + # columns: 0 + # lines: 0 + # Window position (changes require restart) + # + # Specified in number of pixels. + # If the position is not set, the window manager will handle the placement. + #position: + # x: 0 + # y: 0 + # Window padding (changes require restart) + # + # Blank space added around the window in pixels. This padding is scaled + # by DPI and the specified value is always added at both opposing sides. + #padding: + # x: 0 + # y: 0 + # Spread additional padding evenly around the terminal content. + #dynamic_padding: false + # Window decorations + # + # Values for `decorations`: + # - full: Borders and title bar + # - none: Neither borders nor title bar + # + # Values for `decorations` (macOS only): + # - transparent: Title bar, transparent background and title bar buttons + # - buttonless: Title bar, eransparent background and no title bar buttons + # ot + #decorations: full + # Background opacity + # + # Window opacity as a floating point number from `0.0` to `1.0`. + # The value `0.0` is completely transparent and `1.0` is opaque. + # background_opacity: 0.5 + opacity: 1 + # Startup Mode (changes require restart) + # + # Values for `startup_mode`: + # - Windowed + # - Maximized + # - Fullscreen + # + # Values for `startup_mode` (macOS only): + # - SimpleFullscreen + #startup_mode: Windowed + # Window title + #title: Alacritty + # Allow terminal applications to change Alacritty's window title. + #dynamic_title: true + # Window class (Linux/BSD only): + #class: + # Application instance name + #instance: Alacritty + # General application class + #general: Alacritty + # GTK theme variant (Linux/BSD only) + # + # Override the variant of the GTK theme. Commonly supported values are `dark` + # and `light`. Set this to `None` to use the default theme variant. + #gtk_theme_variant: None + #scrolling: + # Maximum number of lines in the scrollback buffer. + # Specifying '0' will disable scrolling. + #history: 10000 + # Scrolling distance multiplier. + #multiplier: 3 + # Font configuration + #font: + # Normal (roman) font face + #normal: + # Font family + # + # Default: + # - (macOS) Menlo + # - (Linux/BSD) monospace + # - (Windows) Consolas + #family: monospace + # The `style` can be specified to pick a specific face. + #style: Regular + # Bold font face + #bold: + # Font family + # + # If the bold family is not specified, it will fall back to the + # value specified for the normal font. + #family: monospace + # The `style` can be specified to pick a specific face. + #style: Bold + # Italic font face + #italic: + # Font family + # + # If the italic family is not specified, it will fall back to the + # value specified for the normal font. + #family: monospace + # The `style` can be specified to pick a specific face. + #style: Italic + # Bold italic font face + #bold_italic: + # Font family + # + # If the bold italic family is not specified, it will fall back to the + # value specified for the normal font. + #family: monospace + # The `style` can be specified to pick a specific face. + #style: Bold Italic + # Point size + #size: 11.0 + # Offset is the extra space around each character. `offset.y` can be thought + # of as modifying the line spacing, and `offset.x` as modifying the letter + # spacing. + #offset: + # x: 0 + # y: 0 + # Glyph offset determines the locations of the glyphs within their cells with + # the default being at the bottom. Increasing `x` moves the glyph to the + # right, increasing `y` moves the glyph upward. + #glyph_offset: + # x: 0 + # y: 0 + # Thin stroke font rendering (macOS only) + # + # Thin strokes are suitable for retina displays, but for non-retina screens + # it is recommended to set `use_thin_strokes` to `false`. + #use_thin_strokes: true + # If `true`, bold text is drawn using the bright color variants. + #draw_bold_text_with_bright_colors: false + # Colors (Tomorrow Night) + #colors: + # Default colors + #primary: + # background: '#1d1f21' + # foreground: '#c5c8c6' + # Bright and dim foreground colors + # + # The dimmed foreground color is calculated automatically if it is not + # present. If the bright foreground color is not set, or + # `draw_bold_text_with_bright_colors` is `false`, the normal foreground + # color will be used. + #dim_foreground: '#828482' + #bright_foreground: '#eaeaea' + # Cursor colors + # + # Colors which should be used to draw the terminal cursor. + # + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #cursor: + # text: CellBackground + # cursor: CellForeground + # Vi mode cursor colors + # + # Colors for the cursor when the vi mode is active. + # + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #vi_mode_cursor: + # text: CellBackground + # cursor: CellForeground + # Search colors + # + # Colors used for the search bar and match highlighting. + #search: + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #matches: + # foreground: '#000000' + # background: '#ffffff' + #focused_match: + # foreground: '#ffffff' + # background: '#000000' + #bar: + # background: '#c5c8c6' + # foreground: '#1d1f21' + # Keyboard regex hints + #hints: + # First character in the hint label + # + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #start: + # foreground: '#1d1f21' + # background: '#e9ff5e' + # All characters after the first one in the hint label + # + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #end: + # foreground: '#e9ff5e' + # background: '#1d1f21' + # Line indicator + # + # Color used for the indicator displaying the position in history during + # search and vi mode. + # + # By default, these will use the opposing primary color. + #line_indicator: + # foreground: None + # background: None + # Selection colors + # + # Colors which should be used to draw the selection area. + # + # Allowed values are CellForeground/CellBackground, which reference the + # affected cell, or hexadecimal colors like #ff00ff. + #selection: + # text: CellBackground + # background: CellForeground + # Normal colors + #normal: + # black: '#1d1f21' + # red: '#cc6666' + # green: '#b5bd68' + # yellow: '#f0c674' + # blue: '#81a2be' + # magenta: '#b294bb' + # cyan: '#8abeb7' + # white: '#c5c8c6' + # Bright colors + #bright: + # black: '#666666' + # red: '#d54e53' + # green: '#b9ca4a' + # yellow: '#e7c +colors: + name: 3024 (light) + author: Chris Kempson + primary: + background: "#f7f7f7" + foreground: "#4a4543" + cursor: + text: "#f7f7f7" + cursor: "#4a4543" + normal: + black: "#090300" + red: "#db2d20" + green: "#01a252" + yellow: "#fded02" + blue: "#01a0e4" + magenta: "#a16a94" + cyan: "#b5e4f4" + white: "#a5a2a2" + bright: + black: "#5c5855" + red: "#db2d20" + green: "#01a252" + yellow: "#fded02" + blue: "#01a0e4" + magenta: "#a16a94" + cyan: "#b5e4f4" + white: "#f7f7f7" + +colors: + primary: + background: '0x282828' + foreground: '0xdfbf8e' + + normal: + black: '0x665c54' + red: '0xea6962' + green: '0xa9b665' + yellow: '0xe78a4e' + blue: '0x7daea3' + magenta: '0xd3869b' + cyan: '0x89b482' + white: '0xdfbf8e' + + bright: + black: '0x928374' + red: '0xea6962' + green: '0xa9b665' + yellow: '0xe3a84e' + blue: '0x7daea3' + magenta: '0xd3869b' + cyan: '0x89b482' + white: '0xdfbf8e' diff --git a/.config/i3/config b/.config/i3/config new file mode 100644 index 0000000..9bde1c3 --- /dev/null +++ b/.config/i3/config @@ -0,0 +1,208 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font pango:monospace 8 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +#font pango:DejaVu Sans Mono 8 + +# The combination of xss-lock, nm-applet and pactl is a popular choice, so +# they are included here as an example. Modify as you see fit. + +# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the +# screen before suspend. Use loginctl lock-session to lock your screen. +exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork +exec --no-startup-id /home/framal/.config/polybar/sharma/launch.sh +# NetworkManager is the most popular way to manage wireless networks on Linux, +# and nm-applet is a desktop environment-independent system tray GUI for it. +# exec --no-startup-id nm-applet +# exec --no-startup-id wal -i ~/.wallpapers/purple.png -a 90 +exec --no-startup-id nitrogen --restore +exec --no-startup-id picom -f --experimental-backends +exec --no-startup-id xrdb ~/.config/xresources/gruvbox-dark.xresources + +# Use pactl to adjust volume in PulseAudio. +set $refresh_i3status killall -SIGUSR1 i3status +# bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status +# bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status +bindsym XF86AudioRaiseVolume exec --no-startup-id /home/framal/.config/i3/volume-set +5% +bindsym XF86AudioLowerVolume exec --no-startup-id /home/framal/.config/i3/volume-set -5% +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status +bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status + +bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 10 +bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 10 + + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +bindsym Print exec spectacle -brc +# start a terminal +bindsym $mod+Return exec i3-sensible-terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start dmenu (a program launcher) +# bindsym $mod+d exec --no-startup-id dmenu_run +# A more modern dmenu replacement is rofi: +# bindcode $mod+40 exec "rofi -modi drun,run -show drun" +# There also is i3-dmenu-desktop which only displays applications shipping a +# .desktop file. It is a wrapper around dmenu, so you need that installed. +# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right + +# bindsym $mod+l exec betterlockscreen -l +bindsym $mod+m exec /home/framal/.config/rofi/monitor_layout.sh +bindsym $mod+p exec /home/framal/.config/rofi/powermenu/powermenu.sh +bindsym $mod+d exec /home/framal/.config/rofi/launchers/text/launcher.sh +bindsym $mod+b exec /home/framal/.scripts/connect-to-jbl.sh + + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# split in horizontal orientation +bindsym $mod+c split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +#bindsym $mod+d focus child + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" +set $ws10 "10" + +# switch to workspace +bindsym $mod+1 workspace number $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym h resize shrink width 10 px or 10 ppt + bindsym j resize grow height 10 px or 10 ppt + bindsym k resize shrink height 10 px or 10 ppt + bindsym l resize grow width 10 px or 10 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 10 px or 10 ppt + bindsym Down resize grow height 10 px or 10 ppt + bindsym Up resize shrink height 10 px or 10 ppt + bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape or $mod+r + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +#for_window [workspace="3"] floating enable +#for_window [workspace="2"] floating enable +#for_window [workspace="1"] floating enable +#for_window [workspace="4"] floating enable +#for_window [workspace="5"] floating enable +#for_window [workspace="6"] floating enable +#for_window [workspace="7"] floating enable +#for_window [workspace="8"] floating enable + +gaps inner 10 +default_border pixel 2 + +bindsym $mod+Ctrl+h exec "~/.screenlayout/middle-laptop.sh; sleep 5; nitrogen --restore;" diff --git a/.config/polybar/sharma/sharma/config.ini b/.config/polybar/sharma/sharma/config.ini new file mode 100644 index 0000000..c239cd8 --- /dev/null +++ b/.config/polybar/sharma/sharma/config.ini @@ -0,0 +1,448 @@ +;========================================================== +; +; +; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ +; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ +; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ +; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ +; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ +; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ +; +; +; To learn more about how to configure Polybar +; go to https://github.com/polybar/polybar +; +; The README contains a lot of information +; +;========================================================== + +[colors] +# background = ${colors.background} +# background = ${colors.background} +background = ${xrdb:background} +background-alt = #373B41 +foreground = #C5C8C6 +primary = #EDDEB9 +secondary = #8ABEB7 +alert = #A54242 +disabled = #707880 + +[bar/example] +width = 100% +height = 2.5% +radius = 6 + +bottom = true + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 3 + +border-size = 4 +border-color = #00000000 + +padding-left = 0 +padding-right = 1 + +module-margin = 1 + +separator = | +separator-foreground = ${colors.disabled} + +; font-0 = monospace;2 +; font-0 = DejaVu Sans:pixelsize=12;2 +; font-1 = unifont:fontformat=truetype:size=12:antialias=false;0 +; font-2 = DejaVu Sans:pixelsize=14;2 +; font-2 = "Wuncon Siji":pixelsize=10;1 +; font-3 = "Wuncon Siji" +; font-0 = Common;pixelsize=10;2 +;; font-0 = fixed:pixelsize=10;1 +;font-1 = unifont:fontformat=truetype:size=8:antialias=false;0 +;font-0 = "Wuncon Siji:pixelsize=10;1" +font-0 = FiraCode Nerd Font Mono:pixelsize=12;2 +font-1 = unifont:fontformat=truetype:size=12:antialias=false;0 +font-2 = FiraCode Nerd Font Mono:pixelsize=18;2 +font-3 = Source Han Sans JP:pixelsize=12;2 + +modules-left = xworkspaces +; xwindow +modules-right = spotify pulseaudio xkeyboard memory cpu wlan battery battery1 date + +cursor-click = pointer +cursor-scroll = ns-resize + +enable-ipc = true + +; tray-position = right + +; wm-restack = generic +; wm-restack = bspwm +; wm-restack = i3 +; override-redirect = true +; override-redirect = true + +[module/xworkspaces] +type = internal/xworkspaces + +label-active = %name% +label-active-background = ${colors.background-alt} +label-active-underline= ${colors.primary} +label-active-padding = 1 + +label-occupied = %name% +label-occupied-padding = 1 + +label-urgent = %name% +label-urgent-background = ${colors.alert} +label-urgent-padding = 1 + +label-empty = %name% +label-empty-foreground = ${colors.disabled} +label-empty-padding = 1 + +[module/xwindow] +type = internal/xwindow +label = %title:0:60:...% + +[module/filesystem] +type = internal/fs +interval = 25 + +mount-0 = / + +label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%% + +label-unmounted = %mountpoint% not mounted +label-unmounted-foreground = ${colors.disabled} + +[module/pulseaudio] +type = internal/pulseaudio + +; format-volume-prefix = "VOL " +; format-volume-prefix-foreground = ${colors.primary} +; format-volume = <label-volume> + +; label-volume = %percentage%% + +; label-muted = muted +; label-muted-foreground = ${colors.disabled} +; Available tags: +; <label-volume> (default) +; <ramp-volume> +; <bar-volume> +format-volume-foreground = #A8C2EA +format-volume = %{T3}<ramp-volume>%{T-} <label-volume> + +; Available tags: +; <label-muted> (default) +; <ramp-volume> +; <bar-volume> +;format-muted = <label-muted> + +; Available tokens: +; %percentage% (default) +; %decibels% +;label-volume = %percentage%% + +; Available tokens: +; %percentage% (default) +; %decibels% +label-muted = 婢 muted +label-muted-foreground = #666 + +; Only applies if <ramp-volume> is used +ramp-volume-0 = +ramp-volume-1 = +ramp-volume-2 = 墳 + +; Right and Middle click +click-right = pavucontrol + +[module/xkeyboard] +type = internal/xkeyboard +blacklist-0 = num lock + +label-layout = %layout% +label-layout-foreground = ${colors.primary} +layout-icon-default = +label-indicator-padding = 2 +label-indicator-margin = 1 +label-indicator-foreground = ${colors.background} +label-indicator-background = ${colors.secondary} +label-indicator-on-capslock = בּ +[module/memory] +type = internal/memory +interval = 2 +format-prefix = %{T3} %{T-} +format-foreground = #E0DA37 +label = %gb_used% +;/%gb_total% + +[module/cpu] +type = internal/cpu +interval = 2 +format-prefix = %{T3}%{T-} +format-foreground = #E84C82 +label = %percentage:2%% + +[network-base] +type = internal/network +interval = 5 +format-connected = <label-connected> +format-disconnected = <label-disconnected> +label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected + +[module/spotify] +type = custom/script +interval = 1 +; format-prefix = +; format-prefix-foreground = #1db954 +format-foreground = #1db954 +format = %{T3}%{T-} <label> +exec = /bin/python3 ~/.config/polybar/sharma/spotify-script.py -f '{artist}: {song}' +format-underline = #1db954 +;control players (optional) +click-left = playerctl --player=spotify play-pause +click-right = playerctl --player=spotify next +click-middle = playerctl --player=spotify previous + +[module/wlan] +inherit = network-base +interface-type = wireless +interface = wlp3s0 +label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip% +; label-connected = %{F#F0C674}%ifname%%{F-} %essid% +format-connected = %{T3}<ramp-signal>%{T-} <label-connected> +format-connected-foreground = #EC9E9E +; Available tags: +; <label-disconnected> (default) +format-disconnected = <label-disconnected> +format-disconnected-foreground = #EC9E9E +; Available tags: +; <label-connected> (default) +; <label-packetloss> +; <animation-packetloss> +format-packetloss = <animation-packetloss> <label-connected> + +; All labels support the following tokens: +; %ifname% [wireless+wired] +; %local_ip% [wireless+wired] +; %local_ip6% [wireless+wired] +; %essid% [wireless] +; %signal% [wireless] +; %upspeed% [wireless+wired] +; %downspeed% [wireless+wired] +; %linkspeed% [wired] + +; Default: %ifname% %local_ip% +; label-connected = %essid% +;:9% +; label-connected-foreground = #eefafafa + +; Default: (none) +label-disconnected = 睊 +; label-disconnected-foreground = #66ffffff + +; Default: (none) +;label-packetloss = %essid% +;label-packetloss-foreground = #eefafafa + +; Only applies if <ramp-signal> is used +ramp-signal-0 = 直 +ramp-signal-1 = 直 +ramp-signal-2 = 直 +ramp-signal-3 = +ramp-signal-4 = +ramp-signal-5 = + +; Only applies if <animation-packetloss> is used +animation-packetloss-0 = ⚠ +animation-packetloss-0-foreground = #ffa64c +animation-packetloss-1 = 📶 +animation-packetloss-1-foreground = #000000 +; Framerate in milliseconds +animation-packetloss-framerate = 500 + +; [module/eth] +; inherit = network-base +; interface-type = wired +; label-connected = %{F#F0C674}%ifname%%{F-} %local_ip% +[module/battery1] +type = internal/battery +full-at = 99 +battery = BAT1 +adapter = ADP1 +poll-interval = 5 + +; see "man date" for details on how to format the time string +; NOTE: if you want to use syntax tags here you need to use %%{...} +; Default: %H:%M:%S +time-format = %H:%M + +; Available tags: +; <label-charging> (default) +; <bar-capacity> +; <ramp-capacity> +; <animation-charging> +format-charging = %{T3}<animation-charging>%{T-} <label-charging> +format-charging-foreground = #4ae2dd +; Available tags: +; <label-discharging> (default) +; <bar-capacity> +; <ramp-capacity> +; <animation-discharging> +format-discharging = %{T3}<ramp-capacity>%{T-} <label-discharging> +format-discharging-foreground = #4ae2dd + +; Available tags: +; <label-full> (default) +; <bar-capacity> +; <ramp-capacity> +format-full = %{T3}<ramp-capacity>%{T-} <label-full> +format-full-foreground = #4ae2dd + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; %time% +; %consumption% (shows current charge rate in watts) +label-charging = %percentage%% + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; %time% +; %consumption% (shows current discharge rate in watts) +label-discharging = %percentage%% + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; label-full = + +; Only applies if <ramp-capacity> is used +ramp-capacity-0 = +ramp-capacity-1 = +ramp-capacity-2 = +ramp-capacity-3 = +ramp-capacity-4 = + +; Only applies if <bar-capacity> is used +bar-capacity-width = 10 + +; Only applies if <animation-charging> is used +animation-charging-0 = +animation-charging-1 = +animation-charging-2 = +animation-charging-3 = +animation-charging-4 = +; Framerate in milliseconds +animation-charging-framerate = 750 + +; Only applies if <animation-discharging> is used +animation-discharging-0 = +animation-discharging-1 = +animation-discharging-2 = +animation-discharging-3 = +animation-discharging-4 = +; Framerate in milliseconds +animation-discharging-framerate = 500 + + +[module/battery] +type = internal/battery +full-at = 99 +battery = BAT0 +adapter = ADP1 +poll-interval = 5 + +; see "man date" for details on how to format the time string +; NOTE: if you want to use syntax tags here you need to use %%{...} +; Default: %H:%M:%S +time-format = %H:%M + +; Available tags: +; <label-charging> (default) +; <bar-capacity> +; <ramp-capacity> +; <animation-charging> +format-charging = %{T3}<animation-charging>%{T-} <label-charging> +format-charging-foreground = #4ae2dd +; Available tags: +; <label-discharging> (default) +; <bar-capacity> +; <ramp-capacity> +; <animation-discharging> +format-discharging = %{T3}<ramp-capacity>%{T-} <label-discharging> +format-discharging-foreground = #4ae2dd + +; Available tags: +; <label-full> (default) +; <bar-capacity> +; <ramp-capacity> +format-full = %{T3}<ramp-capacity>%{T-} <label-full> +format-full-foreground = #4ae2dd + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; %time% +; %consumption% (shows current charge rate in watts) +label-charging = %percentage%% + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; %time% +; %consumption% (shows current discharge rate in watts) +label-discharging = %percentage%% + +; Available tokens: +; %percentage% (default) - is set to 100 if full-at is reached +; %percentage_raw% +; label-full = + +; Only applies if <ramp-capacity> is used +ramp-capacity-0 = +ramp-capacity-1 = +ramp-capacity-2 = +ramp-capacity-3 = +ramp-capacity-4 = + +; Only applies if <bar-capacity> is used +bar-capacity-width = 10 + +; Only applies if <animation-charging> is used +animation-charging-0 = +animation-charging-1 = +animation-charging-2 = +animation-charging-3 = +animation-charging-4 = +; Framerate in milliseconds +animation-charging-framerate = 750 + +; Only applies if <animation-discharging> is used +animation-discharging-0 = +animation-discharging-1 = +animation-discharging-2 = +animation-discharging-3 = +animation-discharging-4 = +; Framerate in milliseconds +animation-discharging-framerate = 500 + +[module/date] +type = internal/date +interval = 1 +date = %A %d %B +; time = %H:%M +time = %H:%M +format = %{F#FF7730}%{T3}%{T-}%{F-} <label> +label = %{F#FF7730}%date% >%{F-} %{F#afbedd}%time%%{F-} +; label-foreground = ${colors.primary} + +[settings] +screenchange-reload = true +pseudo-transparency = false + +; vim:ft=dosini diff --git a/.config/polybar/sharma/sharma/launch.sh b/.config/polybar/sharma/sharma/launch.sh new file mode 100755 index 0000000..eeefb7c --- /dev/null +++ b/.config/polybar/sharma/sharma/launch.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +# Add this script to your wm startup file. + +DIR="$HOME/.config/polybar/sharma" + +# Terminate already running bar instances +killall -q polybar + +# Wait until the processes have been shut down +while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done + +# Launch the bar +polybar example -c "$DIR"/config.ini & diff --git a/.config/polybar/sharma/sharma/spotify-script.py b/.config/polybar/sharma/sharma/spotify-script.py new file mode 100644 index 0000000..7199f4e --- /dev/null +++ b/.config/polybar/sharma/sharma/spotify-script.py @@ -0,0 +1,141 @@ +#!/usr/bin/env python + +import sys +import dbus +import argparse + +parser = argparse.ArgumentParser() +parser.add_argument( + '-t', + '--trunclen', + type=int, + metavar='trunclen' +) +parser.add_argument( + '-f', + '--format', + type=str, + metavar='custom format', + dest='custom_format' +) +parser.add_argument( + '-p', + '--playpause', + type=str, + metavar='play-pause indicator', + dest='play_pause' +) +parser.add_argument( + '--font', + type=str, + metavar='the index of the font to use for the main label', + dest='font' +) +parser.add_argument( + '--playpause-font', + type=str, + metavar='the index of the font to use to display the playpause indicator', + dest='play_pause_font' +) +parser.add_argument( + '-q', + '--quiet', + action='store_true', + help="if set, don't show any output when the current song is paused", + dest='quiet', +) + +args = parser.parse_args() + + +def fix_string(string): + # corrects encoding for the python version used + if sys.version_info.major == 3: + return string + else: + return string.encode('utf-8') + + +def truncate(name, trunclen): + if len(name) > trunclen: + name = name[:trunclen] + name += '...' + if ('(' in name) and (')' not in name): + name += ')' + return name + + + +# Default parameters +output = fix_string(u'{play_pause} {artist}: {song}') +trunclen = 35 +play_pause = fix_string(u'\u25B6,\u23F8') # first character is play, second is paused + +label_with_font = '%{{T{font}}}{label}%{{T-}}' +font = args.font +play_pause_font = args.play_pause_font + +quiet = args.quiet + +# parameters can be overwritten by args +if args.trunclen is not None: + trunclen = args.trunclen +if args.custom_format is not None: + output = args.custom_format +if args.play_pause is not None: + play_pause = args.play_pause + +try: + session_bus = dbus.SessionBus() + spotify_bus = session_bus.get_object( + 'org.mpris.MediaPlayer2.spotify', + '/org/mpris/MediaPlayer2' + ) + + spotify_properties = dbus.Interface( + spotify_bus, + 'org.freedesktop.DBus.Properties' + ) + + metadata = spotify_properties.Get('org.mpris.MediaPlayer2.Player', 'Metadata') + status = spotify_properties.Get('org.mpris.MediaPlayer2.Player', 'PlaybackStatus') + + # Handle play/pause label + + play_pause = play_pause.split(',') + + if status == 'Playing': + play_pause = play_pause[0] + elif status == 'Paused': + play_pause = play_pause[1] + else: + play_pause = str() + + if play_pause_font: + play_pause = label_with_font.format(font=play_pause_font, label=play_pause) + + # Handle main label + + artist = fix_string(metadata['xesam:artist'][0]) if metadata['xesam:artist'] else '' + song = fix_string(metadata['xesam:title']) if metadata['xesam:title'] else '' + album = fix_string(metadata['xesam:album']) if metadata['xesam:album'] else '' + + if (quiet and status == 'Paused') or (not artist and not song and not album): + print('') + else: + if font: + artist = label_with_font.format(font=font, label=artist) + song = label_with_font.format(font=font, label=song) + album = label_with_font.format(font=font, label=album) + + # Add 4 to trunclen to account for status symbol, spaces, and other padding characters + print(truncate(output.format(artist=artist, + song=song, + play_pause=play_pause, + album=album), trunclen + 4)) + +except Exception as e: + if isinstance(e, dbus.exceptions.DBusException): + print('') + else: + print(e) diff --git a/.config/rofi/monitor_layout.sh b/.config/rofi/monitor_layout.sh new file mode 100755 index 0000000..f3258af --- /dev/null +++ b/.config/rofi/monitor_layout.sh @@ -0,0 +1,102 @@ +#!/bin/bash + +XRANDR=$(which xrandr) + +MONITORS=( $( ${XRANDR} | awk '( $2 == "connected" ){ print $1 }' ) ) + + +NUM_MONITORS=${#MONITORS[@]} + +TITLES=() +COMMANDS=() + + +function gen_xrandr_only() +{ + selected=$1 + + cmd="xrandr --output ${MONITORS[$selected]} --auto " + + for entry in $(seq 0 $((${NUM_MONITORS}-1))) + do + if [ $selected != $entry ] + then + cmd="$cmd --output ${MONITORS[$entry]} --off" + fi + done + + echo $cmd +} + + + +declare -i index=0 +TILES[$index]="Cancel" +COMMANDS[$index]="true" +index+=1 + + +for entry in $(seq 0 $((${NUM_MONITORS}-1))) +do + TILES[$index]="Only ${MONITORS[$entry]}" + COMMANDS[$index]=$(gen_xrandr_only $entry) + index+=1 +done + +## +# Dual screen options +## +for entry_a in $(seq 0 $((${NUM_MONITORS}-1))) +do + for entry_b in $(seq 0 $((${NUM_MONITORS}-1))) + do + if [ $entry_a != $entry_b ] + then + TILES[$index]="Dual Screen ${MONITORS[$entry_a]} -> ${MONITORS[$entry_b]}" + COMMANDS[$index]="xrandr --output ${MONITORS[$entry_a]} --auto \ + --output ${MONITORS[$entry_b]} --auto --left-of ${MONITORS[$entry_a]}" + + index+=1 + fi + done +done + + +## +# Clone monitors +## +for entry_a in $(seq 0 $((${NUM_MONITORS}-1))) +do + for entry_b in $(seq 0 $((${NUM_MONITORS}-1))) + do + if [ $entry_a != $entry_b ] + then + TILES[$index]="Clone Screen ${MONITORS[$entry_a]} -> ${MONITORS[$entry_b]}" + COMMANDS[$index]="xrandr --output ${MONITORS[$entry_a]} --auto \ + --output ${MONITORS[$entry_b]} --auto --same-as ${MONITORS[$entry_a]}" + + index+=1 + fi + done +done + + +## +# Generate entries, where first is key. +## +function gen_entries() +{ + for a in $(seq 0 $(( ${#TILES[@]} -1 ))) + do + echo $a ${TILES[a]} + done +} + +# Call menu +SEL=$( gen_entries | rofi -dmenu -p "Monitor Setup:" -a 0 -no-custom | awk '{print $1}' ) + +# Call xrandr +$( ${COMMANDS[$SEL]} ) +nitrogen --restore +~/.config/polybar/sharma/launch.sh +# wal -R diff --git a/.config/xresources/xresources/gruvbox-dark.xresources b/.config/xresources/xresources/gruvbox-dark.xresources new file mode 100644 index 0000000..1e0bf8b --- /dev/null +++ b/.config/xresources/xresources/gruvbox-dark.xresources @@ -0,0 +1,40 @@ +! ----------------------------------------------------------------------------- +! File: gruvbox-dark.xresources +! Description: Retro groove colorscheme generalized +! Author: morhetz <morhetz@gmail.com> +! Source: https://github.com/morhetz/gruvbox-generalized +! Last Modified: 6 Sep 2014 +! ----------------------------------------------------------------------------- + +! hard contrast: *background: #1d2021 +*background: #282828 +! soft contrast: *background: #32302f +*foreground: #ebdbb2 +! Black + DarkGrey +*color0: #282828 +*color8: #928374 +! DarkRed + Red +*color1: #cc241d +*color9: #fb4934 +! DarkGreen + Green +*color2: #98971a +*color10: #b8bb26 +! DarkYellow + Yellow +*color3: #d79921 +*color11: #fabd2f +! DarkBlue + Blue +*color4: #458588 +*color12: #83a598 +! DarkMagenta + Magenta +*color5: #b16286 +*color13: #d3869b +! DarkCyan + Cyan +*color6: #689d6a +*color14: #8ec07c +! LightGrey + White +*color7: #a89984 +*color15: #ebdbb2 + +! URxvt*depth: 40 +! URxvt*background: rgba:2800/2800/2800/ee00 +URxvt.boldFont: xft:DejaVu Sans Mono:size=12:Bold diff --git a/.config/xresources/xresources/gruvbox-light.xresources b/.config/xresources/xresources/gruvbox-light.xresources new file mode 100644 index 0000000..4a80e85 --- /dev/null +++ b/.config/xresources/xresources/gruvbox-light.xresources @@ -0,0 +1,39 @@ +! ----------------------------------------------------------------------------- +! File: gruvbox-light.xresources +! Description: Retro groove colorscheme generalized +! Author: morhetz <morhetz@gmail.com> +! Source: https://github.com/morhetz/gruvbox-generalized +! Last Modified: 6 Sep 2014 +! ----------------------------------------------------------------------------- + +! hard contrast: *background: #f9f5d7 +*background: #fbf1c7 +! soft contrast: *background: #f2e5bc +*foreground: #3c3836 +! Black + DarkGrey +*color0: #fdf4c1 +*color8: #928374 +! DarkRed + Red +*color1: #cc241d +*color9: #9d0006 +! DarkGreen + Green +*color2: #98971a +*color10: #79740e +! DarkYellow + Yellow +*color3: #d79921 +*color11: #b57614 +! DarkBlue + Blue +*color4: #458588 +*color12: #076678 +! DarkMagenta + Magenta +*color5: #b16286 +*color13: #8f3f71 +! DarkCyan + Cyan +*color6: #689d6a +*color14: #427b58 +! LightGrey + White +*color7: #7c6f64 +*color15: #3c3836 + +URxvt*depth: 40 +! URxvt*background: rgba:f200/e500/bc00/ee00 diff --git a/.wallpapers/.wallpaper.png b/.wallpapers/.wallpaper.png Binary files differnew file mode 100644 index 0000000..3269884 --- /dev/null +++ b/.wallpapers/.wallpaper.png diff --git a/.wallpapers/cute.png b/.wallpapers/cute.png Binary files differnew file mode 100644 index 0000000..39ac616 --- /dev/null +++ b/.wallpapers/cute.png diff --git a/.wallpapers/dino.png b/.wallpapers/dino.png Binary files differnew file mode 100644 index 0000000..44f7b32 --- /dev/null +++ b/.wallpapers/dino.png diff --git a/.wallpapers/dziura.png b/.wallpapers/dziura.png Binary files differnew file mode 100644 index 0000000..0b949ac --- /dev/null +++ b/.wallpapers/dziura.png diff --git a/.wallpapers/flowert.jpg b/.wallpapers/flowert.jpg Binary files differnew file mode 100644 index 0000000..0d5f6ca --- /dev/null +++ b/.wallpapers/flowert.jpg diff --git a/.wallpapers/lawenda.jpg b/.wallpapers/lawenda.jpg Binary files differnew file mode 100644 index 0000000..713e1ad --- /dev/null +++ b/.wallpapers/lawenda.jpg diff --git a/.wallpapers/purple.png b/.wallpapers/purple.png Binary files differnew file mode 100644 index 0000000..a7136b9 --- /dev/null +++ b/.wallpapers/purple.png diff --git a/.wallpapers/sakura.jpg b/.wallpapers/sakura.jpg Binary files differnew file mode 100644 index 0000000..7d2a27e --- /dev/null +++ b/.wallpapers/sakura.jpg diff --git a/.wallpapers/shiba-samurao.jpg b/.wallpapers/shiba-samurao.jpg Binary files differnew file mode 100644 index 0000000..c751a9a --- /dev/null +++ b/.wallpapers/shiba-samurao.jpg diff --git a/.wallpapers/sokrates.jpg b/.wallpapers/sokrates.jpg Binary files differnew file mode 100644 index 0000000..0017581 --- /dev/null +++ b/.wallpapers/sokrates.jpg diff --git a/.wallpapers/storm.jpg b/.wallpapers/storm.jpg Binary files differnew file mode 100644 index 0000000..96db98e --- /dev/null +++ b/.wallpapers/storm.jpg diff --git a/.wallpapers/sunset.png b/.wallpapers/sunset.png Binary files differnew file mode 100644 index 0000000..a5b54e9 --- /dev/null +++ b/.wallpapers/sunset.png diff --git a/.wallpapers/tribute.png b/.wallpapers/tribute.png Binary files differnew file mode 100644 index 0000000..aa99d92 --- /dev/null +++ b/.wallpapers/tribute.png @@ -0,0 +1,139 @@ +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:/usr/local/bin:$PATH +export IDF_PATH=$HOME/esp/ESP8266_RTOS_SDK +export PATH=$HOME/huawei/xtensa-lx106-elf/bin:$PATH +export TERMINAL=alacritty + +# Path to your oh-my-zsh installation. +# export ZSH="/home/framal/.oh-my-zsh" +export ZSH="/usr/share/oh-my-zsh" + +# uncomment to enable wal colors +#(cat ~/.cache/wal/sequences &) + +# Set name of the theme to load --- if set to "random", it will +# load a random theme each time oh-my-zsh is loaded, in which case, +# to know which specific one was loaded, run: echo $RANDOM_THEME +# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes +ZSH_THEME="framal" + +# Set list of themes to pick from when loading at random +# Setting this variable when ZSH_THEME=random will cause zsh to load +# a theme from this variable instead of looking in $ZSH/themes/ +# If set to an empty array, this variable will have no effect. +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. +# Case-sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment one of the following lines to change the auto-update behavior +# zstyle ':omz:update' mode disabled # disable automatic updates +# zstyle ':omz:update' mode auto # update automatically without asking +# zstyle ':omz:update' mode reminder # just remind me to update when it's time + +# Uncomment the following line to change how often to auto-update (in days). +# zstyle ':omz:update' frequency 13 + +# Uncomment the following line if pasting URLs and other text is messed up. +# DISABLE_MAGIC_FUNCTIONS="true" + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# You can also set it to another string to have that shown instead of the default red dots. +# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f" +# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765) +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# You can set one of the optional three formats: +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# or set a custom format using the strftime function format specifications, +# see 'man strftime' for details. +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? +# Standard plugins can be found in $ZSH/plugins/ +# Custom plugins may be added to $ZSH_CUSTOM/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git) + +source $ZSH/oh-my-zsh.sh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='mvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch x86_64" + +# Set personal aliases, overriding those provided by oh-my-zsh libs, +# plugins, and themes. Aliases can be placed here, though oh-my-zsh +# users are encouraged to define aliases within the ZSH_CUSTOM folder. +# For a full list of active aliases, run `alias`. +# +# Example aliases +# + + +alias i3conf="vim ~/.config/i3/config" +alias zshconfig="vim ~/.zshrc" +alias uni="cd ~/Documents/wmiuwr/semestr-6" +alias gentmp="echo tmp-`date +"%Y%m%d%H%M%S"`" + +unalias ll +ll () { + /bin/ls -lAFbhv --color=always $@ | less -XER +} + +genpwd () { + hexdump -e '"%_p"' /dev/urandom | sed "s/[^0-9A-HJ-NP-Z]//g" | tr -d '\n' | head -c 32 | sed '$a\' +} + +unite-wyklady () { + find ./ -regex \.\*wyklad\-\[1-9\]\.\* | sort -V | cat - <(echo wyklad-calosc-tmp.pdf) | xargs pdfunite + ps2pdf wyklad-calosc-tmp.pdf wyklad-calosc.pdf + rm -f wyklad-calosc-tmp.pdf + git add wyklad-calosc.pdf +} + +vim () { + nvim $@ +} + +nvimconf () { + nvim ~/.config/nvim +} + +source /home/framal/.config/gruvbox_256palette.sh |