16 Commits

Author SHA1 Message Date
Sravan Balaji
73569b9394 Pactl Script and Game Exit Script Fix
- Add pactl script to control volume
- Add pactl to control center rofi menu
- Comment out picom on in game_exit script
- Set struts when switching layouts in xmonad
- Add keybinding for pactl script
2021-05-24 20:09:50 -04:00
Sravan Balaji
1ddbd596b6 Git Editor, Dunst Appearance, Game Scripts, Session Control No Password, Startup Application Fixes
- Change dunst x-spacing to 0 in Xresources so notifications line up
  with edge of screen
- Change git editor to emacs in gitconfig and environment variable
- Remove git difftool from gitconfig
- Add game launch script to turn off compositor and toggle dnd for notifications
- Add game exit script to toggle dnd for notifications
- Remove pkexec from session.sh since password is not necessary
- Separate apps & system processes in startup.sh
- Start system processes in xinitrc
- Start tray apps after delay in xinitrc to fix issues w/ missing
  icons and scrolling / OSD not working
- Replace some polybar modules with tray applications
2021-05-23 16:02:40 -04:00
Sravan Balaji
045470636f Move Startup Processes to a Script called in Xinitrc
- Add script to start and kill startup process
- Modify xinitrc to call startup script
- Remove startup hook from xmonad config
2021-05-22 15:29:53 -04:00
Sravan Balaji
a09dfed487 Fix Alacritty Config
- url subsection of mouse was depricated, so removed it
- added new 'hints' section (not in use) to alacritty config
2021-05-22 10:31:39 -04:00
Sravan Balaji
8edbd92d30 Switch from Kitty to Alacritty
- Switch terminal from kitty to alacritty
- Remove kitty ssh kitten alias
- Add configuration file for alacritty to README
- Instead of killing xmonad, send notification to use xmonad keybinding for logout
2021-05-17 20:02:54 -04:00
Sravan Balaji
e4f88101d4 Add Scripts to ~/.scripts & Highlight Color Changes
- Add bunch of cli & rofi scripts to ~/.scripts
- Change rofi theme to use cyan highlight
- Change dunst notification sto use green highlight
- Make all rofi dmenu scripts use case insensitivity
2021-05-16 14:19:24 -04:00
Sravan Balaji
c6648c5f79 Track Submodule Branch
- Update submodules to track branches instead of specific commits
- Update README to include "--remote" option for updating submodules
2021-05-12 20:25:32 -04:00
Sravan Balaji
b96956c340 Emacs Org-Mode Configuration Simplification
- Watched video on organizing life with org-mode
- Removed unnecessary configuration options for org-mode
2021-05-11 22:18:57 -04:00
Sravan Balaji
7d772e0eea Xmonad Switch to Polybar & Other Small Changes
- Add oryx pro 7 specific Xresource settings
- Remove exec fish from bashrc so bash is actually usable
- Org document cleanup
- Add zoom to blur background exclude in picom config
- Xmonad switch from Xmobar to Polybar
2021-05-10 23:56:40 -04:00
Sravan Balaji
392e8d9b4d Re-Write Dotfiles as Org Doc w/ Tangle
- Restore previously removed window-manager specific files
- Collect dotfiles into one org document
2021-05-09 18:52:46 -04:00
Sravan Balaji
bbfff0f1b7 Starship Fixes and Emacs & Xmonad Commit Update
- Rename docker module to docker_context in starship
- Comment out haskell module in starship
- Update Emacs & Xmonad commits
2021-05-08 18:42:45 -04:00
Sravan Balaji
88d121dd64 README as Org File
- Emacs font adjustment
- Xmonad default terminal
- Re-write dotfiles README as org file
2021-05-07 10:14:26 -04:00
Sravan Balaji
f38c66c62c Emacs & Xmonad Submodules
- Add emacs config as a submodule
- Remove xmonad config and re-add it as a submodule
2021-05-06 19:46:31 -04:00
Sravan Balaji
86c8a1b28e Xmonad Configuration
- Add xmonad configuration as org document
- Add tangled xmonad configuration output
2021-05-03 12:50:29 -04:00
Sravan Balaji
30752072e1 Conky Configuration
- Add conky config file
- Commented out ip address
2021-04-08 10:28:15 -04:00
Sravan Balaji
d8c32ab929 Garuda KDE Changes
- Change kitty shell to fish since default garuda shell is zsh
- Add xinitrc used by garuda to dotfiles
- Replace my zshrc with garuda's
2021-04-08 09:17:27 -04:00
42 changed files with 10259 additions and 274 deletions

View File

@@ -39,3 +39,45 @@
*.color7: WHITE2
*.color15: WHITE1
*.color16: ORANGE
! System76 Oryx Pro 7 DPI Parameters
#define DPI 96
#define BAR_HEIGHT 25
#define MODULE_MARGIN 1
#define MODULE_PADDING 2
#define TRAY_MAXSIZE 15
#define TRAY_SCALE 1
#define BORDER_SIZE 2
#define INNER_GAPS 20
#define OUTER_GAPS 10
#define MAXLEN 50
#define CURSOR_SIZE 16
! Polybar
polybar.bar-height: BAR_HEIGHT
polybar.module-margin: MODULE_MARGIN
polybar.tray-maxsize: TRAY_MAXSIZE
polybar.tray-scale: TRAY_SCALE
polybar.maxlen: MAXLEN
! Dunst
dunst.geometry-x: 0
dunst.geometry-y: BAR_HEIGHT
dunst.sep-height: BORDER_SIZE
dunst.padding: OUTER_GAPS
dunst.horiz-padding: OUTER_GAPS
dunst.max-icon-size: DPI
dunst.frame-width: BORDER_SIZE
dunst.low-background: BACKGROUND
dunst.low-foreground: FOREGROUND
dunst.low-frame: GREEN1
dunst.normal-background: BACKGROUND
dunst.normal-foreground: FOREGROUND
dunst.normal-frame: GREEN1
dunst.critical-background: RED1
dunst.critical-foreground: FOREGROUND
dunst.critical-frame: GREEN1
! Display Scaling
*.dpi: DPI
Xcursor.size: CURSOR_SIZE

View File

@@ -124,6 +124,3 @@ export EDITOR="code -w"
export TERM=xterm-256color
export QT_STYLE_OVERRIDE=kvantum
export XDG_CONFIG_HOME=$HOME/.config
# Set fish as interactive shell only
exec fish

View File

@@ -1,7 +1,3 @@
################### File Generated by GOverlay ###################
cpu_stats
cpu_temp
cpu_color=2e97cb

View File

@@ -0,0 +1,583 @@
# 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
window:
# Window dimensions (changes require restart)
#
# Specified in number of columns/lines, not pixels.
# If both are `0`, this setting is ignored.
#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: 5
y: 5
# 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, transparent background, but no title bar buttons
#decorations: full
# 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
# 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
# Number of lines the viewport will move for every line scrolled when
# scrollback is enabled (history > 0).
#multiplier: 3
# Font configuration
font:
# Normal (roman) font face
normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
family: Fira Code Nerd Font
# 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: Fira Code Nerd Font
# 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: 8.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 upwards.
#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`
#
# macOS >= 10.14.x:
#
# If the font quality on non-retina display looks bad then set
# `use_thin_strokes` to `true` and enable font smoothing by running the
# following command:
# `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
#
# This is a global setting and will require a log out or restart to take
# effect.
#use_thin_strokes: true
# If `true`, bold text is drawn using the bright color variants.
#draw_bold_text_with_bright_colors: false
colors:
# Default colors
primary:
background: "0x22212c"
foreground: "0xf8f8f2"
# 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: '0x9a9a9a'
#bright_foreground: '0xffffff'
# Cursor colors
#
# Colors which should be used to draw the terminal cursor. If these are unset,
# the cursor color will be the inverse of the cell color.
cursor:
text: "0x454158"
cursor: "0xf8f8f2"
# Selection colors
#
# Colors which should be used to draw the selection area. If selection
# background is unset, selection color will be the inverse of the cell colors.
# If only text is unset the cell text color will remain the same.
selection:
text: "0xf8f8f2"
background: "0x454158"
# Normal colors
normal:
black: "0x22212c"
red: "0xff9580"
green: "0x8aff80"
yellow: "0xffff80"
blue: "0x9580ff"
magenta: "0xff80bf"
cyan: "0x80ffea"
white: "0xf8f8f2"
# Bright colors
bright:
black: "0x22212c"
red: "0xffaa99"
green: "0xa2ff99"
yellow: "0xffff99"
blue: "0xaa99ff"
magenta: "0xff99cc"
cyan: "0x99ffee"
white: "0xffffff"
# Indexed Colors
#
# The indexed colors include all colors from 16 to 256.
# When these are not set, they're filled with sensible defaults.
#
# Example:
# `- { index: 16, color: '0xff00ff' }`
#
indexed_colors: []
# Bell
#
# The bell is rung every time the BEL control character is received.
#bell:
# Visual Bell Animation
#
# Animation effect for flashing the screen when the visual bell is rung.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#animation: EaseOutExpo
# Duration of the visual bell flash in milliseconds. A `duration` of `0` will
# disable the visual bell animation.
#duration: 0
# Visual bell animation color.
#color: '#ffffff'
# Bell Command
#
# This program is executed whenever the bell is rung.
#
# When set to `command: None`, no command will be executed.
#
# Example:
# command:
# program: notify-send
# args: ["Hello, World!"]
#
#command: None
# 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: 1.0
background_opacity: 0.8
#selection:
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
#save_to_clipboard: false
# Allow terminal applications to change Alacritty's window title.
#dynamic_title: true
cursor:
# Cursor style
#
# Values for `style`:
# - ▇ Block
# - _ Underline
# - | Beam
style: Beam
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
#unfocused_hollow: true
# Live config reload (changes require restart)
live_config_reload: true
# Shell
#
# You can set `shell.program` to the path of your favorite shell, e.g. `/bin/fish`.
# Entries in `shell.args` are passed unmodified as arguments to the shell.
#
# Default:
# - (macOS) /bin/bash --login
# - (Linux/BSD) user login shell
# - (Windows) powershell
shell:
program: /usr/bin/fish
# args:
# - -l
# - -c
# - "tmux attach || tmux"
# Startup directory
#
# Directory the shell is started in. If this is unset, or `None`, the working
# directory of the parent process will be used.
#working_directory: None
# WinPTY backend (Windows only)
#
# Alacritty defaults to using the newer ConPTY backend if it is available,
# since it resolves a lot of bugs and is quite a bit faster. If it is not
# available, the the WinPTY backend will be used instead.
#
# Setting this option to `true` makes Alacritty use the legacy WinPTY backend,
# even if the ConPTY backend is available.
#winpty_backend: false
# Send ESC (\x1b) before characters when alt is pressed.
#alt_send_esc: true
# mouse:
# Click settings
#
# The `double_click` and `triple_click` settings control the time
# alacritty should wait for accepting multiple clicks as one double
# or triple click.
#double_click: { threshold: 300 }
#triple_click: { threshold: 300 }
# If this is `true`, the cursor is temporarily hidden when typing.
#hide_when_typing: false
# Regex hints
#
# Terminal hints can be used to find text in the visible part of the terminal
# and pipe it to other applications.
#hints:
# Keys used for the hint labels.
#alphabet: "jfkdls;ahgurieowpq"
# List with all available hints
#
# Each hint must have a `regex` and either an `action` or a `command` field.
# The fields `mouse`, `binding` and `post_processing` are optional.
#
# The fields `command`, `binding.key`, `binding.mods` and `mouse.mods` accept
# the same values as they do in the `key_bindings` section.
#
# The `mouse.enabled` field controls if the hint should be underlined while
# the mouse with all `mouse.mods` keys held or the vi mode cursor is above it.
#
# If the `post_processing` field is set to `true`, heuristics will be used to
# shorten the match if there are characters likely not to be part of the hint
# (e.g. a trailing `.`). This is most useful for URIs.
#
# Values for `action`:
# - Copy
# Copy the hint's text to the clipboard.
# - Paste
# Paste the hint's text to the terminal or search.
# - Select
# Select the hint's text.
# - MoveViModeCursor
# Move the vi mode cursor to the beginning of the hint.
#enabled:
# - regex: "(mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
# [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
# command: xdg-open
# post_processing: true
# mouse:
# enabled: true
# mods: None
# binding:
# key: U
# mods: Control|Shift
# Mouse bindings
#
# Mouse bindings are specified as a list of objects, much like the key
# bindings further below.
#
# To trigger mouse bindings when an application running within Alacritty captures the mouse, the
# `Shift` modifier is automatically added as a requirement.
#
# Each mouse binding will specify a:
#
# - `mouse`:
#
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# - `action` (see key bindings)
#
# And optionally:
#
# - `mods` (see key bindings)
#mouse_bindings:
# - { mouse: Middle, action: PasteSelection }
# Key bindings
#
# Key bindings are specified as a list of objects. For example, this is the
# default paste binding:
#
# `- { key: V, mods: Control|Shift, action: Paste }`
#
# Each key binding will specify a:
#
# - `key`: Identifier of the key pressed
#
# - A-Z
# - F1-F24
# - Key0-Key9
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number. This command will allow you to display the hex scancodes
# for certain keys:
#
# `showkey --scancodes`.
#
# Then exactly one of:
#
# - `chars`: Send a byte sequence to the running application
#
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences. To find escape codes for bindings
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
# of tmux. Note that applications use terminfo to map escape sequences back
# to keys. It is therefore required to update the terminfo when changing an
# escape sequence.
#
# - `action`: Execute a predefined action
#
# - Copy
# - Paste
# - PasteSelection
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollLineUp
# - ScrollLineDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# - Hide
# - Minimize
# - Quit
# - ToggleFullscreen
# - SpawnNewInstance
# - ClearLogNotice
# - ReceiveChar
# - None
#
# (macOS only):
# - ToggleSimpleFullscreen: Enters fullscreen without occupying another space
#
# - `command`: Fork and execute a specified command plus arguments
#
# The `command` field must be a map containing a `program` string and an
# `args` array of command line parameter strings. For example:
# `{ program: "alacritty", args: ["-e", "vttest"] }`
#
# And optionally:
#
# - `mods`: Key modifiers to filter binding actions
#
# - Command
# - Control
# - Option
# - Super
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this:
# `mods: Control|Shift`.
# Whitespace and capitalization are relevant and must match the example.
#
# - `mode`: Indicate a binding for only specific terminal reported modes
#
# This is mainly used to send applications the correct escape sequences
# when in different modes.
#
# - AppCursor
# - AppKeypad
# - Alt
#
# A `~` operator can be used before a mode to apply the binding whenever
# the mode is *not* active, e.g. `~Alt`.
#
# Bindings are always filled by default, but will be replaced when a new
# binding with the same triggers is defined. To unset a default binding, it can
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
# a no-op if you do not wish to receive input characters for that binding.
#
# If the same trigger is assigned to multiple actions, all of them are executed
# at once.
#key_bindings:
# (Windows, Linux, and BSD only)
#- { key: V, mods: Control|Shift, action: Paste }
#- { key: C, mods: Control|Shift, action: Copy }
#- { key: Insert, mods: Shift, action: PasteSelection }
#- { key: Key0, mods: Control, action: ResetFontSize }
#- { key: Equals, mods: Control, action: IncreaseFontSize }
#- { key: Add, mods: Control, action: IncreaseFontSize }
#- { key: Subtract, mods: Control, action: DecreaseFontSize }
#- { key: Minus, mods: Control, action: DecreaseFontSize }
# (Windows only)
#- { key: Return, mods: Alt, action: ToggleFullscreen }
# (macOS only)
#- { key: Key0, mods: Command, action: ResetFontSize }
#- { key: Equals, mods: Command, action: IncreaseFontSize }
#- { key: Add, mods: Command, action: IncreaseFontSize }
#- { key: Minus, mods: Command, action: DecreaseFontSize }
#- { key: K, mods: Command, action: ClearHistory }
#- { key: K, mods: Command, chars: "\x0c" }
#- { key: V, mods: Command, action: Paste }
#- { key: C, mods: Command, action: Copy }
#- { key: H, mods: Command, action: Hide }
#- { key: M, mods: Command, action: Minimize }
#- { key: Q, mods: Command, action: Quit }
#- { key: W, mods: Command, action: Quit }
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
#- { key: Paste, action: Paste }
#- { key: Copy, action: Copy }
#- { key: L, mods: Control, action: ClearLogNotice }
#- { key: L, mods: Control, chars: "\x0c" }
#- { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt }
#- { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt }
#- { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt }
#- { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt }
#debug:
# Display the time it takes to redraw each frame.
#render_timer: false
# Keep the log file after quitting Alacritty.
#persistent_logging: false
# Log level
#
# Values for `log_level`:
# - None
# - Error
# - Warn
# - Info
# - Debug
# - Trace
#log_level: Warn
# Print all received window events.
#print_events: false

95
.config/conky/conky-shcts Normal file
View File

@@ -0,0 +1,95 @@
conky.config = {
background = true,
update_interval = 1,
cpu_avg_samples = 2,
net_avg_samples = 2,
temperature_unit = 'celsius',
if_up_strictness = 'address',
double_buffer = true,
no_buffers = true,
text_buffer_size = 2048,
own_window = true,
own_window_class = 'conky',
own_window_type = 'override',
own_window_hints = 'undecorated,sticky,skip_taskbar,skip_pager,below',
--own_window_colour = '#555555',
own_window_transparent = true,
own_window_argb_visual = true,
own_window_argb_value = 0,
draw_shades = false,
draw_outline = false,
draw_borders = false,
draw_graph_borders = false,
alignment = 'top_right',
gap_x = 50,
--von oben |
gap_y = 50,
minimum_width = 350,
minimum_height = 450,
maximum_width = 400,
border_inner_margin = 0,
border_outer_margin = 20,
--xinerama_head = 0,
override_utf8_locale = true,
use_xft = true,
font = 'monospace:size=8',
xftalpha = 0.8,
uppercase = false,
-- Defining colors
default_color = '#FFFFFF',
-- Shades of Gray
color1 = '#DDDDDD',
color2 = '#AAAAAA',
color3 = '#FFFFFF',
-- Orange EF5A29 green 159a7f
color4 = '#808080',
-- Green Pihole
color5 = '#EF5A29',
--color0
color6='#b2c8d8',
-- color1
color7='#b2c8d8',
color8 = '#697987', -- DeepSkyBlue 00BFFF grau=323232
color9 = '#2d3b41', -- CadetBlue 5F9EA0, light grey
}
conky.text = [[
${font Play:size=10:style=normal}
${color2}open terminal - ${alignr}${color}super+enter
${color2}open browser - ${alignr}${color}super+F1
${color2}open mail - ${alignr}${color}super+F2
${color2}open filemanager - ${alignr}${color}super+F3
${color2}open text - ${alignr}${color}super+F4
#rofi
${color2}application launcher ... - ${alignr}${color}super+d
${color2}screenshot - ${alignr}${color}print
${color2}resize window - ${alignr}${color}super+r
${color2}kill focused - ${alignr}${color}super+c | super+q
${color2}toggle split direction - ${alignr}${color}super+shift+q
${color2}toggle floating - ${alignr}${color}super+space
${color2}toggle fullscreen - ${alignr}${color}super+f
# switch to workspace
${color2}switch to workspace 1-8 - ${alignr}${color}super+1-8
# move focused container to workspace
${color2}send to workspace 1-8 - ${alignr}${color}super+shift+1-8
# Move to workspace with focused container
${color2}move to workspace 1-8 - ${alignr}${color}alt+shift+1-8
${color2}navigate workspaces - ${alignr}${color}super+ctrl+arrowkeys
${color2}navigate windows - ${alignr}${color}super+shift+arrowkeys
${color2}change focus - ${alignr}${color}super+arrowkeys
${color2}restart i3 inplace - ${alignr}${color}super+shift+r
${color2}reload config file - ${alignr}${color}super+shift+c
${color2}logout, reboot, shutdown ... - ${alignr}${color}super+0
]];

157
.config/conky/conky.conf Normal file
View File

@@ -0,0 +1,157 @@
--[[
Conky, a system monitor, based on torsmo
Any original torsmo code is licensed under the BSD license
All code written since the fork of torsmo is licensed under the GPL
Please see COPYING for details
Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen
Copyright (c) 2005-2021 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS)
All rights reserved.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
]]
conky.config ={
-- CONKY SETTINGS
background = true,
update_interval = 1,
update_interval_on_battery = 5,
total_run_times = 0,
cpu_avg_samples = 2,
net_avg_samples = 2,
override_utf8_locale = true,
double_buffer = true,
no_buffers = true,
text_buffer_size = 32768,
-- CONKY: WINDOW SPECIFICATIONS
own_window = true,
own_window_argb_value = 192,
own_window_argb_visual = true,
own_window_class = 'conky-semi',
-- own_window_colour = '#0b0d18',
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
own_window_transparent = true,
own_window_type = 'dock',
border_inner_margin = 6,
border_width = 5,
minimum_height = 1020,
minimum_width = 280,
maximum_width = 280,
alignment = 'bottom_left',
gap_x = 10,
gap_y = 0,
-- GRAPHICS SETTINGS
draw_outline = true,
draw_outline = false,
draw_borders = false,
draw_graph_borders = true,
-- draw_graph_borders = false,
-- TEXT SETTINGS
use_xft = true,
font = 'Montserrat Regular:size=10',
xftalpha = 0.2,
uppercase = false,
-- Pad percentages to this many decimals (0 = no padding)
pad_percents = 2,
-- COLOUR SETTINGS
default_color = 'AAAAAA',
default_shade_color = '333333',
-- default_outline_color = '111111',
default_outline_color = '010101',
color1 = '999999',
color2 = 'CCCCCC',
color3 = 'EEEEEE',
color4 = '444444',
color5 = '555555',
color6 = '666666',
color7 = '3b71a1',
};
conky.text = [[
${alignc}${color1}${font Montserrat Bold:size=20}${time %X (%Z)}${font}${color}${alignc}
${voffset -9}
${alignc}${font Montserrat Light:size=10}${time %A %d %B %Y}${font}${alignc}
${color6}${hr 2}${color}
${voffset -6}
${font Montserrat Light:size=8}${color1}SYSTEM:${color}${font} ${alignr}$sysname $nodename
${font Montserrat Light:size=8}${color1}UPTIME:${color}${font} ${alignr}$uptime_short
${font Montserrat Light:size=8}${color1}KERNEL:${color}${font} ${alignr}$kernel ${voffset 5}
${font :size=11}${color}CPUs ${color}${hr 2}${color}
${voffset -15}
${font Montserrat Light:size=10}${color1}CPU:${color}${font} ${alignr}${color}${execi 300 cat /proc/cpuinfo | grep 'model name' | cut -c 14-40 | uniq}${color}${font}
${font Montserrat Light:size=9}${color1}Used: ${alignr}${color}${font}${cpu cpu0}%
${font :size=11}${color}${cpubar cpu0}${color}
${voffset -15}
${font Montserrat Light:size=9}${color1}01 - 04:${color}${font} ${goto 100}${cpu cpu1}% ${goto 150}${cpu cpu2 }% ${goto 200}${cpu cpu3 }% ${goto 250}${cpu cpu4 }%
${font Montserrat Light:size=9}${color1}05 - 08:${color}${font} ${goto 100}${cpu cpu5}% ${goto 150}${cpu cpu6 }% ${goto 200}${cpu cpu7 }% ${goto 250}${cpu cpu8 }%
${font Montserrat Light:size=9}${color1}09 - 12:${color}${font} ${goto 100}${cpu cpu9}% ${goto 150}${cpu cpu10}% ${goto 200}${cpu cpu11}% ${goto 250}${cpu cpu12}%
${voffset -8}
${font Montserrat Light:size=9}${color1}CPU TEMP:${color}${font} ${font :size=10}${alignr}${hwmon 1 temp 1}°${color4}C${color}${voffset 5}
${font :size=11}${color}Network ${color}${hr 2}${color}
${voffset -15}
# ${font Montserrat Light:size=10}${color1}IP ADDRESS:${color}${font} ${alignr}${addr wlp0s20f3}
${if_match "${addr wlp0s20f3}"!="No Address"}${voffset 5}${font Montserrat Light:size=10}${font}Download ${alignr}${downspeedf wlp0s20f3}k/s (${totaldown wlp0s20f3})
${color3}${downspeedgraph wlp0s20f3 50,280 ADFF2F 32CD32 -t}
${font Montserrat Light:size=10}${font}Upload ${alignr}${upspeedf wlp0s20f3}k/s (${totalup wlp0s20f3})
${color3}${upspeedgraph wlp0s20f3 50,280 FF0000 8B0000 -t}
${endif}${voffset 5}${font :size=11}${color}HDD ${color}${hr 2}${color}
${color1}Used: ${color3}${fs_used /}${color1}${goto 190}Free:${goto 230}${color3}${fs_free /}
${color2}${fs_bar /}
${font Montserrat Light:size=8}${color1}DISK I/O:${color}${font} ${alignr}$diskio
${voffset 2}${font Montserrat Light:size=8}${color1}READ: ${color}${font} ${goto 80}${color4}${diskiograph_read 15,210 ADFF2F 32CD32 750}${color}
${voffset 2}${font Montserrat Light:size=8}${color1}WRITE:${color}${font} ${goto 80}${color4}${diskiograph_write 15,210 FF0000 8B0000 750}${color}
${font :size=11}${color}Memory ${color}${hr 2}${color}${voffset 2}
$font${color DimGray}RAM $alignc $mem / $memmax $alignr ${color 188f18}$memperc%
${color 188f18}$membar${voffset 1}
${font :size=11}${color}GPU ${color}${hr 2}${color}${voffset 2}
${font Montserrat Light:size=9}${color1}GPU Freq.: $alignr ${color}${font}${nvidia gpufreq} Mhz${voffset 3}
${font Montserrat Light:size=9}${color1}Memory Freq.: $alignr ${color}${font}${nvidia memfreq} Mhz${voffset 3}
${font Montserrat Light:size=9}${color1}Temperature: $alignr ${color}${font}${nvidia temp}°C ${voffset 3}
${voffset 3}${font :size=11}${color}Processes ${color}${hr 2}${color}
${voffset -15}
${font :size=10}${font Montserrat Light:size=8}${color1}TOTAL:${color}${font} ${alignr}${processes}
${voffset -10}
${font Montserrat Light:size=9}${color1}APP NAME: ${goto 160}MEMORY: ${goto 245}CPU: ${color}${font}
${voffset -16}
${font Montserrat Light:size=9}${color1}${top_mem name 1} ${color}${font} ${goto 160}${top mem 1} % ${goto 235}${top cpu 1} %
${font Montserrat Light:size=9}${color1}${top_mem name 2} ${color}${font} ${goto 160}${top mem 2} % ${goto 235}${top cpu 2} %
${font Montserrat Light:size=9}${color1}${top_mem name 3} ${color}${font} ${goto 160}${top mem 3} % ${goto 235}${top cpu 3} %
${font Montserrat Light:size=9}${color1}${top_mem name 4} ${color}${font} ${goto 160}${top mem 4} % ${goto 235}${top cpu 4} %
${font Montserrat Light:size=9}${color1}${top_mem name 5} ${color}${font} ${goto 160}${top mem 5} % ${goto 235}${top cpu 5} %
${font Montserrat Light:size=9}${color1}${top_mem name 6} ${color}${font} ${goto 160}${top mem 6} % ${goto 235}${top cpu 6} %
${font Montserrat Light:size=9}${color1}${top_mem name 7} ${color}${font} ${goto 160}${top mem 7} % ${goto 235}${top cpu 7} %
${font Montserrat Light:size=9}${color1}${top_mem name 8} ${color}${font} ${goto 160}${top mem 8} % ${goto 235}${top cpu 8} %
${font Montserrat Light:size=9}${color1}${top_mem name 9} ${color}${font} ${goto 160}${top mem 9} % ${goto 235}${top cpu 9} %
${font Montserrat Light:size=9}${color1}${top_mem name 10} ${color}${font} ${goto 160}${top mem 10} % ${goto 235}${top cpu 10} %
# ${font Montserrat Light:size=10}${color1}${alignr}by: Mo Abdrabou${color}${font}
]];

1
.config/emacs Submodule

Submodule .config/emacs added at c3374c310c

View File

@@ -1,20 +1,11 @@
############
# GREETING #
############
function fish_greeting
clear
neofetch
echo "¸.·´¯`·.´¯`·.¸¸.·´¯`·.¸><(((º>"
end
#############
# VARIABLES #
#############
set -U fish_user_paths $fish_user_paths $HOME/.local/bin/
###########
# ALIASES #
###########
# pacman and paru
alias pacsyu='sudo pacman -Syyu' # update only standard pkgs
alias parusua='paru -Sua --noconfirm' # update only AUR pkgs
@@ -47,12 +38,6 @@ alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys"
# bare git repo alias for dotfiles
alias config="GIT_WORK_TREE=~ GIT_DIR=~/.cfg"
# ssh fix for kitty terminal
alias ssh="kitty +kitten ssh"
#######
# TTY #
#######
if [ "$TERM" = "linux" ]
then
printf %b '\e[40m' '\e[8]' # set default background to color 0 'dracula-bg'
@@ -76,8 +61,5 @@ if [ "$TERM" = "linux" ]
clear
end
##########
# PROMPT #
##########
# Starship Prompt
starship init fish | source

View File

@@ -23,7 +23,7 @@ softrealtime=off
; GameMode can renice game processes. You can put any value between 0 and 20 here, the value
; will be negated and applied as a nice value (0 means no change). Defaults to 0.
renice=0
renice=10
; By default, GameMode adjusts the iopriority of clients to BE/0, you can put any value
; between 0 and 7 here (with 0 being highest priority), or one of the special values

View File

@@ -7,4 +7,4 @@ Config {
blacklistedApps = [],
trimSpaceFromSelection = True,
enableImageSupport = True
}
}

View File

@@ -1,5 +1,3 @@
# vim:fileencoding=utf-8:ft=conf:foldmethod=marker
#: Fonts {{{
#: kitty has very powerful font management. You can configure
@@ -763,7 +761,7 @@ mark3_background #f274bc
#: Advanced {{{
shell .
shell fish
#: The shell program to execute. The default value of . means to use
#: whatever shell is set as the default shell for the current user.
@@ -1029,6 +1027,8 @@ clear_all_shortcuts no
#: kitty +kitten hints --hints-offset to zero for all mappings,
#: including the builtin ones.
#: }}}
#: Clipboard {{{
map kitty_mod+c copy_to_clipboard
@@ -1309,6 +1309,4 @@ map kitty_mod+delete clear_terminal reset active
#: }}}
# }}}
include dracula.conf

View File

@@ -12,14 +12,14 @@ print_info() {
info "Shell" shell
# info "Resolution" resolution
# info "DE" de
# info "WM" wm
info "WM" wm
# info "WM Theme" wm_theme
# info "Theme" theme
# info "Icons" icons
# info "Terminal" term
# info "Terminal Font" term_font
# info "CPU" cpu
# info "GPU" gpu
info "CPU" cpu
info "GPU" gpu
# info "GPU Driver" gpu_driver # Linux/macOS only
info "CPU Usage" cpu_usage
info "Memory" memory
@@ -35,9 +35,6 @@ print_info() {
info cols
}
# Title
# Hide/Show Fully qualified domain name.
#
# Default: 'off'
@@ -45,10 +42,6 @@ print_info() {
# Flag: --title_fqdn
title_fqdn="off"
# Kernel
# Shorten the output of the kernel function.
#
# Default: 'on'
@@ -61,10 +54,6 @@ title_fqdn="off"
# off: 'Linux 4.8.9-1-ARCH'
kernel_shorthand="on"
# Distro
# Shorten the output of the distro function
#
# Default: 'off'
@@ -85,10 +74,6 @@ distro_shorthand="off"
# off: 'Arch Linux'
os_arch="on"
# Uptime
# Shorten the output of the uptime function
#
# Default: 'on'
@@ -101,10 +86,6 @@ os_arch="on"
# off: '2 days, 10 hours, 3 minutes'
uptime_shorthand="on"
# Memory
# Show memory pecentage in output.
#
# Default: 'off'
@@ -116,10 +97,6 @@ uptime_shorthand="on"
# off: '1801MiB / 7881MiB'
memory_percent="on"
# Packages
# Show/Hide Package Manager names.
#
# Default: 'tiny'
@@ -132,10 +109,6 @@ memory_percent="on"
# off: '908'
package_managers="on"
# Shell
# Show the path to $SHELL
#
# Default: 'off'
@@ -158,10 +131,6 @@ shell_path="off"
# off: 'bash'
shell_version="on"
# CPU
# CPU speed type
#
# Default: 'bios_limit'
@@ -237,10 +206,6 @@ cpu_cores="logical"
# off: 'Intel i7-6500U (4) @ 3.1GHz'
cpu_temp="F"
# GPU
# Enable/Disable GPU Brand
#
# Default: 'on'
@@ -271,10 +236,6 @@ gpu_brand="on"
# GPU1: Intel Integrated Graphics
gpu_type="all"
# Resolution
# Display refresh rate next to each monitor
# Default: 'off'
# Values: 'on', 'off'
@@ -286,10 +247,6 @@ gpu_type="all"
# off: '1920x1080'
refresh_rate="on"
# Gtk Theme / Icons / Font
# Shorten output of GTK Theme / Icons / Font
#
# Default: 'off'
@@ -324,10 +281,6 @@ gtk2="on"
# off: 'Numix [GTK2]'
gtk3="on"
# IP Address
# Website to ping for the public IP
#
# Default: 'http://ident.me'
@@ -342,10 +295,6 @@ public_ip_host="http://ident.me"
# Flag: --ip_timeout
public_ip_timeout=2
# Desktop Environment
# Show Desktop Environment version
#
# Default: 'off'
@@ -353,10 +302,6 @@ public_ip_timeout=2
# Flag: --de_version
de_version="on"
# Disk
# Which disks to display.
# The values can be any /dev/sdXX, mount point or directory.
# NOTE: By default we only show the disk info for '/'.
@@ -411,10 +356,6 @@ disk_subtitle="mount"
# off: 'Disk (/): 74G / 118G'
disk_percent="on"
# Song
# Manually specify a music player.
#
# Default: 'auto'
@@ -493,10 +434,6 @@ song_shorthand="off"
# Example: mpc_args=(-h HOST -P PASSWORD)
mpc_args=()
# Text Colors
# Text Colors
#
# Default: 'distro'
@@ -511,10 +448,6 @@ mpc_args=()
# colors=(4 6 1 8 8 6) - Text is colored in the order above.
colors=(distro)
# Text Options
# Toggle bold text
#
# Default: 'on'
@@ -548,10 +481,6 @@ underline_char="-"
# separator=" =": 'WM = dwm'
separator=":"
# Color Blocks
# Color block range
# The range of colors to print.
#
@@ -603,9 +532,6 @@ block_height=1
# col_offset=7 - Leave 7 spaces then print the colors
col_offset="auto"
# Progress Bars
# Bar characters
#
# Default: '-', '='
@@ -646,7 +572,6 @@ bar_length=15
bar_color_elapsed="distro"
bar_color_total="distro"
# Info display
# Display a bar with the info.
#
@@ -667,10 +592,6 @@ memory_display="off"
battery_display="off"
disk_display="off"
# Backend Settings
# Image backend.
#
# Default: 'ascii'
@@ -693,10 +614,6 @@ image_backend="ascii"
# wallpaper will be used.
image_source="auto"
# Ascii Options
# Ascii distro
# Which distro's ascii art to display.
#
@@ -764,10 +681,6 @@ ascii_colors=(distro)
# Flag: --ascii_bold
ascii_bold="on"
# Image Options
# Image loop
# Setting this to on will make neofetch redraw the image constantly until
# Ctrl+C is pressed. This fixes display issues in some terminal emulators.
@@ -836,9 +749,6 @@ xoffset=0
# Flag: --bg_color
background_color=
# Misc Options
# Stdout mode
# Turn off all colors and disables image backend (ASCII/Image).
# Useful for piping into another command.

504
.config/picom/picom.conf Normal file
View File

@@ -0,0 +1,504 @@
# requires https://github.com/jonaburg/picom
# length of animation in milliseconds (default: 300)
transition-length = 150;
# animation easing on the x-axis (default: 0.1)
transition-pow-x = 0.1;
# animation easing on the y-axis (default: 0.1)
transition-pow-y = 0.1;
#animation easing on the window width (default: 0.1)
transition-pow-w = 0.1;
# animation easing on the window height (default: 0.1)
transition-pow-h = 0.1;
# whether to animate window size changes (default: true)
size-transition = true;
# whether to animate new windows from the center of the screen (default: false)
spawn-center-screen = false;
# whether to animate new windows from their own center (default: true)
spawn-center = true;
# Whether to animate down scaling (some programs handle this poorly) (default: false)
no-scale-down = true;
# requires: https://github.com/sdhand/compton or https://github.com/jonaburg/picom
corner-radius = 10.0;
rounded-corners-exclude = [
# "window_type = 'normal'",
# "class_g = 'awesome'",
# "class_g = 'URxvt'",
# "class_g = 'XTerm'",
# "class_g = 'kitty'",
# "class_g = 'Alacritty'",
"class_g = 'Polybar'",
"class_g = 'Rofi'",
# "class_g = 'code-oss'",
#"class_g = 'TelegramDesktop'",
# "class_g = 'firefox'",
# "class_g = 'Thunderbird'"
];
round-borders = 1;
round-borders-exclude = [
#"class_g = 'TelegramDesktop'",
];
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
# shadow = false
shadow = false;
# The blur radius for shadows, in pixels. (defaults to 12)
# shadow-radius = 12
shadow-radius = 7;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = .75
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = -7;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = -7;
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dock-shadow = false
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dnd-shadow = false
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0
# Do not paint shadows on shaped windows. Note shaped windows
# here means windows setting its shape through X Shape extension.
# Those using ARGB background is beyond our control.
# Deprecated, use
# shadow-exclude = 'bounding_shaped'
# or
# shadow-exclude = 'bounding_shaped && !rounded_corners'
# instead.
#
# shadow-ignore-shaped = ''
# Specify a list of conditions of windows that should have no shadow.
#
# examples:
# shadow-exclude = "n:e:Notification";
#
# shadow-exclude = []
shadow-exclude = [
# "name = 'Notification'",
# "class_g = 'Conky'",
# "class_g ?= 'Notify-osd'",
# "class_g = 'Cairo-clock'",
# "class_g = 'slop'",
# "class_g = 'Polybar'",
# "_GTK_FRAME_EXTENTS@:c"
];
# Specify a X geometry that describes the region in which shadow should not
# be painted in, such as a dock window region. Use
# shadow-exclude-reg = "x10+0+0"
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
#
# shadow-exclude-reg = ""
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
# xinerama-shadow-crop = false
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# fading = false
fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Specify a list of conditions of windows that should not be faded.
# don't need this, we disable fading for all normal windows with wintypes: {}
fade-exclude = [
# "class_g = 'slop'" # maim
]
# Do not fade on window open/close.
# no-fading-openclose = false
no-fading-openclose = true
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
inactive-opacity = 1
# inactive-opacity = 0.8;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
frame-opacity = 1.0
# frame-opacity = 0.7;
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
# menu-opacity = 1.0
# menu-opacity is depreciated use dropdown-menu and popup-menu instead.
#If using these 2 below change their values in line 530 & 531 aswell
# popup_menu = { opacity = 0.8; }
popup_menu = { opacity = 1.0; }
# dropdown_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 1.0; }
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
# inactive-opacity-override = true
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
active-opacity = 1.0;
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0
# Specify a list of conditions of windows that should always be considered focused.
# focus-exclude = []
focus-exclude = [
# "class_g = 'Cairo-clock'",
# "class_g = 'Bar'", # lemonbar
# "class_g = 'slop'" # maim
];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
# inactive-dim-fixed = 1.0
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
# Note we don't make any guarantee about possible conflicts with other
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
# example:
# opacity-rule = [ "80:class_g = 'URxvt'" ];
#
# opacity-rule = []
opacity-rule = [
# "80:class_g = 'Bar'", # lemonbar
# "100:class_g = 'slop'", # maim
# "100:class_g = 'XTerm'",
# "100:class_g = 'URxvt'",
# "100:class_g = 'kitty'",
# "100:class_g = 'Alacritty'",
# "80:class_g = 'Polybar'",
# "100:class_g = 'code-oss'",
# "100:class_g = 'Meld'",
# "70:class_g = 'TelegramDesktop'",
# "90:class_g = 'Joplin'",
# "100:class_g = 'firefox'",
# "100:class_g = 'Thunderbird'"
];
# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method =
# blur-size = 12
#
# blur-deviation = false
# Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior.
# The name of the switch may change without prior notifications.
#
# blur-background = true;
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false;
# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false;
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ''
# blur-kern = "3x3box";
blur: {
# requires: https://github.com/ibhagwan/picom
method = "kawase";
#method = "kernel";
strength = 7;
# deviation = 1.0;
# kernel = "11x11gaussian";
background = false;
background-frame = false;
background-fixed = false;
kern = "3x3box";
}
# Exclude conditions for background blur.
blur-background-exclude = [
#"window_type = 'dock'",
#"window_type = 'desktop'",
#"class_g = 'URxvt'",
#
# prevents picom from blurring the background
# when taking selection screenshot with `main`
# https://github.com/naelstrof/maim/issues/130
"class_g = 'slop'",
"class_g = 'zoom'",
"_GTK_FRAME_EXTENTS@:c"
];
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
experimental-backends = true;
backend = "glx";
#backend = "xrender";
# Enable/disable VSync.
# vsync = false
vsync = false
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
# dbus = false
# Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active.
#
# mark-wmwin-focused = false
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
# mark-ovredir-focused = false
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# detect-rounded-corners = false
detect-rounded-corners = true;
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_OPACITY' of client windows to frame windows.
#
# detect-client-opacity = false
detect-client-opacity = true;
# Specify refresh rate of the screen. If not specified or 0, picom will
# try detecting this with X RandR extension.
#
# refresh-rate = 60
refresh-rate = 0
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with
# vsync drm/opengl/opengl-oml
# as they essentially does sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#
# sw-opti =
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
# provided that the WM supports it.
#
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows. paint-on-overlay may make the flickering less obvious.
#
# unredir-if-possible = false
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
# unredir-if-possible-delay = 0
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
# unredir-if-possible-exclude = []
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
# detect-transient is enabled, too.
#
# detect-client-leader = false
detect-client-leader = true
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
# If the value is positive, those additional pixels will not be actually painted
# to screen, only used in blur calculation, and such. (Due to technical limitations,
# with use-damage, those pixels will still be incorrectly painted to screen.)
# Primarily used to fix the line corruption issues of blur,
# in which case you should use the blur radius value here
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
# with a 5x5 one you use `--resize-damage 2`, and so on).
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
#
# resize-damage = 1
# Specify a list of conditions of windows that should be painted with inverted color.
# Resource-hogging, and is not well tested.
#
# invert-color-include = []
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content (but never
# practically happened) and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
#
# glx-no-stencil = false
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes,
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
# Recommended if it works.
#
# glx-no-rebind-pixmap = false
# Disable the use of damage information.
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
# The opposing option is use-damage
#
# no-use-damage = false
#use-damage = true (Causing Weird Black semi opaque rectangles when terminal is opened)
#Changing use-damage to false fixes the problem
use-damage = false
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
# with GLX backend for some users.
#
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
# in the source tree for examples.
#
# glx-fshader-win = ''
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
#
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them.
#
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case doesn't matter.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# log-level = "debug"
log-level = "info";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = '/path/to/your/log/file'
# Show all X errors (for debugging)
# show-all-xerrors = false
# Write process ID to a file.
# write-pid-path = '/path/to/your/log/file'
# Window type settings
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
# "tooltip", "notification", "combo", and "dnd".
#
# Following per window-type options are available: ::
#
# fade, shadow:::
# Controls window-type-specific shadow and fade settings.
#
# opacity:::
# Controls default opacity of the window type.
#
# focus:::
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:::
# Controls whether shadow is drawn under the parts of the window that you
# normally won't be able to see. Useful when the window has parts of it
# transparent, and you want shadows in those areas.
#
# redir-ignore:::
# Controls whether this type of windows should cause screen to become
# redirected again after been unredirected. If you have unredir-if-possible
# set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#
wintypes:
{
normal = { fade = false; shadow = false; }
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
# popup_menu = { opacity = 0.8; }
popup_menu = { opacity = 1.0; }
# dropdown_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 1.0; }
};

152
.config/rofi/config.rasi Normal file
View File

@@ -0,0 +1,152 @@
configuration {
modi: "window,drun,combi,run,clipboard:greenclip print,ssh";
/* width: 50;*/
/* lines: 15;*/
/* columns: 1;*/
font: "NotoSans Nerd Font 12";
/* bw: 1;*/
/* location: 0;*/
/* padding: 5;*/
/* yoffset: 0;*/
/* xoffset: 0;*/
/* fixed-num-lines: true;*/
show-icons: true;
terminal: "alacritty";
/* ssh-client: "ssh";*/
/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
/* run-command: "{cmd}";*/
/* run-list-command: "";*/
/* run-shell-command: "{terminal} -e {cmd}";*/
/* window-command: "wmctrl -i -R {window}";*/
/* window-match-fields: "all";*/
icon-theme: "Papirus-Dark";
/* drun-match-fields: "name,generic,exec,categories";*/
/* drun-show-actions: false;*/
/* drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
/* disable-history: false;*/
/* ignored-prefixes: "";*/
/* sort: false;*/
/* sorting-method: ;*/
/* case-sensitive: false;*/
/* cycle: true;*/
/* sidebar-mode: false;*/
/* eh: 1;*/
/* auto-select: false;*/
/* parse-hosts: false;*/
/* parse-known-hosts: true;*/
combi-modi: "window,drun";
/* matching: "normal";*/
/* tokenize: true;*/
/* m: "-5";*/
/* line-margin: 2;*/
/* line-padding: 1;*/
/* filter: ;*/
/* separator-style: "dash";*/
/* hide-scrollbar: false;*/
/* fullscreen: false;*/
/* fake-transparency: false;*/
/* dpi: -1;*/
/* threads: 0;*/
/* scrollbar-width: 8;*/
/* scroll-method: 0;*/
/* fake-background: "screenshot";*/
/* window-format: "{w} {c} {t}";*/
/* click-to-exit: true;*/
/* show-match: true;*/
/* theme: ;*/
/* color-normal: ;*/
/* color-urgent: ;*/
/* color-active: ;*/
/* color-window: ;*/
/* max-history-size: 25;*/
/* combi-hide-mode-prefix: false;*/
/* matching-negate-char: '-' /* unsupported */;*/
/* cache-dir: ;*/
/* pid: "/run/user/1000/rofi.pid";*/
/* display-window: ;*/
/* display-windowcd: ;*/
/* display-run: ;*/
/* display-ssh: ;*/
/* display-drun: ;*/
/* display-combi: ;*/
/* display-keys: ;*/
/* kb-primary-paste: "Control+V,Shift+Insert";*/
/* kb-secondary-paste: "Control+v,Insert";*/
/* kb-clear-line: "Control+w";*/
/* kb-move-front: "Control+a";*/
/* kb-move-end: "Control+e";*/
/* kb-move-word-back: "Alt+b,Control+Left";*/
/* kb-move-word-forward: "Alt+f,Control+Right";*/
/* kb-move-char-back: "Left,Control+b";*/
/* kb-move-char-forward: "Right,Control+f";*/
/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
/* kb-remove-word-forward: "Control+Alt+d";*/
/* kb-remove-char-forward: "Delete,Control+d";*/
/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
/* kb-remove-to-eol: "Control+k";*/
/* kb-remove-to-sol: "Control+u";*/
/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
/* kb-accept-custom: "Control+Return";*/
/* kb-accept-alt: "Shift+Return";*/
/* kb-delete-entry: "Shift+Delete";*/
/* kb-mode-next: "Shift+Right,Control+Tab";*/
/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
/* kb-row-left: "Control+Page_Up";*/
/* kb-row-right: "Control+Page_Down";*/
/* kb-row-up: "Up,Control+p,ISO_Left_Tab";*/
/* kb-row-down: "Down,Control+n";*/
/* kb-row-tab: "Tab";*/
/* kb-page-prev: "Page_Up";*/
/* kb-page-next: "Page_Down";*/
/* kb-row-first: "Home,KP_Home";*/
/* kb-row-last: "End,KP_End";*/
/* kb-row-select: "Control+space";*/
/* kb-screenshot: "Alt+S";*/
/* kb-ellipsize: "Alt+period";*/
/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
/* kb-toggle-sort: "Alt+grave";*/
/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
/* kb-custom-1: "Alt+1";*/
/* kb-custom-2: "Alt+2";*/
/* kb-custom-3: "Alt+3";*/
/* kb-custom-4: "Alt+4";*/
/* kb-custom-5: "Alt+5";*/
/* kb-custom-6: "Alt+6";*/
/* kb-custom-7: "Alt+7";*/
/* kb-custom-8: "Alt+8";*/
/* kb-custom-9: "Alt+9";*/
/* kb-custom-10: "Alt+0";*/
/* kb-custom-11: "Alt+exclam";*/
/* kb-custom-12: "Alt+at";*/
/* kb-custom-13: "Alt+numbersign";*/
/* kb-custom-14: "Alt+dollar";*/
/* kb-custom-15: "Alt+percent";*/
/* kb-custom-16: "Alt+dead_circumflex";*/
/* kb-custom-17: "Alt+ampersand";*/
/* kb-custom-18: "Alt+asterisk";*/
/* kb-custom-19: "Alt+parenleft";*/
/* kb-select-1: "Super+1";*/
/* kb-select-2: "Super+2";*/
/* kb-select-3: "Super+3";*/
/* kb-select-4: "Super+4";*/
/* kb-select-5: "Super+5";*/
/* kb-select-6: "Super+6";*/
/* kb-select-7: "Super+7";*/
/* kb-select-8: "Super+8";*/
/* kb-select-9: "Super+9";*/
/* kb-select-10: "Super+0";*/
/* ml-row-left: "ScrollLeft";*/
/* ml-row-right: "ScrollRight";*/
/* ml-row-up: "ScrollUp";*/
/* ml-row-down: "ScrollDown";*/
/* me-select-entry: "MousePrimary";*/
/* me-accept-entry: "MouseDPrimary";*/
/* me-accept-custom: "Control+MouseDPrimary";*/
}
@import "./themes/centertab-dracula.rasi"
/* @import "./themes/dmenu-dracula.rasi" */
/* @import "./themes/dracula-blurry-full.rasi" */
/* @import "./themes/dracula.rasi" */
/* @import "./themes/sidetab-dracula.rasi" */
/* @import "./themes/slate-dracula.rasi" */

View File

@@ -0,0 +1,140 @@
/**
* ROFI Color theme: centertab-dracula
* User: balajsra
* Copyright: deadguy & Sravan Balaji
*/
configuration {
display-drun: "launch";
display-run: "execute";
display-window: "window";
display-combi: "combi";
show-icons: true;
sidebar-mode: false;
font: "NotoSans Nerd Font 12";
}
* {
background-color: #282a36;
text-color: #f8f8f2;
selbg: #8be9fd;
actbg: #44475a;
urgbg: #ff5555;
winbg: #8be9fd;
selected-normal-foreground: @winbg;
normal-foreground: @text-color;
selected-normal-background: @actbg;
normal-background: @background-color;
selected-urgent-foreground: @background-color;
urgent-foreground: @text-color;
selected-urgent-background: @urgbg;
urgent-background: @background-color;
selected-active-foreground: @winbg;
active-foreground: @background-color;
selected-active-background: @actbg;
active-background: @selbg;
line-margin: 2;
line-padding: 2;
separator-style: "none";
hide-scrollbar: "true";
margin: 0;
padding: 0;
}
window {
location: center;
anchor: center;
height: 75%;
width: 75%;
orientation: horizontal;
children: [mainbox];
border: 2;
border-color: @winbg;
}
mainbox {
spacing: 0.8em;
children: [ entry, listview, mode-switcher ];
}
button {
padding: 5px 2px;
}
button selected {
background-color: @active-background;
text-color: @background-color;
}
inputbar {
padding: 5px;
spacing: 5px;
}
listview {
spacing: 0.5em;
dynamic: false;
cycle: true;
}
element {
padding: 10px;
}
entry {
expand: false;
text-color: @normal-foreground;
vertical-align: 1;
padding: 5px;
}
element normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
border: 0 5px solid 0 0;
border-color: @active-background;
}
element selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element alternate.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element alternate.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element alternate.active {
background-color: @active-background;
text-color: @active-foreground;
}

View File

@@ -0,0 +1,43 @@
/**
* ROFI Color theme: dmenu-dracula
* User: balajsra
* Copyright: Sravan Balaji
*/
* {
background-color: #282a36;
text-color: #f8f8f2;
font: "NotoSans Nerd Font 12";
}
#window {
anchor: north;
location: north;
width: 100%;
padding: 2px 5px 2px 5px; /* top right bottom left */
children: [ horibox ];
}
#horibox {
orientation: horizontal;
children: [ prompt, entry, listview ];
}
#listview {
layout: horizontal;
spacing: 10px;
lines: 100;
}
#entry {
expand: false;
width: 10em;
}
#element {
padding: 1px 5px 1px 5px; /* top right bottom left */
}
#element selected {
background-color: #bd93f9;
text-color: #282a36;
}

View File

@@ -0,0 +1,138 @@
/*
*
* Author : Aditya Shakya (adi1090x)
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Reddit : @adi1090x
*
* Dracula Theme Colors : Sravan Balaji (balajsra)
* Mail: balajsra@umich.edu
* Github: @balajsra
*/
configuration {
drun-display-format: "{name}";
threads: 0;
scroll-method: 0;
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
* {
background: #00000000;
background-color: #282a36cc;
background-entry: #44475acc;
background-alt: #44475acc;
foreground: #f8f8f2cc;
foreground-selected: #50fa7bcc;
urgent: #ff5555cc;
urgent-selected: #ff5555cc;
}
window {
transparency: "real";
background-color: @background;
text-color: @foreground;
height: 100%;
width: 100%;
location: northwest;
anchor: northwest;
x-offset: 0;
y-offset: 0;
}
prompt {
enabled: false;
}
inputbar {
background-color: @background-alt;
text-color: @foreground;
expand: false;
border-radius: 6px;
margin: 0px 430px 0px 430px;
padding: 10px 10px 10px 10px;
position: north;
}
entry {
background-color: @background;
text-color: @foreground;
placeholder-color: @foreground;
expand: true;
horizontal-align: 0.5;
placeholder: "Search applications";
blink: true;
}
case-indicator {
background-color: @background;
text-color: @foreground;
spacing: 0;
}
listview {
background-color: @background;
columns: 7;
spacing: 4px;
cycle: false;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background-color;
children: [ inputbar, listview ];
spacing: 25px;
padding: 70px 135px 55px 135px;
}
element {
background-color: @background;
text-color: @foreground;
orientation: vertical;
border-radius: 9px;
padding: 20px 0px 20px 0px;
}
element-icon {
size: 65px;
border: 0px;
}
element-text {
expand: true;
horizontal-align: 0.5;
vertical-align: 0.5;
margin: 5px 10px 0px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @urgent;
text-color: @foreground;
border-radius: 9px;
}
element normal.active,
element alternate.active {
background-color: @background-alt;
text-color: @foreground;
}
element selected {
background-color: @background-alt;
text-color: @foreground-selected;
}
element selected.urgent {
background-color: @urgent-selected;
text-color: @foreground;
}
element selected.active {
background-color: @background-alt;
color: @foreground-selected;
}

View File

@@ -0,0 +1,122 @@
/*Dracula theme based on the Purple official rofi theme*/
* {
font: "Jetbrains Mono 12";
foreground: #f8f8f2;
background-color: #282a36;
active-background: #6272a4;
urgent-background: #ff5555;
selected-background: @active-background;
selected-urgent-background: @urgent-background;
selected-active-background: @active-background;
separatorcolor: @active-background;
bordercolor: @active-background;
}
#window {
background-color: @background;
border: 1;
border-radius: 6;
border-color: @bordercolor;
padding: 5;
}
#mainbox {
border: 0;
padding: 0;
}
#message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @bordercolor;
spacing: 2px ;
scrollbar: false;
padding: 2px 0px 0px ;
}
#element {
border: 0;
padding: 1px ;
}
#element.normal.normal {
background-color: @background;
text-color: @foreground;
}
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#element.normal.active {
background-color: @active-background;
text-color: @foreground;
}
#element.selected.normal {
background-color: @selected-background;
text-color: @foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @foreground;
}
#element.alternate.normal {
background-color: @background;
text-color: @foreground;
}
#element.alternate.urgent {
background-color: @urgent-background;
text-color: @foreground;
}
#element.alternate.active {
background-color: @active-background;
text-color: @foreground;
}
#scrollbar {
width: 2px ;
border: 0;
handle-width: 8px ;
padding: 0;
}
#sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
#button.selected {
background-color: @selected-background;
text-color: @foreground;
}
#inputbar {
spacing: 0;
text-color: @foreground;
padding: 1px ;
}
#case-indicator {
spacing: 0;
text-color: @foreground;
}
#entry {
spacing: 0;
text-color: @foreground;
}
#prompt {
spacing: 0;
text-color: @foreground;
}
#inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
#textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3em 0em 0em ;
text-color: @foreground;
}

View File

@@ -0,0 +1,137 @@
/**
* ROFI Color theme: sidetab-dracula
* User: balajsra
* Copyright: deadguy & Sravan Balaji
*/
configuration {
display-drun: "Launch";
display-run: "Execute";
display-window: "Window";
show-icons: true;
sidebar-mode: true;
font: "NotoSans Nerd Font 12";
}
* {
background-color: #282a36;
text-color: #f8f8f2;
selbg: #bd93f9;
actbg: #44475a;
urgbg: #ff5555;
winbg: #50fa7b;
selected-normal-foreground: @winbg;
normal-foreground: @text-color;
selected-normal-background: @actbg;
normal-background: @background-color;
selected-urgent-foreground: @background-color;
urgent-foreground: @text-color;
selected-urgent-background: @urgbg;
urgent-background: @background-color;
selected-active-foreground: @winbg;
active-foreground: @text-color;
selected-active-background: @actbg;
active-background: @selbg;
line-margin: 2;
line-padding: 2;
separator-style: "none";
hide-scrollbar: "true";
margin: 0;
padding: 0;
}
window {
location: west;
anchor: west;
height: 100%;
width: 25%;
orientation: horizontal;
children: [mainbox];
}
mainbox {
spacing: 0.8em;
children: [ entry, listview, mode-switcher ];
}
button {
padding: 5px 2px;
}
button selected {
background-color: @active-background;
text-color: @background-color;
}
inputbar {
padding: 5px;
spacing: 5px;
}
listview {
spacing: 0.5em;
dynamic: false;
cycle: true;
}
element {
padding: 10px;
}
entry {
expand: false;
text-color: @normal-foreground;
vertical-align: 1;
padding: 5px;
}
element normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
border: 0 5px solid 0 0;
border-color: @active-background;
}
element selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element alternate.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element alternate.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element alternate.active {
background-color: @active-background;
text-color: @active-foreground;
}

View File

@@ -0,0 +1,51 @@
/**
* ROFI Color theme: slate-dracula
* User: balajsra
* Copyright: Sravan Balaji
*/
* {
background-color: #282a36;
border-color: #bd93f9;
text-color: #f8f8f2;
spacing: 0;
width: 1024px;
font: "NotoSans Nerd Font 12";
}
inputbar {
border: 0 0 1px 0; /* top right bottom left */
children: [prompt, entry];
}
prompt {
padding: 16px;
border: 2px 1px 0 2px; /* top right bottom left */
}
textbox {
background-color: #282a36;
border: 0 0 1px 0; /* top right bottom left */
border-color: #bd93f9;
padding: 8px 16px 8px 16px; /* top right bottom left */
}
entry {
border: 2px 2px 0px 0; /* top right bottom left */
padding: 16px;
}
listview {
cycle: true;
margin: 0 0 0px 0; /* top right bottom left */
scrollbar: true;
}
element {
border: 0 2px 1px 2px; /* top right bottom left */
padding: 16px;
}
element selected {
background-color: #44475a;
}

View File

@@ -1,5 +1,3 @@
# ~/.config/starship.toml
# Don't print a new line at the start of the prompt
add_newline = false
@@ -34,7 +32,7 @@ truncate_to_repo = false
truncation_symbol = "…/"
read_only = ""
[docker]
[docker_context]
symbol = " "
[elixir]
@@ -49,8 +47,8 @@ symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
# [haskell]
# symbol = " "
[hg_branch]
symbol = " "

View File

@@ -1,13 +1,13 @@
# Sravan Balaji's Git Configuration
# Based on: https://gist.github.com/tdd/470582
[user]
email = balajsra@umich.edu
name = Sravan Balaji
email = balajsra@umich.edu
name = Sravan Balaji
[color]
# Enable colors in color-supporting terminals
ui = auto
[pull]
rebase = true
rebase = true
[alias]
# List available aliases
aliases = !git config --get-regexp alias | sed -re 's/alias\\.(\\S*)\\s(.*)$/\\1 = \\2/g'
@@ -35,8 +35,8 @@
# Remove file(s) from Git but not from disk
untrack = rm --cache --
[core]
# VSCode
editor = code --wait
# Emacs
editor = "emacs -nw"
# Don't consider trailing space change as a cause for merge conflicts
whitespace = -trailing-space
[diff]
@@ -48,10 +48,6 @@
wordRegex = .
# Display submodule-related information (commit listings)
submodule = log
# Use VSCode as default diff tool when running `git diff-tool`
tool = vscode
[difftool "vscode"]
cmd = code --wait --diff $LOCAL $REMOTE
[fetch]
# Auto-fetch submodule changes (sadly, won't auto-update)
recurseSubmodules = on-demand

3
.gitignore vendored
View File

@@ -1 +1,2 @@
.cfg
.cfg
*~

22
.gitmodules vendored
View File

@@ -1,42 +1,64 @@
[submodule ".vim/pack/themes/start/dracula"]
path = .vim/pack/themes/start/dracula
url = git@github.com:dracula/vim.git
branch = master
[submodule ".themes/dracula-blender"]
path = .themes/dracula-blender
url = git@github.com:dracula/blender.git
branch = master
[submodule ".themes/dracula-freecad"]
path = .themes/dracula-freecad
url = git@github.com:dracula/freecad.git
branch = master
[submodule ".themes/dracula-gnome-terminal"]
path = .themes/dracula-gnome-terminal
url = git@github.com:dracula/gnome-terminal.git
branch = master
[submodule ".themes/dracula-xournalpp"]
path = .themes/dracula-xournalpp
url = git@github.com:dracula/xournalpp.git
branch = master
[submodule ".themes/dracula-steam"]
path = .themes/dracula-steam
url = git@github.com:dracula/steam.git
branch = master
[submodule ".themes/dracula-gtk"]
path = .themes/dracula-gtk
url = git@github.com:dracula/gtk.git
branch = master
[submodule ".themes/dracula-fish"]
path = .themes/dracula-fish
url = git@github.com:dracula/fish.git
branch = master
[submodule ".themes/dracula-kitty"]
path = .themes/dracula-kitty
url = git@github.com:dracula/kitty.git
branch = master
[submodule ".themes/dracula-libreoffice"]
path = .themes/dracula-libreoffice
url = git@github.com:dracula/libreoffice.git
branch = master
[submodule ".themes/dracula-tty"]
path = .themes/dracula-tty
url = git@github.com:dracula/tty.git
branch = master
[submodule ".themes/dracula-latex"]
path = .themes/dracula-latex
url = git@github.com:dracula/latex.git
branch = master
[submodule ".themes/dracula-matplotlib"]
path = .themes/dracula-matplotlib
url = git@github.com:dracula/matplotlib.git
branch = master
[submodule ".themes/dracula-matlab"]
path = .themes/dracula-matlab
url = git@github.com:dracula/matlab.git
branch = master
[submodule ".config/emacs"]
path = .config/emacs
url = git@github.com:balajsra/emacs.git
branch = main
[submodule ".xmonad"]
path = .xmonad
url = git@github.com:balajsra/xmonad.git
branch = master

65
.scripts/control-center.sh Executable file
View File

@@ -0,0 +1,65 @@
#!/bin/bash
help_menu() {
echo "Main script to launch sub-menu scripts. Use only one argument at a time."
# echo " - Play / Pause: playerctl.sh --play-pause"
# echo " - Next: playerctl.sh --next"
# echo " - Previous: playerctl.sh --prev"
# echo " - Change Player: playerctl.sh --change"
# echo " - Rofi Menu: playerctl.sh --rofi"
# echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
" Compositor - picom"
" Notifications - dunst"
" Media - playerctl"
"墳Volume - pactl"
" Hardware - system76-power"
" Power Menu - session"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--picom)
/home/sravan/.scripts/picom.sh --rofi
;;
--dunst)
/home/sravan/.scripts/dunst.sh --rofi
;;
--playerctl)
/home/sravan/.scripts/playerctl.sh --rofi
;;
--pactl)
/home/sravan/.scripts/pactl.sh --rofi
;;
--system76-power)
/home/sravan/.scripts/system76-power.sh --rofi
;;
--session)
/home/sravan/.scripts/session.sh --rofi
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

129
.scripts/dunst.sh Executable file
View File

@@ -0,0 +1,129 @@
#!/bin/bash
help_menu() {
echo "Script to interact with dunst. Use only one argument at a time."
echo " - Toggle On/Off: dunst.sh OR dunst.sh --toggle OR dunst.sh -t"
echo " - Turn On: dunst.sh --on"
echo " - Turn Off: dunst.sh --off"
echo " - Context Menu: dunst.sh --context"
echo " - Close Notification: dunst.sh --close"
echo " - History Pop: dunst.sh --history"
echo " - Toggle Do Not Disturb: dunst.sh --dnd"
echo " - Rofi Menu: dunst.sh --rofi"
echo " - Help: dunst.sh --help OR dunst.sh -h"
}
is_running() {
if pgrep -x dunst >/dev/null; then
echo 1
else
echo 0
fi
}
rofi_menu() {
declare -a options=(
"⏼ Toggle - toggle"
" Turn On - on"
" Turn Off - off"
" Open Actions - context"
" Close Notification - close"
" View History - history"
" Toggle Do Not Disturb - dnd"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--toggle)
if [ $(is_running) -eq '1' ]; then
main --off
else
main --on
fi
;;
--on)
# Get values from Xresources
config=~/.config/dunst/dunstrc
geometry_x=$(xgetres dunst.geometry-x)
geometry_y=$(xgetres dunst.geometry-y)
separator_height=$(xgetres dunst.sep-height)
padding=$(xgetres dunst.padding)
horizontal_padding=$(xgetres dunst.horiz-padding)
max_icon_size=$(xgetres dunst.max-icon-size)
frame_width=$(xgetres dunst.frame-width)
lb=$(xgetres dunst.low-background)
lf=$(xgetres dunst.low-foreground)
lfr=$(xgetres dunst.low-frame)
nb=$(xgetres dunst.normal-background)
nf=$(xgetres dunst.normal-foreground)
nfr=$(xgetres dunst.normal-frame)
cb=$(xgetres dunst.critical-background)
cf=$(xgetres dunst.critical-foreground)
cfr=$(xgetres dunst.critical-frame)
if [ $(is_running) -eq '1' ]; then
killall dunst
fi
# Start Dunst
/usr/bin/dunst -config $config \
-geometry "0x0-$geometry_x+$geometry_y" \
-separator_height "$separator_height" \
-padding "$padding" \
-horizontal_padding "$horizontal_padding" \
-max_icon_size "$max_icon_size" \
-frame_width "$frame_width" \
-lb "$lb" \
-lf "$lf" \
-lfr "$lfr" \
-nb "$nb" \
-nf "$nf" \
-nfr "$nfr" \
-cb "$cb" \
-cf "$cf" \
-cfr "$cfr" &
notify-send "Turning Dunst ON"
;;
--off)
notify-send "Turning Dunst OFF"
if [ $(is_running) -eq '1' ]; then
killall dunst
fi
;;
--context)
dunstctl context
;;
--close)
dunstctl close
;;
--history)
dunstctl history-pop
;;
--dnd)
dunstctl set-paused toggle
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

3
.scripts/game_exit.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
/home/sravan/.scripts/dunst.sh --dnd
# /home/sravan/.scripts/picom.sh --on

3
.scripts/game_launch.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
/home/sravan/.scripts/picom.sh --off
/home/sravan/.scripts/dunst.sh --dnd

53
.scripts/pactl.sh Executable file
View File

@@ -0,0 +1,53 @@
#!/bin/bash
help_menu() {
echo "Script to interact with pactl. Use only one argument at a time."
# echo " - Play / Pause: playerctl.sh --play-pause"
# echo " - Next: playerctl.sh --next"
# echo " - Previous: playerctl.sh --prev"
# echo " - Change Player: playerctl.sh --change"
# echo " - Rofi Menu: playerctl.sh --rofi"
# echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
" Raise Volume - raise"
" Lower Volume - lower"
" Mute - mute"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--raise)
pactl set-sink-volume @DEFAULT_SINK@ +5%
;;
--lower)
pactl set-sink-volume @DEFAULT_SINK@ -5%
;;
--mute)
pactl set-sink-mute @DEFAULT_SINK@ toggle
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

73
.scripts/picom.sh Executable file
View File

@@ -0,0 +1,73 @@
#!/bin/bash
help_menu() {
echo "Script to interact with picom. Use only one argument at a time."
echo " - Toggle On/Off: picom.sh OR picom.sh --toggle OR picom.sh -t"
echo " - Turn On: picom.sh --on"
echo " - Turn Off: picom.sh --off"
echo " - Help: picom.sh --help OR picom.sh -h"
}
is_running() {
if pgrep -x picom >/dev/null; then
echo 1
else
echo 0
fi
}
rofi_menu() {
declare -a options=(
"⏼ Toggle - toggle"
" Turn On - on"
" Turn Off - off"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--toggle)
if [ $(is_running) -eq '1' ]; then
main --off
else
main --on
fi
;;
--on)
if [ $(is_running) -eq '1' ]; then
killall picom
fi
picom --config /home/sravan/.config/picom/picom.conf &
notify-send "Turning Picom ON"
;;
--off)
if [ $(is_running) -eq '1' ]; then
killall picom
fi
notify-send "Turning Picom OFF"
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

57
.scripts/playerctl.sh Executable file
View File

@@ -0,0 +1,57 @@
#!/bin/bash
help_menu() {
echo "Script to interact with playerctl. Use only one argument at a time."
echo " - Play / Pause: playerctl.sh --play-pause"
echo " - Next: playerctl.sh --next"
echo " - Previous: playerctl.sh --prev"
echo " - Change Player: playerctl.sh --change"
echo " - Rofi Menu: playerctl.sh --rofi"
echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
"懶 Play / Pause - play-pause"
"怜 Next - next"
"玲 Previous - prev"
" Change Source - change"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--play-pause)
playerctl --player=playerctld play-pause
;;
--next)
playerctl --player=playerctld next
;;
--prev)
playerctl --player=playerctld previous
;;
--change)
playerctld shift
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

70
.scripts/session.sh Executable file
View File

@@ -0,0 +1,70 @@
#!/bin/bash
help_menu() {
echo "Script to interact with desktop session. Use only one argument at a time."
# echo " - Play / Pause: playerctl.sh --play-pause"
# echo " - Next: playerctl.sh --next"
# echo " - Previous: playerctl.sh --prev"
# echo " - Change Player: playerctl.sh --change"
# echo " - Rofi Menu: playerctl.sh --rofi"
# echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
" Recompile & Restart Xmonad - restart"
" Logout - logout"
" Lock - lock"
"⏾ Sleep - sleep"
" Reboot - reboot"
" Shutdown - shutdown"
"鈴 Hibernate - hibernate"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--logout)
notify-send -t 0 "Session Control" "Press M-S-q to exit xmonad"
;;
--lock)
light-locker-command --lock
;;
--sleep)
systemctl suspend
;;
--reboot)
reboot
;;
--shutdown)
shutdown now
;;
--hibernate)
systemctl hibernate
;;
--restart)
xmonad --recompile
xmonad --restart
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

140
.scripts/startup.sh Executable file
View File

@@ -0,0 +1,140 @@
#!/bin/bash
declare -a system_array=(\
# Background Processes
"bash /home/sravan/.scripts/dunst.sh --on" \ # Dunst Notification Daemon
"bash /home/sravan/.scripts/picom.sh --on" \ # Picom Compositor
"greenclip daemon" \ # Greenclip Clipboard Manager
"redshift -x" \ # Reset redshift display gamma
"/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" \ # GNOME Polkit Authentication Agent
"light-locker --lock-on-suspend --lock-on-lid" \ # Screen lock for lightdm
"/usr/lib/kdeconnectd --replace" \ # KDE Connect Daemon
# System Restore Processes
"bash /home/sravan/.screenlayout/default.sh" \ # Restore default screen layout
"nitrogen --restore" \ # Restore wallpaper
"numlockx on" \ # Enable numlock
)
declare -a kill_system_array=(\
# Background Processes
"killall dunst" \ # Dunst Notification Daemon
"killall picom" \ # Picom Compositor
"killall greenclip" \ # Greenclip Clipboard Manager
"killall redshift" \ # Redshift Blue Light Filter
"killall polkit" \ # GNOME Polkit Authentication Agent
"killall light-locker" \ # Screen lock for lightdm
"killall kdeconnectd" \ # KDE Connect Daemon
)
declare -a apps_array=(\
# System Tray Applications
"redshift-gtk" \ # Redshift Blue Light Filter
"nyrna" \ # Nyrna Application Suspend
"blueman-tray" \ # Blueman Bluetooth Manager
"nm-applet" \ # Network Manager Applet
"kdeconnect-indicator" \ # KDE Connect Indicator
"flameshot" \ # Flameshot Screenshot Tool
"xfce4-power-manager" \ # XFCE4 Power Manager
"volctl" \ # PulseAudio Volume Control
)
declare -a kill_apps_array=(\
# System Tray Applications
"killall redshift" \ # Redshift Blue Light Filter
"killall nyrna" \ # Nyrna Application Suspend
"killall blueman-tray" \ # Blueman Bluetooth Manager
"killall nm-applet" \ # Network Manager Applet
"killall kdeconnect-indicator" \ # KDE Connect Indicator
"killall flameshot" \ # Flameshot Screenshot Tool
"killall xfce4-power-manager" \ # XFCE4 Power Manager
"killall volctl" \ # PulseAudio Volume Control
)
help_menu() {
echo "Main script to launch and kill autostart processes & applications. Use only one argument at a time."
# echo " - Play / Pause: playerctl.sh --play-pause"
# echo " - Next: playerctl.sh --next"
# echo " - Previous: playerctl.sh --prev"
# echo " - Change Player: playerctl.sh --change"
# echo " - Rofi Menu: playerctl.sh --rofi"
# echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
" Launch System Processes - system"
" Launch Tray Applications - apps"
"ﮊ Kill System Processes - kill-system"
"ﮊ Kill Tray Applications - kill-apps"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--system)
for i in "${system_array[@]}"
do
if ! command -v $i > /dev/null
then
do_nothing() { :; }
else
$i &
fi
done
;;
--apps)
for i in "${apps_array[@]}"
do
if ! command -v $i > /dev/null
then
do_nothing() { :; }
else
$i &
fi
done
;;
--kill-system)
for i in "${kill_system_array[@]}"
do
if ! command -v $i > /dev/null
then
do_nothing() { :; }
else
$i &
fi
done
;;
--kill-apps)
for i in "${kill_apps_array[@]}"
do
if ! command -v $i > /dev/null
then
do_nothing() { :; }
else
$i &
fi
done
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

124
.scripts/system76-power.sh Executable file
View File

@@ -0,0 +1,124 @@
#!/bin/bash
help_menu() {
echo "Script to interact with system76-power. Use only one argument at a time."
# echo " - Play / Pause: playerctl.sh --play-pause"
# echo " - Next: playerctl.sh --next"
# echo " - Previous: playerctl.sh --prev"
# echo " - Change Player: playerctl.sh --change"
# echo " - Rofi Menu: playerctl.sh --rofi"
# echo " - Help: playerctl.sh --help OR playerctl.sh -h"
}
rofi_menu() {
declare -a options=(
" Switchable Graphics - rofi-graphics"
" Performance Profile - rofi-profile"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi"
fi
}
rofi_graphics_menu() {
declare -a options=(
"Query Current Graphics - graphics-query"
"Switch to Compute Mode - graphics-compute"
"Switch to Hybrid Mode - graphics-hybrid"
"Switch to Integrated Mode - graphics-integrated"
"Switch to Nvidia Mode - graphics-nvidia"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi-graphics"
fi
}
rofi_profile_menu() {
declare -a options=(
"Query Current Profile - profile-query"
"Switch to Battery Mode - profile-battery"
"Switch to Balanced Mode - profile-balanced"
"Switch to Performance Mode - profile-performance"
" Quit - quit"
)
choice=$(printf '%s\n' "${options[@]}" | rofi -dmenu -i)
option=$(printf '%s\n' "${choice}" | awk '{print $NF}')
if [[ "$option" != "quit" ]]; then
main "--$option" && main "--rofi-profile"
fi
}
main() {
if [ $# -eq 0 ]; then
# No arguments
help_menu
else
case $1 in
--help | -h)
help_menu
;;
--rofi-graphics)
rofi_graphics_menu
;;
--graphics-query)
current_graphics=$(pkexec system76-power graphics)
notify-send "System76-Power Graphics" "$current_graphics"
;;
--graphics-compute)
notify-send "System76-Power Graphics" "Switching to Compute Graphics..."
pkexec system76-power graphics compute
notify-send -u critical -t 0 "System76-Power Graphics" "Please restart computer to switch graphics"
;;
--graphics-hybrid)
notify-send "System76-Power Graphics" "Switching to Hybrid Graphics..."
pkexec system76-power graphics hybrid
notify-send -u critical -t 0 "System76-Power Graphics" "Please restart computer to switch graphics"
;;
--graphics-integrated)
notify-send "System76-Power Graphics" "Switching to Integrated Graphics..."
pkexec system76-power graphics integrated
notify-send -u critical -t 0 "System76-Power Graphics" "Please restart computer to switch graphics"
;;
--graphics-nvidia)
notify-send "System76-Power Graphics" "Switching to Nvidia Graphics..."
pkexec system76-power graphics nvidia
notify-send -u critical -t 0 "System76-Power Graphics" "Please restart computer to switch graphics"
;;
--rofi-profile)
rofi_profile_menu
;;
--profile-query)
current_profile=$(pkexec system76-power profile)
notify-send "System76-Power Profile" "$current_profile"
;;
--profile-battery)
pkexec system76-power profile battery
notify-send "System76-Power Profile" "Switched to Battery Profile"
;;
--profile-balanced)
pkexec system76-power profile balanced
notify-send "System76-Power Profile" "Switched to Balanced Profile"
;;
--profile-performance)
pkexec system76-power profile performance
notify-send "System76-Power Profile" "Switched to Performance Profile"
;;
--rofi)
rofi_menu
;;
esac
fi
}
main $@

2
.vimrc
View File

@@ -1,5 +1,3 @@
" Sravan's Vimrc
" Don't try to be vi compatible
set nocompatible

22
.xinitrc Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/sh
export TERM=xterm-256color # Sets the terminal type
export SHELL=/usr/bin/fish # Preferred shell
export EDITOR="emacs -nw" # Default editor
export GIT_EDITOR="emacs -nw" # Default git editor
export BROWSER=vivaldi-stable # Web Browser
export XDG_CONFIG_HOME=$HOME/.config # Set Config directory
export QT_QPA_PLATFORMTHEME=qt5ct # QGtkStyle
xrdb ~/.Xresources
# Background Processes & Daemons
/home/sravan/.scripts/startup.sh --kill-system &&
/home/sravan/.scripts/startup.sh --system
# System Tray Applications
# start with a delay so window manager can load first
(sleep 5 &&
/home/sravan/.scripts/startup.sh --kill-apps &&
/home/sravan/.scripts/startup.sh --apps) &
exec xmonad

1
.xmonad Submodule

Submodule .xmonad added at 1acc6a0755

249
.zshrc
View File

@@ -1,126 +1,189 @@
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="/home/sravan/.oh-my-zsh"
# Set $PATH if ~/.local/bin exist
if [ -d "$HOME/.local/bin" ]; then
export PATH=$HOME/.local/bin:$PATH
fi
# 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="robbyrussell"
eval "$(starship init zsh)"
function set_win_title(){
echo -ne "\033]0; $USER@$HOST:${PWD/$HOME/~} \007"
}
precmd_functions+=(set_win_title)
# 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" )
## Plugins section: Enable fish style features
# Use syntax highlighting
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Use autosuggestion
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Use history substring search
source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Use fzf
source /usr/share/fzf/key-bindings.zsh
source /usr/share/fzf/completion.zsh
# Uncomment the following line to automatically update without prompting.
# DISABLE_UPDATE_PROMPT="true"
# Arch Linux command-not-found support, you must have package pkgfile installed
# https://wiki.archlinux.org/index.php/Pkgfile#.22Command_not_found.22_hook
[[ -e /usr/share/doc/pkgfile/command-not-found.zsh ]] && source /usr/share/doc/pkgfile/command-not-found.zsh
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13
# Uncomment the following line if pasting URLs and other text is messed up.
# DISABLE_MAGIC_FUNCTIONS=true
## Options section
setopt correct # Auto correct mistakes
setopt extendedglob # Extended globbing. Allows using regular expressions with *
setopt nocaseglob # Case insensitive globbing
setopt rcexpandparam # Array expension with parameters
setopt nocheckjobs # Don't warn about running processes when exiting
setopt numericglobsort # Sort filenames numerically when it makes sense
setopt nobeep # No beep
setopt appendhistory # Immediately append history instead of overwriting
setopt histignorealldups # If a new command is a duplicate, remove the older one
setopt autocd # if only directory path is entered, cd there.
setopt auto_pushd
setopt pushd_ignore_dups
setopt pushdminus
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Completion.
autoload -Uz compinit
compinit
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' # Case insensitive tab completion
zstyle ':completion:*' rehash true # automatically find new executables in path
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
zstyle ':completion:*' completer _expand _complete _ignored _approximate
zstyle ':completion:*' menu select=2
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
zstyle ':completion:*:descriptions' format '%U%F{cyan}%d%f%u'
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Speed up completions
zstyle ':completion:*' accept-exact '*(N)'
zstyle ':completion:*' use-cache on
zstyle ':completion:*' cache-path ~/.cache/zcache
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# automatically load bash completion functions
autoload -U +X bashcompinit && bashcompinit
# Uncomment the following line to display red dots whilst waiting for completion.
COMPLETION_WAITING_DOTS="true"
HISTFILE=~/.zhistory
HISTSIZE=50000
SAVEHIST=10000
# 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"
## Keys
# Use emacs key bindings
bindkey -e
# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder
# [PageUp] - Up a line of history
if [[ -n "${terminfo[kpp]}" ]]; then
bindkey -M emacs "${terminfo[kpp]}" up-line-or-history
bindkey -M viins "${terminfo[kpp]}" up-line-or-history
bindkey -M vicmd "${terminfo[kpp]}" up-line-or-history
fi
# [PageDown] - Down a line of history
if [[ -n "${terminfo[knp]}" ]]; then
bindkey -M emacs "${terminfo[knp]}" down-line-or-history
bindkey -M viins "${terminfo[knp]}" down-line-or-history
bindkey -M vicmd "${terminfo[knp]}" down-line-or-history
fi
# 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=(alias-finder docker git python tmux vscode zsh_reload)
# Start typing + [Up-Arrow] - fuzzy find history forward
if [[ -n "${terminfo[kcuu1]}" ]]; then
autoload -U up-line-or-beginning-search
zle -N up-line-or-beginning-search
source $ZSH/oh-my-zsh.sh
bindkey -M emacs "${terminfo[kcuu1]}" up-line-or-beginning-search
bindkey -M viins "${terminfo[kcuu1]}" up-line-or-beginning-search
bindkey -M vicmd "${terminfo[kcuu1]}" up-line-or-beginning-search
fi
# Start typing + [Down-Arrow] - fuzzy find history backward
if [[ -n "${terminfo[kcud1]}" ]]; then
autoload -U down-line-or-beginning-search
zle -N down-line-or-beginning-search
# User configuration
bindkey -M emacs "${terminfo[kcud1]}" down-line-or-beginning-search
bindkey -M viins "${terminfo[kcud1]}" down-line-or-beginning-search
bindkey -M vicmd "${terminfo[kcud1]}" down-line-or-beginning-search
fi
# export MANPATH="/usr/local/man:$MANPATH"
# [Home] - Go to beginning of line
if [[ -n "${terminfo[khome]}" ]]; then
bindkey -M emacs "${terminfo[khome]}" beginning-of-line
bindkey -M viins "${terminfo[khome]}" beginning-of-line
bindkey -M vicmd "${terminfo[khome]}" beginning-of-line
fi
# [End] - Go to end of line
if [[ -n "${terminfo[kend]}" ]]; then
bindkey -M emacs "${terminfo[kend]}" end-of-line
bindkey -M viins "${terminfo[kend]}" end-of-line
bindkey -M vicmd "${terminfo[kend]}" end-of-line
fi
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# [Shift-Tab] - move through the completion menu backwards
if [[ -n "${terminfo[kcbt]}" ]]; then
bindkey -M emacs "${terminfo[kcbt]}" reverse-menu-complete
bindkey -M viins "${terminfo[kcbt]}" reverse-menu-complete
bindkey -M vicmd "${terminfo[kcbt]}" reverse-menu-complete
fi
# Preferred editor for local and remote sessions
if [[ -n $SSH_CONNECTION ]]; then
export EDITOR='code -w'
# [Backspace] - delete backward
bindkey -M emacs '^?' backward-delete-char
bindkey -M viins '^?' backward-delete-char
bindkey -M vicmd '^?' backward-delete-char
# [Delete] - delete forward
if [[ -n "${terminfo[kdch1]}" ]]; then
bindkey -M emacs "${terminfo[kdch1]}" delete-char
bindkey -M viins "${terminfo[kdch1]}" delete-char
bindkey -M vicmd "${terminfo[kdch1]}" delete-char
else
export EDITOR='code -w'
bindkey -M emacs "^[[3~" delete-char
bindkey -M viins "^[[3~" delete-char
bindkey -M vicmd "^[[3~" delete-char
bindkey -M emacs "^[3;5~" delete-char
bindkey -M viins "^[3;5~" delete-char
bindkey -M vicmd "^[3;5~" delete-char
fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# Common use aliases
alias aup="pamac upgrade --aur"
alias grubup="sudo update-grub"
alias fixpacman="sudo rm /var/lib/pacman/db.lck"
alias tarnow='tar -acf '
alias untar='tar -zxvf '
alias wget='wget -c '
alias psmem='ps auxf | sort -nr -k 4'
alias psmem10='ps auxf | sort -nr -k 4 | head -10'
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias ......='cd ../../../../..'
alias dir='dir --color=auto'
alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
alias hw='hwinfo --short' # Hardware Info
alias gitpkg='pacman -Q | grep -i "\-git" | wc -l' # List amount of -git packages
# 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 zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
# Get fastest mirrors
alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist"
alias mirrord="sudo reflector --latest 50 --number 20 --sort delay --save /etc/pacman.d/mirrorlist"
alias mirrors="sudo reflector --latest 50 --number 20 --sort score --save /etc/pacman.d/mirrorlist"
alias mirrora="sudo reflector --latest 50 --number 20 --sort age --save /etc/pacman.d/mirrorlist"
# Powerline Shell
function powerline_precmd() {
PS1="$(powerline-shell --shell zsh $?)"
}
# Help people new to Arch
alias apt='man pacman'
alias apt-get='man pacman'
alias please='sudo'
alias tb='nc termbin.com 9999'
function install_powerline_precmd() {
for s in "${precmd_functions[@]}"; do
if [ "$s" = "powerline_precmd" ]; then
return
fi
done
precmd_functions+=(powerline_precmd)
}
# Replace yay with paru if installed
[ ! -x /usr/bin/yay ] && [ -x /usr/bin/paru ] && alias yay='paru'
if [ "$TERM" != "linux" ]; then
install_powerline_precmd
fi
# Set your countries like --country France --country Germany -- or more.
alias upd='sudo reflector --latest 5 --age 2 --fastest 5 --protocol https --sort rate --save /etc/pacman.d/mirrorlist && cat /etc/pacman.d/mirrorlist && sudo pacman -Syu && sudo updatedb'
# Run neofetch when opening terminal
## Run neofetch
neofetch
# ALIASES
alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'
# EXPORTS
export TERM=xterm-256color

View File

@@ -1,37 +0,0 @@
# dotfiles
Personal dotfiles repository
## Install on a new system
See [Acknowledgements](#Acknowledgements) for tutorial source.
* Prior to the installation, create alias for config
* `alias config="GIT_WORK_TREE=~ GIT_DIR=~/.cfg"`
* Add `.cfg` to `.gitignore`
* `echo ".cfg" >> .gitignore`
* Clone dotfiles into a bare repository
* `git clone --bare <git-repo-url> $HOME/.cfg`
* Define the alias in the current shell scope
* `alias config="GIT_WORK_TREE=~ GIT_DIR=~/.cfg"`
* Checkout content from bare repository to `$HOME`
* `config git checkout`
* Step above might fail with a message like:
* ```
error: The following untracked working tree files would be overwritten by checkout:
.bashrc
.gitignore
Please move or remove them before you can switch branches.
Aborting
```
* Delete `.bashrc` and `.gitignore`
* `rm ~/.bashrc ~/.gitignore`
* Re-run checkout
* `config git checkout`
* Set the flag `showUntrackedFiles` to `no` on this specific (local) repo
* `config git config --local status.showUntrackedFiles no`
## Acknowledgements
I followed [DistroTube](https://www.youtube.com/channel/UCVls1GmFKf6WlTraIb_IaJg)'s process for setting up a git bare repository as shown in [Git Bare Repository - A Better Way To Manage Dotfiles](https://youtu.be/tBoLDpTWVOM).
He references [The best way to store your dotfiles: A bare Git repository](https://www.atlassian.com/git/tutorials/dotfiles) by [Nicola Paolucci](https://www.durdn.com/).

7156
README.org Normal file

File diff suppressed because it is too large Load Diff